hammer_cli_foreman 0.8.0 → 0.9.0

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 (85) hide show
  1. checksums.yaml +4 -4
  2. data/config/foreman.yml +1 -0
  3. data/doc/host_create.md +3 -3
  4. data/doc/release_notes.md +14 -0
  5. data/lib/hammer_cli_foreman.rb +0 -1
  6. data/lib/hammer_cli_foreman/api.rb +3 -0
  7. data/lib/hammer_cli_foreman/api/connection.rb +75 -0
  8. data/lib/hammer_cli_foreman/api/interactive_basic_auth.rb +49 -0
  9. data/lib/hammer_cli_foreman/api/session_authenticator_wrapper.rb +120 -0
  10. data/lib/hammer_cli_foreman/auth.rb +16 -12
  11. data/lib/hammer_cli_foreman/commands.rb +4 -36
  12. data/lib/hammer_cli_foreman/compute_resource.rb +6 -6
  13. data/lib/hammer_cli_foreman/compute_resources/all.rb +7 -0
  14. data/lib/hammer_cli_foreman/compute_resources/ec2.rb +9 -0
  15. data/lib/hammer_cli_foreman/compute_resources/ec2/host_help_extenstion.rb +23 -0
  16. data/lib/hammer_cli_foreman/compute_resources/gce.rb +9 -0
  17. data/lib/hammer_cli_foreman/compute_resources/gce/host_help_extenstion.rb +22 -0
  18. data/lib/hammer_cli_foreman/compute_resources/libvirt.rb +9 -0
  19. data/lib/hammer_cli_foreman/compute_resources/libvirt/host_help_extenstion.rb +35 -0
  20. data/lib/hammer_cli_foreman/compute_resources/openstack.rb +9 -0
  21. data/lib/hammer_cli_foreman/compute_resources/openstack/host_help_extenstion.rb +23 -0
  22. data/lib/hammer_cli_foreman/compute_resources/ovirt.rb +9 -0
  23. data/lib/hammer_cli_foreman/compute_resources/ovirt/host_help_extenstion.rb +36 -0
  24. data/lib/hammer_cli_foreman/compute_resources/rackspace.rb +9 -0
  25. data/lib/hammer_cli_foreman/compute_resources/rackspace/host_help_extenstion.rb +20 -0
  26. data/lib/hammer_cli_foreman/compute_resources/vmware.rb +9 -0
  27. data/lib/hammer_cli_foreman/compute_resources/vmware/host_help_extenstion.rb +62 -0
  28. data/lib/hammer_cli_foreman/filter.rb +1 -0
  29. data/lib/hammer_cli_foreman/host.rb +15 -140
  30. data/lib/hammer_cli_foreman/hosts/common_update_help.rb +53 -0
  31. data/lib/hammer_cli_foreman/hosts/common_update_options.rb +141 -0
  32. data/lib/hammer_cli_foreman/references.rb +13 -2
  33. data/lib/hammer_cli_foreman/role.rb +3 -7
  34. data/lib/hammer_cli_foreman/smart_class_parameter.rb +2 -2
  35. data/lib/hammer_cli_foreman/smart_variable.rb +1 -2
  36. data/lib/hammer_cli_foreman/user.rb +2 -0
  37. data/lib/hammer_cli_foreman/version.rb +1 -1
  38. data/locale/ca/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  39. data/locale/ca/hammer-cli-foreman.edit.po +520 -318
  40. data/locale/ca/hammer-cli-foreman.po +253 -175
  41. data/locale/de/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  42. data/locale/de/hammer-cli-foreman.edit.po +568 -358
  43. data/locale/de/hammer-cli-foreman.po +255 -177
  44. data/locale/en/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  45. data/locale/en/hammer-cli-foreman.edit.po +446 -228
  46. data/locale/en/hammer-cli-foreman.po +208 -41
  47. data/locale/en_GB/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  48. data/locale/en_GB/hammer-cli-foreman.edit.po +498 -307
  49. data/locale/en_GB/hammer-cli-foreman.po +254 -176
  50. data/locale/es/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  51. data/locale/es/hammer-cli-foreman.edit.po +594 -388
  52. data/locale/es/hammer-cli-foreman.po +254 -176
  53. data/locale/fr/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  54. data/locale/fr/hammer-cli-foreman.edit.po +542 -342
  55. data/locale/fr/hammer-cli-foreman.po +254 -176
  56. data/locale/hammer-cli-foreman.pot +503 -241
  57. data/locale/it/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  58. data/locale/it/hammer-cli-foreman.edit.po +510 -295
  59. data/locale/it/hammer-cli-foreman.po +254 -176
  60. data/locale/ja/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  61. data/locale/ja/hammer-cli-foreman.edit.po +590 -365
  62. data/locale/ja/hammer-cli-foreman.po +254 -176
  63. data/locale/ko/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  64. data/locale/ko/hammer-cli-foreman.edit.po +591 -366
  65. data/locale/ko/hammer-cli-foreman.po +254 -176
  66. data/locale/pt_BR/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  67. data/locale/pt_BR/hammer-cli-foreman.edit.po +588 -388
  68. data/locale/pt_BR/hammer-cli-foreman.po +254 -176
  69. data/locale/ru/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  70. data/locale/ru/hammer-cli-foreman.edit.po +549 -336
  71. data/locale/ru/hammer-cli-foreman.po +254 -176
  72. data/locale/zh_CN/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  73. data/locale/zh_CN/hammer-cli-foreman.edit.po +598 -373
  74. data/locale/zh_CN/hammer-cli-foreman.po +254 -176
  75. data/locale/zh_TW/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
  76. data/locale/zh_TW/hammer-cli-foreman.edit.po +592 -367
  77. data/locale/zh_TW/hammer-cli-foreman.po +254 -176
  78. data/test/test_helper.rb +7 -5
  79. data/test/unit/api/interactive_basic_auth_test.rb +87 -0
  80. data/test/unit/api/session_authenticator_wrapper_test.rb +263 -0
  81. data/test/unit/exception_handler_test.rb +1 -1
  82. data/test/unit/host_test.rb +2 -2
  83. metadata +314 -292
  84. data/lib/hammer_cli_foreman/credentials.rb +0 -67
  85. data/test/unit/credentials_test.rb +0 -59
