vanagon 0.19.0 → 0.21.1

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.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +20 -2
  3. data/lib/vanagon/cli/list.rb +12 -1
  4. data/lib/vanagon/cli/ship.rb +1 -17
  5. data/lib/vanagon/component.rb +4 -3
  6. data/lib/vanagon/component/dsl.rb +21 -15
  7. data/lib/vanagon/component/source.rb +1 -0
  8. data/lib/vanagon/component/source/git.rb +30 -5
  9. data/lib/vanagon/platform.rb +32 -0
  10. data/lib/vanagon/platform/defaults/debian-10-amd64.rb +11 -0
  11. data/lib/vanagon/platform/defaults/debian-8-amd64.rb +12 -0
  12. data/lib/vanagon/platform/defaults/debian-8-i386.rb +12 -0
  13. data/lib/vanagon/platform/defaults/debian-9-amd64.rb +12 -0
  14. data/lib/vanagon/platform/defaults/debian-9-i386.rb +12 -0
  15. data/lib/vanagon/platform/defaults/el-6-i386.rb +11 -0
  16. data/lib/vanagon/platform/defaults/el-6-x86_64.rb +11 -0
  17. data/lib/vanagon/platform/defaults/el-7-aarch64.rb +13 -0
  18. data/lib/vanagon/platform/defaults/el-7-x86_64.rb +11 -0
  19. data/lib/vanagon/platform/defaults/el-8-aarch64.rb +10 -0
  20. data/lib/vanagon/platform/defaults/el-8-x86_64.rb +10 -0
  21. data/lib/vanagon/platform/defaults/fedora-30-x86_64.rb +11 -0
  22. data/lib/vanagon/platform/defaults/fedora-31-x86_64.rb +11 -0
  23. data/lib/vanagon/platform/defaults/fedora-32-x86_64.rb +11 -0
  24. data/lib/vanagon/platform/defaults/fedora-34-x86_64.rb +17 -0
  25. data/lib/vanagon/platform/defaults/osx-10.14-x86_64.rb +21 -0
  26. data/lib/vanagon/platform/defaults/osx-10.15-x86_64.rb +21 -0
  27. data/lib/vanagon/platform/defaults/osx-11-x86_64.rb +20 -0
  28. data/lib/vanagon/platform/defaults/redhatfips-7-x86_64.rb +11 -0
  29. data/lib/vanagon/platform/defaults/sles-12-x86_64.rb +11 -0
  30. data/lib/vanagon/platform/defaults/sles-15-x86_64.rb +10 -0
  31. data/lib/vanagon/platform/defaults/solaris-11-i386.rb +9 -0
  32. data/lib/vanagon/platform/defaults/solaris-11-sparc.rb +10 -0
  33. data/lib/vanagon/platform/defaults/ubuntu-16.04-amd64.rb +12 -0
  34. data/lib/vanagon/platform/defaults/ubuntu-16.04-i386.rb +12 -0
  35. data/lib/vanagon/platform/defaults/ubuntu-18.04-amd64.rb +12 -0
  36. data/lib/vanagon/platform/defaults/ubuntu-20.04-aarch64.rb +11 -0
  37. data/lib/vanagon/platform/defaults/ubuntu-20.04-amd64.rb +11 -0
  38. data/lib/vanagon/platform/dsl.rb +30 -2
  39. data/lib/vanagon/platform/osx.rb +8 -0
  40. data/lib/vanagon/platform/windows.rb +3 -21
  41. data/lib/vanagon/project.rb +5 -1
  42. data/lib/vanagon/utilities.rb +1 -0
  43. data/lib/vanagon/utilities/extra_files_signer.rb +39 -0
  44. data/resources/deb/postinst.erb +24 -13
  45. data/resources/deb/postrm.erb +9 -6
  46. data/resources/deb/prerm.erb +18 -8
  47. data/resources/rpm/project.spec.erb +11 -11
  48. data/spec/lib/vanagon/cli_spec.rb +59 -8
  49. data/spec/lib/vanagon/component/dsl_spec.rb +45 -8
  50. data/spec/lib/vanagon/component/source/git_spec.rb +17 -4
  51. data/spec/lib/vanagon/component_spec.rb +12 -0
  52. data/spec/lib/vanagon/platform_spec.rb +80 -0
  53. data/spec/lib/vanagon/utilities/extra_files_signer_spec.rb +90 -0
  54. data/spec/lib/vanagon/utilities_spec.rb +4 -1
  55. metadata +60 -29
