omnibus 6.1.7 → 6.1.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +1 -1
- data/lib/omnibus/build_version_dsl.rb +1 -0
- data/lib/omnibus/builder.rb +6 -5
- data/lib/omnibus/changelog_printer.rb +7 -4
- data/lib/omnibus/cleaner.rb +3 -0
- data/lib/omnibus/cli/changelog.rb +24 -24
- data/lib/omnibus/compressors/dmg.rb +3 -4
- data/lib/omnibus/fetchers/git_fetcher.rb +1 -0
- data/lib/omnibus/fetchers/net_fetcher.rb +2 -3
- data/lib/omnibus/health_check.rb +1 -1
- data/lib/omnibus/licensing.rb +2 -3
- data/lib/omnibus/logger.rb +2 -1
- data/lib/omnibus/manifest.rb +1 -1
- data/lib/omnibus/packagers/appx.rb +1 -2
- data/lib/omnibus/packagers/base.rb +1 -0
- data/lib/omnibus/packagers/bff.rb +6 -8
- data/lib/omnibus/packagers/deb.rb +7 -10
- data/lib/omnibus/packagers/ips.rb +3 -6
- data/lib/omnibus/packagers/makeself.rb +1 -2
- data/lib/omnibus/packagers/msi.rb +12 -11
- data/lib/omnibus/packagers/pkg.rb +3 -6
- data/lib/omnibus/packagers/rpm.rb +11 -12
- data/lib/omnibus/packagers/solaris.rb +4 -4
- data/lib/omnibus/packagers/windows_base.rb +7 -6
- data/lib/omnibus/project.rb +1 -0
- data/lib/omnibus/publisher.rb +2 -2
- data/lib/omnibus/software.rb +18 -11
- data/lib/omnibus/templating.rb +1 -1
- data/lib/omnibus/util.rb +3 -2
- data/lib/omnibus/version.rb +1 -1
- data/omnibus.gemspec +2 -2
- data/spec/functional/builder_spec.rb +2 -1
- data/spec/functional/fetchers/file_fetcher_spec.rb +4 -4
- data/spec/functional/fetchers/git_fetcher_spec.rb +4 -4
- data/spec/functional/fetchers/net_fetcher_spec.rb +5 -6
- data/spec/functional/fetchers/path_fetcher_spec.rb +4 -4
- data/spec/functional/licensing_spec.rb +5 -5
- data/spec/support/examples.rb +3 -4
- data/spec/unit/builder_spec.rb +9 -9
- data/spec/unit/changelogprinter_spec.rb +8 -6
- data/spec/unit/compressor_spec.rb +3 -3
- data/spec/unit/fetchers/net_fetcher_spec.rb +16 -17
- data/spec/unit/health_check_spec.rb +2 -6
- data/spec/unit/library_spec.rb +2 -1
- data/spec/unit/manifest_diff_spec.rb +2 -2
- data/spec/unit/manifest_spec.rb +1 -1
- data/spec/unit/metadata_spec.rb +8 -11
- data/spec/unit/omnibus_spec.rb +1 -1
- data/spec/unit/packagers/bff_spec.rb +2 -2
- data/spec/unit/packagers/msi_spec.rb +2 -2
- data/spec/unit/packagers/pkgsrc_spec.rb +1 -1
- data/spec/unit/packagers/solaris_spec.rb +7 -7
- data/spec/unit/project_spec.rb +2 -2
- data/spec/unit/publisher_spec.rb +1 -2
- data/spec/unit/publishers/artifactory_publisher_spec.rb +2 -4
- data/spec/unit/publishers/s3_publisher_spec.rb +2 -4
- data/spec/unit/s3_cacher_spec.rb +2 -6
- data/spec/unit/s3_helpers_spec.rb +2 -2
- data/spec/unit/software_spec.rb +9 -9
- data/spec/unit/util_spec.rb +1 -2
- metadata +4 -4
data/lib/omnibus/version.rb
CHANGED
data/omnibus.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |gem|
|
|
18
18
|
gem.files = %w{ LICENSE README.md Rakefile Gemfile } + Dir.glob("*.gemspec") + Dir.glob("{bin,lib,resources,spec}/**/{*,.kitchen*}")
|
19
19
|
gem.bindir = "bin"
|
20
20
|
gem.executables = %w{omnibus}
|
21
|
-
gem.test_files = gem.files.grep(
|
21
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
22
22
|
gem.require_paths = ["lib"]
|
23
23
|
|
24
24
|
gem.add_dependency "aws-sdk-s3", "~> 1"
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |gem|
|
|
36
36
|
|
37
37
|
gem.add_development_dependency "artifactory", "~> 3.0"
|
38
38
|
gem.add_development_dependency "aruba", "~> 0.5"
|
39
|
-
gem.add_development_dependency "chefstyle", "= 0.
|
39
|
+
gem.add_development_dependency "chefstyle", "= 0.13.3"
|
40
40
|
gem.add_development_dependency "fauxhai", ">= 5.2"
|
41
41
|
gem.add_development_dependency "rspec", "~> 3.0"
|
42
42
|
gem.add_development_dependency "rspec-json_expectations"
|
@@ -22,6 +22,7 @@ module Omnibus
|
|
22
22
|
ext = name == "ruby" ? ".exe" : ".bat"
|
23
23
|
source = Bundler.which(name + ext)
|
24
24
|
raise "Could not find #{name} in bundler environment" unless source
|
25
|
+
|
25
26
|
File.open(File.join(embedded_bin_dir, name + ".bat"), "w") do |f|
|
26
27
|
f.write <<-EOH.gsub(/^ {12}/, "")
|
27
28
|
@"#{source}" %*
|
@@ -221,7 +222,7 @@ module Omnibus
|
|
221
222
|
output = capture_logging { subject.build }
|
222
223
|
|
223
224
|
appbundler_path = File.join(embedded_bin_dir, "appbundler")
|
224
|
-
appbundler_path.gsub!(
|
225
|
+
appbundler_path.gsub!(%r{/}, '\\') if windows?
|
225
226
|
expect(output).to include("#{appbundler_path} '#{project_dir}' '#{bin_dir}'")
|
226
227
|
end
|
227
228
|
end
|
@@ -13,10 +13,10 @@ module Omnibus
|
|
13
13
|
|
14
14
|
let(:manifest_entry) do
|
15
15
|
double(Omnibus::ManifestEntry,
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
16
|
+
name: "pathelogical",
|
17
|
+
locked_version: nil,
|
18
|
+
described_version: nil,
|
19
|
+
locked_source: source)
|
20
20
|
end
|
21
21
|
|
22
22
|
subject { described_class.new(manifest_entry, project_dir, build_dir) }
|
@@ -110,10 +110,10 @@ module Omnibus
|
|
110
110
|
let(:remote) { remote_git_repo("zlib", annotated_tags: [version]) }
|
111
111
|
let(:manifest_entry) do
|
112
112
|
double(ManifestEntry,
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
113
|
+
name: "software",
|
114
|
+
locked_version: "efde208366abd0f91419d8a54b45e3f6e0540105",
|
115
|
+
described_version: version,
|
116
|
+
locked_source: source)
|
117
117
|
end
|
118
118
|
|
119
119
|
subject { described_class.new(manifest_entry, project_dir, build_dir) }
|
@@ -4,8 +4,7 @@ module Omnibus
|
|
4
4
|
module RSpec
|
5
5
|
module OhaiHelpers
|
6
6
|
# Turn off the mandatory Ohai helper.
|
7
|
-
def stub_ohai(options = {}, &block)
|
8
|
-
end
|
7
|
+
def stub_ohai(options = {}, &block); end
|
9
8
|
end
|
10
9
|
end
|
11
10
|
|
@@ -29,10 +28,10 @@ module Omnibus
|
|
29
28
|
|
30
29
|
let(:manifest_entry) do
|
31
30
|
double(ManifestEntry,
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
name: "software",
|
32
|
+
locked_version: "1.2.8",
|
33
|
+
described_version: "1.2.8",
|
34
|
+
locked_source: source)
|
36
35
|
end
|
37
36
|
|
38
37
|
subject { described_class.new(manifest_entry, project_dir, build_dir) }
|
@@ -12,10 +12,10 @@ module Omnibus
|
|
12
12
|
|
13
13
|
let(:manifest_entry) do
|
14
14
|
double(Omnibus::ManifestEntry,
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
name: "pathelogical",
|
16
|
+
locked_version: nil,
|
17
|
+
described_version: nil,
|
18
|
+
locked_source: source)
|
19
19
|
end
|
20
20
|
|
21
21
|
before do
|
@@ -37,14 +37,14 @@ module Omnibus
|
|
37
37
|
expect(project_license).to match /This product bundles private_code 1.7.2,\nwhich is available under a "Unspecified"/
|
38
38
|
expect(project_license).to match /This product bundles snoopy 1.0.0,\nwhich is available under a "GPL v2"/
|
39
39
|
expect(project_license).not_to match /preparation/
|
40
|
-
expect(project_license).to match /
|
41
|
-
expect(project_license).to match /
|
40
|
+
expect(project_license).to match %r{LICENSES/snoopy-artistic.html}
|
41
|
+
expect(project_license).to match %r{LICENSES/snoopy-NOTICE}
|
42
42
|
if zlib_version_override
|
43
43
|
expect(project_license).to match /This product bundles zlib 1.8.0,\nwhich is available under a "Apache-2.0"/
|
44
|
-
expect(project_license).to match /
|
44
|
+
expect(project_license).to match %r{LICENSES/zlib-APACHE}
|
45
45
|
else
|
46
46
|
expect(project_license).to match /This product bundles zlib 1.7.2,\nwhich is available under a "Zlib"/
|
47
|
-
expect(project_license).to match /
|
47
|
+
expect(project_license).to match %r{LICENSES/zlib-LICENSE}
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
@@ -263,7 +263,7 @@ module Omnibus
|
|
263
263
|
it "should log a warning for the missing file" do
|
264
264
|
output = capture_logging { create_licenses }
|
265
265
|
expect(output).to match(/Retrying failed download/)
|
266
|
-
expect(output).to match(
|
266
|
+
expect(output).to match(%r{Can not download license file 'https://downloads.chef.io/LICENSE' for software 'problematic'.})
|
267
267
|
end
|
268
268
|
end
|
269
269
|
|
data/spec/support/examples.rb
CHANGED
@@ -27,8 +27,7 @@ RSpec.shared_examples "a software" do |name = "chefdk"|
|
|
27
27
|
install_dir: install_dir,
|
28
28
|
project_dir: project_dir,
|
29
29
|
source: source,
|
30
|
-
overridden?: false
|
31
|
-
)
|
30
|
+
overridden?: false)
|
32
31
|
end
|
33
32
|
|
34
33
|
before do
|
@@ -56,12 +55,12 @@ RSpec.shared_examples "a software" do |name = "chefdk"|
|
|
56
55
|
FileUtils.mkdir_p(embedded_bin_dir)
|
57
56
|
|
58
57
|
allow(software).to receive(:with_embedded_path).and_return(
|
59
|
-
"PATH" => "#{bin_dir}:#{embedded_bin_dir}:#{ENV[
|
58
|
+
"PATH" => "#{bin_dir}:#{embedded_bin_dir}:#{ENV["PATH"]}"
|
60
59
|
)
|
61
60
|
|
62
61
|
allow(software).to receive(:embedded_bin) do |binary|
|
63
62
|
p = File.join(embedded_bin_dir, binary)
|
64
|
-
p.gsub!(
|
63
|
+
p.gsub!(%r{/}, '\\') if windows?
|
65
64
|
p
|
66
65
|
end
|
67
66
|
end
|
data/spec/unit/builder_spec.rb
CHANGED
@@ -6,8 +6,7 @@ module Omnibus
|
|
6
6
|
double(Software,
|
7
7
|
name: "chefdk",
|
8
8
|
install_dir: project_dir,
|
9
|
-
project_dir: project_dir
|
10
|
-
)
|
9
|
+
project_dir: project_dir)
|
11
10
|
end
|
12
11
|
|
13
12
|
let(:project_dir) { on_windows ? "C:/opscode/chefdk" : "/opt/chefdk" }
|
@@ -238,7 +237,7 @@ module Omnibus
|
|
238
237
|
it "appends platform host to the options" do
|
239
238
|
expect(subject).to receive(:command)
|
240
239
|
.with("./configure --build=x86_64-w64-mingw32 --prefix=#{project_dir}/embedded", in_msys_bash: true)
|
241
|
-
subject.configure
|
240
|
+
subject.configure
|
242
241
|
end
|
243
242
|
end
|
244
243
|
|
@@ -254,7 +253,7 @@ module Omnibus
|
|
254
253
|
it "appends platform host to the options" do
|
255
254
|
expect(subject).to receive(:command)
|
256
255
|
.with("./configure --build=i686-w64-mingw32 --prefix=#{project_dir}/embedded", in_msys_bash: true)
|
257
|
-
subject.configure
|
256
|
+
subject.configure
|
258
257
|
end
|
259
258
|
end
|
260
259
|
|
@@ -305,7 +304,8 @@ module Omnibus
|
|
305
304
|
.with("config/patches", "good_patch")
|
306
305
|
.and_return(
|
307
306
|
[ ["#{project_dir}/patch_location1/good_patch", "#{project_dir}/patch_location2/good_patch"],
|
308
|
-
"#{project_dir}/patch_location2/good_patch" ]
|
307
|
+
"#{project_dir}/patch_location2/good_patch" ]
|
308
|
+
)
|
309
309
|
end
|
310
310
|
|
311
311
|
it "is a DSL method" do
|
@@ -355,10 +355,10 @@ module Omnibus
|
|
355
355
|
|
356
356
|
let(:software) do
|
357
357
|
double(Software,
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
358
|
+
name: "chefdk",
|
359
|
+
install_dir: tmp_dir,
|
360
|
+
project_dir: tmp_dir,
|
361
|
+
overridden?: false)
|
362
362
|
end
|
363
363
|
|
364
364
|
let(:before_build_shasum) do
|
@@ -16,16 +16,18 @@ module Omnibus
|
|
16
16
|
|
17
17
|
let(:changelog) do
|
18
18
|
double(ChangeLog,
|
19
|
-
|
20
|
-
|
19
|
+
changelog_entries: %w{entry1 entry2},
|
20
|
+
authors: %w{alice bob})
|
21
|
+
end
|
21
22
|
let(:git_changelog) do
|
22
23
|
double(ChangeLog,
|
23
|
-
|
24
|
-
|
24
|
+
changelog_entries:
|
25
|
+
%w{sub-entry1 sub-entry2})
|
26
|
+
end
|
25
27
|
let(:now) { double(Time) }
|
26
28
|
let(:emptydiff) { EmptyManifestDiff.new }
|
27
29
|
let(:old_manifest) do
|
28
|
-
m = Manifest.new
|
30
|
+
m = Manifest.new
|
29
31
|
m.add("updated-comp", manifest_entry_for("updated-comp", "v9", "v9"))
|
30
32
|
m.add("updated-comp-2", manifest_entry_for("updated-comp-2", "someref0", "someref0", :git))
|
31
33
|
m.add("removed-comp", manifest_entry_for("removed-comp", "v9", "v9"))
|
@@ -33,7 +35,7 @@ module Omnibus
|
|
33
35
|
m
|
34
36
|
end
|
35
37
|
let(:new_manifest) do
|
36
|
-
m = Manifest.new
|
38
|
+
m = Manifest.new
|
37
39
|
m.add("updated-comp", manifest_entry_for("updated-comp", "v10", "v10"))
|
38
40
|
m.add("updated-comp-2", manifest_entry_for("updated-comp-2", "someotherref", "someotherref", :git))
|
39
41
|
m.add("added-comp", manifest_entry_for("added-comp", "v100", "v100"))
|
@@ -8,13 +8,13 @@ module Omnibus
|
|
8
8
|
|
9
9
|
context "when :dmg is activated" do
|
10
10
|
it "prefers dmg" do
|
11
|
-
expect(described_class.for_current_system(
|
11
|
+
expect(described_class.for_current_system(%i{tgz dmg})).to eq(Compressor::DMG)
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
15
|
context "when :dmg is not activated" do
|
16
16
|
it "prefers tgz" do
|
17
|
-
expect(described_class.for_current_system(
|
17
|
+
expect(described_class.for_current_system(%i{tgz foo})).to eq(Compressor::TGZ)
|
18
18
|
end
|
19
19
|
end
|
20
20
|
|
@@ -30,7 +30,7 @@ module Omnibus
|
|
30
30
|
|
31
31
|
context "when :tgz activated" do
|
32
32
|
it "prefers tgz" do
|
33
|
-
expect(described_class.for_current_system(
|
33
|
+
expect(described_class.for_current_system(%i{tgz foo})).to eq(Compressor::TGZ)
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
@@ -11,10 +11,10 @@ module Omnibus
|
|
11
11
|
|
12
12
|
let(:manifest_entry) do
|
13
13
|
double(Omnibus::ManifestEntry,
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
14
|
+
name: "file",
|
15
|
+
locked_version: "1.2.3",
|
16
|
+
described_version: "1.2.3",
|
17
|
+
locked_source: source)
|
18
18
|
end
|
19
19
|
|
20
20
|
let(:cache_dir) { "/cache" }
|
@@ -331,11 +331,10 @@ module Omnibus
|
|
331
331
|
context "when the file is a .#{extension}" do
|
332
332
|
let(:manifest_entry) do
|
333
333
|
double(Omnibus::ManifestEntry,
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
)
|
334
|
+
name: "file",
|
335
|
+
locked_version: "1.2.3",
|
336
|
+
described_version: "1.2.3",
|
337
|
+
locked_source: { url: "https://get.example.com/file.#{extension}", md5: "abcd1234" }.merge(source_options))
|
339
338
|
end
|
340
339
|
|
341
340
|
subject { described_class.new(manifest_entry, project_dir, build_dir) }
|
@@ -361,10 +360,10 @@ module Omnibus
|
|
361
360
|
context "when the downloaded file is a folder" do
|
362
361
|
let(:manifest_entry) do
|
363
362
|
double(Omnibus::ManifestEntry,
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
363
|
+
name: "file",
|
364
|
+
locked_version: "1.2.3",
|
365
|
+
described_version: "1.2.3",
|
366
|
+
locked_source: { url: "https://get.example.com/folder", md5: "abcd1234" })
|
368
367
|
end
|
369
368
|
|
370
369
|
subject { described_class.new(manifest_entry, project_dir, build_dir) }
|
@@ -382,10 +381,10 @@ module Omnibus
|
|
382
381
|
context "when the downloaded file is a regular file" do
|
383
382
|
let(:manifest_entry) do
|
384
383
|
double(Omnibus::ManifestEntry,
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
384
|
+
name: "file",
|
385
|
+
locked_version: "1.2.3",
|
386
|
+
described_version: "1.2.3",
|
387
|
+
locked_source: { url: "https://get.example.com/file", md5: "abcd1234" })
|
389
388
|
end
|
390
389
|
|
391
390
|
subject { described_class.new(manifest_entry, project_dir, build_dir) }
|
@@ -8,9 +8,7 @@ module Omnibus
|
|
8
8
|
name: "chefdk",
|
9
9
|
install_dir: "/opt/chefdk",
|
10
10
|
library: double(Library,
|
11
|
-
components: []
|
12
|
-
)
|
13
|
-
)
|
11
|
+
components: []))
|
14
12
|
end
|
15
13
|
|
16
14
|
def mkdump(base, size, x64 = false)
|
@@ -19,9 +17,7 @@ module Omnibus
|
|
19
17
|
x64?: x64,
|
20
18
|
ioh: double(x64 ? PEdump::IMAGE_OPTIONAL_HEADER64 : PEdump::IMAGE_OPTIONAL_HEADER32,
|
21
19
|
ImageBase: base,
|
22
|
-
SizeOfImage: size
|
23
|
-
)
|
24
|
-
)
|
20
|
+
SizeOfImage: size))
|
25
21
|
expect(dump).to receive(:pe).and_return(pe)
|
26
22
|
dump
|
27
23
|
end
|
data/spec/unit/library_spec.rb
CHANGED
@@ -12,7 +12,7 @@ module Omnibus
|
|
12
12
|
end
|
13
13
|
|
14
14
|
let(:manifest_one) do
|
15
|
-
m = Omnibus::Manifest.new
|
15
|
+
m = Omnibus::Manifest.new
|
16
16
|
m.add("foo", manifest_entry_for("foo", "1.2.4", "deadbeef"))
|
17
17
|
m.add("bar", manifest_entry_for("bar", "1.2.4", "deadbeef"))
|
18
18
|
m.add("baz", manifest_entry_for("baz", "1.2.4", "deadbeef"))
|
@@ -20,7 +20,7 @@ module Omnibus
|
|
20
20
|
end
|
21
21
|
|
22
22
|
let(:manifest_two) do
|
23
|
-
m = Omnibus::Manifest.new
|
23
|
+
m = Omnibus::Manifest.new
|
24
24
|
m.add("foo", manifest_entry_for("foo", "1.2.5", "deadbea0"))
|
25
25
|
m.add("baz", manifest_entry_for("baz", "1.2.4", "deadbeef"))
|
26
26
|
m.add("quux", manifest_entry_for("quux", "1.2.4", "deadbeef"))
|
data/spec/unit/manifest_spec.rb
CHANGED
data/spec/unit/metadata_spec.rb
CHANGED
@@ -16,8 +16,7 @@ module Omnibus
|
|
16
16
|
md5: "abc123",
|
17
17
|
sha1: "abc123",
|
18
18
|
sha256: "abcd1234",
|
19
|
-
sha512: "abcdef123456"
|
20
|
-
)
|
19
|
+
sha512: "abcdef123456")
|
21
20
|
end
|
22
21
|
|
23
22
|
let(:project) do
|
@@ -29,15 +28,13 @@ module Omnibus
|
|
29
28
|
build_iteration: "1",
|
30
29
|
license: "Apache-2.0",
|
31
30
|
built_manifest: double(Manifest,
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
license_file_path: license_path
|
40
|
-
)
|
31
|
+
to_hash: {
|
32
|
+
manifest_format: 2,
|
33
|
+
build_version: "1.2.3",
|
34
|
+
build_git_revision: "SHA",
|
35
|
+
license: "Apache-2.0",
|
36
|
+
}),
|
37
|
+
license_file_path: license_path)
|
41
38
|
end
|
42
39
|
|
43
40
|
let(:data) { { foo: "bar" } }
|
data/spec/unit/omnibus_spec.rb
CHANGED
@@ -15,7 +15,7 @@ describe Omnibus do
|
|
15
15
|
|
16
16
|
Omnibus::Config.project_root(File.join(tmp_path, "/foo/bar"))
|
17
17
|
Omnibus::Config.local_software_dirs([File.join(tmp_path, "/local"), File.join(tmp_path, "/other")])
|
18
|
-
Omnibus::Config.software_gems(
|
18
|
+
Omnibus::Config.software_gems(%w{omnibus-software custom-omnibus-software})
|
19
19
|
end
|
20
20
|
|
21
21
|
describe "#which" do
|
@@ -301,7 +301,7 @@ module Omnibus
|
|
301
301
|
# A note - the /opt/ here is essentially project.install_dir one level up.
|
302
302
|
# There is nothing magical about 'opt' as a directory.
|
303
303
|
expect(subject).to receive(:shellout!)
|
304
|
-
.with(
|
304
|
+
.with(%r{chown -Rh 0:0 #{staging_dir}/opt$})
|
305
305
|
subject.create_bff_file
|
306
306
|
end
|
307
307
|
|
@@ -312,7 +312,7 @@ module Omnibus
|
|
312
312
|
|
313
313
|
it "uses the correct command" do
|
314
314
|
expect(subject).to receive(:shellout!)
|
315
|
-
.with(
|
315
|
+
.with(%r{/usr/sbin/mkinstallp -d})
|
316
316
|
subject.create_bff_file
|
317
317
|
end
|
318
318
|
|