opennebula-cli 7.2.0 → 7.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/bin/onevm +1 -1
  3. data/lib/command_parser.rb +134 -125
  4. data/lib/load_opennebula_paths.rb +5 -0
  5. data/lib/ods_helper.rb +541 -0
  6. data/lib/one_helper/oneacct_helper.rb +116 -108
  7. data/lib/one_helper/onedatastore_helper.rb +86 -79
  8. data/lib/one_helper/onemarket_helper.rb +58 -57
  9. data/lib/one_helper/onequota_helper.rb +239 -189
  10. data/lib/one_helper/onesecgroup_helper.rb +86 -84
  11. data/lib/one_helper/onetemplate_helper.rb +63 -63
  12. data/lib/one_helper/onevdc_helper.rb +44 -44
  13. data/lib/one_helper/onevm_helper.rb +5 -7
  14. data/lib/one_helper/onevmgroup_helper.rb +64 -62
  15. data/lib/one_helper/onevntemplate_helper.rb +42 -39
  16. data/lib/one_helper/onevrouter_helper.rb +85 -86
  17. data/lib/one_helper/onezone_helper.rb +97 -100
  18. data/lib/one_helper.rb +88 -69
  19. data/share/schemas/xsd/acct.xsd +3 -104
  20. data/share/schemas/xsd/cluster.xsd +4 -21
  21. data/share/schemas/xsd/datastore.xsd +4 -29
  22. data/share/schemas/xsd/document.xsd +3 -25
  23. data/share/schemas/xsd/group.xsd +2 -14
  24. data/share/schemas/xsd/group_pool.xsd +2 -14
  25. data/share/schemas/xsd/hook.xsd +2 -0
  26. data/share/schemas/xsd/host.xsd +5 -7
  27. data/share/schemas/xsd/image.xsd +2 -25
  28. data/share/schemas/xsd/marketplace.xsd +3 -22
  29. data/share/schemas/xsd/marketplaceapp.xsd +3 -25
  30. data/share/schemas/xsd/opennebula_configuration.xsd +1 -0
  31. data/share/schemas/xsd/requirements.xsd +3 -21
  32. data/share/schemas/xsd/security_group.xsd +6 -43
  33. data/share/schemas/xsd/shared.xsd +3 -3
  34. data/share/schemas/xsd/vdc.xsd +2 -7
  35. data/share/schemas/xsd/vm_group.xsd +3 -25
  36. data/share/schemas/xsd/vm_pool.xsd +2 -0
  37. data/share/schemas/xsd/vmtemplate.xsd +3 -25
  38. data/share/schemas/xsd/vnet.xsd +9 -67
  39. data/share/schemas/xsd/vnet_pool.xsd +8 -57
  40. data/share/schemas/xsd/vntemplate.xsd +3 -25
  41. data/share/schemas/xsd/vrouter.xsd +4 -32
  42. metadata +6 -4
@@ -18,24 +18,26 @@ require 'one_helper'
18
18
  require 'opennebula/marketplace'
19
19
  require 'opennebula/marketplace_pool'
20
20
 
21
+ # Helper class for Marketplace commands
21
22
  class OneMarketPlaceHelper < OpenNebulaHelper::OneHelper
