Class: Offering
Constant Summary
CloudstackCli::Helper::ASYNC_STATES
Instance Attribute Summary
#config
Instance Method Summary
collapse
exit_on_failure?
#ask_number, #bootstrap_server, #bootstrap_server_interactive, #create_port_rules, #create_server, #print_job_status, #print_options, #update_job_status, #watch_jobs
Instance Method Details
#create(name) ⇒ Object
31
32
33
34
|
# File 'lib/cloudstack-cli/commands/offering.rb', line 31
def create(name)
options[:name] = name
puts "OK" if client.create_offering(options)
end
|
#delete(id) ⇒ Object
37
38
39
|
# File 'lib/cloudstack-cli/commands/offering.rb', line 37
def delete(id)
puts "OK" if client.delete_offering(id)
end
|
#list ⇒ Object
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/cloudstack-cli/commands/offering.rb', line 5
def list
offerings = client.list_service_offerings(options[:domain])
if offerings.size < 1
puts "No offerings found."
else
table = [["Name", "Displaytext", "Domain", "ID"]]
offerings.each do |offering|
table << [
offering["name"],
offering["displaytext"],
offering["domain"],
offering["id"]
]
end
print_table table
end
end
|
#sort ⇒ Object
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# File 'lib/cloudstack-cli/commands/offering.rb', line 43
def sort
offerings = client.list_service_offerings(options[:domain])
sortkey = -1
offerings.group_by{|o| o["domain"]}.each_value do |offers|
offers.sort {
|oa, ob| [oa["cpunumber"], oa["memory"]] <=> [ob["cpunumber"], ob["memory"]]
}.each do |offer|
puts "#{sortkey.abs} #{offer['domain']} - #{offer["displaytext"]}"
client.update_offering({
"id" => offer['id'],
'sortkey' => sortkey
})
sortkey -= 1
end
end
end
|