razor-client 1.9.4 → 1.9.5
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 +5 -5
- data/NEWS.md +5 -0
- data/lib/razor/cli/command.rb +4 -2
- data/spec/cli/command_spec.rb +13 -0
- metadata +21 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e1defb4bea2f1d1998d77782490f2e4828ecfd29
|
4
|
+
data.tar.gz: 7f98e0a1282e359e159ea9e2983551d72d8cf790
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5daf070483c704837ab46c11bb4d33ed15af45aa5c852915ec52ba1c2b2f1090d17dc50705ff4531ce0f29d5e3d2accac5d681cb067b81fa2e23beb894d41a5
|
7
|
+
data.tar.gz: a6cce4845b41e97498ec1e4b25df325d7ed17203f8a51984cd25315b0b28837d6b97e359c567971d258ba530601215239fb19f33298ad0a548ebcde36396698b
|
data/NEWS.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Razor Client Release Notes
|
2
2
|
|
3
|
+
## 1.9.5 - 2019-08-29
|
4
|
+
|
5
|
+
* BUGFIX: Fixed handling of boolean arguments, e.g. `--enabled` in
|
6
|
+
`create-policy`, where the following arguments were not delineated properly.
|
7
|
+
|
3
8
|
## 1.9.4 - 2019-08-26
|
4
9
|
|
5
10
|
* IMPROVEMENT: Moved from `rest-client` to `faraday` due to increasing
|
data/lib/razor/cli/command.rb
CHANGED
@@ -35,7 +35,7 @@ class Razor::CLI::Command
|
|
35
35
|
# `--arg=value`/`--arg value`
|
36
36
|
# `-a=value`/`-a value`
|
37
37
|
arg_name, value = [$1, $3]
|
38
|
-
value = @segments.shift if value.nil? && @segments[0] !~ /^-[a-z]/
|
38
|
+
value = @segments.shift if value.nil? && @segments[0] !~ /^-[-]?[a-z]/
|
39
39
|
arg_name = self.class.resolve_alias(arg_name, @cmd_schema)
|
40
40
|
body[arg_name] = self.class.convert_arg(arg_name, value, body[arg_name], @cmd_schema)
|
41
41
|
elsif argument =~ /\A-([a-z][a-z_-]+)(=(.+))?\Z/ and
|
@@ -127,7 +127,9 @@ class Razor::CLI::Command
|
|
127
127
|
{argument_name: arg_name, error: error.message}
|
128
128
|
end
|
129
129
|
when "boolean"
|
130
|
-
|
130
|
+
raise ArgumentError, _("Invalid boolean for argument '%{argument_name}': %{value}") %
|
131
|
+
{argument_name: arg_name, value: value} unless ["true", "false", nil].include?(value)
|
132
|
+
value != "false"
|
131
133
|
when "number"
|
132
134
|
begin
|
133
135
|
Integer(value)
|
data/spec/cli/command_spec.rb
CHANGED
@@ -60,6 +60,16 @@ describe Razor::CLI::Command do
|
|
60
60
|
to raise_error(ArgumentError, /Expected nothing for argument 'tags', but was: 'abc'/)
|
61
61
|
end
|
62
62
|
end
|
63
|
+
context "boolean conversion" do
|
64
|
+
it "errors when anything besides 'true', 'false' or nil are provided" do
|
65
|
+
cmd_schema = {"enabled"=>{"type"=>"boolean"}}
|
66
|
+
expect{Command.convert_arg('enabled', 'abc', existing_value, cmd_schema)}.
|
67
|
+
to raise_error(ArgumentError, /Invalid boolean for argument 'enabled': abc/)
|
68
|
+
expect(Command.convert_arg('enabled', 'true', existing_value, cmd_schema)).to eq(true)
|
69
|
+
expect(Command.convert_arg('enabled', nil, existing_value, cmd_schema)).to eq(true)
|
70
|
+
expect(Command.convert_arg('enabled', 'false', existing_value, cmd_schema)).to eq(false)
|
71
|
+
end
|
72
|
+
end
|
63
73
|
end
|
64
74
|
|
65
75
|
context "resolve_alias" do
|
@@ -104,6 +114,9 @@ describe Razor::CLI::Command do
|
|
104
114
|
it "succeeds with a double dash for long flags" do
|
105
115
|
extract({'schema' => {'name' => {'type' => 'array'}}},
|
106
116
|
['--name', 'abc'])['name'].should == ['abc']
|
117
|
+
extract({'schema' => {'true' => {'type' => 'boolean'},
|
118
|
+
'other' => {'type' => 'number'}}},
|
119
|
+
['--true', '--other', '123'])['true'].should be_true
|
107
120
|
end
|
108
121
|
it "succeeds with a single dash for short flags" do
|
109
122
|
c = Razor::CLI::Command.new(nil, nil, {'schema' => {'n' => {'type' => 'array'}}},
|
metadata
CHANGED
@@ -1,108 +1,108 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: razor-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet Labs
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-08-
|
11
|
+
date: 2019-08-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name: mime-types
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
16
15
|
requirements:
|
17
16
|
- - ">="
|
18
17
|
- !ruby/object:Gem::Version
|
19
18
|
version: '0'
|
20
|
-
|
19
|
+
name: mime-types
|
21
20
|
prerelease: false
|
21
|
+
type: :runtime
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name: multi_json
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
30
29
|
requirements:
|
31
30
|
- - ">="
|
32
31
|
- !ruby/object:Gem::Version
|
33
32
|
version: '0'
|
34
|
-
|
33
|
+
name: multi_json
|
35
34
|
prerelease: false
|
35
|
+
type: :runtime
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name: faraday
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
44
43
|
requirements:
|
45
44
|
- - ">="
|
46
45
|
- !ruby/object:Gem::Version
|
47
46
|
version: '0.15'
|
48
|
-
|
47
|
+
name: faraday
|
49
48
|
prerelease: false
|
49
|
+
type: :runtime
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0.15'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name: command_line_reporter
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
58
57
|
requirements:
|
59
58
|
- - "~>"
|
60
59
|
- !ruby/object:Gem::Version
|
61
60
|
version: '3.0'
|
62
|
-
|
61
|
+
name: command_line_reporter
|
63
62
|
prerelease: false
|
63
|
+
type: :runtime
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '3.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name: gettext-setup
|
71
70
|
requirement: !ruby/object:Gem::Requirement
|
72
71
|
requirements:
|
73
72
|
- - ">="
|
74
73
|
- !ruby/object:Gem::Version
|
75
74
|
version: '0.31'
|
76
|
-
|
75
|
+
name: gettext-setup
|
77
76
|
prerelease: false
|
77
|
+
type: :runtime
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0.31'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name: bundler
|
85
84
|
requirement: !ruby/object:Gem::Requirement
|
86
85
|
requirements:
|
87
86
|
- - ">="
|
88
87
|
- !ruby/object:Gem::Version
|
89
88
|
version: '0'
|
90
|
-
|
89
|
+
name: bundler
|
91
90
|
prerelease: false
|
91
|
+
type: :development
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name: rake
|
99
98
|
requirement: !ruby/object:Gem::Requirement
|
100
99
|
requirements:
|
101
100
|
- - ">="
|
102
101
|
- !ruby/object:Gem::Version
|
103
102
|
version: '0'
|
104
|
-
|
103
|
+
name: rake
|
105
104
|
prerelease: false
|
105
|
+
type: :development
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - ">="
|
@@ -201,7 +201,7 @@ homepage: https://github.com/puppetlabs/razor-client
|
|
201
201
|
licenses:
|
202
202
|
- ASL2
|
203
203
|
metadata: {}
|
204
|
-
post_install_message:
|
204
|
+
post_install_message:
|
205
205
|
rdoc_options: []
|
206
206
|
require_paths:
|
207
207
|
- lib
|
@@ -216,8 +216,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
216
216
|
- !ruby/object:Gem::Version
|
217
217
|
version: '0'
|
218
218
|
requirements: []
|
219
|
-
|
220
|
-
|
219
|
+
rubyforge_project:
|
220
|
+
rubygems_version: 2.6.6
|
221
|
+
signing_key:
|
221
222
|
specification_version: 4
|
222
223
|
summary: The client for everybody's favorite provisioning tool
|
223
224
|
test_files:
|