razor-client 0.15.1 → 0.16.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 +7 -0
- data/NEWS.md +22 -0
- data/bin/razor +24 -0
- data/lib/razor/cli/command.rb +139 -0
- data/lib/razor/cli/document.rb +8 -4
- data/lib/razor/cli/format.rb +46 -22
- data/lib/razor/cli/navigate.rb +27 -149
- data/lib/razor/cli/parse.rb +21 -5
- data/lib/razor/cli/query.rb +68 -0
- data/lib/razor/cli/table_format.rb +41 -0
- data/lib/razor/cli/transforms.rb +18 -0
- data/lib/razor/cli/version.rb +1 -1
- data/lib/razor/cli/views.yaml +38 -0
- data/lib/razor/cli.rb +5 -2
- data/spec/cli/format_spec.rb +95 -5
- data/spec/cli/navigate_spec.rb +49 -5
- data/spec/cli/parse_spec.rb +21 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/argument_formatting/should_allow_in_string.yml +322 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_API_command_help_for_razor_--api_command_--help_.yml +110 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_API_command_help_for_razor_--api_command_help_.yml +110 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_API_command_help_for_razor_--api_help_command_.yml +110 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_API_command_help_for_razor_--help_--api_command_.yml +110 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_API_command_help_for_razor_-a_-h_command_.yml +110 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_API_command_help_for_razor_-a_command_-h_.yml +110 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_object/should_construct_a_json_object.yml +181 -49
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_object/should_construct_a_json_object_with_unicode.yml +121 -46
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_object/should_fail_with_mixed_types_array_then_hash_.yml +68 -65
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_object/should_fail_with_mixed_types_hash_then_array_.yml +177 -45
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_append_limit.yml +69 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_append_start.yml +69 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_not_fail_when_query_returns_details_for_one_item.yml +421 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_store_query_without_query_parameters.yml +773 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_throw_an_error_if_the_query_parameter_is_not_in_the_API.yml +36 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_throw_an_error_if_the_query_parameter_is_not_in_the_API_from_a_single_item.yml +388 -0
- metadata +94 -82
@@ -25,14 +25,14 @@ http_interactions:
|
|
25
25
|
Content-Type:
|
26
26
|
- application/json;charset=utf-8
|
27
27
|
Content-Length:
|
28
|
-
- '
|
28
|
+
- '4981'
|
29
29
|
Date:
|
30
|
-
-
|
30
|
+
- Thu, 14 Aug 2014 20:50:00 GMT
|
31
31
|
body:
|
32
32
|
encoding: US-ASCII
|
33
|
-
string: '{"commands":[{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8080/api/commands/add-policy-tag"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8080/api/commands/create-broker"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8080/api/commands/create-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8080/api/commands/create-repo"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8080/api/commands/create-tag"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8080/api/commands/create-task"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8080/api/commands/delete-broker"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8080/api/commands/delete-node"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8080/api/commands/delete-policy"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8080/api/commands/delete-repo"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8080/api/commands/delete-tag"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8080/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8080/api/commands/enable-policy"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8080/api/commands/modify-node-metadata"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8080/api/commands/modify-policy-max-count"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8080/api/commands/move-policy"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8080/api/commands/reboot-node"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8080/api/commands/register-node"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8080/api/commands/reinstall-node"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8080/api/commands/remove-node-metadata"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8080/api/commands/remove-policy-tag"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8080/api/commands/set-node-desired-power-state"},{"name":"set-node-hw-info","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-hw-info","id":"http://localhost:8080/api/commands/set-node-hw-info"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8080/api/commands/set-node-ipmi-credentials"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8080/api/commands/update-node-metadata"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8080/api/commands/update-tag-rule"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8080/api/collections/brokers"},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8080/api/collections/repos"},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8080/api/collections/tags"},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8080/api/collections/policies"},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8080/api/collections/nodes"},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8080/api/collections/tasks"},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8080/api/collections/commands"}],"version":{"server":"v0.
|
33
|
+
string: '{"commands":[{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8080/api/commands/add-policy-tag"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8080/api/commands/create-broker"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8080/api/commands/create-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8080/api/commands/create-repo"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8080/api/commands/create-tag"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8080/api/commands/create-task"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8080/api/commands/delete-broker"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8080/api/commands/delete-node"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8080/api/commands/delete-policy"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8080/api/commands/delete-repo"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8080/api/commands/delete-tag"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8080/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8080/api/commands/enable-policy"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8080/api/commands/modify-node-metadata"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8080/api/commands/modify-policy-max-count"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8080/api/commands/move-policy"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8080/api/commands/reboot-node"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8080/api/commands/register-node"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8080/api/commands/reinstall-node"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8080/api/commands/remove-node-metadata"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8080/api/commands/remove-policy-tag"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8080/api/commands/set-node-desired-power-state"},{"name":"set-node-hw-info","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-hw-info","id":"http://localhost:8080/api/commands/set-node-hw-info"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8080/api/commands/set-node-ipmi-credentials"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8080/api/commands/update-node-metadata"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8080/api/commands/update-tag-rule"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8080/api/collections/brokers"},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8080/api/collections/repos"},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8080/api/collections/tags"},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8080/api/collections/policies"},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8080/api/collections/nodes"},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8080/api/collections/tasks"},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8080/api/collections/commands"}],"version":{"server":"v0.15.0-26-gfffaba4-dirty"}}'
|
34
34
|
http_version:
|
35
|
-
recorded_at:
|
35
|
+
recorded_at: Thu, 14 Aug 2014 20:50:00 GMT
|
36
36
|
- request:
|
37
37
|
method: get
|
38
38
|
uri: http://localhost:8080/api/commands/create-broker
|
@@ -54,23 +54,23 @@ http_interactions:
|
|
54
54
|
Server:
|
55
55
|
- Apache-Coyote/1.1
|
56
56
|
Etag:
|
57
|
-
- '"server-version-v0.
|
57
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
58
58
|
X-Content-Type-Options:
|
59
59
|
- nosniff
|
60
60
|
Content-Type:
|
61
61
|
- application/json;charset=utf-8
|
62
62
|
Content-Length:
|
63
|
-
- '
|
63
|
+
- '2568'
|
64
64
|
Date:
|
65
|
-
-
|
65
|
+
- Thu, 14 Aug 2014 20:50:00 GMT
|
66
66
|
body:
|
67
67
|
encoding: US-ASCII
|
68
68
|
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
69
69
|
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
70
70
|
broker configuration. Brokers are responsible for handing a node\noff to
|
71
71
|
a config management system, such as Puppet or Chef. In cases where you\nhave
|
72
|
-
no configuration management system, you can use the `noop` broker.\n\n
|
73
|
-
|
72
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
73
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
74
74
|
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
75
75
|
name of the object being modified, or some other critical detail, these\nallow
|
76
76
|
roles to be granted partial access to modify the system.\n\nFor more detail
|
@@ -80,23 +80,24 @@ http_interactions:
|
|
80
80
|
apply if security is enabled in the Razor configuration\nfile; on this server
|
81
81
|
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
82
82
|
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
83
|
-
within Razor.\n
|
84
|
-
to specify\n
|
85
|
-
This attribute is required
|
86
|
-
be between 1 and 250 in length.\n\n * broker-type\n - The broker type
|
87
|
-
this broker is created
|
88
|
-
are:\n
|
89
|
-
attribute is required
|
83
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
84
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
85
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
86
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
87
|
+
which this broker is created. The available\n broker types on your server
|
88
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
89
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
90
90
|
the name of an existing broker type.\n\n * configuration\n - The configuration
|
91
|
-
for the broker. The acceptable values here are\n
|
92
|
-
selected. In general this has\n
|
93
|
-
and other configuration\n
|
94
|
-
to the final\n
|
95
|
-
|
96
|
-
\
|
97
|
-
\
|
91
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
92
|
+
selected. In general this has\n settings like which server to contact,
|
93
|
+
and other configuration\n related to handing on the newly installed system
|
94
|
+
to the final\n configuration management system.\n \n This attribute
|
95
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
96
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
97
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
98
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
98
99
|
http_version:
|
99
|
-
recorded_at:
|
100
|
+
recorded_at: Thu, 14 Aug 2014 20:50:00 GMT
|
100
101
|
- request:
|
101
102
|
method: get
|
102
103
|
uri: http://localhost:8080/api/commands/create-broker
|
@@ -118,23 +119,23 @@ http_interactions:
|
|
118
119
|
Server:
|
119
120
|
- Apache-Coyote/1.1
|
120
121
|
Etag:
|
121
|
-
- '"server-version-v0.
|
122
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
122
123
|
X-Content-Type-Options:
|
123
124
|
- nosniff
|
124
125
|
Content-Type:
|
125
126
|
- application/json;charset=utf-8
|
126
127
|
Content-Length:
|
127
|
-
- '
|
128
|
+
- '2568'
|
128
129
|
Date:
|
129
|
-
-
|
130
|
+
- Thu, 14 Aug 2014 20:50:00 GMT
|
130
131
|
body:
|
131
132
|
encoding: US-ASCII
|
132
133
|
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
133
134
|
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
134
135
|
broker configuration. Brokers are responsible for handing a node\noff to
|
135
136
|
a config management system, such as Puppet or Chef. In cases where you\nhave
|
136
|
-
no configuration management system, you can use the `noop` broker.\n\n
|
137
|
-
|
137
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
138
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
138
139
|
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
139
140
|
name of the object being modified, or some other critical detail, these\nallow
|
140
141
|
roles to be granted partial access to modify the system.\n\nFor more detail
|
@@ -144,23 +145,24 @@ http_interactions:
|
|
144
145
|
apply if security is enabled in the Razor configuration\nfile; on this server
|
145
146
|
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
146
147
|
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
147
|
-
within Razor.\n
|
148
|
-
to specify\n
|
149
|
-
This attribute is required
|
150
|
-
be between 1 and 250 in length.\n\n * broker-type\n - The broker type
|
151
|
-
this broker is created
|
152
|
-
are:\n
|
153
|
-
attribute is required
|
148
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
149
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
150
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
151
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
152
|
+
which this broker is created. The available\n broker types on your server
|
153
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
154
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
154
155
|
the name of an existing broker type.\n\n * configuration\n - The configuration
|
155
|
-
for the broker. The acceptable values here are\n
|
156
|
-
selected. In general this has\n
|
157
|
-
and other configuration\n
|
158
|
-
to the final\n
|
159
|
-
|
160
|
-
\
|
161
|
-
\
|
156
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
157
|
+
selected. In general this has\n settings like which server to contact,
|
158
|
+
and other configuration\n related to handing on the newly installed system
|
159
|
+
to the final\n configuration management system.\n \n This attribute
|
160
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
161
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
162
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
163
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
162
164
|
http_version:
|
163
|
-
recorded_at:
|
165
|
+
recorded_at: Thu, 14 Aug 2014 20:50:00 GMT
|
164
166
|
- request:
|
165
167
|
method: get
|
166
168
|
uri: http://localhost:8080/api/commands/create-broker
|
@@ -182,23 +184,23 @@ http_interactions:
|
|
182
184
|
Server:
|
183
185
|
- Apache-Coyote/1.1
|
184
186
|
Etag:
|
185
|
-
- '"server-version-v0.
|
187
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
186
188
|
X-Content-Type-Options:
|
187
189
|
- nosniff
|
188
190
|
Content-Type:
|
189
191
|
- application/json;charset=utf-8
|
190
192
|
Content-Length:
|
191
|
-
- '
|
193
|
+
- '2568'
|
192
194
|
Date:
|
193
|
-
-
|
195
|
+
- Thu, 14 Aug 2014 20:50:00 GMT
|
194
196
|
body:
|
195
197
|
encoding: US-ASCII
|
196
198
|
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
197
199
|
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
198
200
|
broker configuration. Brokers are responsible for handing a node\noff to
|
199
201
|
a config management system, such as Puppet or Chef. In cases where you\nhave
|
200
|
-
no configuration management system, you can use the `noop` broker.\n\n
|
201
|
-
|
202
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
203
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
202
204
|
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
203
205
|
name of the object being modified, or some other critical detail, these\nallow
|
204
206
|
roles to be granted partial access to modify the system.\n\nFor more detail
|
@@ -208,21 +210,22 @@ http_interactions:
|
|
208
210
|
apply if security is enabled in the Razor configuration\nfile; on this server
|
209
211
|
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
210
212
|
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
211
|
-
within Razor.\n
|
212
|
-
to specify\n
|
213
|
-
This attribute is required
|
214
|
-
be between 1 and 250 in length.\n\n * broker-type\n - The broker type
|
215
|
-
this broker is created
|
216
|
-
are:\n
|
217
|
-
attribute is required
|
213
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
214
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
215
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
216
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
217
|
+
which this broker is created. The available\n broker types on your server
|
218
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
219
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
218
220
|
the name of an existing broker type.\n\n * configuration\n - The configuration
|
219
|
-
for the broker. The acceptable values here are\n
|
220
|
-
selected. In general this has\n
|
221
|
-
and other configuration\n
|
222
|
-
to the final\n
|
223
|
-
|
224
|
-
\
|
225
|
-
\
|
221
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
222
|
+
selected. In general this has\n settings like which server to contact,
|
223
|
+
and other configuration\n related to handing on the newly installed system
|
224
|
+
to the final\n configuration management system.\n \n This attribute
|
225
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
226
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
227
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
228
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
226
229
|
http_version:
|
227
|
-
recorded_at:
|
228
|
-
recorded_with: VCR 2.
|
230
|
+
recorded_at: Thu, 14 Aug 2014 20:50:01 GMT
|
231
|
+
recorded_with: VCR 2.9.2
|
@@ -25,14 +25,14 @@ http_interactions:
|
|
25
25
|
Content-Type:
|
26
26
|
- application/json;charset=utf-8
|
27
27
|
Content-Length:
|
28
|
-
- '
|
28
|
+
- '4981'
|
29
29
|
Date:
|
30
|
-
-
|
30
|
+
- Thu, 14 Aug 2014 20:50:07 GMT
|
31
31
|
body:
|
32
32
|
encoding: US-ASCII
|
33
|
-
string: '{"commands":[{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8080/api/commands/add-policy-tag"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8080/api/commands/create-broker"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8080/api/commands/create-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8080/api/commands/create-repo"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8080/api/commands/create-tag"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8080/api/commands/create-task"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8080/api/commands/delete-broker"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8080/api/commands/delete-node"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8080/api/commands/delete-policy"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8080/api/commands/delete-repo"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8080/api/commands/delete-tag"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8080/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8080/api/commands/enable-policy"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8080/api/commands/modify-node-metadata"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8080/api/commands/modify-policy-max-count"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8080/api/commands/move-policy"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8080/api/commands/reboot-node"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8080/api/commands/register-node"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8080/api/commands/reinstall-node"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8080/api/commands/remove-node-metadata"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8080/api/commands/remove-policy-tag"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8080/api/commands/set-node-desired-power-state"},{"name":"set-node-hw-info","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-hw-info","id":"http://localhost:8080/api/commands/set-node-hw-info"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8080/api/commands/set-node-ipmi-credentials"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8080/api/commands/update-node-metadata"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8080/api/commands/update-tag-rule"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8080/api/collections/brokers"},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8080/api/collections/repos"},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8080/api/collections/tags"},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8080/api/collections/policies"},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8080/api/collections/nodes"},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8080/api/collections/tasks"},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8080/api/collections/commands"}],"version":{"server":"v0.
|
33
|
+
string: '{"commands":[{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8080/api/commands/add-policy-tag"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8080/api/commands/create-broker"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8080/api/commands/create-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8080/api/commands/create-repo"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8080/api/commands/create-tag"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8080/api/commands/create-task"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8080/api/commands/delete-broker"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8080/api/commands/delete-node"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8080/api/commands/delete-policy"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8080/api/commands/delete-repo"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8080/api/commands/delete-tag"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8080/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8080/api/commands/enable-policy"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8080/api/commands/modify-node-metadata"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8080/api/commands/modify-policy-max-count"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8080/api/commands/move-policy"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8080/api/commands/reboot-node"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8080/api/commands/register-node"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8080/api/commands/reinstall-node"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8080/api/commands/remove-node-metadata"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8080/api/commands/remove-policy-tag"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8080/api/commands/set-node-desired-power-state"},{"name":"set-node-hw-info","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-hw-info","id":"http://localhost:8080/api/commands/set-node-hw-info"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8080/api/commands/set-node-ipmi-credentials"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8080/api/commands/update-node-metadata"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8080/api/commands/update-tag-rule"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8080/api/collections/brokers"},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8080/api/collections/repos"},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8080/api/collections/tags"},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8080/api/collections/policies"},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8080/api/collections/nodes"},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8080/api/collections/tasks"},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8080/api/collections/commands"}],"version":{"server":"v0.15.0-26-gfffaba4-dirty"}}'
|
34
34
|
http_version:
|
35
|
-
recorded_at:
|
35
|
+
recorded_at: Thu, 14 Aug 2014 20:50:07 GMT
|
36
36
|
- request:
|
37
37
|
method: get
|
38
38
|
uri: http://localhost:8080/api/commands/create-broker
|
@@ -54,23 +54,23 @@ http_interactions:
|
|
54
54
|
Server:
|
55
55
|
- Apache-Coyote/1.1
|
56
56
|
Etag:
|
57
|
-
- '"server-version-v0.
|
57
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
58
58
|
X-Content-Type-Options:
|
59
59
|
- nosniff
|
60
60
|
Content-Type:
|
61
61
|
- application/json;charset=utf-8
|
62
62
|
Content-Length:
|
63
|
-
- '
|
63
|
+
- '2568'
|
64
64
|
Date:
|
65
|
-
-
|
65
|
+
- Thu, 14 Aug 2014 20:50:07 GMT
|
66
66
|
body:
|
67
67
|
encoding: US-ASCII
|
68
68
|
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
69
69
|
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
70
70
|
broker configuration. Brokers are responsible for handing a node\noff to
|
71
71
|
a config management system, such as Puppet or Chef. In cases where you\nhave
|
72
|
-
no configuration management system, you can use the `noop` broker.\n\n
|
73
|
-
|
72
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
73
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
74
74
|
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
75
75
|
name of the object being modified, or some other critical detail, these\nallow
|
76
76
|
roles to be granted partial access to modify the system.\n\nFor more detail
|
@@ -80,23 +80,24 @@ http_interactions:
|
|
80
80
|
apply if security is enabled in the Razor configuration\nfile; on this server
|
81
81
|
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
82
82
|
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
83
|
-
within Razor.\n
|
84
|
-
to specify\n
|
85
|
-
This attribute is required
|
86
|
-
be between 1 and 250 in length.\n\n * broker-type\n - The broker type
|
87
|
-
this broker is created
|
88
|
-
are:\n
|
89
|
-
attribute is required
|
83
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
84
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
85
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
86
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
87
|
+
which this broker is created. The available\n broker types on your server
|
88
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
89
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
90
90
|
the name of an existing broker type.\n\n * configuration\n - The configuration
|
91
|
-
for the broker. The acceptable values here are\n
|
92
|
-
selected. In general this has\n
|
93
|
-
and other configuration\n
|
94
|
-
to the final\n
|
95
|
-
|
96
|
-
\
|
97
|
-
\
|
91
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
92
|
+
selected. In general this has\n settings like which server to contact,
|
93
|
+
and other configuration\n related to handing on the newly installed system
|
94
|
+
to the final\n configuration management system.\n \n This attribute
|
95
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
96
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
97
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
98
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
98
99
|
http_version:
|
99
|
-
recorded_at:
|
100
|
+
recorded_at: Thu, 14 Aug 2014 20:50:07 GMT
|
100
101
|
- request:
|
101
102
|
method: get
|
102
103
|
uri: http://localhost:8080/api/commands/create-broker
|
@@ -118,23 +119,23 @@ http_interactions:
|
|
118
119
|
Server:
|
119
120
|
- Apache-Coyote/1.1
|
120
121
|
Etag:
|
121
|
-
- '"server-version-v0.
|
122
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
122
123
|
X-Content-Type-Options:
|
123
124
|
- nosniff
|
124
125
|
Content-Type:
|
125
126
|
- application/json;charset=utf-8
|
126
127
|
Content-Length:
|
127
|
-
- '
|
128
|
+
- '2568'
|
128
129
|
Date:
|
129
|
-
-
|
130
|
+
- Thu, 14 Aug 2014 20:50:07 GMT
|
130
131
|
body:
|
131
132
|
encoding: US-ASCII
|
132
133
|
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
133
134
|
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
134
135
|
broker configuration. Brokers are responsible for handing a node\noff to
|
135
136
|
a config management system, such as Puppet or Chef. In cases where you\nhave
|
136
|
-
no configuration management system, you can use the `noop` broker.\n\n
|
137
|
-
|
137
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
138
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
138
139
|
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
139
140
|
name of the object being modified, or some other critical detail, these\nallow
|
140
141
|
roles to be granted partial access to modify the system.\n\nFor more detail
|
@@ -144,21 +145,152 @@ http_interactions:
|
|
144
145
|
apply if security is enabled in the Razor configuration\nfile; on this server
|
145
146
|
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
146
147
|
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
147
|
-
within Razor.\n
|
148
|
-
to specify\n
|
149
|
-
This attribute is required
|
150
|
-
be between 1 and 250 in length.\n\n * broker-type\n - The broker type
|
151
|
-
this broker is created
|
152
|
-
are:\n
|
153
|
-
attribute is required
|
148
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
149
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
150
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
151
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
152
|
+
which this broker is created. The available\n broker types on your server
|
153
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
154
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
154
155
|
the name of an existing broker type.\n\n * configuration\n - The configuration
|
155
|
-
for the broker. The acceptable values here are\n
|
156
|
-
selected. In general this has\n
|
157
|
-
and other configuration\n
|
158
|
-
to the final\n
|
159
|
-
|
160
|
-
\
|
161
|
-
\
|
156
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
157
|
+
selected. In general this has\n settings like which server to contact,
|
158
|
+
and other configuration\n related to handing on the newly installed system
|
159
|
+
to the final\n configuration management system.\n \n This attribute
|
160
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
161
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
162
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
163
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
162
164
|
http_version:
|
163
|
-
recorded_at:
|
164
|
-
|
165
|
+
recorded_at: Thu, 14 Aug 2014 20:50:08 GMT
|
166
|
+
- request:
|
167
|
+
method: get
|
168
|
+
uri: http://localhost:8080/api/commands/create-broker
|
169
|
+
body:
|
170
|
+
encoding: US-ASCII
|
171
|
+
string: ''
|
172
|
+
headers:
|
173
|
+
Accept:
|
174
|
+
- application/json
|
175
|
+
Accept-Encoding:
|
176
|
+
- gzip, deflate
|
177
|
+
User-Agent:
|
178
|
+
- Ruby
|
179
|
+
response:
|
180
|
+
status:
|
181
|
+
code: 200
|
182
|
+
message: OK
|
183
|
+
headers:
|
184
|
+
Server:
|
185
|
+
- Apache-Coyote/1.1
|
186
|
+
Etag:
|
187
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
188
|
+
X-Content-Type-Options:
|
189
|
+
- nosniff
|
190
|
+
Content-Type:
|
191
|
+
- application/json;charset=utf-8
|
192
|
+
Content-Length:
|
193
|
+
- '2568'
|
194
|
+
Date:
|
195
|
+
- Thu, 14 Aug 2014 20:50:07 GMT
|
196
|
+
body:
|
197
|
+
encoding: US-ASCII
|
198
|
+
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
199
|
+
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
200
|
+
broker configuration. Brokers are responsible for handing a node\noff to
|
201
|
+
a config management system, such as Puppet or Chef. In cases where you\nhave
|
202
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
203
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
204
|
+
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
205
|
+
name of the object being modified, or some other critical detail, these\nallow
|
206
|
+
roles to be granted partial access to modify the system.\n\nFor more detail
|
207
|
+
on how the permission strings are structured and work, you can\nsee the [Shiro
|
208
|
+
Permissions documentation][shiro]. That pattern is expanded\nand then a permission
|
209
|
+
check applied to it, before the command is authorized.\n\nThese checks only
|
210
|
+
apply if security is enabled in the Razor configuration\nfile; on this server
|
211
|
+
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
212
|
+
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
213
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
214
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
215
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
216
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
217
|
+
which this broker is created. The available\n broker types on your server
|
218
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
219
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
220
|
+
the name of an existing broker type.\n\n * configuration\n - The configuration
|
221
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
222
|
+
selected. In general this has\n settings like which server to contact,
|
223
|
+
and other configuration\n related to handing on the newly installed system
|
224
|
+
to the final\n configuration management system.\n \n This attribute
|
225
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
226
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
227
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
228
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
229
|
+
http_version:
|
230
|
+
recorded_at: Thu, 14 Aug 2014 20:50:08 GMT
|
231
|
+
- request:
|
232
|
+
method: get
|
233
|
+
uri: http://localhost:8080/api/commands/create-broker
|
234
|
+
body:
|
235
|
+
encoding: US-ASCII
|
236
|
+
string: ''
|
237
|
+
headers:
|
238
|
+
Accept:
|
239
|
+
- application/json
|
240
|
+
Accept-Encoding:
|
241
|
+
- gzip, deflate
|
242
|
+
User-Agent:
|
243
|
+
- Ruby
|
244
|
+
response:
|
245
|
+
status:
|
246
|
+
code: 200
|
247
|
+
message: OK
|
248
|
+
headers:
|
249
|
+
Server:
|
250
|
+
- Apache-Coyote/1.1
|
251
|
+
Etag:
|
252
|
+
- '"server-version-v0.15.0-26-gfffaba4-dirty"'
|
253
|
+
X-Content-Type-Options:
|
254
|
+
- nosniff
|
255
|
+
Content-Type:
|
256
|
+
- application/json;charset=utf-8
|
257
|
+
Content-Length:
|
258
|
+
- '2568'
|
259
|
+
Date:
|
260
|
+
- Thu, 14 Aug 2014 20:50:07 GMT
|
261
|
+
body:
|
262
|
+
encoding: US-ASCII
|
263
|
+
string: '{"name":"create-broker","help":{"full":"# SYNOPSIS\nCreate a new broker
|
264
|
+
configuration for hand-off of installed nodes\n\n# DESCRIPTION\nCreate a new
|
265
|
+
broker configuration. Brokers are responsible for handing a node\noff to
|
266
|
+
a config management system, such as Puppet or Chef. In cases where you\nhave
|
267
|
+
no configuration management system, you can use the `noop` broker.\n\n# Access
|
268
|
+
Control\n\nThis command''s access control pattern: `commands:create-broker:%{name}`\n\nWords
|
269
|
+
surrounded by `%{...}` are substitutions from the input data: typically\nthe
|
270
|
+
name of the object being modified, or some other critical detail, these\nallow
|
271
|
+
roles to be granted partial access to modify the system.\n\nFor more detail
|
272
|
+
on how the permission strings are structured and work, you can\nsee the [Shiro
|
273
|
+
Permissions documentation][shiro]. That pattern is expanded\nand then a permission
|
274
|
+
check applied to it, before the command is authorized.\n\nThese checks only
|
275
|
+
apply if security is enabled in the Razor configuration\nfile; on this server
|
276
|
+
security is currently disabled.\n\n[shiro]: http://shiro.apache.org/permissions.html\n\n#
|
277
|
+
Attributes\n\n * name\n - The name of the broker, as it will be referenced
|
278
|
+
within Razor.\n This is the name that you supply to, eg, `create-policy`
|
279
|
+
to specify\n which broker the node will be handed off via after installation.\n -
|
280
|
+
This attribute is required.\n - It must be of type string.\n - It must
|
281
|
+
be between 1 and 250 in length.\n\n * broker-type\n - The broker type from
|
282
|
+
which this broker is created. The available\n broker types on your server
|
283
|
+
are:\n - chef\n - noop\n - puppet-pe\n - puppet\n - This
|
284
|
+
attribute is required.\n - It must be of type string.\n - It must match
|
285
|
+
the name of an existing broker type.\n\n * configuration\n - The configuration
|
286
|
+
for the broker. The acceptable values here are\n determined by the `broker-type`
|
287
|
+
selected. In general this has\n settings like which server to contact,
|
288
|
+
and other configuration\n related to handing on the newly installed system
|
289
|
+
to the final\n configuration management system.\n \n This attribute
|
290
|
+
can be abbreviated as `c` for convenience.\n - It must be of type object.\n\n#
|
291
|
+
EXAMPLES\n\n Creating a simple Puppet broker:\n \n {\n \"name\": \"puppet\",\n \"configuration\":
|
292
|
+
{\n \"server\": \"puppet.example.org\",\n \"environment\":
|
293
|
+
\"production\"\n },\n \"broker-type\": \"puppet\"\n }\n"},"schema":{"name":{"type":"string"},"broker-type":{"type":"string"},"configuration":{"type":"object"}}}'
|
294
|
+
http_version:
|
295
|
+
recorded_at: Thu, 14 Aug 2014 20:50:08 GMT
|
296
|
+
recorded_with: VCR 2.9.2
|