packer-config 0.0.4 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.travis.yml +2 -0
- data/COPYRIGHT +10 -0
- data/Gemfile +0 -14
- data/README.md +20 -9
- data/RELEASENOTES.md +8 -0
- data/Rakefile +0 -14
- data/lib/packer-config.rb +1 -14
- data/lib/packer/builder.rb +5 -15
- data/lib/packer/builders/all.rb +2 -14
- data/lib/packer/builders/amazon.rb +0 -13
- data/lib/packer/builders/docker.rb +1 -14
- data/lib/packer/builders/null.rb +40 -0
- data/lib/packer/builders/virtualbox.rb +1 -14
- data/lib/packer/dataobject.rb +0 -14
- data/lib/packer/envvar.rb +1 -15
- data/lib/packer/macro.rb +1 -15
- data/lib/packer/postprocessor.rb +0 -13
- data/lib/packer/postprocessors/all.rb +1 -14
- data/lib/packer/postprocessors/docker.rb +1 -14
- data/lib/packer/postprocessors/vagrant.rb +1 -14
- data/lib/packer/provisioner.rb +24 -19
- data/lib/packer/provisioners/all.rb +7 -14
- data/lib/packer/provisioners/ansible.rb +55 -0
- data/lib/packer/provisioners/chef/client.rb +75 -0
- data/lib/packer/provisioners/chef/solo.rb +67 -0
- data/lib/packer/provisioners/file.rb +1 -14
- data/lib/packer/provisioners/puppet/masterless.rb +48 -0
- data/lib/packer/provisioners/puppet/server.rb +47 -0
- data/lib/packer/provisioners/salt.rb +39 -0
- data/lib/packer/provisioners/shell.rb +1 -14
- data/packer-config.gemspec +4 -17
- data/spec/integration/centos_vagrant_spec.rb +4 -4
- data/spec/packer/builder_spec.rb +1 -14
- data/spec/packer/builders/amazon_spec.rb +1 -14
- data/spec/packer/builders/docker_spec.rb +1 -14
- data/spec/packer/builders/null_spec.rb +25 -0
- data/spec/packer/builders/virtualbox_spec.rb +1 -14
- data/spec/packer/dataobject_spec.rb +0 -13
- data/spec/packer/envvar_spec.rb +1 -14
- data/spec/packer/macro_spec.rb +1 -14
- data/spec/packer/postprocessor_spec.rb +1 -14
- data/spec/packer/postprocessors/docker_import_spec.rb +1 -14
- data/spec/packer/postprocessors/docker_push_spec.rb +1 -14
- data/spec/packer/postprocessors/vagrant_spec.rb +1 -14
- data/spec/packer/provisioner_spec.rb +2 -15
- data/spec/packer/provisioners/ansible_spec.rb +48 -0
- data/spec/packer/provisioners/chef/client_spec.rb +66 -0
- data/spec/packer/provisioners/chef/solo_spec.rb +98 -0
- data/spec/packer/provisioners/file_spec.rb +1 -14
- data/spec/packer/provisioners/puppet/masterless_spec.rb +141 -0
- data/spec/packer/provisioners/puppet/server_spec.rb +137 -0
- data/spec/packer/provisioners/salt_spec.rb +114 -0
- data/spec/packer/provisioners/shell_spec.rb +1 -14
- data/spec/packer/runner_spec.rb +0 -13
- data/spec/packer_config_spec.rb +0 -13
- data/spec/spec_helper.rb +0 -13
- data/spec/unit_helper.rb +0 -13
- metadata +27 -4
@@ -0,0 +1,114 @@
|
|
1
|
+
# Encoding: utf-8
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
RSpec.describe Packer::Provisioner::Salt do
|
5
|
+
let(:provisioner) do
|
6
|
+
Packer::Provisioner.get_provisioner('salt-masterless')
|
7
|
+
end
|
8
|
+
|
9
|
+
let(:some_string) do
|
10
|
+
'some string'
|
11
|
+
end
|
12
|
+
|
13
|
+
let(:some_array_of_strings) do
|
14
|
+
%w[commmand1 command2]
|
15
|
+
end
|
16
|
+
|
17
|
+
let(:some_array_of_ints) do
|
18
|
+
[1, 2, 3]
|
19
|
+
end
|
20
|
+
|
21
|
+
let(:some_hash_of_strings) do
|
22
|
+
{a: 'foo', b: 'bar'}
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'requires a local_state_tree setting' do
|
26
|
+
expect{ provisioner.validate }.to raise_error
|
27
|
+
end
|
28
|
+
|
29
|
+
describe '#initialize' do
|
30
|
+
it 'has a type of salt-masterless' do
|
31
|
+
expect(provisioner.data['type']).to eq('salt-masterless')
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
describe '#bootstrap_args' do
|
36
|
+
it 'accepts a string' do
|
37
|
+
provisioner.bootstrap_args some_string
|
38
|
+
expect(provisioner.data['bootstrap_args']).to eq(some_string)
|
39
|
+
provisioner.data.delete('bootstrap_args')
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'converts any argument passed to a string' do
|
43
|
+
provisioner.bootstrap_args some_array_of_ints
|
44
|
+
expect(provisioner.data['bootstrap_args']).to eq(some_array_of_ints.to_s)
|
45
|
+
provisioner.data.delete('bootstrap_args')
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
describe '#local_pillar_roots' do
|
50
|
+
it 'accepts a string' do
|
51
|
+
provisioner.local_pillar_roots some_string
|
52
|
+
expect(provisioner.data['local_pillar_roots']).to eq(some_string)
|
53
|
+
provisioner.data.delete('local_pillar_roots')
|
54
|
+
end
|
55
|
+
|
56
|
+
it 'converts any argument passed to a string' do
|
57
|
+
provisioner.local_pillar_roots some_array_of_ints
|
58
|
+
expect(provisioner.data['local_pillar_roots']).to eq(some_array_of_ints.to_s)
|
59
|
+
provisioner.data.delete('local_pillar_roots')
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
describe '#local_state_tree' do
|
64
|
+
it 'accepts a string' do
|
65
|
+
provisioner.local_state_tree some_string
|
66
|
+
expect(provisioner.data['local_state_tree']).to eq(some_string)
|
67
|
+
provisioner.data.delete('local_state_tree')
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'converts any argument passed to a string' do
|
71
|
+
provisioner.local_state_tree some_array_of_ints
|
72
|
+
expect(provisioner.data['local_state_tree']).to eq(some_array_of_ints.to_s)
|
73
|
+
provisioner.data.delete('local_state_tree')
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
describe '#minion_config' do
|
78
|
+
it 'accepts a string' do
|
79
|
+
provisioner.minion_config some_string
|
80
|
+
expect(provisioner.data['minion_config']).to eq(some_string)
|
81
|
+
provisioner.data.delete('minion_config')
|
82
|
+
end
|
83
|
+
|
84
|
+
it 'converts any argument passed to a string' do
|
85
|
+
provisioner.minion_config some_array_of_ints
|
86
|
+
expect(provisioner.data['minion_config']).to eq(some_array_of_ints.to_s)
|
87
|
+
provisioner.data.delete('minion_config')
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
describe '#temp_config_dir' do
|
92
|
+
it 'accepts a string' do
|
93
|
+
provisioner.temp_config_dir some_string
|
94
|
+
expect(provisioner.data['temp_config_dir']).to eq(some_string)
|
95
|
+
provisioner.data.delete('temp_config_dir')
|
96
|
+
end
|
97
|
+
|
98
|
+
it 'converts any argument passed to a string' do
|
99
|
+
provisioner.temp_config_dir some_array_of_ints
|
100
|
+
expect(provisioner.data['temp_config_dir']).to eq(some_array_of_ints.to_s)
|
101
|
+
provisioner.data.delete('temp_config_dir')
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
describe '#skip_bootstrap' do
|
106
|
+
it 'accepts a boolean' do
|
107
|
+
provisioner.skip_bootstrap(true)
|
108
|
+
expect(provisioner.data['skip_bootstrap']).to be_truthy
|
109
|
+
provisioner.skip_bootstrap(false)
|
110
|
+
expect(provisioner.data['skip_bootstrap']).to be_falsey
|
111
|
+
provisioner.data.delete('skip_bootstrap')
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
@@ -1,17 +1,4 @@
|
|
1
1
|
# Encoding: utf-8
|
2
|
-
# Copyright 2014 Ian Chesal
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
#
|
8
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
#
|
10
|
-
# Unless required by applicable law or agreed to in writing, software
|
11
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
# See the License for the specific language governing permissions and
|
14
|
-
# limitations under the License.
|
15
2
|
require 'spec_helper'
|
16
3
|
|
17
4
|
RSpec.describe Packer::Provisioner::Shell do
|
@@ -24,7 +11,7 @@ RSpec.describe Packer::Provisioner::Shell do
|
|
24
11
|
end
|
25
12
|
|
26
13
|
let(:some_array_of_strings) do
|
27
|
-
%w[
|
14
|
+
%w[command1 command2]
|
28
15
|
end
|
29
16
|
|
30
17
|
let(:some_array_of_ints) do
|
data/spec/packer/runner_spec.rb
CHANGED
@@ -1,17 +1,4 @@
|
|
1
1
|
# Encoding: utf-8
|
2
|
-
# Copyright 2014 Ian Chesal
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
#
|
8
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
#
|
10
|
-
# Unless required by applicable law or agreed to in writing, software
|
11
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
# See the License for the specific language governing permissions and
|
14
|
-
# limitations under the License.
|
15
2
|
require 'spec_helper'
|
16
3
|
require 'fakefs/spec_helpers'
|
17
4
|
|
data/spec/packer_config_spec.rb
CHANGED
@@ -1,17 +1,4 @@
|
|
1
1
|
# Encoding: utf-8
|
2
|
-
# Copyright 2014 Ian Chesal
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
#
|
8
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
#
|
10
|
-
# Unless required by applicable law or agreed to in writing, software
|
11
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
# See the License for the specific language governing permissions and
|
14
|
-
# limitations under the License.
|
15
2
|
require 'spec_helper'
|
16
3
|
require 'fakefs/spec_helpers'
|
17
4
|
|
data/spec/spec_helper.rb
CHANGED
@@ -1,17 +1,4 @@
|
|
1
1
|
# Encoding: utf-8
|
2
|
-
# Copyright 2014 Ian Chesal
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
#
|
8
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
#
|
10
|
-
# Unless required by applicable law or agreed to in writing, software
|
11
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
# See the License for the specific language governing permissions and
|
14
|
-
# limitations under the License.
|
15
2
|
require 'packer-config'
|
16
3
|
|
17
4
|
# RSpec.configure do |c|
|
data/spec/unit_helper.rb
CHANGED
@@ -1,15 +1,2 @@
|
|
1
1
|
# Encoding: utf-8
|
2
|
-
# Copyright 2014 Ian Chesal
|
3
|
-
#
|
4
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
# you may not use this file except in compliance with the License.
|
6
|
-
# You may obtain a copy of the License at
|
7
|
-
#
|
8
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
#
|
10
|
-
# Unless required by applicable law or agreed to in writing, software
|
11
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
# See the License for the specific language governing permissions and
|
14
|
-
# limitations under the License.
|
15
2
|
require 'spec_helper'
|
metadata
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: packer-config
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ian Chesal
|
8
|
+
- Fraser Cobb
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2015-02-26 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: bundler
|
@@ -102,7 +103,7 @@ description: |
|
|
102
103
|
correct JSON format. It also saved me having to remember the esoteric Packer
|
103
104
|
syntax for referencing variables and whatnot in the JSON.
|
104
105
|
email:
|
105
|
-
- ian.chesal@gmail.
|
106
|
+
- ian.chesal@gmail.com
|
106
107
|
executables: []
|
107
108
|
extensions: []
|
108
109
|
extra_rdoc_files: []
|
@@ -110,6 +111,7 @@ files:
|
|
110
111
|
- ".gitignore"
|
111
112
|
- ".rubocop.yml"
|
112
113
|
- ".travis.yml"
|
114
|
+
- COPYRIGHT
|
113
115
|
- Gemfile
|
114
116
|
- LICENSE
|
115
117
|
- README.md
|
@@ -121,6 +123,7 @@ files:
|
|
121
123
|
- lib/packer/builders/all.rb
|
122
124
|
- lib/packer/builders/amazon.rb
|
123
125
|
- lib/packer/builders/docker.rb
|
126
|
+
- lib/packer/builders/null.rb
|
124
127
|
- lib/packer/builders/virtualbox.rb
|
125
128
|
- lib/packer/dataobject.rb
|
126
129
|
- lib/packer/envvar.rb
|
@@ -131,7 +134,13 @@ files:
|
|
131
134
|
- lib/packer/postprocessors/vagrant.rb
|
132
135
|
- lib/packer/provisioner.rb
|
133
136
|
- lib/packer/provisioners/all.rb
|
137
|
+
- lib/packer/provisioners/ansible.rb
|
138
|
+
- lib/packer/provisioners/chef/client.rb
|
139
|
+
- lib/packer/provisioners/chef/solo.rb
|
134
140
|
- lib/packer/provisioners/file.rb
|
141
|
+
- lib/packer/provisioners/puppet/masterless.rb
|
142
|
+
- lib/packer/provisioners/puppet/server.rb
|
143
|
+
- lib/packer/provisioners/salt.rb
|
135
144
|
- lib/packer/provisioners/shell.rb
|
136
145
|
- lib/packer/runner.rb
|
137
146
|
- packer-config.gemspec
|
@@ -151,6 +160,7 @@ files:
|
|
151
160
|
- spec/packer/builder_spec.rb
|
152
161
|
- spec/packer/builders/amazon_spec.rb
|
153
162
|
- spec/packer/builders/docker_spec.rb
|
163
|
+
- spec/packer/builders/null_spec.rb
|
154
164
|
- spec/packer/builders/virtualbox_spec.rb
|
155
165
|
- spec/packer/dataobject_spec.rb
|
156
166
|
- spec/packer/envvar_spec.rb
|
@@ -160,7 +170,13 @@ files:
|
|
160
170
|
- spec/packer/postprocessors/docker_push_spec.rb
|
161
171
|
- spec/packer/postprocessors/vagrant_spec.rb
|
162
172
|
- spec/packer/provisioner_spec.rb
|
173
|
+
- spec/packer/provisioners/ansible_spec.rb
|
174
|
+
- spec/packer/provisioners/chef/client_spec.rb
|
175
|
+
- spec/packer/provisioners/chef/solo_spec.rb
|
163
176
|
- spec/packer/provisioners/file_spec.rb
|
177
|
+
- spec/packer/provisioners/puppet/masterless_spec.rb
|
178
|
+
- spec/packer/provisioners/puppet/server_spec.rb
|
179
|
+
- spec/packer/provisioners/salt_spec.rb
|
164
180
|
- spec/packer/provisioners/shell_spec.rb
|
165
181
|
- spec/packer/runner_spec.rb
|
166
182
|
- spec/packer_config_spec.rb
|
@@ -178,7 +194,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
178
194
|
requirements:
|
179
195
|
- - ">="
|
180
196
|
- !ruby/object:Gem::Version
|
181
|
-
version:
|
197
|
+
version: 2.0.0
|
182
198
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
183
199
|
requirements:
|
184
200
|
- - ">="
|
@@ -207,6 +223,7 @@ test_files:
|
|
207
223
|
- spec/packer/builder_spec.rb
|
208
224
|
- spec/packer/builders/amazon_spec.rb
|
209
225
|
- spec/packer/builders/docker_spec.rb
|
226
|
+
- spec/packer/builders/null_spec.rb
|
210
227
|
- spec/packer/builders/virtualbox_spec.rb
|
211
228
|
- spec/packer/dataobject_spec.rb
|
212
229
|
- spec/packer/envvar_spec.rb
|
@@ -216,7 +233,13 @@ test_files:
|
|
216
233
|
- spec/packer/postprocessors/docker_push_spec.rb
|
217
234
|
- spec/packer/postprocessors/vagrant_spec.rb
|
218
235
|
- spec/packer/provisioner_spec.rb
|
236
|
+
- spec/packer/provisioners/ansible_spec.rb
|
237
|
+
- spec/packer/provisioners/chef/client_spec.rb
|
238
|
+
- spec/packer/provisioners/chef/solo_spec.rb
|
219
239
|
- spec/packer/provisioners/file_spec.rb
|
240
|
+
- spec/packer/provisioners/puppet/masterless_spec.rb
|
241
|
+
- spec/packer/provisioners/puppet/server_spec.rb
|
242
|
+
- spec/packer/provisioners/salt_spec.rb
|
220
243
|
- spec/packer/provisioners/shell_spec.rb
|
221
244
|
- spec/packer/runner_spec.rb
|
222
245
|
- spec/packer_config_spec.rb
|