23
+
22
24
  MARKETPLACE = {
23
- :name => "marketplace",
24
- :short => "-m id|name",
25
- :large => "--marketplace id|name" ,
26
- :description => "Selects the marketplace",
25
+ :name => 'marketplace',
26
+ :short => '-m id|name',
27
+ :large => '--marketplace id|name',
28
+ :description => 'Selects the marketplace',
27
29
  :format => String,
28
- :proc => lambda { |o, options|
29
- OpenNebulaHelper.rname_to_id(o, "MARKETPLACE")
30
+ :proc => lambda {|o, _options|
31
+ OpenNebulaHelper.rname_to_id(o, 'MARKETPLACE')
30
32
  }
31
33
  }
32
34
 
33
35
  def self.rname
34
- "MARKETPLACE"
36
+ 'MARKETPLACE'
35
37
  end
36
38
 
37
39
  def self.conf_file
38
- "onemarket.yaml"
40
+ 'onemarket.yaml'
39
41
  end
40
42
 
41
43
  def self.state_to_str(id)
@@ -47,51 +49,51 @@ class OneMarketPlaceHelper < OpenNebulaHelper::OneHelper
47
49
  def format_pool(options)
48
50
  config_file = self.class.table_conf
49
51
 
50
- table = CLIHelper::ShowTable.new(config_file, self) do
51
- column :ID, "ONE identifier for the Marketplace", :size=>4 do |d|
52
- d["ID"]
52
+ CLIHelper::ShowTable.new(config_file, self) do
53
+ column :ID, 'ONE identifier for the Marketplace', :size=>4 do |d|
54
+ d['ID']
53
55
  end
54
56
 
55
- column :USER, "Username of the Marketplace owner", :left,
56
- :size=>10 do |d|
57
+ column :USER, 'Username of the Marketplace owner', :left,
58
+ :size=>10 do |d|
57
59
  helper.user_name(d, options)
58
60
  end
59
61
 
60
- column :GROUP, "Group of the Marketplace", :left,
61
- :size=>10 do |d|
62
+ column :GROUP, 'Group of the Marketplace', :left,
63
+ :size=>10 do |d|
62
64
  helper.group_name(d, options)
63
65
  end
64
66
 
65
- column :NAME, "Name of the Marketplace", :left, :size=>30 do |d|
66
- d["NAME"]
67
+ column :NAME, 'Name of the Marketplace', :left, :size=>30 do |d|
68
+ d['NAME']
67
69
  end
68
70
 
69
- column :SIZE, "Marketplace total size", :size =>10 do |d|
71
+ column :SIZE, 'Marketplace total size', :size =>10 do |d|
70
72
  OpenNebulaHelper.unit_to_str(d['TOTAL_MB'].to_i, {}, 'M')
71
73
  end
72
74
 
73
- column :AVAIL, "Marketplace free size", :left, :size =>10 do |d|
75
+ column :AVAIL, 'Marketplace free size', :left, :size =>10 do |d|
74
76
  if d['TOTAL_MB'].to_i == 0
75
- "-"
77
+ '-'
76
78
  else
77
- "#{((d['FREE_MB'].to_f/d['TOTAL_MB'].to_f) * 100).round()}%"
79
+ "#{((d['FREE_MB'].to_f/d['TOTAL_MB'].to_f) * 100).round}%"
78
80
  end
79
81
  end
80
82
 
81
- column :APPS, "Number of marketplace apps", :size=>6 do |d|
82
- if d["MARKETPLACEAPPS"]["ID"].nil?
83
- "0"
83
+ column :APPS, 'Number of marketplace apps', :size=>6 do |d|
84
+ if d['MARKETPLACEAPPS']['ID'].nil?
85
+ '0'
84
86
  else
85
- [d["MARKETPLACEAPPS"]["ID"]].flatten.size
87
+ [d['MARKETPLACEAPPS']['ID']].flatten.size
86
88
  end
87
89
  end
88
90
 
89
- column :MAD, "Marketplace driver", :left, :size=>7 do |d|
90
- d["MARKET_MAD"]
91
+ column :MAD, 'Marketplace driver', :left, :size=>7 do |d|
92
+ d['MARKET_MAD']
91
93
  end
92
94
 
93
- column :ZONE, "Zone ID", :size=>4 do |d|
94
- d["ZONE_ID"]
95
+ column :ZONE, 'Zone ID', :size=>4 do |d|
96
+ d['ZONE_ID']
95
97
  end
96
98
 
97
99
  column :STAT, 'Markeplace status', :left, :size => 4 do |d|
@@ -100,13 +102,11 @@ class OneMarketPlaceHelper < OpenNebulaHelper::OneHelper
100
102
 
101
103
  default :ID, :NAME, :SIZE, :AVAIL, :APPS, :MAD, :ZONE, :STAT
102
104
  end
103
-
104
- table
105
105
  end
106
106
 
107
107
  private
108
108
 
109
- def factory(id=nil)
109
+ def factory(id = nil)
110
110
  if id
111
111
  OpenNebula::MarketPlace.new_with_id(id, @client)
112
112
  else
@@ -115,51 +115,52 @@ class OneMarketPlaceHelper < OpenNebulaHelper::OneHelper
115
115
  end
116
116
  end
117
117
 
118
- def factory_pool(user_flag=-2)
118
+ def factory_pool(_user_flag = -2)
119
119
  OpenNebula::MarketPlacePool.new(@client)
120
120
  end
121
121
 
122
- def format_resource(market, options = {})
123
- str="%-15s: %-20s"
124
- str_h1="%-80s"
122
+ def format_resource(market, _options = {})
123
+ str='%-15s: %-20s'
124
+ str_h1='%-80s'
125
125
 
126
126
  CLIHelper.print_header(str_h1 % "MARKETPLACE #{market['ID']} INFORMATION")
127
- puts str % ["ID", market.id.to_s]
128
- puts str % ["NAME", market.name]
129
- puts str % ["USER", market['UNAME']]
130
- puts str % ["GROUP", market['GNAME']]
131
- puts str % ["STATE", market.state_str]
127
+ puts format(str, 'ID', market.id.to_s)
128
+ puts format(str, 'NAME', market.name)
129
+ puts format(str, 'USER', market['UNAME'])
130
+ puts format(str, 'GROUP', market['GNAME'])
131
+ puts format(str, 'STATE', market.state_str)
132
132
 
133
- puts str % ["MARKET_MAD", market['MARKET_MAD']]
133
+ puts format(str, 'MARKET_MAD', market['MARKET_MAD'])
134
134
  puts
135
135
 
136
- CLIHelper.print_header(str_h1 % "MARKETPLACE CAPACITY", false)
136
+ CLIHelper.print_header(str_h1 % 'MARKETPLACE CAPACITY', false)
137
137
 
138
- puts str % ["TOTAL:", OpenNebulaHelper.unit_to_str(market['TOTAL_MB'].to_i,{},'M')]
139
- puts str % ["FREE:", OpenNebulaHelper.unit_to_str(market['FREE_MB'].to_i, {},'M')]
140
- puts str % ["USED: ", OpenNebulaHelper.unit_to_str(market['USED_MB'].to_i, {},'M')]
138
+ puts format(str, 'TOTAL:', OpenNebulaHelper.unit_to_str(market['TOTAL_MB'].to_i, {}, 'M'))
139
+ puts format(str, 'FREE:', OpenNebulaHelper.unit_to_str(market['FREE_MB'].to_i, {}, 'M'))
140
+ puts format(str, 'USED: ', OpenNebulaHelper.unit_to_str(market['USED_MB'].to_i, {}, 'M'))
141
141
  puts
142
142
 
143
- CLIHelper.print_header(str_h1 % "PERMISSIONS",false)
143
+ CLIHelper.print_header(str_h1 % 'PERMISSIONS', false)
144
144
 
145
- ["OWNER", "GROUP", "OTHER"].each { |e|
146
- mask = "---"
147
- mask[0] = "u" if market["PERMISSIONS/#{e}_U"] == "1"
148
- mask[1] = "m" if market["PERMISSIONS/#{e}_M"] == "1"
149
- mask[2] = "a" if market["PERMISSIONS/#{e}_A"] == "1"
145
+ ['OWNER', 'GROUP', 'OTHER'].each do |e|
146
+ mask = '---'
147
+ mask[0] = 'u' if market["PERMISSIONS/#{e}_U"] == '1'
148
+ mask[1] = 'm' if market["PERMISSIONS/#{e}_M"] == '1'
149
+ mask[2] = 'a' if market["PERMISSIONS/#{e}_A"] == '1'
150
150
 
151
- puts str % [e, mask]
152
- }
151
+ puts format(str, e, mask)
152
+ end
153
153
  puts
154
154
 
155
- CLIHelper.print_header(str_h1 % "MARKETPLACE TEMPLATE", false)
155
+ CLIHelper.print_header(str_h1 % 'MARKETPLACE TEMPLATE', false)
156
156
  puts market.template_str
157
157
 
158
158
  puts
159
159
 
160
- CLIHelper.print_header("%-15s" % "MARKETAPPS")
160
+ CLIHelper.print_header(format('%-15s', 'MARKETAPPS'))
161
161
  market.marketapp_ids.each do |id|
162
- puts "%-15s" % [id]
162
+ puts format('%-15s', id)
163
163
  end
164
164
  end
165
+
165
166
  end