@@ -0,0 +1,7 @@
1
+ require 'hammer_cli_foreman/compute_resources/ec2'
2
+ require 'hammer_cli_foreman/compute_resources/gce'
3
+ require 'hammer_cli_foreman/compute_resources/libvirt'
4
+ require 'hammer_cli_foreman/compute_resources/openstack'
5
+ require 'hammer_cli_foreman/compute_resources/ovirt'
6
+ require 'hammer_cli_foreman/compute_resources/rackspace'
7
+ require 'hammer_cli_foreman/compute_resources/vmware'
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/ec2/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module EC2
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,23 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module EC2
4
+ class HostHelpExtenstion
5
+ def name
6
+ _('EC2')
7
+ end
8
+
9
+ def host_create_help(h)
10
+ h.section '--compute-attributes' do |h|
11
+ h.list([
12
+ 'flavor_id',
13
+ 'image_id',
14
+ 'availability_zone',
15
+ 'security_group_ids',
16
+ 'managed_ip',
17
+ ])
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/gce/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module GCE
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,22 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module GCE
4
+ class HostHelpExtenstion
5
+ def name
6
+ _('GCE')
7
+ end
8
+
9
+ def host_create_help(h)
10
+ h.section '--compute-attributes' do |h|
11
+ h.list([
12
+ 'machine_type',
13
+ 'image_id',
14
+ 'network',
15
+ 'external_ip'
16
+ ])
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/libvirt/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module Libvirt
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,35 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module Libvirt
4
+ class HostHelpExtenstion
5
+ def name
6
+ _('Libvirt')
7
+ end
8
+
9
+ def host_create_help(h)
10
+ h.section '--compute-attributes' do |h|
11
+ h.list([
12
+ ['cpus', _('Number of CPUs')],
13
+ ['memory', _('String, amount of memory, value in bytes')],
14
+ ['start', _('Boolean (expressed as 0 or 1), whether to start the machine or not')]
15
+ ])
16
+ end
17
+ h.section '--interface' do |h|
18
+ h.list([
19
+ ['compute_type', _('Possible values: %s') % 'bridge, network'],
20
+ ['compute_network / compute_bridge', _('Name of interface according to type')],
21
+ ['compute_model', _('Possible values: %s') % 'virtio, rtl8139, ne2k_pci, pcnet, e1000']
22
+ ])
23
+ end
24
+ h.section '--volume' do |h|
25
+ h.list([
26
+ ['pool_name', _('One of available storage pools')],
27
+ ['capacity', _('String value, eg. 10G')],
28
+ ['format_type', _('Possible values: %s') % 'raw, qcow2']
29
+ ])
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/openstack/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module OpenStack
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,23 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module OpenStack
4
+ class HostHelpExtenstion
5
+ def name
6
+ _('OpenStack')
7
+ end
8
+
9
+ def host_create_help(h)
10
+ h.section '--compute-attributes' do |h|
11
+ h.list([
12
+ 'flavor_ref',
13
+ 'image_ref',
14
+ 'tenant_id',
15
+ 'security_groups',
16
+ 'network'
17
+ ])
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/ovirt/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module Ovirt
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,36 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module Ovirt
4
+ class HostHelpExtenstion
5
+ def name
6
+ _('oVirt')
7
+ end
8
+
9
+ def host_create_help(h)
10
+ h.section '--compute-attributes' do |h|
11
+ h.list([
12
+ ['cluster'],
13
+ ['template', _('Hardware profile to use')],
14
+ ['cores', _('Integer value, number of cores')],
15
+ ['memory', _('Amount of memory, integer value in bytes')],
16
+ ['start', _('Boolean (expressed as 0 or 1), whether to start the machine or not')]
17
+ ])
18
+ end
19
+ h.section '--interface' do |h|
20
+ h.list([
21
+ ['compute_name', _('Eg. eth0')],
22
+ ['compute_network', _('Select one of available networks for a cluster')]
23
+ ])
24
+ end
25
+ h.section '--volume' do |h|
26
+ h.list([
27
+ ['size_gb', _('Volume size in GB, integer value')],
28
+ ['storage_domain', _('Select one of available storage domains')],
29
+ ['bootable', _('Boolean, only one volume can be bootable')]
30
+ ])
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/rackspace/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module Rackspace
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,20 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module Rackspace
4
+ class HostHelpExtenstion
5
+ def name
6
+ _('Rackspace')
7
+ end
8
+
9
+ def host_create_help(h)
10
+ h.section '--compute-attributes' do |h|
11
+ h.list([
12
+ 'flavor_id',
13
+ 'image_id'
14
+ ])
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,9 @@
1
+ require 'hammer_cli_foreman/compute_resources/vmware/host_help_extenstion'
2
+
3
+ module HammerCLIForeman
4
+ module ComputeResources
5
+ module VMware
6
+ HammerCLIForeman::Host.extend_cr_help(HostHelpExtenstion.new)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,62 @@
1
+ module HammerCLIForeman
2
+ module ComputeResources
3
+ module VMware
4
+ class HostHelpExtenstion
5
+ INTERFACE_TYPES = %w(
6
+ VirtualVmxnet,
7
+ VirtualVmxnet2,
8
+ VirtualVmxnet3,
9
+ VirtualE1000,
10
+ VirtualE1000e,
11
+ VirtualPCNet32
12
+ )
13
+
14
+ def name
15
+ _('VMWare')
16
+ end
17
+
18
+ def host_create_help(h)
19
+ h.section '--compute-attributes' do |h|
20
+ h.list([
21
+ ['cpus', _("Cpu count")],
22
+ ['corespersocket', _("Number of cores per socket (applicable to hardware versions < 10 only)")],
23
+ ['memory_mb', _("Integer number, amount of memory in MB")],
24
+ ['cluster', _("Cluster id from VMware")],
25
+ ['path', _("Path to folder")],
26
+ ['guest_id', _("Guest OS id form VMware")],
27
+ ['scsi_controller_type', _("Id of the controller from VMware")],
28
+ ['hardware_version', _("Hardware version id from VMware")],
29
+ ['start', _("Must be a 1 or 0, whether to start the machine or not")]
30
+ ])
31
+ end
32
+ h.section '--interface' do |h|
33
+ h.list([
34
+ ['compute_type', interface_type_description(h)],
35
+ ['compute_network', _('Network id from VMware')]
36
+ ])
37
+ end
38
+ h.section '--volume' do |h|
39
+ h.list([
40
+ ['name'],
41
+ ['datastore', _('Datastore id from VMware')],
42
+ ['size_gb', _('Integer number, volume size in GB')],
43
+ ['thin', 'true/false'],
44
+ ['eager_zero', 'true/false']
45
+ ])
46
+ end
47
+ end
48
+
49
+ private
50
+
51
+ def interface_type_description(h)
52
+ [
53
+ _('Type of the network adapter, for example one of:'),
54
+ h.indent(INTERFACE_TYPES),
55
+ _("See documentation center for your version of vSphere to find more details about available adapter types:"),
56
+ h.indent("https://www.vmware.com/support/pubs/")
57
+ ].join("\n")
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -10,6 +10,7 @@ module HammerCLIForeman
10
10
  field :resource_type, _("Resource type")