@@ -14,8 +14,8 @@ describe "Vanagon::Component::Source::Git" do
14
14
 
15
15
  # before(:each) blocks are run before each example
16
16
  before :each do
17
- allow(Git)
18
- .to receive(:ls_remote)
17
+ allow(Vanagon::Component::Source::Git)
18
+ .to receive(:valid_remote?)
19
19
  .and_return(true)
20
20
 
21
21
  allow(File).to receive(:realpath).and_return(@workdir)
@@ -24,8 +24,8 @@ describe "Vanagon::Component::Source::Git" do
24
24
  describe "#initialize" do
25
25
  it "raises error on initialization with an invalid repo" do
26
26
  # Ensure initializing a repo fails without calling over the network
27
- allow(Git)
28
- .to receive(:ls_remote)
27
+ allow(Vanagon::Component::Source::Git)
28
+ .to receive(:valid_remote?)
29
29
  .and_return(false)
30
30
 
31
31
  expect { @klass.new(@url, ref: @ref_tag, workdir: @workdir) }
@@ -60,6 +60,7 @@ describe "Vanagon::Component::Source::Git" do
60
60
  allow(::Git).to receive(:clone).and_return(clone)
61
61
  expect(File).to receive(:realpath).and_return(@file_path)
62
62
  end
63
+
63
64
  it "repository" do
64
65
  git_source = @klass.new(@url, ref: @ref_tag, workdir: "/tmp/foo")
65
66
  expect(::Git).to receive(:clone).with(git_source.url, git_source.dirname, path: @file_path)
@@ -72,6 +73,12 @@ describe "Vanagon::Component::Source::Git" do
72
73
  expect(::Git).to receive(:clone).with(git_source.url, git_source.dirname, path: @file_path, **expected_clone_options)
73
74
  git_source.clone
74
75
  end
76
+
77
+ it 'uses a custom dirname' do
78
+ git_source = @klass.new(@url, ref: @ref_tag, workdir: "/tmp/foo", dirname: 'facter-ng')
79
+ expect(::Git).to receive(:clone).with(git_source.url, 'facter-ng', path: @file_path)
80
+ git_source.clone
81
+ end
75
82
  end
76
83
 
77
84
  describe "#dirname" do
@@ -86,6 +93,12 @@ describe "Vanagon::Component::Source::Git" do
86
93
  expect(git_source.dirname)
87
94
  .to eq('facter')
88
95
  end
96
+
97
+ it "returns @dirname if is set" do
98
+ git_source = @klass.new(@url, ref: @ref_tag, workdir: @workdir, dirname: 'facter-ng')
99
+ expect(git_source.dirname)
100
+ .to eq('facter-ng')
101
+ end
89
102
  end
90
103
 
91
104
  describe "#ref" do
@@ -108,6 +108,18 @@ describe "Vanagon::Component" do
108
108
  expect(subject).to receive(:fetch_url)
109
109
  subject.get_source(@workdir)
110
110
  end
111
+
112
+ it 'retrieves from a canonical URI if VANAGON_USE_MIRRORS is set to "false"' do
113
+ allow(ENV).to receive(:[]).with('VANAGON_USE_MIRRORS').and_return('false')
114
+ allow(subject)
115
+ .to receive(:fetch_url)
116
+ .and_return(true)
117
+
118
+ # We expect #get_source to skip mirrors
119
+ expect(subject).not_to receive(:fetch_mirrors)
120
+ expect(subject).to receive(:fetch_url)
121
+ subject.get_source(@workdir)
122
+ end
111
123
  end
112
124
 
113
125
  describe "#get_sources" do
@@ -1,6 +1,33 @@
1
1
  require 'vanagon/platform'
2
2
 
3
3
  describe "Vanagon::Platform" do
