hammer_cli_foreman 2.5.1 → 3.0.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.
- checksums.yaml +4 -4
- data/doc/release_notes.md +10 -1
- data/lib/hammer_cli_foreman.rb +0 -21
- data/lib/hammer_cli_foreman/architecture.rb +5 -5
- data/lib/hammer_cli_foreman/associating_commands.rb +0 -24
- data/lib/hammer_cli_foreman/bookmark.rb +5 -5
- data/lib/hammer_cli_foreman/combination.rb +3 -13
- data/lib/hammer_cli_foreman/command_extensions.rb +0 -2
- data/lib/hammer_cli_foreman/commands.rb +2 -9
- data/lib/hammer_cli_foreman/compute_profile.rb +5 -5
- data/lib/hammer_cli_foreman/host.rb +0 -35
- data/lib/hammer_cli_foreman/hostgroup.rb +2 -53
- data/lib/hammer_cli_foreman/hosts/common_update_options.rb +1 -23
- data/lib/hammer_cli_foreman/id_resolver.rb +0 -61
- data/lib/hammer_cli_foreman/location.rb +0 -6
- data/lib/hammer_cli_foreman/mail_notification.rb +2 -2
- data/lib/hammer_cli_foreman/model.rb +5 -5
- data/lib/hammer_cli_foreman/operating_system.rb +10 -10
- data/lib/hammer_cli_foreman/option_sources.rb +0 -1
- data/lib/hammer_cli_foreman/option_sources/id_params.rb +27 -10
- data/lib/hammer_cli_foreman/option_sources/ids_params.rb +25 -6
- data/lib/hammer_cli_foreman/organization.rb +0 -6
- data/lib/hammer_cli_foreman/references.rb +0 -16
- data/lib/hammer_cli_foreman/settings.rb +3 -3
- data/lib/hammer_cli_foreman/smart_proxy.rb +0 -52
- data/lib/hammer_cli_foreman/usergroup.rb +5 -5
- data/lib/hammer_cli_foreman/version.rb +1 -1
- data/lib/minitest/coverage_reporter.rb +1 -1
- data/locale/ca/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/de/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/en/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/en_GB/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/es/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/fr/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/it/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/ja/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/ko/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/pt_BR/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/ru/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/zh_CN/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/locale/zh_TW/LC_MESSAGES/hammer-cli-foreman.mo +0 -0
- data/test/functional/architecture_test.rb +6 -4
- data/test/functional/bookmark_test.rb +3 -1
- data/test/functional/compute_profile_test.rb +3 -1
- data/test/functional/host_test.rb +0 -1
- data/test/functional/hostgroup/create_test.rb +0 -117
- data/test/functional/hostgroup/update_test.rb +0 -79
- data/test/functional/location_test.rb +0 -3
- data/test/functional/mail_notification_test.rb +3 -1
- data/test/functional/model_test.rb +3 -1
- data/test/functional/operating_system_test.rb +3 -1
- data/test/functional/settings_test.rb +4 -4
- data/test/functional/template_test.rb +4 -37
- data/test/functional/usergroup_test.rb +3 -1
- data/test/unit/apipie_resource_mock.rb +1 -39
- data/test/unit/architecture_test.rb +10 -10
- data/test/unit/bookmark_test.rb +10 -14
- data/test/unit/compute_profile_test.rb +10 -10
- data/test/unit/helpers/command.rb +0 -8
- data/test/unit/host_test.rb +14 -61
- data/test/unit/hostgroup_test.rb +7 -26
- data/test/unit/id_resolver_test.rb +0 -28
- data/test/unit/mail_notification_test.rb +4 -4
- data/test/unit/model_test.rb +47 -47
- data/test/unit/operating_system_test.rb +10 -16
- data/test/unit/option_sources/id_params_test.rb +9 -0
- data/test/unit/option_sources/ids_params_test.rb +9 -0
- data/test/unit/settings_test.rb +4 -4
- data/test/unit/smart_proxy_test.rb +0 -12
- data/test/unit/usergroup_test.rb +10 -10
- metadata +64 -85
- data/lib/hammer_cli_foreman/command_extensions/puppet_environment.rb +0 -29
- data/lib/hammer_cli_foreman/command_extensions/puppet_environments.rb +0 -29
- data/lib/hammer_cli_foreman/config_group.rb +0 -45
- data/lib/hammer_cli_foreman/option_sources/puppet_environment_params.rb +0 -59
- data/lib/hammer_cli_foreman/puppet_class.rb +0 -61
- data/lib/hammer_cli_foreman/puppet_environment.rb +0 -65
- data/lib/hammer_cli_foreman/smart_class_parameter.rb +0 -189
- data/test/functional/config_group_test.rb +0 -50
- data/test/functional/proxy_test.rb +0 -86
- data/test/functional/smart_class_parameter_test.rb +0 -97
- data/test/unit/config_group_test.rb +0 -82
- data/test/unit/puppet_class_test.rb +0 -72
- data/test/unit/puppet_environment_test.rb +0 -114
- data/test/unit/smart_class_parameter_test.rb +0 -113
@@ -208,7 +208,6 @@ describe 'info' do
|
|
208
208
|
provisioning_templates: [],
|
209
209
|
domains: [],
|
210
210
|
realms: [],
|
211
|
-
environments: [],
|
212
211
|
hostgroups: [],
|
213
212
|
organizations: [],
|
214
213
|
parameters: []
|
@@ -242,8 +241,6 @@ describe 'info' do
|
|
242
241
|
'',
|
243
242
|
'Realms:',
|
244
243
|
'',
|
245
|
-
'Environments:',
|
246
|
-
'',
|
247
244
|
'Hostgroups:',
|
248
245
|
'',
|
249
246
|
'Parameters:',
|
@@ -26,7 +26,7 @@ describe 'mail_notification' do
|
|
26
26
|
end
|
27
27
|
|
28
28
|
it 'should run list command with defaults' do
|
29
|
-
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.
|
29
|
+
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.5')) }
|
30
30
|
defaults = HammerCLI::Defaults.new(
|
31
31
|
{
|
32
32
|
organization_id: {
|
@@ -39,6 +39,8 @@ describe 'mail_notification' do
|
|
39
39
|
)
|
40
40
|
defaults.stubs(:write_to_file).returns(true)
|
41
41
|
defaults.stubs(:providers).returns(providers)
|
42
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_organization' => { 'id' => 2 } }]))
|
43
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_location' => { 'id' => 1 } }]))
|
42
44
|
api_expects(:mail_notifications, :index, 'List mail notifications').returns(@mail_notifications)
|
43
45
|
|
44
46
|
result = run_cmd(@cmd, { use_defaults: true, defaults: defaults })
|
@@ -26,7 +26,7 @@ describe 'model' do
|
|
26
26
|
end
|
27
27
|
|
28
28
|
it 'should run list command with defaults' do
|
29
|
-
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.
|
29
|
+
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.5')) }
|
30
30
|
defaults = HammerCLI::Defaults.new(
|
31
31
|
{
|
32
32
|
organization_id: {
|
@@ -39,6 +39,8 @@ describe 'model' do
|
|
39
39
|
)
|
40
40
|
defaults.stubs(:write_to_file).returns(true)
|
41
41
|
defaults.stubs(:providers).returns(providers)
|
42
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_organization' => { 'id' => 2 } }]))
|
43
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_location' => { 'id' => 1 } }]))
|
42
44
|
api_expects(:models, :index, 'List models').returns(@models)
|
43
45
|
|
44
46
|
result = run_cmd(@cmd, { use_defaults: true, defaults: defaults })
|
@@ -27,7 +27,7 @@ describe 'operating_system' do
|
|
27
27
|
end
|
28
28
|
|
29
29
|
it 'should run list command with defaults' do
|
30
|
-
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.
|
30
|
+
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.5')) }
|
31
31
|
defaults = HammerCLI::Defaults.new(
|
32
32
|
{
|
33
33
|
organization_id: {
|
@@ -40,6 +40,8 @@ describe 'operating_system' do
|
|
40
40
|
)
|
41
41
|
defaults.stubs(:write_to_file).returns(true)
|
42
42
|
defaults.stubs(:providers).returns(providers)
|
43
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_organization' => { 'id' => 2 } }]))
|
44
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_location' => { 'id' => 1 } }]))
|
43
45
|
api_expects(:operatingsystems, :index, 'List operating systems').returns(@operating_system)
|
44
46
|
|
45
47
|
result = run_cmd(@cmd, { use_defaults: true, defaults: defaults })
|
@@ -32,7 +32,7 @@ describe 'Settings' do
|
|
32
32
|
end
|
33
33
|
|
34
34
|
it 'should run list command with defaults' do
|
35
|
-
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.
|
35
|
+
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.5')) }
|
36
36
|
defaults = HammerCLI::Defaults.new(
|
37
37
|
{
|
38
38
|
organization_id: {
|
@@ -45,9 +45,9 @@ describe 'Settings' do
|
|
45
45
|
)
|
46
46
|
defaults.stubs(:write_to_file).returns(true)
|
47
47
|
defaults.stubs(:providers).returns(providers)
|
48
|
-
api_expects(:
|
49
|
-
|
50
|
-
).returns(
|
48
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_organization' => { 'id' => 2 } }]))
|
49
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_location' => { 'id' => 1 } }]))
|
50
|
+
api_expects(:settings, :index, 'List settings').returns(setting)
|
51
51
|
|
52
52
|
result = run_cmd(@cmd, { use_defaults: true, defaults: defaults })
|
53
53
|
_(result.exit_code).must_equal HammerCLI::EX_OK
|
@@ -140,45 +140,13 @@ describe 'template' do
|
|
140
140
|
@cmd = %w(template combination)
|
141
141
|
end
|
142
142
|
|
143
|
-
it 'should create new combination with warning' do
|
144
|
-
params = ['create','--provisioning-template-id=10', '--hostgroup-id=1', '--environment-id=1']
|
145
|
-
expected_result = success_result("Template combination created.\n")
|
146
|
-
expected_result.expected_err = "Warning: Option --environment-id is deprecated. Use --puppet-environment[-id] instead\n"
|
147
|
-
api_expects(:template_combinations, :create, 'Create template combination') do |params|
|
148
|
-
params['provisioning_template_id'] == 10 &&
|
149
|
-
params['hostgroup_id'] == 1 &&
|
150
|
-
params['environment_id'] == 1 &&
|
151
|
-
params['template_combination'] == {'environment_id' => 1, 'hostgroup_id' => 1}
|
152
|
-
end
|
153
|
-
|
154
|
-
result = run_cmd(@cmd + params)
|
155
|
-
assert_cmd(expected_result, result)
|
156
|
-
end
|
157
|
-
|
158
143
|
it 'should create new combination' do
|
159
|
-
params = ['create','--provisioning-template-id=10', '--hostgroup-id=1'
|
144
|
+
params = ['create','--provisioning-template-id=10', '--hostgroup-id=1']
|
160
145
|
expected_result = success_result("Template combination created.\n")
|
161
146
|
api_expects(:template_combinations, :create, 'Create template combination') do |params|
|
162
147
|
params['provisioning_template_id'] == 10 &&
|
163
148
|
params['hostgroup_id'] == 1 &&
|
164
|
-
params['
|
165
|
-
params['template_combination'] == {'environment_id' => 1, 'hostgroup_id' => 1}
|
166
|
-
end
|
167
|
-
|
168
|
-
result = run_cmd(@cmd + params)
|
169
|
-
assert_cmd(expected_result, result)
|
170
|
-
end
|
171
|
-
|
172
|
-
it 'should update combination with warning' do
|
173
|
-
params = ['update', '--id=3', '--provisioning-template-id=10', '--hostgroup-id=1', '--environment-id=1']
|
174
|
-
expected_result = success_result("Template combination updated.\n")
|
175
|
-
expected_result.expected_err = "Warning: Option --environment-id is deprecated. Use --puppet-environment[-id] instead\n"
|
176
|
-
api_expects(:template_combinations, :update, 'Update template combination') do |params|
|
177
|
-
params['id'] == '3' &&
|
178
|
-
params['provisioning_template_id'] == 10 &&
|
179
|
-
params['hostgroup_id'] == 1 &&
|
180
|
-
params['environment_id'] == 1 &&
|
181
|
-
params['template_combination'] == { 'environment_id' => 1, 'hostgroup_id' => 1 }
|
149
|
+
params['template_combination'] == {'hostgroup_id' => 1}
|
182
150
|
end
|
183
151
|
|
184
152
|
result = run_cmd(@cmd + params)
|
@@ -186,14 +154,13 @@ describe 'template' do
|
|
186
154
|
end
|
187
155
|
|
188
156
|
it 'should update combination' do
|
189
|
-
params = ['update', '--id=3', '--provisioning-template-id=10', '--hostgroup-id=1'
|
157
|
+
params = ['update', '--id=3', '--provisioning-template-id=10', '--hostgroup-id=1']
|
190
158
|
expected_result = success_result("Template combination updated.\n")
|
191
159
|
api_expects(:template_combinations, :update, 'Update template combination') do |params|
|
192
160
|
params['id'] == '3' &&
|
193
161
|
params['provisioning_template_id'] == 10 &&
|
194
162
|
params['hostgroup_id'] == 1 &&
|
195
|
-
params['
|
196
|
-
params['template_combination'] == { 'environment_id' => 1, 'hostgroup_id' => 1 }
|
163
|
+
params['template_combination'] == { 'hostgroup_id' => 1 }
|
197
164
|
end
|
198
165
|
|
199
166
|
result = run_cmd(@cmd + params)
|
@@ -27,7 +27,7 @@ describe 'user-group' do
|
|
27
27
|
end
|
28
28
|
|
29
29
|
it 'should run list command with defaults' do
|
30
|
-
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.
|
30
|
+
providers = { 'foreman' => HammerCLIForeman::Defaults.new(api_connection({}, '2.5')) }
|
31
31
|
defaults = HammerCLI::Defaults.new(
|
32
32
|
{
|
33
33
|
organization_id: {
|
@@ -40,6 +40,8 @@ describe 'user-group' do
|
|
40
40
|
)
|
41
41
|
defaults.stubs(:write_to_file).returns(true)
|
42
42
|
defaults.stubs(:providers).returns(providers)
|
43
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_organization' => { 'id' => 2 } }]))
|
44
|
+
api_expects(:users, :index, 'Find user').with_params(search: 'login=admin').returns(index_response([{ 'default_location' => { 'id' => 1 } }]))
|
43
45
|
api_expects(:usergroups, :index, 'List user groups').returns(@user_groups)
|
44
46
|
|
45
47
|
result = run_cmd(@cmd, { use_defaults: true, defaults: defaults })
|
@@ -19,15 +19,6 @@ module ResourceMocks
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
|
-
def self.smart_class_parameters_index
|
23
|
-
ResourceMocks.mock_action_call(:smart_class_parameters, :index,
|
24
|
-
{ "results" => [ { 'parameter' => 'config', 'id' => '1'} ] })
|
25
|
-
end
|
26
|
-
|
27
|
-
def self.smart_class_parameters_show
|
28
|
-
ResourceMocks.mock_action_call(:smart_class_parameters, :show, { 'smart_class_parameter' => { 'override_value_order' => '', 'environments' => [] }})
|
29
|
-
end
|
30
|
-
|
31
22
|
def self.smart_variables_index
|
32
23
|
ResourceMocks.mock_action_call(:smart_variables, :index,
|
33
24
|
{ "results" => [ { 'variable' => 'var', 'id' => '1'} ] })
|
@@ -107,8 +98,6 @@ module ResourceMocks
|
|
107
98
|
ResourceMocks.mock_action_call(:hosts, :show, {
|
108
99
|
"ip" => "192.168.122.51",
|
109
100
|
"ip6" => nil,
|
110
|
-
"environment_id" => 1,
|
111
|
-
"environment_name" => "production",
|
112
101
|
"last_report" => "2016-10-24 12:06:31 UTC",
|
113
102
|
"mac" => "52:54:00:ce:b2:b9",
|
114
103
|
"realm_id" => nil,
|
@@ -150,26 +139,11 @@ module ResourceMocks
|
|
150
139
|
"organization_name" => nil,
|
151
140
|
"location_id" => nil,
|
152
141
|
"location_name" => nil,
|
153
|
-
"puppet_status" => 0,
|
154
142
|
"model_name" => "KVM",
|
155
143
|
"configuration_status" => 0,
|
156
144
|
"configuration_status_label" => "No reports",
|
157
145
|
"name" => "foreman.example.com",
|
158
146
|
"id" => 1,
|
159
|
-
"puppet_proxy_id" => 1,
|
160
|
-
"puppet_proxy_name" => "foreman.example.com",
|
161
|
-
"puppet_ca_proxy_id" => 1,
|
162
|
-
"puppet_ca_proxy_name" => "foreman.example.com",
|
163
|
-
"puppet_proxy" => {
|
164
|
-
"name" => "foreman.example.com",
|
165
|
-
"id" => 1,
|
166
|
-
"url" => "https://foreman.example.com:9090"
|
167
|
-
},
|
168
|
-
"puppet_ca_proxy" => {
|
169
|
-
"name" => "foreman.example.com",
|
170
|
-
"id" => 1,
|
171
|
-
"url" => "https://foreman.example.com:9090"
|
172
|
-
},
|
173
147
|
"hostgroup_name" => nil,
|
174
148
|
"hostgroup_title" => nil,
|
175
149
|
"parameters" => [],
|
@@ -193,10 +167,7 @@ module ResourceMocks
|
|
193
167
|
"primary" => false,
|
194
168
|
"provision" => false,
|
195
169
|
"type" => "interface"
|
196
|
-
}]
|
197
|
-
"puppetclasses" => [],
|
198
|
-
"config_groups" => [],
|
199
|
-
"all_puppetclasses" => []
|
170
|
+
}]
|
200
171
|
})
|
201
172
|
end
|
202
173
|
|
@@ -335,13 +306,4 @@ module ResourceMocks
|
|
335
306
|
"value" => "random value",
|
336
307
|
}])
|
337
308
|
end
|
338
|
-
|
339
|
-
def self.config_groups_index
|
340
|
-
ResourceMocks.mock_action_call(:config_groups, :index, [{
|
341
|
-
id: 15,
|
342
|
-
name: "test config group",
|
343
|
-
puppetclasses: [ { name: "My puppetclass" } ]
|
344
|
-
}])
|
345
|
-
end
|
346
|
-
|
347
309
|
end
|
@@ -17,8 +17,8 @@ describe HammerCLIForeman::Architecture do
|
|
17
17
|
context "parameters" do
|
18
18
|
it_should_accept "no arguments"
|
19
19
|
it_should_accept_search_params
|
20
|
-
|
21
|
-
|
20
|
+
it_should_accept 'organization', ['--organization-id=1']
|
21
|
+
it_should_accept 'location', ['--location-id=1']
|
22
22
|
end
|
23
23
|
|
24
24
|
context "output" do
|
@@ -39,8 +39,8 @@ describe HammerCLIForeman::Architecture do
|
|
39
39
|
context "parameters" do
|
40
40
|
it_should_accept "id", ["--id=1"]
|
41
41
|
it_should_accept "name", ["--name=arch"]
|
42
|
-
|
43
|
-
|
42
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
43
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
44
44
|
# it_should_fail_with "no arguments" # TODO: temporarily disabled, parameters are checked in the id resolver
|
45
45
|
end
|
46
46
|
|
@@ -61,8 +61,8 @@ describe HammerCLIForeman::Architecture do
|
|
61
61
|
|
62
62
|
context "parameters" do
|
63
63
|
it_should_accept "name", ["--name=arch"]
|
64
|
-
|
65
|
-
|
64
|
+
it_should_accept 'organization', %w[--name=arch --organization-id=1]
|
65
|
+
it_should_accept 'location', %w[--name=arch --location-id=1]
|
66
66
|
# it_should_fail_with "name missing", []
|
67
67
|
# TODO: temporarily disabled, parameters are checked in the api
|
68
68
|
end
|
@@ -77,8 +77,8 @@ describe HammerCLIForeman::Architecture do
|
|
77
77
|
context "parameters" do
|
78
78
|
it_should_accept "name", ["--name=arch"]
|
79
79
|
it_should_accept "id", ["--id=1"]
|
80
|
-
|
81
|
-
|
80
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
81
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
82
82
|
# it_should_fail_with "name or id missing", [] # TODO: temporarily disabled, parameters are checked in the id resolver
|
83
83
|
end
|
84
84
|
|
@@ -92,8 +92,8 @@ describe HammerCLIForeman::Architecture do
|
|
92
92
|
context "parameters" do
|
93
93
|
it_should_accept "name", ["--name=arch", "--new-name=arch2"]
|
94
94
|
it_should_accept "id", ["--id=1", "--new-name=arch2"]
|
95
|
-
|
96
|
-
|
95
|
+
it_should_accept 'organization', %w[--id=1 --new-name=arch2 --organization-id=1]
|
96
|
+
it_should_accept 'location', %w[--id=1 --new-name=arch2 --location-id=1]
|
97
97
|
# it_should_fail_with "no params", [] # TODO: temporarily disabled, parameters are checked in the id resolver
|
98
98
|
# it_should_fail_with "name or id missing", ["--new-name=arch2"] # TODO: temporarily disabled, parameters are checked in the id resolver
|
99
99
|
end
|
data/test/unit/bookmark_test.rb
CHANGED
@@ -17,8 +17,8 @@ describe HammerCLIForeman::Bookmark do
|
|
17
17
|
|
18
18
|
context 'parameters' do
|
19
19
|
it_should_accept 'no arguments'
|
20
|
-
|
21
|
-
|
20
|
+
it_should_accept 'organization', ['--organization-id=1']
|
21
|
+
it_should_accept 'location', ['--location-id=1']
|
22
22
|
end
|
23
23
|
|
24
24
|
context 'output' do
|
@@ -41,8 +41,8 @@ describe HammerCLIForeman::Bookmark do
|
|
41
41
|
context 'parameters' do
|
42
42
|
it_should_accept 'id', ['--id=1']
|
43
43
|
it_should_accept 'name', ['--name=active']
|
44
|
-
|
45
|
-
|
44
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
45
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
46
46
|
end
|
47
47
|
|
48
48
|
context 'output' do
|
@@ -63,11 +63,9 @@ describe HammerCLIForeman::Bookmark do
|
|
63
63
|
let(:cmd) { HammerCLIForeman::Bookmark::CreateCommand.new('', ctx) }
|
64
64
|
|
65
65
|
context 'parameters' do
|
66
|
-
it_should_accept 'name, public, controller, query',
|
67
|
-
['--name=active', '--public=1', '--controller=hosts',
|
66
|
+
it_should_accept 'name, public, controller, query, organization, location',
|
67
|
+
['--name=active', '--public=1', '--controller=hosts', '--organization-id=1', '--location-id=1',
|
68
68
|
'--query=last_report > "35 minutes ago" and (status.applied > 0 or status.restarted > 0)']
|
69
|
-
it_should_fail_with 'organization param', ['--organization-id=1']
|
70
|
-
it_should_fail_with 'location param', ['--location-id=1']
|
71
69
|
end
|
72
70
|
|
73
71
|
end
|
@@ -78,8 +76,8 @@ describe HammerCLIForeman::Bookmark do
|
|
78
76
|
context 'parameters' do
|
79
77
|
it_should_accept 'id', ['--id=1']
|
80
78
|
it_should_accept 'name', ['--name=active']
|
81
|
-
|
82
|
-
|
79
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
80
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
83
81
|
end
|
84
82
|
end
|
85
83
|
|
@@ -89,11 +87,9 @@ describe HammerCLIForeman::Bookmark do
|
|
89
87
|
context 'parameters' do
|
90
88
|
it_should_accept 'id', ['--id=1']
|
91
89
|
it_should_accept 'name', ['--name=active']
|
92
|
-
it_should_accept 'name, public, controller, query',
|
93
|
-
['--name=active', '--public=1', '--controller=hosts',
|
90
|
+
it_should_accept 'name, public, controller, query, organization, location',
|
91
|
+
['--name=active', '--public=1', '--controller=hosts', '--organization-id=1', '--location-id=1',
|
94
92
|
'--query=last_report > "35 minutes ago" and (status.applied > 0 or status.restarted > 0)']
|
95
|
-
it_should_fail_with 'organization param', ['--organization-id=1']
|
96
|
-
it_should_fail_with 'location param', ['--location-id=1']
|
97
93
|
end
|
98
94
|
end
|
99
95
|
end
|
@@ -17,8 +17,8 @@ describe HammerCLIForeman::ComputeProfile do
|
|
17
17
|
|
18
18
|
context 'parameters' do
|
19
19
|
it_should_accept 'no arguments'
|
20
|
-
|
21
|
-
|
20
|
+
it_should_accept 'organization', ['--organization-id=1']
|
21
|
+
it_should_accept 'location', ['--location-id=1']
|
22
22
|
end
|
23
23
|
|
24
24
|
context 'output' do
|
@@ -36,8 +36,8 @@ describe HammerCLIForeman::ComputeProfile do
|
|
36
36
|
context 'parameters' do
|
37
37
|
it_should_accept 'id', ['--id=1']
|
38
38
|
it_should_accept 'name', ['--name=test']
|
39
|
-
|
40
|
-
|
39
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
40
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
41
41
|
end
|
42
42
|
|
43
43
|
context 'output' do
|
@@ -57,8 +57,8 @@ describe HammerCLIForeman::ComputeProfile do
|
|
57
57
|
|
58
58
|
context 'parameters' do
|
59
59
|
it_should_accept 'name', ['--name=test']
|
60
|
-
|
61
|
-
|
60
|
+
it_should_accept 'organization', %w[--name=test --organization-id=1]
|
61
|
+
it_should_accept 'location', %w[--name=test --location-id=1]
|
62
62
|
end
|
63
63
|
|
64
64
|
end
|
@@ -69,8 +69,8 @@ describe HammerCLIForeman::ComputeProfile do
|
|
69
69
|
context 'parameters' do
|
70
70
|
it_should_accept 'id', ['--id=1']
|
71
71
|
it_should_accept 'name', ['--name=test']
|
72
|
-
|
73
|
-
|
72
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
73
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
74
74
|
end
|
75
75
|
end
|
76
76
|
|
@@ -80,8 +80,8 @@ describe HammerCLIForeman::ComputeProfile do
|
|
80
80
|
context 'parameters' do
|
81
81
|
it_should_accept 'id', ['--id=1']
|
82
82
|
it_should_accept 'name', ['--name=test']
|
83
|
-
|
84
|
-
|
83
|
+
it_should_accept 'organization', %w[--id=1 --organization-id=1]
|
84
|
+
it_should_accept 'location', %w[--id=1 --location-id=1]
|
85
85
|
end
|
86
86
|
end
|
87
87
|
end
|
@@ -17,14 +17,6 @@ class IdResolverTestProxy
|
|
17
17
|
@original_resolver.searchables(resource)
|
18
18
|
end
|
19
19
|
|
20
|
-
def puppet_environment_id(options)
|
21
|
-
environment_id(options)
|
22
|
-
end
|
23
|
-
|
24
|
-
def puppet_environment_ids(options)
|
25
|
-
environment_ids(options)
|
26
|
-
end
|
27
|
-
|
28
20
|
protected
|
29
21
|
|
30
22
|
def define_id_finders
|
data/test/unit/host_test.rb
CHANGED
@@ -45,8 +45,7 @@ describe HammerCLIForeman::Host do
|
|
45
45
|
with_params ["--id=1"] do
|
46
46
|
it_should_print_n_records 1
|
47
47
|
it_should_print_columns ["Id", "Name", "Organization", "Location"]
|
48
|
-
it_should_print_columns ["Host Group", "Compute Resource", "Compute Profile"
|
49
|
-
it_should_print_columns ["Puppet CA Proxy", "Puppet Master Proxy", "Cert name"]
|
48
|
+
it_should_print_columns ["Host Group", "Compute Resource", "Compute Profile"]
|
50
49
|
it_should_print_columns ["Managed", "Status", "Installed at", "Last report"]
|
51
50
|
it_should_print_columns ["Network", "Network interfaces", "Operating system", "Parameters", "All parameters", "Additional info"]
|
52
51
|
end
|
@@ -106,32 +105,6 @@ describe HammerCLIForeman::Host do
|
|
106
105
|
end
|
107
106
|
end
|
108
107
|
|
109
|
-
|
110
|
-
context "PuppetClassesCommand" do
|
111
|
-
before do
|
112
|
-
ResourceMocks.mock_action_call(:puppetclasses, :index, {})
|
113
|
-
end
|
114
|
-
|
115
|
-
let(:cmd) { HammerCLIForeman::Host::PuppetClassesCommand.new("", ctx) }
|
116
|
-
|
117
|
-
context "parameters" do
|
118
|
-
it_should_accept "host", ["--host=name=my5name.mydomain.net"]
|
119
|
-
it_should_accept "host-id", ["--host-id=1"]
|
120
|
-
# it_should_fail_with "host or host-id missing", []
|
121
|
-
# TODO: temporarily disabled, parameters are checked in the id resolver
|
122
|
-
end
|
123
|
-
|
124
|
-
context "output" do
|
125
|
-
|
126
|
-
with_params ["--host=my5name.mydomain.net"] do
|
127
|
-
it_should_print_column "Id"
|
128
|
-
it_should_print_column "Name"
|
129
|
-
end
|
130
|
-
end
|
131
|
-
|
132
|
-
end
|
133
|
-
|
134
|
-
|
135
108
|
context "ConfigReportsCommand" do
|
136
109
|
before do
|
137
110
|
ResourceMocks.mock_action_call(:config_reports, :index, [])
|
@@ -186,29 +159,25 @@ describe HammerCLIForeman::Host do
|
|
186
159
|
|
187
160
|
context "parameters" do
|
188
161
|
taxonomies = ["--organization-id=1", "--location-id=1"]
|
189
|
-
it_should_accept "name,
|
190
|
-
["--name=host", "--
|
162
|
+
it_should_accept "name, architecture_id, domain_id, operatingsystem_id and more",
|
163
|
+
["--name=host", "--architecture-id=1", "--domain-id=1", "--operatingsystem-id=1",
|
191
164
|
"--ip=1.2.3.4", "--mac=11:22:33:44:55:66", "--medium-id=1", "--partition-table-id=1", "--subnet-id=1",
|
192
|
-
"--model-id=1", "--hostgroup-id=1", "--owner-id=1",
|
165
|
+
"--model-id=1", "--hostgroup-id=1", "--owner-id=1",
|
193
166
|
"--root-password=pwd", "--ask-root-password=true", "--provision-method=build", "--interface=primary=true,provision=true"] + taxonomies
|
194
167
|
it_should_fail_with "name or id missing",
|
195
|
-
["--
|
196
|
-
it_should_fail_with "environment_id missing",
|
197
|
-
["--name=host", "--architecture-id=1", "--domain-id=1", "--puppet-proxy-id=1", "--operatingsystem-id=1", "--interface=primary=true,provision=true"]
|
168
|
+
["--architecture-id=1", "--domain-id=1", "--operatingsystem-id=1", "--interface=primary=true,provision=true"]
|
198
169
|
it_should_fail_with "architecture_id missing",
|
199
|
-
["--name=host", "--
|
170
|
+
["--name=host", "--domain-id=1", "--operatingsystem-id=1", "--interface=primary=true,provision=true"]
|
200
171
|
it_should_fail_with "domain_id missing",
|
201
|
-
["--name=host", "--
|
202
|
-
it_should_fail_with "puppet_proxy_id missing",
|
203
|
-
["--name=host", "--environment-id=1", "--architecture-id=1", "--domain-id=1", "--operatingsystem-id=1", "--interface=primary=true,provision=true"]
|
172
|
+
["--name=host", "--architecture-id=1", "--operatingsystem-id=1", "--interface=primary=true,provision=true"]
|
204
173
|
it_should_fail_with "operatingsystem_id missing",
|
205
|
-
["--name=host", "--
|
174
|
+
["--name=host", "--architecture-id=1", "--domain-id=1", "--interface=primary=true,provision=true"]
|
206
175
|
it_should_accept "only hostgroup name", ["--hostgroup=example", "--name=host", "--interface=primary=true,provision=true"] + taxonomies
|
207
176
|
it_should_accept "only hostgroup ID", ["--hostgroup-id=1", "--name=host", "--interface=primary=true,provision=true"] + taxonomies
|
208
177
|
|
209
|
-
with_params ["--name=host", "--
|
178
|
+
with_params ["--name=host", "--architecture-id=1", "--domain-id=1", "--operatingsystem-id=1",
|
210
179
|
"--ip=1.2.3.4", "--mac=11:22:33:44:55:66", "--medium-id=1", "--partition-table-id=1", "--subnet-id=1",
|
211
|
-
"--model-id=1", "--hostgroup-id=1", "--owner-id=1",
|
180
|
+
"--model-id=1", "--hostgroup-id=1", "--owner-id=1",
|
212
181
|
"--root-password=pwd", "--ask-root-password=true", "--provision-method=build", "--interface=primary=true,provision=true"] do
|
213
182
|
it_should_call_action_and_test_params(:create) { |par| par["host"]["managed"] == true }
|
214
183
|
it_should_call_action_and_test_params(:create) { |par| par["host"]["build"] == true }
|
@@ -240,16 +209,16 @@ describe HammerCLIForeman::Host do
|
|
240
209
|
|
241
210
|
context "parameters" do
|
242
211
|
it_should_accept "name", ["--name=host", "--new-name=host2"]
|
243
|
-
it_should_accept "id and more", ["--id=1", "--new-name=host2", "--
|
244
|
-
"--domain-id=1", "--
|
212
|
+
it_should_accept "id and more", ["--id=1", "--new-name=host2", "--architecture-id=1",
|
213
|
+
"--domain-id=1", "--operatingsystem-id=1",
|
245
214
|
"--ip=1.2.3.4", "--mac=11:22:33:44:55:66", "--medium-id=1", "--partition-table-id=1", "--subnet-id=1",
|
246
|
-
"--model-id=1", "--hostgroup-id=1", "--owner-id=1",
|
215
|
+
"--model-id=1", "--hostgroup-id=1", "--owner-id=1",
|
247
216
|
"--root-password=pwd", "--ask-root-password=true", "--provision-method=build"]
|
248
217
|
# it_should_fail_with "no params", []
|
249
218
|
# it_should_fail_with "name or id missing", ["--new-name=host2"]
|
250
219
|
# TODO: temporarily disabled, parameters are checked in the id resolver
|
251
220
|
|
252
|
-
with_params ["--id=1"
|
221
|
+
with_params ["--id=1"] do
|
253
222
|
it_should_call_action_and_test_params(:update) { |par| par["host"].key?("managed") != true }
|
254
223
|
it_should_call_action_and_test_params(:update) { |par| par["host"].key?("build") != true }
|
255
224
|
it_should_call_action_and_test_params(:update) { |par| par["host"].key?("enabled") != true }
|
@@ -350,22 +319,6 @@ describe HammerCLIForeman::Host do
|
|
350
319
|
end
|
351
320
|
end
|
352
321
|
|
353
|
-
context "SCParamsCommand" do
|
354
|
-
|
355
|
-
before :each do
|
356
|
-
ResourceMocks.smart_class_parameters_index
|
357
|
-
end
|
358
|
-
|
359
|
-
let(:cmd) { HammerCLIForeman::Host::SCParamsCommand.new("", ctx) }
|
360
|
-
|
361
|
-
context "parameters" do
|
362
|
-
it_should_accept "host", ["--host=host"]
|
363
|
-
it_should_accept "host-id", ["--host-id=1"]
|
364
|
-
# it_should_fail_with "name or id missing", [] # TODO: temporarily disabled, parameters are checked in the id resolver
|
365
|
-
end
|
366
|
-
|
367
|
-
end
|
368
|
-
|
369
322
|
context "RebuildConfigCommand" do
|
370
323
|
|
371
324
|
let(:cmd) { HammerCLIForeman::Host::RebuildConfigCommand.new("", ctx) }
|