razor-client 1.9.1 → 1.9.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.github/workflows/release.yml +24 -0
- data/.gitignore +9 -0
- data/.travis.yml +4 -0
- data/.yardopts +2 -0
- data/CODEOWNERS +1 -0
- data/Gemfile +42 -0
- data/NEWS.md +24 -0
- data/Rakefile +69 -0
- data/bin/razor +10 -13
- data/ext/build_defaults.yaml +20 -0
- data/ext/project_data.yaml +38 -0
- data/lib/razor/cli.rb +6 -0
- data/lib/razor/cli/command.rb +3 -3
- data/lib/razor/cli/navigate.rb +28 -19
- data/lib/razor/cli/parse.rb +18 -25
- data/lib/razor/cli/version.rb +1 -1
- data/razor-client.gemspec +35 -0
- data/spec/cli/command_spec.rb +21 -0
- data/spec/cli/format_spec.rb +10 -16
- data/spec/cli/navigate_spec.rb +10 -12
- data/spec/cli/parse_spec.rb +5 -3
- data/spec/fixtures/vcr/Razor_CLI_Navigate/accept-language_header/should_allow_other_accept-language_headers.yml +10 -10
- data/spec/fixtures/vcr/Razor_CLI_Navigate/accept-language_header/should_set_the_accept-language_header.yml +10 -10
- data/spec/fixtures/vcr/Razor_CLI_Navigate/argument_formatting/should_allow_in_string.yml +37 -39
- data/spec/fixtures/vcr/Razor_CLI_Navigate/argument_formatting/should_allow_single-dash_with_single_character_flag.yml +39 -41
- data/spec/fixtures/vcr/Razor_CLI_Navigate/argument_formatting/should_allow_spaces.yml +111 -117
- data/spec/fixtures/vcr/Razor_CLI_Navigate/argument_formatting/should_not_allow_double-dash_with_single_character_flag.yml +21 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/argument_formatting/should_not_allow_single-dash_with_multiple_character_flag.yml +21 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_command_help_for_razor_--help_command_.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_command_help_for_razor_-h_command_.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_command_help_for_razor_command_--help_.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_command_help_for_razor_command_-h_.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_command_help_for_razor_command_help_.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/for_command_help/should_provide_command_help_for_razor_help_command_.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/positional_arguments/should_allow_the_use_of_positional_arguments.yml +136 -144
- data/spec/fixtures/vcr/Razor_CLI_Navigate/positional_arguments/should_fail_with_too_many_positional_arguments.yml +21 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/when_the_collections_endpoint_has_a_depth_parameter/should_be_set_to_1_when_the_endpoint_is_the_final_query.yml +18 -18
- data/spec/fixtures/vcr/Razor_CLI_Navigate/when_the_collections_endpoint_has_a_depth_parameter/should_not_be_exposed_to_the_user.yml +10 -10
- data/spec/fixtures/vcr/Razor_CLI_Navigate/when_the_collections_endpoint_has_a_depth_parameter/should_not_carry-over_to_later_requests_in_a_nested_query.yml +65 -67
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_a_single_item_path/.yml +77 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_an_invalid_path/.yml +40 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_authentication/should_preserve_that_across_navigation.yml +17 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_authentication/should_supply_that_to_the_API_service.yml +10 -12
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_invalid_parameter/should_fail_with_bad_JSON.yml +21 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_invalid_parameter/should_fail_with_malformed_argument.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_array/should_merge_an_array_into_an_existing_array.yml +187 -197
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_array/should_merge_the_arguments_as_an_array.yml +187 -197
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_array/should_merge_the_arguments_into_an_existing_array.yml +187 -197
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_multiple_arguments_with_same_name/combining_as_an_object/should_construct_a_json_object.yml +39 -41
- 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 +76 -80
- 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 +21 -21
- 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 +21 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_no_parameters/should_fail_with_bad_JSON.yml +19 -19
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_no_path/.yml +40 -0
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_append_limit.yml +17 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_append_start.yml +17 -21
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_not_fail_when_query_returns_details_for_one_item.yml +61 -69
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_store_query_without_query_parameters.yml +105 -117
- data/spec/fixtures/vcr/Razor_CLI_Navigate/with_query_parameters/should_throw_an_error_if_the_query_parameter_is_not_in_the_API.yml +10 -12
- 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 +54 -60
- data/spec/fixtures/vcr/Razor_CLI_Parse/_new/_help/.yml +40 -0
- data/spec/fixtures/vcr/Razor_CLI_Parse/_new/_help/should_print_a_list_of_known_endpoints.yml +10 -10
- data/spec/spec_helper.rb +1 -1
- data/spec/testing.md +4 -2
- metadata +69 -29
data/lib/razor/cli/parse.rb
CHANGED
@@ -68,8 +68,8 @@ module Razor::CLI
|
|
68
68
|
error = ''
|
69
69
|
begin
|
70
70
|
server_version = navigate.server_version
|
71
|
-
rescue
|
72
|
-
error =
|
71
|
+
rescue Razor::CLI::UnauthorizedError => e
|
72
|
+
error = e.message
|
73
73
|
rescue
|
74
74
|
error = _("Error: Could not connect to the server at %{url}.") % {url: @api_url}
|
75
75
|
ensure
|
@@ -82,7 +82,7 @@ module Razor::CLI
|
|
82
82
|
|
83
83
|
def help
|
84
84
|
output = get_optparse.to_s
|
85
|
-
|
85
|
+
error = ''
|
86
86
|
begin
|
87
87
|
replacements = {collections: list_things(_("Collections"), navigate.collections),
|
88
88
|
commands: list_things(_("Commands"), navigate.commands)}
|
@@ -100,32 +100,25 @@ module Razor::CLI
|
|
100
100
|
nested structures such as the configuration for a broker.
|
101
101
|
|
102
102
|
HELP
|
103
|
-
rescue
|
104
|
-
|
105
|
-
Error:
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
puts " #{e}\n"
|
111
|
-
die
|
112
|
-
rescue RestClient::SSLCertificateNotVerified
|
113
|
-
puts _("Error: SSL certificate could not be verified against known CA certificates.\n" +
|
114
|
-
" To turn off verification, use the -k or --insecure option.")
|
115
|
-
die
|
103
|
+
rescue SocketError, Faraday::ConnectionFailed => e
|
104
|
+
# TRANSLATORS: "e" is just an exception output message.
|
105
|
+
error = _("Error: Could not connect to the server at %{url}\n" +
|
106
|
+
" %{e}") % {url: @api_url, e: e}
|
107
|
+
rescue Faraday::SSLError
|
108
|
+
error = _("Error: SSL certificate could not be verified against known CA certificates.\n" +
|
109
|
+
" To turn off verification, use the -k or --insecure option.")
|
116
110
|
rescue OpenSSL::SSL::SSLError => e
|
117
111
|
# Occurs in case of e.g. certificate mismatch (FQDN vs. hostname)
|
118
|
-
|
119
|
-
|
120
|
-
|
112
|
+
error = _("Error: SSL certificate error from server at %{url}\n" +
|
113
|
+
" %{e}") % {url: @api_url, e: e}
|
114
|
+
rescue Razor::CLI::Error => e
|
115
|
+
error = e.message
|
121
116
|
rescue => e
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
exit = 1
|
117
|
+
error = "Error: Unknown error occurred while connecting to server at %{url}:" +
|
118
|
+
" %{e}" % {url: @api_url, e: e}
|
119
|
+
ensure
|
120
|
+
return [(output + "\n" + error).rstrip, error != '' ? 1 : 0]
|
127
121
|
end
|
128
|
-
[output, exit]
|
129
122
|
end
|
130
123
|
|
131
124
|
def show_version?
|
data/lib/razor/cli/version.rb
CHANGED
@@ -18,7 +18,7 @@ module Razor
|
|
18
18
|
#
|
19
19
|
# The next line is the one that our packaging tools modify, so please make
|
20
20
|
# sure that any change to it is discussed and agreed first.
|
21
|
-
version =
|
21
|
+
version = "DEVELOPMENT"
|
22
22
|
|
23
23
|
if version == "DEVELOPMENT"
|
24
24
|
root = File.expand_path("../../..", File.dirname(__FILE__))
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
|
5
|
+
Gem::Specification.new do |spec|
|
6
|
+
spec.name = "razor-client"
|
7
|
+
spec.version = `git describe --tags`.tr('-', '.').chomp
|
8
|
+
spec.authors = ["Puppet Labs"]
|
9
|
+
spec.email = ["info@puppetlabs.com"]
|
10
|
+
spec.description = "The client for the Razor server"
|
11
|
+
spec.summary = "The client for everybody's favorite provisioning tool"
|
12
|
+
spec.homepage = "https://github.com/puppetlabs/razor-client"
|
13
|
+
spec.license = "ASL2"
|
14
|
+
|
15
|
+
spec.files = `git ls-files`.split($/)
|
16
|
+
spec.bindir = "bin"
|
17
|
+
spec.executables = ['razor']
|
18
|
+
spec.test_files = spec.files.grep(%r{^spec/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
# This is added until compatibility issues can be resolved in
|
22
|
+
# e.g. https://tickets.puppetlabs.com/browse/RAZOR-572. This is only
|
23
|
+
# effective for locally built gems, as project_data.yaml does not support
|
24
|
+
# this feature.
|
25
|
+
spec.required_ruby_version = '>= 2.0.0'
|
26
|
+
|
27
|
+
spec.add_dependency "mime-types"
|
28
|
+
spec.add_dependency "multi_json"
|
29
|
+
spec.add_dependency "faraday", '>= 0.15'
|
30
|
+
spec.add_dependency "command_line_reporter", '~> 3.0'
|
31
|
+
spec.add_dependency "gettext-setup", '>= 0.31'
|
32
|
+
|
33
|
+
spec.add_development_dependency "bundler"
|
34
|
+
spec.add_development_dependency "rake"
|
35
|
+
end
|
data/spec/cli/command_spec.rb
CHANGED
@@ -44,6 +44,22 @@ describe Razor::CLI::Command do
|
|
44
44
|
result = Command.convert_arg('tags', 'def', existing_value, cmd_schema)
|
45
45
|
result.should == %w(abc def)
|
46
46
|
end
|
47
|
+
context "number conversion" do
|
48
|
+
it "errors when not passed a number" do
|
49
|
+
['t', '-1e', '-A', '100s'].each do |input|
|
50
|
+
cmd_schema = {"tags"=>{"type"=>"number"}}
|
51
|
+
expect{Command.convert_arg('tags', input, existing_value, cmd_schema)}.
|
52
|
+
to raise_error(ArgumentError, /Invalid integer for argument 'tags': #{input}/)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
context "null conversion" do
|
57
|
+
it "errors when more than null is provided" do
|
58
|
+
cmd_schema = {"tags"=>{"type"=>"null"}}
|
59
|
+
expect{Command.convert_arg('tags', 'abc', existing_value, cmd_schema)}.
|
60
|
+
to raise_error(ArgumentError, /Expected nothing for argument 'tags', but was: 'abc'/)
|
61
|
+
end
|
62
|
+
end
|
47
63
|
end
|
48
64
|
|
49
65
|
context "resolve_alias" do
|
@@ -166,6 +182,11 @@ describe Razor::CLI::Command do
|
|
166
182
|
body['a'].should == {}
|
167
183
|
body['i'].should == {'abc' => '123'}
|
168
184
|
end
|
185
|
+
it "knows what isn't a proper flag" do
|
186
|
+
body = extract(schema, ['123', '-o', '-A'])
|
187
|
+
body['o'].should == '-A'
|
188
|
+
body['n'].should be_nil
|
189
|
+
end
|
169
190
|
end
|
170
191
|
end
|
171
192
|
end
|
data/spec/cli/format_spec.rb
CHANGED
@@ -86,25 +86,22 @@ describe Razor::CLI::Format do
|
|
86
86
|
{'collections' => {'some' => {'table' => {'+short' => {'+layout' => 'table'}}}}})
|
87
87
|
result = format doc
|
88
88
|
result.should ==
|
89
|
-
# The framework seems to be adding unnecessary spaces at the end of each data line;
|
90
|
-
# Working around this by adding \s to the expectation.
|
91
|
-
|
92
89
|
# Unicode:
|
93
90
|
#┏━━━┳━━━┳━━━┳━━━┓
|
94
|
-
#┃ a ┃ c ┃ b ┃ e
|
91
|
+
#┃ a ┃ c ┃ b ┃ e ┃
|
95
92
|
#┣━━━╊━━━╊━━━╊━━━┫
|
96
|
-
#┃ b ┃ d ┃ ┃
|
93
|
+
#┃ b ┃ d ┃ ┃ ┃
|
97
94
|
#┣━━━╊━━━╊━━━╊━━━┫
|
98
|
-
#┃ ┃ ┃ c ┃ f
|
95
|
+
#┃ ┃ ┃ c ┃ f ┃
|
99
96
|
#┗━━━┻━━━┻━━━┻━━━┛
|
100
97
|
# ASCII:
|
101
98
|
<<-OUTPUT.rstrip
|
102
99
|
+---+---+---+---+
|
103
|
-
| a | c | b | e
|
100
|
+
| a | c | b | e |
|
104
101
|
+---+---+---+---+
|
105
|
-
| b | d | |
|
102
|
+
| b | d | | |
|
106
103
|
+---+---+---+---+
|
107
|
-
| | | c | f
|
104
|
+
| | | c | f |
|
108
105
|
+---+---+---+---+
|
109
106
|
OUTPUT
|
110
107
|
end
|
@@ -116,21 +113,18 @@ describe Razor::CLI::Format do
|
|
116
113
|
{'collections' => {'some' => {'table' => {'+short' => {'+layout' => 'table'}}}}})
|
117
114
|
result = format doc
|
118
115
|
result.should ==
|
119
|
-
# The framework seems to be adding unnecessary spaces at the end of each data line;
|
120
|
-
# Working around this by adding \s to the expectation.
|
121
|
-
|
122
116
|
# Unicode:
|
123
117
|
#┏━━━━━━━━━━━━┓
|
124
|
-
#┃ a
|
118
|
+
#┃ a ┃
|
125
119
|
#┣━━━━━━━━━━━━┫
|
126
|
-
#┃ ᓱᓴᓐ ᐊᒡᓗᒃᑲᖅ
|
120
|
+
#┃ ᓱᓴᓐ ᐊᒡᓗᒃᑲᖅ ┃
|
127
121
|
#┗━━━━━━━━━━━━┛
|
128
122
|
# ASCII:
|
129
123
|
<<-OUTPUT.rstrip
|
130
124
|
+------------+
|
131
|
-
| a
|
125
|
+
| a |
|
132
126
|
+------------+
|
133
|
-
| ᓱᓴᓐ ᐊᒡᓗᒃᑲᖅ
|
127
|
+
| ᓱᓴᓐ ᐊᒡᓗᒃᑲᖅ |
|
134
128
|
+------------+
|
135
129
|
OUTPUT
|
136
130
|
end
|
data/spec/cli/navigate_spec.rb
CHANGED
@@ -25,7 +25,7 @@ describe Razor::CLI::Navigate do
|
|
25
25
|
|
26
26
|
it do
|
27
27
|
nav.get_document
|
28
|
-
nav.last_url.to_s.should =~ %r{/api/collections/tags
|
28
|
+
nav.last_url.to_s.should =~ %r{/api/collections/tags}
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
@@ -67,28 +67,28 @@ describe Razor::CLI::Navigate do
|
|
67
67
|
%w[--version].freeze
|
68
68
|
end
|
69
69
|
it "chooses the -u argument first" do
|
70
|
-
url = 'http://u-argument:8000'
|
70
|
+
url = 'http://u-argument:8000/api'
|
71
71
|
stub_results(url)
|
72
72
|
cli_string = %W[-u #{url} --version].freeze
|
73
73
|
nav = Razor::CLI::Parse.new(cli_string).navigate
|
74
74
|
nav.last_url.to_s.should == url
|
75
75
|
end
|
76
76
|
it "chooses the ENV variable second" do
|
77
|
-
url = 'http://env-variable:8000'
|
77
|
+
url = 'http://env-variable:8000/api'
|
78
78
|
stub_results(url)
|
79
79
|
ENV::store('RAZOR_API', url)
|
80
80
|
nav = Razor::CLI::Parse.new(cli_string).navigate
|
81
81
|
nav.last_url.to_s.should == url
|
82
82
|
end
|
83
83
|
it "chooses the HTTPS URL third" do
|
84
|
-
url = 'http://https-url:8000'
|
84
|
+
url = 'http://https-url:8000/api'
|
85
85
|
stub_results(url)
|
86
86
|
stub_const('Razor::CLI::Navigate::RAZOR_HTTPS_API', url)
|
87
87
|
nav = Razor::CLI::Parse.new(cli_string).navigate
|
88
88
|
nav.last_url.to_s.should == url
|
89
89
|
end
|
90
90
|
it "chooses the HTTP URL last" do
|
91
|
-
url = 'http://http-url:8000'
|
91
|
+
url = 'http://http-url:8000/api'
|
92
92
|
refused = 'http://refused:404/api'
|
93
93
|
stub_results(url)
|
94
94
|
# PRIORITY still needs to be refused
|
@@ -224,15 +224,13 @@ describe Razor::CLI::Navigate do
|
|
224
224
|
it "should supply that to the API service" do
|
225
225
|
nav = Razor::CLI::Parse.new(AuthArg).navigate
|
226
226
|
nav.get_document.should be_an_instance_of Hash
|
227
|
-
nav.
|
228
|
-
nav.last_url.password.should == 'dead'
|
227
|
+
nav.doc_resource.headers['Authorization'].should match(/Basic /)
|
229
228
|
end
|
230
229
|
|
231
230
|
it "should preserve that across navigation" do
|
232
231
|
nav = Razor::CLI::Parse.new(AuthArg + ['tags']).navigate
|
233
232
|
nav.get_document['items'].should == []
|
234
|
-
nav.
|
235
|
-
nav.last_url.password.should == 'dead'
|
233
|
+
nav.doc_resource.headers["Authorization"].should match(/Basic /)
|
236
234
|
end
|
237
235
|
end
|
238
236
|
|
@@ -283,7 +281,7 @@ describe Razor::CLI::Navigate do
|
|
283
281
|
it "should be set to 1 when the endpoint is the final query" do
|
284
282
|
nav = Razor::CLI::Parse.new(['nodes']).navigate
|
285
283
|
nav.get_document
|
286
|
-
expect(nav.
|
284
|
+
expect(nav.last_url.to_s).to match(/nodes\?depth=1/)
|
287
285
|
end
|
288
286
|
|
289
287
|
it "should not carry-over to later requests in a nested query" do
|
@@ -301,7 +299,7 @@ describe Razor::CLI::Navigate do
|
|
301
299
|
# was visited, and that the depth parameter was not used (since
|
302
300
|
# it is an intermediate request). We should also update the test
|
303
301
|
# description when we do this to note the new assertion.
|
304
|
-
expect(nav.
|
302
|
+
expect(nav.last_url.to_s).not_to match(/depth/)
|
305
303
|
end
|
306
304
|
end
|
307
305
|
|
@@ -322,7 +320,7 @@ describe Razor::CLI::Navigate do
|
|
322
320
|
locales.should == 'de_DE,de,en'
|
323
321
|
nav = Razor::CLI::Parse.new(['create-broker', '--name=other-broker', '--broker-type', 'puppet-pe', '-c', 'server=abc.com']).navigate
|
324
322
|
nav.accept_language.should == locales
|
325
|
-
nav.doc_resource.
|
323
|
+
nav.doc_resource.headers["accept_language"].should == locales
|
326
324
|
end
|
327
325
|
end
|
328
326
|
end
|
data/spec/cli/parse_spec.rb
CHANGED
@@ -131,9 +131,11 @@ describe Razor::CLI::Parse do
|
|
131
131
|
subject(:p) {parse}
|
132
132
|
it { should respond_to :help}
|
133
133
|
|
134
|
-
it
|
135
|
-
|
136
|
-
|
134
|
+
it do
|
135
|
+
output, exitcode = p.help
|
136
|
+
output.should be_a String
|
137
|
+
exitcode.should == 0
|
138
|
+
end
|
137
139
|
|
138
140
|
it "should print a list of known endpoints" do
|
139
141
|
p.navigate.should_receive(:collections).and_return([])
|
@@ -9,14 +9,14 @@ http_interactions:
|
|
9
9
|
headers:
|
10
10
|
Accept:
|
11
11
|
- application/json
|
12
|
-
Accept-Encoding:
|
13
|
-
- gzip, deflate
|
14
|
-
User-Agent:
|
15
|
-
- rest-client/2.0.2 (darwin x86_64) jruby/9.1.5.0 (2.3.1p0)
|
16
12
|
Accept-Language:
|
17
13
|
- de_DE,de,en
|
18
|
-
|
19
|
-
-
|
14
|
+
User-Agent:
|
15
|
+
- Faraday v0.15.4
|
16
|
+
Authorization:
|
17
|
+
- Basic Og==
|
18
|
+
Accept-Encoding:
|
19
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
20
20
|
response:
|
21
21
|
status:
|
22
22
|
code: 200
|
@@ -29,12 +29,12 @@ http_interactions:
|
|
29
29
|
Content-Type:
|
30
30
|
- application/json
|
31
31
|
Content-Length:
|
32
|
-
- '
|
32
|
+
- '7432'
|
33
33
|
Date:
|
34
|
-
-
|
34
|
+
- Fri, 23 Aug 2019 19:51:53 GMT
|
35
35
|
body:
|
36
36
|
encoding: UTF-8
|
37
|
-
string: '{"commands":[{"name":"
|
37
|
+
string: '{"commands":[{"name":"update-repo-task","rel":"http://api.puppetlabs.com/razor/v1/commands/update-repo-task","id":"http://localhost:8150/api/commands/update-repo-task"},{"name":"delete-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-hook","id":"http://localhost:8150/api/commands/delete-hook"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8150/api/commands/delete-broker"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8150/api/commands/register-node"},{"name":"update-policy-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-broker","id":"http://localhost:8150/api/commands/update-policy-broker"},{"name":"update-policy-task","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-task","id":"http://localhost:8150/api/commands/update-policy-task"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8150/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:8150/api/commands/set-node-hw-info"},{"name":"run-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/run-hook","id":"http://localhost:8150/api/commands/run-hook"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8150/api/commands/create-policy"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8150/api/commands/reinstall-node"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8150/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8150/api/commands/enable-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8150/api/commands/create-repo"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8150/api/commands/remove-node-metadata"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8150/api/commands/modify-node-metadata"},{"name":"update-policy-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-node-metadata","id":"http://localhost:8150/api/commands/update-policy-node-metadata"},{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8150/api/commands/add-policy-tag"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8150/api/commands/remove-policy-tag"},{"name":"create-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/create-hook","id":"http://localhost:8150/api/commands/create-hook"},{"name":"update-policy-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-repo","id":"http://localhost:8150/api/commands/update-policy-repo"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8150/api/commands/update-tag-rule"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8150/api/commands/delete-policy"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8150/api/commands/delete-tag"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8150/api/commands/create-tag"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8150/api/commands/delete-node"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8150/api/commands/reboot-node"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8150/api/commands/move-policy"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8150/api/commands/set-node-ipmi-credentials"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8150/api/commands/delete-repo"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8150/api/commands/modify-policy-max-count"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8150/api/commands/update-node-metadata"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8150/api/commands/create-task"},{"name":"update-hook-configuration","rel":"http://api.puppetlabs.com/razor/v1/commands/update-hook-configuration","id":"http://localhost:8150/api/commands/update-hook-configuration"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8150/api/commands/create-broker"},{"name":"update-broker-configuration","rel":"http://api.puppetlabs.com/razor/v1/commands/update-broker-configuration","id":"http://localhost:8150/api/commands/update-broker-configuration"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8150/api/collections/brokers","params":{"depth":{"type":"number"}}},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8150/api/collections/repos","params":{"depth":{"type":"number"}}},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8150/api/collections/tags","params":{"depth":{"type":"number"}}},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8150/api/collections/policies","params":{"depth":{"type":"number"}}},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8150/api/collections/nodes","params":{"start":{"type":"number"},"limit":{"type":"number"},"depth":{"type":"number"}}},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8150/api/collections/tasks","params":{"depth":{"type":"number"}}},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8150/api/collections/commands","params":{"depth":{"type":"number"}}},{"name":"events","rel":"http://api.puppetlabs.com/razor/v1/collections/events","id":"http://localhost:8150/api/collections/events","params":{"start":{"type":"number"},"limit":{"type":"number"},"depth":{"type":"number"}}},{"name":"hooks","rel":"http://api.puppetlabs.com/razor/v1/collections/hooks","id":"http://localhost:8150/api/collections/hooks","params":{"depth":{"type":"number"}}},{"name":"config","rel":"http://api.puppetlabs.com/razor/v1/collections/config","id":"http://localhost:8150/api/collections/config"}],"version":{"server":"v1.9.5-9-g774b5ce-dirty"}}'
|
38
38
|
http_version:
|
39
|
-
recorded_at:
|
39
|
+
recorded_at: Fri, 23 Aug 2019 19:51:53 GMT
|
40
40
|
recorded_with: VCR 4.0.0
|
@@ -9,14 +9,14 @@ http_interactions:
|
|
9
9
|
headers:
|
10
10
|
Accept:
|
11
11
|
- application/json
|
12
|
-
Accept-Encoding:
|
13
|
-
- gzip, deflate
|
14
|
-
User-Agent:
|
15
|
-
- rest-client/2.0.2 (darwin x86_64) jruby/9.1.5.0 (2.3.1p0)
|
16
12
|
Accept-Language:
|
17
13
|
- en_US,en
|
18
|
-
|
19
|
-
-
|
14
|
+
User-Agent:
|
15
|
+
- Faraday v0.15.4
|
16
|
+
Authorization:
|
17
|
+
- Basic Og==
|
18
|
+
Accept-Encoding:
|
19
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
20
20
|
response:
|
21
21
|
status:
|
22
22
|
code: 200
|
@@ -29,12 +29,12 @@ http_interactions:
|
|
29
29
|
Content-Type:
|
30
30
|
- application/json
|
31
31
|
Content-Length:
|
32
|
-
- '
|
32
|
+
- '7432'
|
33
33
|
Date:
|
34
|
-
-
|
34
|
+
- Fri, 23 Aug 2019 19:51:48 GMT
|
35
35
|
body:
|
36
36
|
encoding: UTF-8
|
37
|
-
string: '{"commands":[{"name":"
|
37
|
+
string: '{"commands":[{"name":"update-repo-task","rel":"http://api.puppetlabs.com/razor/v1/commands/update-repo-task","id":"http://localhost:8150/api/commands/update-repo-task"},{"name":"delete-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-hook","id":"http://localhost:8150/api/commands/delete-hook"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8150/api/commands/delete-broker"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8150/api/commands/register-node"},{"name":"update-policy-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-broker","id":"http://localhost:8150/api/commands/update-policy-broker"},{"name":"update-policy-task","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-task","id":"http://localhost:8150/api/commands/update-policy-task"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8150/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:8150/api/commands/set-node-hw-info"},{"name":"run-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/run-hook","id":"http://localhost:8150/api/commands/run-hook"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8150/api/commands/create-policy"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8150/api/commands/reinstall-node"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8150/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8150/api/commands/enable-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8150/api/commands/create-repo"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8150/api/commands/remove-node-metadata"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8150/api/commands/modify-node-metadata"},{"name":"update-policy-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-node-metadata","id":"http://localhost:8150/api/commands/update-policy-node-metadata"},{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8150/api/commands/add-policy-tag"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8150/api/commands/remove-policy-tag"},{"name":"create-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/create-hook","id":"http://localhost:8150/api/commands/create-hook"},{"name":"update-policy-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-repo","id":"http://localhost:8150/api/commands/update-policy-repo"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8150/api/commands/update-tag-rule"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8150/api/commands/delete-policy"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8150/api/commands/delete-tag"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8150/api/commands/create-tag"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8150/api/commands/delete-node"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8150/api/commands/reboot-node"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8150/api/commands/move-policy"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8150/api/commands/set-node-ipmi-credentials"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8150/api/commands/delete-repo"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8150/api/commands/modify-policy-max-count"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8150/api/commands/update-node-metadata"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8150/api/commands/create-task"},{"name":"update-hook-configuration","rel":"http://api.puppetlabs.com/razor/v1/commands/update-hook-configuration","id":"http://localhost:8150/api/commands/update-hook-configuration"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8150/api/commands/create-broker"},{"name":"update-broker-configuration","rel":"http://api.puppetlabs.com/razor/v1/commands/update-broker-configuration","id":"http://localhost:8150/api/commands/update-broker-configuration"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8150/api/collections/brokers","params":{"depth":{"type":"number"}}},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8150/api/collections/repos","params":{"depth":{"type":"number"}}},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8150/api/collections/tags","params":{"depth":{"type":"number"}}},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8150/api/collections/policies","params":{"depth":{"type":"number"}}},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8150/api/collections/nodes","params":{"start":{"type":"number"},"limit":{"type":"number"},"depth":{"type":"number"}}},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8150/api/collections/tasks","params":{"depth":{"type":"number"}}},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8150/api/collections/commands","params":{"depth":{"type":"number"}}},{"name":"events","rel":"http://api.puppetlabs.com/razor/v1/collections/events","id":"http://localhost:8150/api/collections/events","params":{"start":{"type":"number"},"limit":{"type":"number"},"depth":{"type":"number"}}},{"name":"hooks","rel":"http://api.puppetlabs.com/razor/v1/collections/hooks","id":"http://localhost:8150/api/collections/hooks","params":{"depth":{"type":"number"}}},{"name":"config","rel":"http://api.puppetlabs.com/razor/v1/collections/config","id":"http://localhost:8150/api/collections/config"}],"version":{"server":"v1.9.5-9-g774b5ce-dirty"}}'
|
38
38
|
http_version:
|
39
|
-
recorded_at:
|
39
|
+
recorded_at: Fri, 23 Aug 2019 19:51:48 GMT
|
40
40
|
recorded_with: VCR 4.0.0
|
@@ -9,14 +9,14 @@ http_interactions:
|
|
9
9
|
headers:
|
10
10
|
Accept:
|
11
11
|
- application/json
|
12
|
-
Accept-Encoding:
|
13
|
-
- gzip, deflate
|
14
|
-
User-Agent:
|
15
|
-
- rest-client/2.0.2 (darwin x86_64) jruby/9.1.5.0 (2.3.1p0)
|
16
12
|
Accept-Language:
|
17
13
|
- en_US,en
|
18
|
-
|
19
|
-
-
|
14
|
+
User-Agent:
|
15
|
+
- Faraday v0.15.4
|
16
|
+
Authorization:
|
17
|
+
- Basic Og==
|
18
|
+
Accept-Encoding:
|
19
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
20
20
|
response:
|
21
21
|
status:
|
22
22
|
code: 200
|
@@ -29,14 +29,14 @@ http_interactions:
|
|
29
29
|
Content-Type:
|
30
30
|
- application/json
|
31
31
|
Content-Length:
|
32
|
-
- '
|
32
|
+
- '7432'
|
33
33
|
Date:
|
34
|
-
-
|
34
|
+
- Fri, 23 Aug 2019 19:49:45 GMT
|
35
35
|
body:
|
36
36
|
encoding: UTF-8
|
37
|
-
string: '{"commands":[{"name":"
|
37
|
+
string: '{"commands":[{"name":"update-repo-task","rel":"http://api.puppetlabs.com/razor/v1/commands/update-repo-task","id":"http://localhost:8150/api/commands/update-repo-task"},{"name":"delete-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-hook","id":"http://localhost:8150/api/commands/delete-hook"},{"name":"delete-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-broker","id":"http://localhost:8150/api/commands/delete-broker"},{"name":"register-node","rel":"http://api.puppetlabs.com/razor/v1/commands/register-node","id":"http://localhost:8150/api/commands/register-node"},{"name":"update-policy-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-broker","id":"http://localhost:8150/api/commands/update-policy-broker"},{"name":"update-policy-task","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-task","id":"http://localhost:8150/api/commands/update-policy-task"},{"name":"set-node-desired-power-state","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-desired-power-state","id":"http://localhost:8150/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:8150/api/commands/set-node-hw-info"},{"name":"run-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/run-hook","id":"http://localhost:8150/api/commands/run-hook"},{"name":"create-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/create-policy","id":"http://localhost:8150/api/commands/create-policy"},{"name":"reinstall-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reinstall-node","id":"http://localhost:8150/api/commands/reinstall-node"},{"name":"disable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/disable-policy","id":"http://localhost:8150/api/commands/disable-policy"},{"name":"enable-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/enable-policy","id":"http://localhost:8150/api/commands/enable-policy"},{"name":"create-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/create-repo","id":"http://localhost:8150/api/commands/create-repo"},{"name":"remove-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-node-metadata","id":"http://localhost:8150/api/commands/remove-node-metadata"},{"name":"modify-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-node-metadata","id":"http://localhost:8150/api/commands/modify-node-metadata"},{"name":"update-policy-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-node-metadata","id":"http://localhost:8150/api/commands/update-policy-node-metadata"},{"name":"add-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/add-policy-tag","id":"http://localhost:8150/api/commands/add-policy-tag"},{"name":"remove-policy-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/remove-policy-tag","id":"http://localhost:8150/api/commands/remove-policy-tag"},{"name":"create-hook","rel":"http://api.puppetlabs.com/razor/v1/commands/create-hook","id":"http://localhost:8150/api/commands/create-hook"},{"name":"update-policy-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/update-policy-repo","id":"http://localhost:8150/api/commands/update-policy-repo"},{"name":"update-tag-rule","rel":"http://api.puppetlabs.com/razor/v1/commands/update-tag-rule","id":"http://localhost:8150/api/commands/update-tag-rule"},{"name":"delete-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-policy","id":"http://localhost:8150/api/commands/delete-policy"},{"name":"delete-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-tag","id":"http://localhost:8150/api/commands/delete-tag"},{"name":"create-tag","rel":"http://api.puppetlabs.com/razor/v1/commands/create-tag","id":"http://localhost:8150/api/commands/create-tag"},{"name":"delete-node","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-node","id":"http://localhost:8150/api/commands/delete-node"},{"name":"reboot-node","rel":"http://api.puppetlabs.com/razor/v1/commands/reboot-node","id":"http://localhost:8150/api/commands/reboot-node"},{"name":"move-policy","rel":"http://api.puppetlabs.com/razor/v1/commands/move-policy","id":"http://localhost:8150/api/commands/move-policy"},{"name":"set-node-ipmi-credentials","rel":"http://api.puppetlabs.com/razor/v1/commands/set-node-ipmi-credentials","id":"http://localhost:8150/api/commands/set-node-ipmi-credentials"},{"name":"delete-repo","rel":"http://api.puppetlabs.com/razor/v1/commands/delete-repo","id":"http://localhost:8150/api/commands/delete-repo"},{"name":"modify-policy-max-count","rel":"http://api.puppetlabs.com/razor/v1/commands/modify-policy-max-count","id":"http://localhost:8150/api/commands/modify-policy-max-count"},{"name":"update-node-metadata","rel":"http://api.puppetlabs.com/razor/v1/commands/update-node-metadata","id":"http://localhost:8150/api/commands/update-node-metadata"},{"name":"create-task","rel":"http://api.puppetlabs.com/razor/v1/commands/create-task","id":"http://localhost:8150/api/commands/create-task"},{"name":"update-hook-configuration","rel":"http://api.puppetlabs.com/razor/v1/commands/update-hook-configuration","id":"http://localhost:8150/api/commands/update-hook-configuration"},{"name":"create-broker","rel":"http://api.puppetlabs.com/razor/v1/commands/create-broker","id":"http://localhost:8150/api/commands/create-broker"},{"name":"update-broker-configuration","rel":"http://api.puppetlabs.com/razor/v1/commands/update-broker-configuration","id":"http://localhost:8150/api/commands/update-broker-configuration"}],"collections":[{"name":"brokers","rel":"http://api.puppetlabs.com/razor/v1/collections/brokers","id":"http://localhost:8150/api/collections/brokers","params":{"depth":{"type":"number"}}},{"name":"repos","rel":"http://api.puppetlabs.com/razor/v1/collections/repos","id":"http://localhost:8150/api/collections/repos","params":{"depth":{"type":"number"}}},{"name":"tags","rel":"http://api.puppetlabs.com/razor/v1/collections/tags","id":"http://localhost:8150/api/collections/tags","params":{"depth":{"type":"number"}}},{"name":"policies","rel":"http://api.puppetlabs.com/razor/v1/collections/policies","id":"http://localhost:8150/api/collections/policies","params":{"depth":{"type":"number"}}},{"name":"nodes","rel":"http://api.puppetlabs.com/razor/v1/collections/nodes","id":"http://localhost:8150/api/collections/nodes","params":{"start":{"type":"number"},"limit":{"type":"number"},"depth":{"type":"number"}}},{"name":"tasks","rel":"http://api.puppetlabs.com/razor/v1/collections/tasks","id":"http://localhost:8150/api/collections/tasks","params":{"depth":{"type":"number"}}},{"name":"commands","rel":"http://api.puppetlabs.com/razor/v1/collections/commands","id":"http://localhost:8150/api/collections/commands","params":{"depth":{"type":"number"}}},{"name":"events","rel":"http://api.puppetlabs.com/razor/v1/collections/events","id":"http://localhost:8150/api/collections/events","params":{"start":{"type":"number"},"limit":{"type":"number"},"depth":{"type":"number"}}},{"name":"hooks","rel":"http://api.puppetlabs.com/razor/v1/collections/hooks","id":"http://localhost:8150/api/collections/hooks","params":{"depth":{"type":"number"}}},{"name":"config","rel":"http://api.puppetlabs.com/razor/v1/collections/config","id":"http://localhost:8150/api/collections/config"}],"version":{"server":"v1.9.5-9-g774b5ce-dirty"}}'
|
38
38
|
http_version:
|
39
|
-
recorded_at:
|
39
|
+
recorded_at: Fri, 23 Aug 2019 19:49:45 GMT
|
40
40
|
- request:
|
41
41
|
method: get
|
42
42
|
uri: http://localhost:8150/api/commands/create-repo
|
@@ -46,14 +46,14 @@ http_interactions:
|
|
46
46
|
headers:
|
47
47
|
Accept:
|
48
48
|
- application/json
|
49
|
-
Accept-Encoding:
|
50
|
-
- gzip, deflate
|
51
|
-
User-Agent:
|
52
|
-
- rest-client/2.0.2 (darwin x86_64) jruby/9.1.5.0 (2.3.1p0)
|
53
49
|
Accept-Language:
|
54
50
|
- en_US,en
|
55
|
-
|
56
|
-
-
|
51
|
+
User-Agent:
|
52
|
+
- Faraday v0.15.4
|
53
|
+
Authorization:
|
54
|
+
- Basic Og==
|
55
|
+
Accept-Encoding:
|
56
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
57
57
|
response:
|
58
58
|
status:
|
59
59
|
code: 200
|
@@ -62,7 +62,7 @@ http_interactions:
|
|
62
62
|
Server:
|
63
63
|
- Apache-Coyote/1.1
|
64
64
|
Etag:
|
65
|
-
- '"server-version-v1.
|
65
|
+
- '"server-version-v1.9.5-9-g774b5ce-dirty"'
|
66
66
|
X-Content-Type-Options:
|
67
67
|
- nosniff
|
68
68
|
Content-Type:
|
@@ -70,7 +70,7 @@ http_interactions:
|
|
70
70
|
Content-Length:
|
71
71
|
- '8224'
|
72
72
|
Date:
|
73
|
-
-
|
73
|
+
- Fri, 23 Aug 2019 19:49:45 GMT
|
74
74
|
body:
|
75
75
|
encoding: UTF-8
|
76
76
|
string: '{"name":"create-repo","help":{"summary":"Create a new repository, from
|
@@ -170,7 +170,7 @@ http_interactions:
|
|
170
170
|
onto the Razor server:\n \n {\n \"name\": \"fedora21\",\n \"url\": \"http://mirrors.n-ix.net/fedora/linux/releases/21/Server/x86_64/os\"\n \"task\":
|
171
171
|
\"fedora\"\n }\n"},"schema":{"name":{"type":"string","position":0},"url":{"type":"string"},"iso_url":{"type":"string","aliases":["iso-url"]},"no_content":{"type":"boolean","aliases":["no-content"]},"task":{"type":"string"}}}'
|
172
172
|
http_version:
|
173
|
-
recorded_at:
|
173
|
+
recorded_at: Fri, 23 Aug 2019 19:49:45 GMT
|
174
174
|
- request:
|
175
175
|
method: post
|
176
176
|
uri: http://localhost:8150/api/commands/create-repo
|
@@ -178,20 +178,18 @@ http_interactions:
|
|
178
178
|
encoding: UTF-8
|
179
179
|
string: '{"name":"''with=equals''","url":"http://url.com/some.iso","task":"noop"}'
|
180
180
|
headers:
|
181
|
-
Accept:
|
182
|
-
- application/json
|
183
|
-
Accept-Encoding:
|
184
|
-
- gzip, deflate
|
185
|
-
User-Agent:
|
186
|
-
- rest-client/2.0.2 (darwin x86_64) jruby/9.1.5.0 (2.3.1p0)
|
187
181
|
Content-Type:
|
188
182
|
- application/json
|
183
|
+
Accept:
|
184
|
+
- application/json
|
189
185
|
Accept-Language:
|
190
186
|
- en_US,en
|
191
|
-
|
192
|
-
-
|
193
|
-
|
194
|
-
-
|
187
|
+
User-Agent:
|
188
|
+
- Faraday v0.15.4
|
189
|
+
Authorization:
|
190
|
+
- Basic Og==
|
191
|
+
Accept-Encoding:
|
192
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
195
193
|
response:
|
196
194
|
status:
|
197
195
|
code: 202
|
@@ -206,12 +204,12 @@ http_interactions:
|
|
206
204
|
Content-Length:
|
207
205
|
- '219'
|
208
206
|
Date:
|
209
|
-
-
|
207
|
+
- Fri, 23 Aug 2019 19:49:45 GMT
|
210
208
|
body:
|
211
209
|
encoding: UTF-8
|
212
210
|
string: '{"spec":"http://api.puppetlabs.com/razor/v1/collections/repos/member","id":"http://localhost:8150/api/collections/repos/''with=equals''","name":"''with=equals''","command":"http://localhost:8150/api/collections/commands/1"}'
|
213
211
|
http_version:
|
214
|
-
recorded_at:
|
212
|
+
recorded_at: Fri, 23 Aug 2019 19:49:45 GMT
|
215
213
|
- request:
|
216
214
|
method: get
|
217
215
|
uri: http://localhost:8150/api/collections/repos/'with=equals'
|
@@ -221,14 +219,14 @@ http_interactions:
|
|
221
219
|
headers:
|
222
220
|
Accept:
|
223
221
|
- application/json
|
224
|
-
Accept-Encoding:
|
225
|
-
- gzip, deflate
|
226
|
-
User-Agent:
|
227
|
-
- rest-client/2.0.2 (darwin x86_64) jruby/9.1.5.0 (2.3.1p0)
|
228
222
|
Accept-Language:
|
229
223
|
- en_US,en
|
230
|
-
|
231
|
-
-
|
224
|
+
User-Agent:
|
225
|
+
- Faraday v0.15.4
|
226
|
+
Authorization:
|
227
|
+
- Basic Og==
|
228
|
+
Accept-Encoding:
|
229
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
232
230
|
response:
|
233
231
|
status:
|
234
232
|
code: 200
|
@@ -243,10 +241,10 @@ http_interactions:
|
|
243
241
|
Content-Length:
|
244
242
|
- '353'
|
245
243
|
Date:
|
246
|
-
-
|
244
|
+
- Fri, 23 Aug 2019 19:49:45 GMT
|
247
245
|
body:
|
248
246
|
encoding: UTF-8
|
249
247
|
string: '{"spec":"http://api.puppetlabs.com/razor/v1/collections/repos/member","id":"http://localhost:8150/api/collections/repos/''with=equals''","name":"''with=equals''","iso_url":null,"url":"http://url.com/some.iso","task":{"spec":"http://api.puppetlabs.com/razor/v1/collections/tasks/member","id":"http://localhost:8150/api/collections/tasks/noop","name":"noop"}}'
|
250
248
|
http_version:
|
251
|
-
recorded_at:
|
249
|
+
recorded_at: Fri, 23 Aug 2019 19:49:45 GMT
|
252
250
|
recorded_with: VCR 4.0.0
|