11
11
  field :search, _("Search")
12
12
  field :unlimited?, _("Unlimited?"), Fields::Boolean
13
+ field :override?, _("Override?"), Fields::Boolean
13
14
  field :role, _("Role"), Fields::Reference
14
15
  field :permissions, _("Permissions"), Fields::List
15
16
  end
@@ -4,155 +4,26 @@ require 'hammer_cli_foreman/puppet_class'
4
4
  require 'hammer_cli_foreman/smart_class_parameter'
5
5
  require 'hammer_cli_foreman/smart_variable'
6
6
  require 'hammer_cli_foreman/interface'
7
+ require 'hammer_cli_foreman/hosts/common_update_options'
8
+ require 'hammer_cli_foreman/hosts/common_update_help'
7
9
 
8
10
  require 'highline/import'
9
11
 
10
12
  module HammerCLIForeman
11
13
 
12
- module CommonHostUpdateOptions
13
-
14
- def self.included(base)
15
- base.option "--owner", "OWNER_LOGIN", _("Login of the owner"),
16
- :attribute_name => :option_user_login
17
- base.option "--owner-id", "OWNER_ID", _("ID of the owner"),
18
- :attribute_name => :option_user_id
19
-
20
- base.option "--root-password", "ROOT_PW", " "
21
- base.option "--ask-root-password", "ASK_ROOT_PW", " ",
22
- :format => HammerCLI::Options::Normalizers::Bool.new
23
-
24
- base.option "--puppet-proxy", "PUPPET_PROXY_NAME", ""
25
- base.option "--puppet-ca-proxy", "PUPPET_CA_PROXY_NAME", ""
26
- base.option "--puppet-class-ids", "PUPPET_CLASS_IDS", "",
27
- :format => HammerCLI::Options::Normalizers::List.new,
28
- :attribute_name => :option_puppetclass_ids
29
- base.option "--puppet-classes", "PUPPET_CLASS_NAMES", "",
30
- :format => HammerCLI::Options::Normalizers::List.new
31
-
32
- bme_options = {}
33
- bme_options[:default] = 'true' if base.action.to_sym == :create
34
-
35
- bme_options[:format] = HammerCLI::Options::Normalizers::Bool.new
36
- base.option "--managed", "MANAGED", " ", bme_options
37
- bme_options[:format] = HammerCLI::Options::Normalizers::Bool.new
38
- base.option "--build", "BUILD", " ", bme_options
39
- bme_options[:format] = HammerCLI::Options::Normalizers::Bool.new
40
- base.option "--enabled", "ENABLED", " ", bme_options
41
- bme_options[:format] = HammerCLI::Options::Normalizers::Bool.new
42
- base.option "--overwrite", "OVERWRITE", " ", bme_options
43
-
44
- base.option "--parameters", "PARAMS", _("Host parameters."),
45
- :format => HammerCLI::Options::Normalizers::KeyValueList.new
46
- base.option "--compute-attributes", "COMPUTE_ATTRS", _("Compute resource attributes."),
47
- :format => HammerCLI::Options::Normalizers::KeyValueList.new
48
- base.option "--volume", "VOLUME", _("Volume parameters"), :multivalued => true,
49
- :format => HammerCLI::Options::Normalizers::KeyValueList.new
50
- base.option "--interface", "INTERFACE", _("Interface parameters."), :multivalued => true,
51
- :format => HammerCLI::Options::Normalizers::KeyValueList.new
52
- base.option "--provision-method", "METHOD", " ",
53
- :format => HammerCLI::Options::Normalizers::Enum.new(['build', 'image'])
54
-
55
- base.build_options :without => [
56
- # - temporarily disabled params that will be removed from the api ------------------
57
- :provision_method, :capabilities, :flavour_ref, :image_ref, :start,
58
- :network, :cpus, :memory, :provider, :type, :tenant_id, :image_id,
59
- # ----------------------------------------------------------------------------------
60
- :puppet_class_ids, :host_parameters_attributes, :interfaces_attributes]
61
- end
62
-
63
- def self.ask_password
64
- prompt = _("Enter the root password for the host:") + " "
65
- ask(prompt) {|q| q.echo = false}
66
- end
67
-
68
- def request_params
69
- params = super
70
-
71
- owner_id = get_resource_id(HammerCLIForeman.foreman_resource(:users), :required => false, :scoped => true)
72
- params['host']['owner_id'] ||= owner_id unless owner_id.nil?
73
-
74
- puppet_proxy_id = proxy_id(option_puppet_proxy)
75
- params['host']['puppet_proxy_id'] ||= puppet_proxy_id unless puppet_proxy_id.nil?
76
-
77
- puppet_ca_proxy_id = proxy_id(option_puppet_ca_proxy)
78
- params['host']['puppet_ca_proxy_id'] ||= puppet_ca_proxy_id unless puppet_ca_proxy_id.nil?
79
-
80
- puppetclass_ids = option_puppetclass_ids || puppet_class_ids(option_puppet_classes)
81
- params['host']['puppetclass_ids'] = puppetclass_ids unless puppetclass_ids.nil?
82
-
83
- params['host']['build'] = option_build unless option_build.nil?
84
- params['host']['managed'] = option_managed unless option_managed.nil?
85
- params['host']['enabled'] = option_enabled unless option_enabled.nil?
86
- params['host']['overwrite'] = option_overwrite unless option_overwrite.nil?
87
-
88
- params['host']['host_parameters_attributes'] = parameter_attributes
89
- params['host']['compute_attributes'] = option_compute_attributes || {}
90
- params['host']['compute_attributes']['volumes_attributes'] = nested_attributes(option_volume_list)
91
- params['host']['interfaces_attributes'] = interfaces_attributes
92
-
93
- params['host']['root_pass'] = option_root_password unless option_root_password.nil?
94
14
 