4
+ let(:deb_platform_just_servicedir) { "platform 'debian-test-fixture' do |plat|
5
+ plat.servicedir '/etc/init.d'
6
+ end
7
+ "}
8
+ let(:deb_platform_just_servicetype) { "platform 'debian-test-fixture' do |plat|
9
+ plat.servicetype 'sysv'
10
+ end
11
+ "}
12
+ let(:deb_platform_multi_servicetypes) { "platform 'debian-test-fixture' do |plat|
13
+ plat.servicetype 'sysv', servicedir: '/etc/init.d'
14
+ plat.servicetype 'systemd', servicedir: '/lib/systemd/system'
15
+ end
16
+ "}
17
+ let(:deb_platform_no_service) { "platform 'debian-test-fixture' do |plat|
18
+ end
19
+ "}
20
+ let(:deb_platform_servicetype) { "platform 'debian-test-fixture' do |plat|
21
+ plat.servicetype 'sysv'
22
+ plat.servicedir '/etc/init.d'
23
+ end
24
+ "}
25
+ let(:deb_platform_bad_servicedir_block) { "platform 'debian-test-fixture' do |plat|
26
+ plat.servicetype 'sysv', servicedir: '/etc/init.d'
27
+ plat.servicetype 'sysv', servicedir: '/etc/rc.d'
28
+ end
29
+ "}
30
+
4
31
  let(:platforms) do
5
32
  [
6
33
  {
@@ -172,4 +199,57 @@ describe "Vanagon::Platform" do
172
199
  end
173
200
  end
174
201
  end
202
+
203
+ describe "#get_service_type" do
204
+ it "returns plat.servicetype if that's the only thing set" do
205
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
206
+ plat.instance_eval(deb_platform_just_servicetype)
207
+ expect(plat._platform.get_service_types).to include('sysv')
208
+ end
209
+
210
+ it "returns from servicetypes if that's set" do
211
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
212
+ plat.instance_eval(deb_platform_servicetype)
213
+ expect(plat._platform.get_service_types).to include('sysv')
214
+ end
215
+
216
+ it "returns multiples if there's more than one" do
217
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
218
+ plat.instance_eval(deb_platform_multi_servicetypes)
219
+ expect(plat._platform.get_service_types).to include('sysv')
220
+ expect(plat._platform.get_service_types).to include('systemd')
221
+ end
222
+
223
+ it "returns an empty array if nothing is set" do
224
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
225
+ plat.instance_eval(deb_platform_no_service)
226
+ expect(plat._platform.get_service_types.size).to eq(0)
227
+ end
228
+ end
229
+
230
+ describe "#get_service_dir" do
231
+ it "returns plat.servicedir if that's the only thing set" do
232
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
233
+ plat.instance_eval(deb_platform_just_servicedir)
234
+ expect(plat._platform.get_service_dir).to eq('/etc/init.d')
235
+ end
236
+
237
+ it "returns servicedirs set via servicetype" do
238
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
239
+ plat.instance_eval(deb_platform_servicetype)
240
+ expect(plat._platform.get_service_dir).to eq('/etc/init.d')
241
+ end
242
+
243
+ it "returns the servicedir based on servicetype" do
244
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
245
+ plat.instance_eval(deb_platform_multi_servicetypes)
246
+ expect(plat._platform.get_service_dir('systemd')).to eq('/lib/systemd/system')
247
+ end
248
+
249
+ it "fails if there are >1 servicedir for a service type" do
250
+ plat = Vanagon::Platform::DSL.new('debian-8-x86_64')
251
+ plat.instance_eval(deb_platform_bad_servicedir_block)
252
+ expect { plat._platform.get_service_dir('sysv') }.to raise_error(Vanagon::Error)
253
+ end
254
+ end
175
255
  end
@@ -0,0 +1,90 @@
1
+ require 'vanagon/platform'
2
+ require 'vanagon/project'
3
+ require 'vanagon/utilities/extra_files_signer'
4
+
5
+ describe Vanagon::Utilities::ExtraFilesSigner do
6
+ let(:platform_block) do
7
+ %( platform "osx-11-x86_64" do |plat|
8
+ end
9
+ )
10
+ end
11
+ let (:project_block) do
12
+ <<-HERE.undent
13
+ project 'test-fixture' do |proj|
14
+ proj.version '0.0.0'
15
+ end
16
+ HERE
17
+ end
18
+ let(:configdir) { '/a/b/c' }
19
+ let(:platform) { Vanagon::Platform::DSL.new('osx-11-x86_64') }
20
+ let(:project) do
21
+ Vanagon::Project::DSL.new('test-fixture', configdir, platform._platform, [])
22
+ end
23
+ let(:mktemp) { '/tmp/xyz' }
24
+ let(:source_dir) { '/dir/source_dir' }
25
+
26
+ before do
27
+ allow(VanagonLogger).to receive(:error)
28
+ platform.instance_eval(platform_block)
29
+ project.instance_eval(project_block)
30
+ allow(Vanagon::Utilities).to receive(:remote_ssh_command).and_return(mktemp)
31
+ end
32
+
33
+ describe '.commands' do
34
+ context 'without extra files to sign' do
35
+ it 'returns empty array' do
36
+ commands = Vanagon::Utilities::ExtraFilesSigner.commands(project._project, mktemp, source_dir)
37
+ expect(commands).to eql([])
38
+ end
39
+ end
40
+
41
+ context 'with extra files to sign' do
42
+ let (:project_block) do
43
+ <<-HERE.undent
44
+ project 'test-fixture' do |proj|
45
+ proj.version '0.0.0'
46
+ proj.extra_file_to_sign '/test1/a.rb'
47
+ proj.extra_file_to_sign '/test2/b.rb'
48
+ proj.signing_hostname('abc')
49
+ proj.signing_username('test')
50
+ proj.signing_command('codesign')
51
+ end
52
+ HERE
53
+ end
54
+
55
+ context 'when it cannot connect to signing hostname' do
56
+ before do
57
+ allow(Vanagon::Utilities).to receive(:remote_ssh_command)
58
+ .with('test@abc', '/tmp/xyz 2>/dev/null', return_command_output: true)
59
+ .and_raise RuntimeError
60
+ end
61
+
62
+ it 'returns empty array' do
63
+ commands = Vanagon::Utilities::ExtraFilesSigner.commands(project._project, mktemp, source_dir)
64
+ expect(commands).to eql([])
65
+ end
66
+
67
+ it 'logs error' do
68
+ Vanagon::Utilities::ExtraFilesSigner.commands(project._project, mktemp, source_dir)
69
+ expect(VanagonLogger).to have_received(:error).with(/Unable to connect to test@abc/)
70
+ end
71
+ end
72
+
73
+ context 'when success' do
74
+ it 'generates signing commands for each file' do
75
+ commands = Vanagon::Utilities::ExtraFilesSigner.commands(project._project, mktemp, source_dir)
76
+ expect(commands).to match(
77
+ [
78
+ "rsync -e '/usr/bin/ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' --verbose --recursive --hard-links --links --no-perms --no-owner --no-group $(tempdir)/dir/source_dir/test1/a.rb test@abc:/tmp/xyz",
79
+ "/usr/bin/ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no test@abc codesign /tmp/xyz/a.rb",
80
+ "rsync -e '/usr/bin/ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' --verbose --recursive --hard-links --links --no-perms --no-owner --no-group test@abc:/tmp/xyz/a.rb $(tempdir)/dir/source_dir/test1/a.rb",
81
+ "rsync -e '/usr/bin/ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' --verbose --recursive --hard-links --links --no-perms --no-owner --no-group $(tempdir)/dir/source_dir/test2/b.rb test@abc:/tmp/xyz",
82
+ "/usr/bin/ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no test@abc codesign /tmp/xyz/b.rb",
83
+ "rsync -e '/usr/bin/ssh -p 22 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' --verbose --recursive --hard-links --links --no-perms --no-owner --no-group test@abc:/tmp/xyz/b.rb $(tempdir)/dir/source_dir/test2/b.rb"
84
+ ]
85
+ )
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -72,12 +72,15 @@ describe "Vanagon::Utilities" do
72
72
  describe '#local_command' do
73
73
  it 'runs commands in an unpolluted environment' do
74
74
  cmd = lambda { |arg| %(echo 'if [ "$#{arg}" = "" ]; then exit 0; else exit 1; fi' | /bin/sh) }
75
- vars = %w(BUNDLE_BIN_PATH BUNDLE_GEMFILE)
75
+ vars = %w[BUNDLE_BIN_PATH BUNDLE_GEMFILE]
76
76
  vars.each do |var|
77
77
  Vanagon::Utilities.local_command(cmd.call(var))
78
78
  expect($?.exitstatus).to eq(0)
79
79
  end
80
80
  end
81
+ it 'raises a RuntimeError when given a bad thing' do
82
+ expect { Vanagon::Utilities.local_command('__bogus__comand__') }.to raise_error(RuntimeError)
83
+ end
81
84
  end
82
85
 
83
86
  describe '#ssh_command' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vanagon
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.21.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-12 00:00:00.000000000 Z
11
+ date: 2021-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: docopt
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.3.0
33
+ version: 1.8.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.3.0
40
+ version: 1.8.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: fustigit
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -152,6 +152,34 @@ files:
152
152
  - lib/vanagon/patch.rb
153
153
  - lib/vanagon/platform.rb
154
154
  - lib/vanagon/platform/deb.rb
155
+ - lib/vanagon/platform/defaults/debian-10-amd64.rb
156
+ - lib/vanagon/platform/defaults/debian-8-amd64.rb
157
+ - lib/vanagon/platform/defaults/debian-8-i386.rb
158
+ - lib/vanagon/platform/defaults/debian-9-amd64.rb
159
+ - lib/vanagon/platform/defaults/debian-9-i386.rb
160
+ - lib/vanagon/platform/defaults/el-6-i386.rb
161
+ - lib/vanagon/platform/defaults/el-6-x86_64.rb
162
+ - lib/vanagon/platform/defaults/el-7-aarch64.rb
163
+ - lib/vanagon/platform/defaults/el-7-x86_64.rb
164
+ - lib/vanagon/platform/defaults/el-8-aarch64.rb
165
+ - lib/vanagon/platform/defaults/el-8-x86_64.rb
166
+ - lib/vanagon/platform/defaults/fedora-30-x86_64.rb
167
+ - lib/vanagon/platform/defaults/fedora-31-x86_64.rb
168
+ - lib/vanagon/platform/defaults/fedora-32-x86_64.rb
169
+ - lib/vanagon/platform/defaults/fedora-34-x86_64.rb
170
+ - lib/vanagon/platform/defaults/osx-10.14-x86_64.rb
171
+ - lib/vanagon/platform/defaults/osx-10.15-x86_64.rb
172
+ - lib/vanagon/platform/defaults/osx-11-x86_64.rb
173
+ - lib/vanagon/platform/defaults/redhatfips-7-x86_64.rb
174
+ - lib/vanagon/platform/defaults/sles-12-x86_64.rb
175
+ - lib/vanagon/platform/defaults/sles-15-x86_64.rb
176
+ - lib/vanagon/platform/defaults/solaris-11-i386.rb
177
+ - lib/vanagon/platform/defaults/solaris-11-sparc.rb
178
+ - lib/vanagon/platform/defaults/ubuntu-16.04-amd64.rb
179
+ - lib/vanagon/platform/defaults/ubuntu-16.04-i386.rb
180
+ - lib/vanagon/platform/defaults/ubuntu-18.04-amd64.rb
181
+ - lib/vanagon/platform/defaults/ubuntu-20.04-aarch64.rb
182
+ - lib/vanagon/platform/defaults/ubuntu-20.04-amd64.rb
155
183
  - lib/vanagon/platform/dsl.rb
156
184
  - lib/vanagon/platform/osx.rb
157
185
  - lib/vanagon/platform/rpm.rb
@@ -165,6 +193,7 @@ files:
165
193
  - lib/vanagon/project.rb
166
194
  - lib/vanagon/project/dsl.rb
167
195
  - lib/vanagon/utilities.rb
196
+ - lib/vanagon/utilities/extra_files_signer.rb
168
197
  - lib/vanagon/utilities/shell_utilities.rb
169
198
  - resources/Makefile.erb
170
199
  - resources/deb/changelog.erb
@@ -266,6 +295,7 @@ files:
266
295
  - spec/lib/vanagon/platform_spec.rb
267
296
  - spec/lib/vanagon/project/dsl_spec.rb
268
297
  - spec/lib/vanagon/project_spec.rb
298
+ - spec/lib/vanagon/utilities/extra_files_signer_spec.rb
269
299
  - spec/lib/vanagon/utilities/shell_utilities_spec.rb
270
300
  - spec/lib/vanagon/utilities_spec.rb
271
301
  - spec/spec_helper.rb
@@ -293,41 +323,42 @@ signing_key:
293
323
  specification_version: 3
294
324
  summary: All of your packages will fit into this van with this one simple trick.
295
325
  test_files:
296
- - spec/lib/vanagon/component/dsl_spec.rb
326
+ - spec/lib/git/rev_list_spec.rb
327
+ - spec/lib/vanagon/engine/always_be_scheduling_spec.rb
328
+ - spec/lib/vanagon/engine/base_spec.rb
329
+ - spec/lib/vanagon/engine/docker_spec.rb
330
+ - spec/lib/vanagon/engine/pooler_spec.rb
331
+ - spec/lib/vanagon/engine/local_spec.rb
332
+ - spec/lib/vanagon/engine/hardware_spec.rb
333
+ - spec/lib/vanagon/engine/ec2_spec.rb
334
+ - spec/lib/vanagon/cli_spec.rb
335
+ - spec/lib/vanagon/project/dsl_spec.rb
336
+ - spec/lib/vanagon/utilities/shell_utilities_spec.rb
337
+ - spec/lib/vanagon/utilities/extra_files_signer_spec.rb
338
+ - spec/lib/vanagon/component_spec.rb
339
+ - spec/lib/vanagon/platform_spec.rb
340
+ - spec/lib/vanagon/driver_spec.rb
341
+ - spec/lib/vanagon/component/rules_spec.rb
297
342
  - spec/lib/vanagon/component/source/local_spec.rb
298
343
  - spec/lib/vanagon/component/source/rewrite_spec.rb
299
344
  - spec/lib/vanagon/component/source/http_spec.rb
300
345
  - spec/lib/vanagon/component/source/git_spec.rb
301
- - spec/lib/vanagon/component/rules_spec.rb
302
346
  - spec/lib/vanagon/component/source_spec.rb
347
+ - spec/lib/vanagon/component/dsl_spec.rb
348
+ - spec/lib/vanagon/project_spec.rb
349
+ - spec/lib/vanagon/common/pathname_spec.rb
350
+ - spec/lib/vanagon/common/user_spec.rb
351
+ - spec/lib/vanagon/environment_spec.rb
303
352
  - spec/lib/vanagon/extensions/set/json_spec.rb
304
353
  - spec/lib/vanagon/extensions/string_spec.rb
305
354
  - spec/lib/vanagon/extensions/ostruct/json_spec.rb
306
- - spec/lib/vanagon/platform/dsl_spec.rb
355
+ - spec/lib/vanagon/platform/rpm_spec.rb
307
356
  - spec/lib/vanagon/platform/windows_spec.rb
308
- - spec/lib/vanagon/platform/solaris_11_spec.rb
309
- - spec/lib/vanagon/platform/rpm/aix_spec.rb
310
- - spec/lib/vanagon/platform/solaris_10_spec.rb
311
357
  - spec/lib/vanagon/platform/deb_spec.rb
358
+ - spec/lib/vanagon/platform/dsl_spec.rb
359
+ - spec/lib/vanagon/platform/rpm/aix_spec.rb
360
+ - spec/lib/vanagon/platform/solaris_11_spec.rb
312
361
  - spec/lib/vanagon/platform/osx_spec.rb
313
- - spec/lib/vanagon/platform/rpm_spec.rb
314
- - spec/lib/vanagon/common/pathname_spec.rb
315
- - spec/lib/vanagon/common/user_spec.rb
362
+ - spec/lib/vanagon/platform/solaris_10_spec.rb
316
363
  - spec/lib/vanagon/utilities_spec.rb
317
- - spec/lib/vanagon/project_spec.rb
318
- - spec/lib/vanagon/project/dsl_spec.rb
319
- - spec/lib/vanagon/component_spec.rb
320
- - spec/lib/vanagon/utilities/shell_utilities_spec.rb
321
- - spec/lib/vanagon/environment_spec.rb
322
- - spec/lib/vanagon/driver_spec.rb
323
- - spec/lib/vanagon/cli_spec.rb
324
- - spec/lib/vanagon/platform_spec.rb
325
- - spec/lib/vanagon/engine/local_spec.rb
326
- - spec/lib/vanagon/engine/ec2_spec.rb
327
- - spec/lib/vanagon/engine/always_be_scheduling_spec.rb
328
- - spec/lib/vanagon/engine/base_spec.rb
329
- - spec/lib/vanagon/engine/docker_spec.rb
330
- - spec/lib/vanagon/engine/hardware_spec.rb
331
- - spec/lib/vanagon/engine/pooler_spec.rb
332
364
  - spec/lib/makefile_spec.rb
333
- - spec/lib/git/rev_list_spec.rb