hammer_cli_foreman 0.0.9 → 0.0.10
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.
Potentially problematic release.
This version of hammer_cli_foreman might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/lib/hammer_cli_foreman/commands.rb +1 -1
- data/lib/hammer_cli_foreman/compute_resource.rb +6 -7
- data/lib/hammer_cli_foreman/host.rb +89 -12
- data/lib/hammer_cli_foreman/image.rb +152 -0
- data/lib/hammer_cli_foreman/media.rb +4 -2
- data/lib/hammer_cli_foreman/operating_system.rb +16 -8
- data/lib/hammer_cli_foreman/partition_table.rb +4 -2
- data/lib/hammer_cli_foreman/smart_proxy.rb +33 -6
- data/lib/hammer_cli_foreman/template.rb +4 -2
- data/lib/hammer_cli_foreman/version.rb +1 -1
- metadata +42 -48
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3108251968e9b35a4e1a1ee37bf744bb08f1e383
|
4
|
+
data.tar.gz: 48d434939e0033fe7d593dd21eb03b168f33dfba
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c4e6d4167fc2916eb970123f97bd41f62eb0751c929b2392d448ab324fef651cbcbfb4ff7f54847be4c44716941d66bafd44a7e627f29a2fcf8438a32eb5f98a
|
7
|
+
data.tar.gz: 7a13a75d06913975322d17dca8411c70401571eede40e84fc00f01630391a24af8aba1ce26fc4ed5959ada591037ccd5edf4f466db4f7ba94b981cf78133a34e
|
@@ -1,13 +1,14 @@
|
|
1
1
|
require 'hammer_cli'
|
2
2
|
require 'foreman_api'
|
3
3
|
require 'hammer_cli_foreman/commands'
|
4
|
+
require 'hammer_cli_foreman/image'
|
4
5
|
|
5
6
|
module HammerCLIForeman
|
6
7
|
|
7
|
-
class ComputeResource < HammerCLI::
|
8
|
+
class ComputeResource < HammerCLI::Apipie::Command
|
9
|
+
resource ForemanApi::Resources::ComputeResource
|
8
10
|
|
9
11
|
class ListCommand < HammerCLIForeman::ListCommand
|
10
|
-
resource ForemanApi::Resources::ComputeResource, "index"
|
11
12
|
|
12
13
|
output do
|
13
14
|
from "compute_resource" do
|
@@ -44,8 +45,6 @@ module HammerCLIForeman
|
|
44
45
|
]
|
45
46
|
}
|
46
47
|
|
47
|
-
resource ForemanApi::Resources::ComputeResource, "show"
|
48
|
-
|
49
48
|
output ListCommand.output_definition do
|
50
49
|
from "compute_resource" do
|
51
50
|
field :url, "Url"
|
@@ -69,7 +68,6 @@ module HammerCLIForeman
|
|
69
68
|
|
70
69
|
success_message "Compute resource created"
|
71
70
|
failure_message "Could not create the compute resource"
|
72
|
-
resource ForemanApi::Resources::ComputeResource, "create"
|
73
71
|
|
74
72
|
apipie_options
|
75
73
|
|
@@ -83,7 +81,6 @@ module HammerCLIForeman
|
|
83
81
|
|
84
82
|
success_message "Compute resource updated"
|
85
83
|
failure_message "Could not update the compute resource"
|
86
|
-
resource ForemanApi::Resources::ComputeResource, "update"
|
87
84
|
|
88
85
|
apipie_options
|
89
86
|
end
|
@@ -93,15 +90,17 @@ module HammerCLIForeman
|
|
93
90
|
|
94
91
|
success_message "Compute resource deleted"
|
95
92
|
failure_message "Could not delete the compute resource"
|
96
|
-
resource ForemanApi::Resources::ComputeResource, "destroy"
|
97
93
|
|
98
94
|
apipie_options
|
99
95
|
end
|
100
96
|
|
97
|
+
|
101
98
|
autoload_subcommands
|
99
|
+
subcommand 'image', HammerCLIForeman::Image.desc, HammerCLIForeman::Image
|
102
100
|
end
|
103
101
|
|
104
102
|
end
|
105
103
|
|
106
104
|
HammerCLI::MainCommand.subcommand 'compute_resource', "Manipulate Foreman's compute resources.", HammerCLIForeman::ComputeResource
|
107
105
|
|
106
|
+
|
@@ -7,8 +7,89 @@ require 'hammer_cli_foreman/puppet_class'
|
|
7
7
|
|
8
8
|
module HammerCLIForeman
|
9
9
|
|
10
|
+
module CommonHostUpdateOptions
|
11
|
+
|
12
|
+
def self.included(base)
|
13
|
+
base.apipie_options :without => [:host_parameters_attributes, :environment_id, :architecture_id, :domain_id,
|
14
|
+
:puppet_proxy_id, :operatingsystem_id,
|
15
|
+
# - temporarily disabled params until we add support for boolean options to apipie -
|
16
|
+
:build, :managed, :enabled, :start,
|
17
|
+
# - temporarily disabled params that will be removed from the api ------------------
|
18
|
+
:provision_method, :capabilities, :flavour_ref, :image_ref, :start,
|
19
|
+
:network, :cpus, :memory, :provider, :type, :tenant_id, :image_id,
|
20
|
+
# ----------------------------------------------------------------------------------
|
21
|
+
:compute_resource_id, :ptable_id] + base.declared_identifiers.keys
|
22
|
+
|
23
|
+
base.option "--environment-id", "ENVIRONMENT_ID", " "
|
24
|
+
base.option "--architecture-id", "ARCHITECTURE_ID", " "
|
25
|
+
base.option "--domain-id", "DOMAIN_ID", " "
|
26
|
+
base.option "--puppet-proxy-id", "PUPPET_PROXY_ID", " "
|
27
|
+
base.option "--operatingsystem-id", "OPERATINGSYSTEM_ID", " "
|
28
|
+
base.option "--partition-table-id", "PARTITION_TABLE_ID", " "
|
29
|
+
base.option "--compute-resource-id", "COMPUTE_RESOURCE", " "
|
30
|
+
base.option "--partition-table-id", "PARTITION_TABLE", " "
|
31
|
+
|
32
|
+
base.option "--build", "BUILD", " ", :default => 'true',
|
33
|
+
:format => HammerCLI::Options::Normalizers::Bool.new
|
34
|
+
base.option "--managed", "MANAGED", " ", :default => 'true',
|
35
|
+
:format => HammerCLI::Options::Normalizers::Bool.new
|
36
|
+
base.option "--enabled", "ENABLED", " ", :default => 'true',
|
37
|
+
:format => HammerCLI::Options::Normalizers::Bool.new
|
38
|
+
|
39
|
+
base.option "--parameters", "PARAMS", "Host parameters.",
|
40
|
+
:format => HammerCLI::Options::Normalizers::KeyValueList.new
|
41
|
+
base.option "--compute-attributes", "COMPUTE_ATTRS", "Compute resource attributes.",
|
42
|
+
:format => HammerCLI::Options::Normalizers::KeyValueList.new
|
43
|
+
base.option "--volume", "VOLUME", "Volume parameters", :multivalued => true,
|
44
|
+
:format => HammerCLI::Options::Normalizers::KeyValueList.new
|
45
|
+
base.option "--interface", "INTERFACE", "Interface parameters.", :multivalued => true,
|
46
|
+
:format => HammerCLI::Options::Normalizers::KeyValueList.new
|
47
|
+
|
48
|
+
end
|
49
|
+
|
50
|
+
def request_params
|
51
|
+
params = super
|
52
|
+
|
53
|
+
params['host']['build'] = build
|
54
|
+
params['host']['managed'] = managed
|
55
|
+
params['host']['enabled'] = enabled
|
56
|
+
|
57
|
+
params['host']['ptable_id'] = partition_table_id
|
58
|
+
params['host']['compute_resource_id'] = compute_resource_id
|
59
|
+
params['host']['host_parameters_attributes'] = parameter_attributes
|
60
|
+
params['host']['compute_attributes'] = compute_attributes || {}
|
61
|
+
params['host']['compute_attributes']['volumes_attributes'] = nested_attributes(volume_list)
|
62
|
+
params['host']['compute_attributes']['interfaces_attributes'] = nested_attributes(interface_list)
|
63
|
+
params['host']['compute_attributes']['nics_attributes'] = nested_attributes(interface_list)
|
64
|
+
|
65
|
+
params
|
66
|
+
end
|
67
|
+
|
68
|
+
private
|
69
|
+
|
70
|
+
def parameter_attributes
|
71
|
+
return {} unless parameters
|
72
|
+
parameters.collect do |key, value|
|
73
|
+
{"name"=>key, "value"=>value, "nested"=>""}
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
def nested_attributes(attrs)
|
78
|
+
return {} unless attrs
|
79
|
+
|
80
|
+
nested_hash = {}
|
81
|
+
attrs.each_with_index do |attr, i|
|
82
|
+
nested_hash[i.to_s] = attr
|
83
|
+
end
|
84
|
+
nested_hash
|
85
|
+
end
|
86
|
+
|
87
|
+
end
|
88
|
+
|
89
|
+
|
10
90
|
class Host < HammerCLI::AbstractCommand
|
11
91
|
class ListCommand < HammerCLIForeman::ListCommand
|
92
|
+
# FIXME: list compute resource (model)
|
12
93
|
resource ForemanApi::Resources::Host, "index"
|
13
94
|
|
14
95
|
output do
|
@@ -175,24 +256,20 @@ module HammerCLIForeman
|
|
175
256
|
|
176
257
|
end
|
177
258
|
|
178
|
-
|
179
259
|
class CreateCommand < HammerCLIForeman::CreateCommand
|
180
260
|
|
181
261
|
success_message "Host created"
|
182
262
|
failure_message "Could not create the host"
|
183
263
|
resource ForemanApi::Resources::Host, "create"
|
184
264
|
|
185
|
-
|
265
|
+
include HammerCLIForeman::CommonHostUpdateOptions
|
186
266
|
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
"0"=>{"type"=>"network", "_delete"=>"", "network"=>"default", "bridge"=>""}
|
194
|
-
}
|
195
|
-
params
|
267
|
+
validate_options do
|
268
|
+
unless option(:hostgroup_id).exist?
|
269
|
+
all(:environment_id, :architecture_id, :domain_id,
|
270
|
+
:puppet_proxy_id, :operatingsystem_id,
|
271
|
+
:partition_table_id).required
|
272
|
+
end
|
196
273
|
end
|
197
274
|
end
|
198
275
|
|
@@ -203,7 +280,7 @@ module HammerCLIForeman
|
|
203
280
|
failure_message "Could not update the host"
|
204
281
|
resource ForemanApi::Resources::Host, "update"
|
205
282
|
|
206
|
-
|
283
|
+
include HammerCLIForeman::CommonHostUpdateOptions
|
207
284
|
end
|
208
285
|
|
209
286
|
|
@@ -0,0 +1,152 @@
|
|
1
|
+
require 'hammer_cli'
|
2
|
+
require 'foreman_api'
|
3
|
+
require 'hammer_cli_foreman/commands'
|
4
|
+
require 'hammer_cli_foreman/compute_resource'
|
5
|
+
|
6
|
+
module HammerCLIForeman
|
7
|
+
|
8
|
+
class Image < HammerCLI::Apipie::Command
|
9
|
+
|
10
|
+
resource ForemanApi::Resources::Image
|
11
|
+
command_name 'image'
|
12
|
+
desc "View and manage compute resource's images"
|
13
|
+
|
14
|
+
|
15
|
+
module ComputeResourceOptions
|
16
|
+
|
17
|
+
def self.included(base)
|
18
|
+
base.option "--compute-resource", "COMPUTE_RESOURCE_NAME", "Compute resource's name"
|
19
|
+
base.option "--compute-resource-id", "COMPUTE_RESOURCE_ID", "Compute resource's id"
|
20
|
+
base.apipie_options :without => [:compute_resource_id, :id]
|
21
|
+
|
22
|
+
base.validate_options do
|
23
|
+
any(:compute_resource_id, :compute_resource).required
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
class ListCommand < HammerCLIForeman::ListCommand
|
31
|
+
|
32
|
+
include HammerCLIForeman::Image::ComputeResourceOptions
|
33
|
+
|
34
|
+
output do
|
35
|
+
from "image" do
|
36
|
+
field :id, "Id"
|
37
|
+
field :name, "Name"
|
38
|
+
field :operatingsystem_id, "Operating System Id", Fields::Id
|
39
|
+
field :username, "Username"
|
40
|
+
field :uuid, "UUID"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def request_params
|
45
|
+
params = super
|
46
|
+
params['compute_resource_id'] = compute_resource_id || compute_resource
|
47
|
+
params
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
class InfoCommand < HammerCLIForeman::InfoCommand
|
54
|
+
|
55
|
+
include HammerCLIForeman::Image::ComputeResourceOptions
|
56
|
+
|
57
|
+
identifiers :id
|
58
|
+
|
59
|
+
output ListCommand.output_definition do
|
60
|
+
from "image" do
|
61
|
+
field :architecture_id, "Architecture Id", Fields::Id
|
62
|
+
field :iam_role, "IAM role"
|
63
|
+
field :created_at, "Created at", Fields::Date
|
64
|
+
field :updated_at, "Updated at", Fields::Date
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
def request_params
|
69
|
+
params = super
|
70
|
+
params['compute_resource_id'] = compute_resource_id || compute_resource
|
71
|
+
params
|
72
|
+
end
|
73
|
+
|
74
|
+
end
|
75
|
+
|
76
|
+
|
77
|
+
class AvailableImagesCommand < HammerCLIForeman::ListCommand
|
78
|
+
|
79
|
+
resource ForemanApi::Resources::ComputeResource, "available_images"
|
80
|
+
command_name 'available'
|
81
|
+
desc "Show images available for addition"
|
82
|
+
|
83
|
+
include HammerCLIForeman::Image::ComputeResourceOptions
|
84
|
+
|
85
|
+
output do
|
86
|
+
from "image" do
|
87
|
+
field :name, "Name"
|
88
|
+
field :uuid, "UUID"
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
def request_params
|
93
|
+
params = super
|
94
|
+
params['id'] = compute_resource_id || compute_resource
|
95
|
+
params
|
96
|
+
end
|
97
|
+
|
98
|
+
end
|
99
|
+
|
100
|
+
|
101
|
+
class CreateCommand < HammerCLIForeman::CreateCommand
|
102
|
+
|
103
|
+
include HammerCLIForeman::Image::ComputeResourceOptions
|
104
|
+
|
105
|
+
success_message "Image created"
|
106
|
+
failure_message "Could not create the image"
|
107
|
+
|
108
|
+
def request_params
|
109
|
+
params = super
|
110
|
+
params['compute_resource_id'] = compute_resource_id || compute_resource
|
111
|
+
params
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
|
116
|
+
class UpdateCommand < HammerCLIForeman::UpdateCommand
|
117
|
+
|
118
|
+
include HammerCLIForeman::Image::ComputeResourceOptions
|
119
|
+
|
120
|
+
success_message "Image updated"
|
121
|
+
failure_message "Could not update the image"
|
122
|
+
identifiers :id
|
123
|
+
|
124
|
+
def request_params
|
125
|
+
params = super
|
126
|
+
params['compute_resource_id'] = compute_resource_id || compute_resource
|
127
|
+
params
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
|
132
|
+
class DeleteCommand < HammerCLIForeman::DeleteCommand
|
133
|
+
|
134
|
+
include HammerCLIForeman::Image::ComputeResourceOptions
|
135
|
+
|
136
|
+
success_message "Image deleted"
|
137
|
+
failure_message "Could not delete the image"
|
138
|
+
identifiers :id
|
139
|
+
|
140
|
+
def request_params
|
141
|
+
params = super
|
142
|
+
params['compute_resource_id'] = compute_resource_id || compute_resource
|
143
|
+
params
|
144
|
+
end
|
145
|
+
|
146
|
+
end
|
147
|
+
|
148
|
+
autoload_subcommands
|
149
|
+
end
|
150
|
+
|
151
|
+
end
|
152
|
+
|
@@ -43,7 +43,8 @@ module HammerCLIForeman
|
|
43
43
|
apipie_options
|
44
44
|
|
45
45
|
#FIXME: remove OS ids option and custom request_params once it's added to foreman's apipie docs
|
46
|
-
option "--operatingsystem-ids", "OSIDS", "os ids",
|
46
|
+
option "--operatingsystem-ids", "OSIDS", "os ids",
|
47
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
47
48
|
|
48
49
|
def request_params
|
49
50
|
params = super
|
@@ -61,7 +62,8 @@ module HammerCLIForeman
|
|
61
62
|
apipie_options
|
62
63
|
|
63
64
|
#FIXME: remove OS ids option and custom request_params once it's added to foreman's apipie docs
|
64
|
-
option "--operatingsystem-ids", "OSIDS", "os ids",
|
65
|
+
option "--operatingsystem-ids", "OSIDS", "os ids",
|
66
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
65
67
|
|
66
68
|
def request_params
|
67
69
|
params = super
|
@@ -59,10 +59,14 @@ module HammerCLIForeman
|
|
59
59
|
class CreateCommand < HammerCLIForeman::CreateCommand
|
60
60
|
|
61
61
|
#FIXME: replace with apipie_options when they are added to the api docs
|
62
|
-
option "--architecture-ids", "ARCH_IDS", "set associated architectures",
|
63
|
-
|
64
|
-
option "--
|
65
|
-
|
62
|
+
option "--architecture-ids", "ARCH_IDS", "set associated architectures",
|
63
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
64
|
+
option "--config-template-ids", "CONFIG_TPL_IDS", "set associated templates",
|
65
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
66
|
+
option "--medium-ids", "MEDIUM_IDS", "set associated installation media",
|
67
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
68
|
+
option "--ptable-ids", "PTABLE_IDS", "set associated partition tables",
|
69
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
66
70
|
|
67
71
|
success_message "Operating system created"
|
68
72
|
failure_message "Could not create the operating system"
|
@@ -83,10 +87,14 @@ module HammerCLIForeman
|
|
83
87
|
class UpdateCommand < HammerCLIForeman::UpdateCommand
|
84
88
|
|
85
89
|
#FIXME: replace with apipie_options when they are added to the api docs
|
86
|
-
option "--architecture-ids", "ARCH_IDS", "set associated architectures",
|
87
|
-
|
88
|
-
option "--
|
89
|
-
|
90
|
+
option "--architecture-ids", "ARCH_IDS", "set associated architectures",
|
91
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
92
|
+
option "--config-template-ids", "CONFIG_TPL_IDS", "set associated templates",
|
93
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
94
|
+
option "--medium-ids", "MEDIUM_IDS", "set associated installation media",
|
95
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
96
|
+
option "--ptable-ids", "PTABLE_IDS", "set associated partition tables",
|
97
|
+
:format => HammerCLI::Options::Normalizers::List.new
|
90
98
|
|
91
99
|
identifiers :id, :label
|
92
100
|
|
@@ -50,7 +50,8 @@ module HammerCLIForeman
|
|
50
50
|
|
51
51
|
class CreateCommand < HammerCLIForeman::CreateCommand
|
52
52
|
|
53
|
-
option "--file", "LAYOUT", "Path to a file that contains the partition layout", :attribute_name => :layout, :required => true,
|
53
|
+
option "--file", "LAYOUT", "Path to a file that contains the partition layout", :attribute_name => :layout, :required => true,
|
54
|
+
:format => HammerCLI::Options::Normalizers::File.new
|
54
55
|
|
55
56
|
success_message "Partition table created"
|
56
57
|
failure_message "Could not create the partition table"
|
@@ -61,7 +62,8 @@ module HammerCLIForeman
|
|
61
62
|
|
62
63
|
class UpdateCommand < HammerCLIForeman::UpdateCommand
|
63
64
|
|
64
|
-
option "--file", "LAYOUT", "Path to a file that contains the partition layout", :attribute_name => :layout,
|
65
|
+
option "--file", "LAYOUT", "Path to a file that contains the partition layout", :attribute_name => :layout,
|
66
|
+
:format => HammerCLI::Options::Normalizers::File.new
|
65
67
|
|
66
68
|
success_message "Partition table updated"
|
67
69
|
failure_message "Could not update the partition table"
|
@@ -4,9 +4,12 @@ require 'hammer_cli_foreman/commands'
|
|
4
4
|
|
5
5
|
module HammerCLIForeman
|
6
6
|
|
7
|
-
class SmartProxy < HammerCLI::
|
7
|
+
class SmartProxy < HammerCLI::Apipie::Command
|
8
|
+
resource ForemanApi::Resources::SmartProxy
|
9
|
+
|
8
10
|
class ListCommand < HammerCLIForeman::ListCommand
|
9
|
-
|
11
|
+
|
12
|
+
action :index
|
10
13
|
|
11
14
|
#FIXME: search by unknown type returns 500 from the server, propper error handling should resove this
|
12
15
|
output do
|
@@ -23,7 +26,7 @@ module HammerCLIForeman
|
|
23
26
|
|
24
27
|
class InfoCommand < HammerCLIForeman::InfoCommand
|
25
28
|
|
26
|
-
|
29
|
+
action :show
|
27
30
|
|
28
31
|
def retrieve_data
|
29
32
|
sp = super
|
@@ -44,19 +47,21 @@ module HammerCLIForeman
|
|
44
47
|
|
45
48
|
class CreateCommand < HammerCLIForeman::CreateCommand
|
46
49
|
|
50
|
+
action :create
|
51
|
+
|
47
52
|
success_message "Smart proxy created"
|
48
53
|
failure_message "Could not create the proxy"
|
49
|
-
resource ForemanApi::Resources::SmartProxy, "create"
|
50
54
|
|
51
55
|
apipie_options
|
52
56
|
end
|
53
57
|
|
54
58
|
|
55
59
|
class UpdateCommand < HammerCLIForeman::UpdateCommand
|
60
|
+
|
61
|
+
action :update
|
56
62
|
|
57
63
|
success_message "Smart proxy updated"
|
58
64
|
failure_message "Could not update the proxy"
|
59
|
-
resource ForemanApi::Resources::SmartProxy, "update"
|
60
65
|
|
61
66
|
apipie_options
|
62
67
|
end
|
@@ -64,13 +69,35 @@ module HammerCLIForeman
|
|
64
69
|
|
65
70
|
class DeleteCommand < HammerCLIForeman::DeleteCommand
|
66
71
|
|
72
|
+
action :destroy
|
73
|
+
|
67
74
|
success_message "Smart proxy deleted"
|
68
75
|
failure_message "Could not delete the proxy"
|
69
|
-
resource ForemanApi::Resources::SmartProxy, "destroy"
|
70
76
|
|
71
77
|
apipie_options
|
72
78
|
end
|
73
79
|
|
80
|
+
|
81
|
+
class ImportPuppetClassesCommand < HammerCLI::Apipie::WriteCommand
|
82
|
+
|
83
|
+
action :import_puppetclasses
|
84
|
+
|
85
|
+
command_name "import_classes"
|
86
|
+
success_message "Puppet classes were imported"
|
87
|
+
failure_message "Import of puppet classes failed"
|
88
|
+
|
89
|
+
option "--dryrun", :flag, "Do not run the import"
|
90
|
+
|
91
|
+
apipie_options :without => [:smart_proxy_id, :dryrun]
|
92
|
+
|
93
|
+
def request_params
|
94
|
+
opts = super
|
95
|
+
opts['dryrun'] = dryrun?
|
96
|
+
opts
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
|
74
101
|
autoload_subcommands
|
75
102
|
end
|
76
103
|
|
@@ -95,7 +95,8 @@ module HammerCLIForeman
|
|
95
95
|
|
96
96
|
class CreateCommand < HammerCLIForeman::CreateCommand
|
97
97
|
|
98
|
-
option "--file", "TEMPLATE", "Path to a file that contains the template", :attribute_name => :template, :required => true,
|
98
|
+
option "--file", "TEMPLATE", "Path to a file that contains the template", :attribute_name => :template, :required => true,
|
99
|
+
:format => HammerCLI::Options::Normalizers::File.new
|
99
100
|
option "--type", "TYPE", "Template type. Eg. snippet, script, provision", :required => true
|
100
101
|
|
101
102
|
success_message "Config template created"
|
@@ -117,7 +118,8 @@ module HammerCLIForeman
|
|
117
118
|
|
118
119
|
class UpdateCommand < HammerCLIForeman::UpdateCommand
|
119
120
|
|
120
|
-
option "--file", "TEMPLATE", "Path to a file that contains the template", :attribute_name => :template,
|
121
|
+
option "--file", "TEMPLATE", "Path to a file that contains the template", :attribute_name => :template,
|
122
|
+
:format => HammerCLI::Options::Normalizers::File.new
|
121
123
|
option "--type", "TYPE", "Template type. Eg. snippet, script, provision"
|
122
124
|
|
123
125
|
identifiers :id
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hammer_cli_foreman
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.10
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Tomáš Strachota
|
@@ -10,101 +9,96 @@ authors:
|
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date: 2013-
|
12
|
+
date: 2013-11-08 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: hammer_cli
|
17
16
|
requirement: !ruby/object:Gem::Requirement
|
18
|
-
none: false
|
19
17
|
requirements:
|
20
|
-
- -
|
18
|
+
- - '>='
|
21
19
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.0.
|
20
|
+
version: 0.0.9
|
23
21
|
type: :runtime
|
24
22
|
prerelease: false
|
25
23
|
version_requirements: !ruby/object:Gem::Requirement
|
26
|
-
none: false
|
27
24
|
requirements:
|
28
|
-
- -
|
25
|
+
- - '>='
|
29
26
|
- !ruby/object:Gem::Version
|
30
|
-
version: 0.0.
|
27
|
+
version: 0.0.9
|
31
28
|
- !ruby/object:Gem::Dependency
|
32
29
|
name: foreman_api
|
33
30
|
requirement: !ruby/object:Gem::Requirement
|
34
|
-
none: false
|
35
31
|
requirements:
|
36
|
-
- -
|
32
|
+
- - '='
|
37
33
|
- !ruby/object:Gem::Version
|
38
|
-
version: 0.1.
|
34
|
+
version: 0.1.8
|
39
35
|
type: :runtime
|
40
36
|
prerelease: false
|
41
37
|
version_requirements: !ruby/object:Gem::Requirement
|
42
|
-
none: false
|
43
38
|
requirements:
|
44
|
-
- -
|
39
|
+
- - '='
|
45
40
|
- !ruby/object:Gem::Version
|
46
|
-
version: 0.1.
|
47
|
-
description:
|
48
|
-
|
49
|
-
'
|
41
|
+
version: 0.1.8
|
42
|
+
description: |
|
43
|
+
Foreman commands for Hammer CLI
|
50
44
|
email: tstracho@redhat.com
|
51
45
|
executables: []
|
52
46
|
extensions: []
|
53
47
|
extra_rdoc_files: []
|
54
48
|
files:
|
55
|
-
- lib/hammer_cli_foreman.rb
|
56
|
-
- lib/hammer_cli_foreman/
|
57
|
-
- lib/hammer_cli_foreman/model.rb
|
58
|
-
- lib/hammer_cli_foreman/output/fields.rb
|
59
|
-
- lib/hammer_cli_foreman/output/formatters.rb
|
60
|
-
- lib/hammer_cli_foreman/template.rb
|
61
|
-
- lib/hammer_cli_foreman/fact.rb
|
62
|
-
- lib/hammer_cli_foreman/user.rb
|
49
|
+
- lib/hammer_cli_foreman/report.rb
|
50
|
+
- lib/hammer_cli_foreman/media.rb
|
63
51
|
- lib/hammer_cli_foreman/domain.rb
|
52
|
+
- lib/hammer_cli_foreman/partition_table.rb
|
64
53
|
- lib/hammer_cli_foreman/resource_supported_test.rb
|
65
|
-
- lib/hammer_cli_foreman/media.rb
|
66
|
-
- lib/hammer_cli_foreman/compute_resource.rb
|
67
|
-
- lib/hammer_cli_foreman/report.rb
|
68
|
-
- lib/hammer_cli_foreman/location.rb
|
69
|
-
- lib/hammer_cli_foreman/commands.rb
|
70
|
-
- lib/hammer_cli_foreman/associating_commands.rb
|
71
|
-
- lib/hammer_cli_foreman/parameter.rb
|
72
|
-
- lib/hammer_cli_foreman/architecture.rb
|
73
|
-
- lib/hammer_cli_foreman/version.rb
|
74
|
-
- lib/hammer_cli_foreman/smart_proxy.rb
|
75
|
-
- lib/hammer_cli_foreman/environment.rb
|
76
|
-
- lib/hammer_cli_foreman/organization.rb
|
77
54
|
- lib/hammer_cli_foreman/host.rb
|
78
55
|
- lib/hammer_cli_foreman/hostgroup.rb
|
79
|
-
- lib/hammer_cli_foreman/
|
80
|
-
- lib/hammer_cli_foreman/
|
56
|
+
- lib/hammer_cli_foreman/organization.rb
|
57
|
+
- lib/hammer_cli_foreman/parameter.rb
|
58
|
+
- lib/hammer_cli_foreman/environment.rb
|
81
59
|
- lib/hammer_cli_foreman/puppet_class.rb
|
82
|
-
- lib/hammer_cli_foreman/
|
83
|
-
- lib/hammer_cli_foreman/
|
60
|
+
- lib/hammer_cli_foreman/user.rb
|
61
|
+
- lib/hammer_cli_foreman/version.rb
|
62
|
+
- lib/hammer_cli_foreman/associating_commands.rb
|
63
|
+
- lib/hammer_cli_foreman/fact.rb
|
84
64
|
- lib/hammer_cli_foreman/subnet.rb
|
65
|
+
- lib/hammer_cli_foreman/exception_handler.rb
|
66
|
+
- lib/hammer_cli_foreman/output.rb
|
67
|
+
- lib/hammer_cli_foreman/compute_resource.rb
|
68
|
+
- lib/hammer_cli_foreman/common_parameter.rb
|
69
|
+
- lib/hammer_cli_foreman/commands.rb
|
70
|
+
- lib/hammer_cli_foreman/architecture.rb
|
71
|
+
- lib/hammer_cli_foreman/location.rb
|
72
|
+
- lib/hammer_cli_foreman/output/formatters.rb
|
73
|
+
- lib/hammer_cli_foreman/output/fields.rb
|
74
|
+
- lib/hammer_cli_foreman/operating_system.rb
|
75
|
+
- lib/hammer_cli_foreman/image.rb
|
76
|
+
- lib/hammer_cli_foreman/model.rb
|
77
|
+
- lib/hammer_cli_foreman/template.rb
|
78
|
+
- lib/hammer_cli_foreman/smart_proxy.rb
|
79
|
+
- lib/hammer_cli_foreman.rb
|
85
80
|
homepage: http://github.com/theforeman/hammer-cli-foreman
|
86
81
|
licenses: []
|
82
|
+
metadata: {}
|
87
83
|
post_install_message:
|
88
84
|
rdoc_options: []
|
89
85
|
require_paths:
|
90
86
|
- lib
|
91
87
|
required_ruby_version: !ruby/object:Gem::Requirement
|
92
|
-
none: false
|
93
88
|
requirements:
|
94
|
-
- -
|
89
|
+
- - '>='
|
95
90
|
- !ruby/object:Gem::Version
|
96
91
|
version: '0'
|
97
92
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
98
|
-
none: false
|
99
93
|
requirements:
|
100
|
-
- -
|
94
|
+
- - '>='
|
101
95
|
- !ruby/object:Gem::Version
|
102
96
|
version: '0'
|
103
97
|
requirements: []
|
104
98
|
rubyforge_project:
|
105
|
-
rubygems_version:
|
99
|
+
rubygems_version: 2.0.8
|
106
100
|
signing_key:
|
107
|
-
specification_version:
|
101
|
+
specification_version: 4
|
108
102
|
summary: Foreman commands for Hammer
|
109
103
|
test_files: []
|
110
104
|
has_rdoc:
|