95
- if option_ask_root_password
96
- params['host']['root_pass'] = HammerCLIForeman::CommonHostUpdateOptions::ask_password
97
- end
98
-
99
- params
100
- end
101
-
102
- private
103
-
104
- def proxy_id(name)
105
- resolver.smart_proxy_id('option_name' => name) if name
106
- end
107
-
108
- def puppet_class_ids(names)
109
- resolver.puppetclass_ids('option_names' => names) if names
110
- end
111
-
112
- def parameter_attributes
113
- return {} unless option_parameters
114
- option_parameters.collect do |key, value|
115
- if value.is_a? String
116
- {"name"=>key, "value"=>value}
117
- else
118
- {"name"=>key, "value"=>value.inspect}
119
- end
120
- end
121
- end
15
+ class Host < HammerCLIForeman::Command
122
16
 
123
- def nested_attributes(attrs)
124
- return {} unless attrs
17
+ resource :hosts
125
18
 
126
- nested_hash = {}
127
- attrs.each_with_index do |attr, i|
128
- nested_hash[i.to_s] = attr
129
- end
130
- nested_hash
19
+ def self.extend_cr_help(cr)
20
+ cr_help_extensions[cr.name] = cr.method(:host_create_help)
131
21
  end
132
22
 
133
- def interfaces_attributes
134
- return {} if option_interface_list.empty?
135
-
136
- # move each attribute starting with "compute_" to compute_attributes
137
- option_interface_list.collect do |nic|
138
- compute_attributes = {}
139
- nic.keys.each do |key|
140
- if key.start_with? 'compute_'
141
- compute_attributes[key.gsub('compute_', '')] = nic.delete(key)
142
- end
143
- end
144
- nic['compute_attributes'] = compute_attributes unless compute_attributes.empty?
145
- nic
146
- end
23
+ def self.cr_help_extensions
24
+ @cr_help_extensions ||= {}
147
25
  end
148
26
 
149
- end
150
-
151
-
152
- class Host < HammerCLIForeman::Command
153
-
154
- resource :hosts
155
-
156
27
  class ListCommand < HammerCLIForeman::ListCommand
157
28
  # FIXME: list compute resource (model)
158
29
  output do
@@ -357,7 +228,8 @@ module HammerCLIForeman
357
228
  success_message _("Host created")
358
229
  failure_message _("Could not create the host")
359
230
 
360
- include HammerCLIForeman::CommonHostUpdateOptions
231
+ include HammerCLIForeman::Hosts::CommonUpdateOptions
232
+ include HammerCLIForeman::Hosts::CommonUpdateHelp
361
233
 
362
234
  def validate_options
363
235
  super
@@ -368,14 +240,15 @@ module HammerCLIForeman
368
240
  end
369
241
  end
370
242
  end
371
- end
372
243
 
244
+ end
373
245
 
374
246
  class UpdateCommand < HammerCLIForeman::UpdateCommand
375
247
  success_message _("Host updated")
376
248
  failure_message _("Could not update the host")
377
249
 
378
- include HammerCLIForeman::CommonHostUpdateOptions
250
+ include HammerCLIForeman::Hosts::CommonUpdateOptions
251
+ include HammerCLIForeman::Hosts::CommonUpdateHelp
379
252
  end
380
253
 
381
254
 
@@ -524,3 +397,5 @@ module HammerCLIForeman
524
397
  end
525
398
 
526
399
  end
400
+
401
+ require 'hammer_cli_foreman/compute_resources/all'