omnibus 8.3.2 → 9.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/omnibus/fetchers/net_fetcher.rb +2 -11
- data/lib/omnibus/health_check.rb +7 -2
- data/lib/omnibus/metadata.rb +1 -1
- data/lib/omnibus/project.rb +1 -1
- data/lib/omnibus/software.rb +1 -1
- data/lib/omnibus/version.rb +1 -1
- data/lib/omnibus/whitelist.rb +6 -0
- data/omnibus.gemspec +2 -1
- data/spec/functional/builder_spec.rb +1 -1
- data/spec/support/examples.rb +1 -1
- data/spec/support/ohai_helpers.rb +1 -1
- data/spec/unit/builder_spec.rb +19 -19
- data/spec/unit/fetchers/net_fetcher_spec.rb +14 -14
- data/spec/unit/project_spec.rb +1 -1
- data/spec/unit/software_spec.rb +6 -6
- metadata +18 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f05719c1cecdc2defbb5641b5a61517b84f88a844932ca0568e3b435997e6fd9
|
4
|
+
data.tar.gz: 7593e4150d3222b368a722f84f92755a4f246e2a31fc8bdb72b8bc9495c42420
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb4cd2da9b1baab9d1b2555f498d0efdf71627a0a8686654ebdab0e1da8546004b48215ac907e768c964409f8f08caa0a91cd75d664de76d8b7607f509795c5c
|
7
|
+
data.tar.gz: e1a6e11eac83c8e192c2468fbd457b20eacecca8d0aa7c2e286f77cdc1357cba4a9cb1618c0c03014fb7fdb4d7f9bfd346036abe277abed169d1b26f74f833e7
|
@@ -212,7 +212,7 @@ module Omnibus
|
|
212
212
|
# :seven_zip - use 7zip for all tar/compressed tar files on windows.
|
213
213
|
# :lax_tar - use tar.exe on windows but ignore errors.
|
214
214
|
#
|
215
|
-
#
|
215
|
+
# 7z has issues on windows.
|
216
216
|
#
|
217
217
|
# 7z cannot extract and untar at the same time. You need to extract to a
|
218
218
|
# temporary location and then extract again into project_dir.
|
@@ -221,15 +221,6 @@ module Omnibus
|
|
221
221
|
# location simply results in a text file with the target path written in
|
222
222
|
# it. It does this without throwing any errors.
|
223
223
|
#
|
224
|
-
# bsdtar will exit(1) if it is encounters symlinks on windows. So we can't
|
225
|
-
# use shellout! directly.
|
226
|
-
#
|
227
|
-
# bsdtar will also exit(1) and fail to overwrite files at the destination
|
228
|
-
# during extraction if a file already exists at the destination and is
|
229
|
-
# marked read-only. This used to be a problem when we weren't properly
|
230
|
-
# cleaning an existing project_dir. It should be less of a problem now...
|
231
|
-
# but who knows.
|
232
|
-
#
|
233
224
|
def extract
|
234
225
|
# Only used by tar
|
235
226
|
compression_switch = ""
|
@@ -243,7 +234,7 @@ module Omnibus
|
|
243
234
|
returns = [0]
|
244
235
|
returns << 1 if source[:extract] == :lax_tar
|
245
236
|
|
246
|
-
shellout!("tar #{compression_switch}xf #{
|
237
|
+
shellout!("tar #{compression_switch}xf #{downloaded_file} --force-local -C#{project_dir}", returns: returns)
|
247
238
|
elsif downloaded_file.end_with?(*COMPRESSED_TAR_EXTENSIONS)
|
248
239
|
Dir.mktmpdir do |temp_dir|
|
249
240
|
log.debug(log_key) { "Temporarily extracting `#{safe_downloaded_file}' to `#{temp_dir}'" }
|
data/lib/omnibus/health_check.rb
CHANGED
@@ -345,11 +345,16 @@ module Omnibus
|
|
345
345
|
bad_libs = {}
|
346
346
|
good_libs = {}
|
347
347
|
|
348
|
-
|
348
|
+
# The case/when below depends on the "current_library" being output with a : at the end
|
349
|
+
# and then the dependencies on subsequent lines in the form "library.so.1 => /lib/64/library.so.1"
|
350
|
+
# This output format only happens if ldd is passed multiple libraries (for Solaris, similar to Linux)
|
351
|
+
# FIXME if any of the `when` clauses in the `health_check_*` methods run before the `current_library`
|
352
|
+
# they probably should error out with an explicit callout of formatting with their environment's
|
353
|
+
# respective ldd parsing
|
354
|
+
read_shared_libs("find #{project.install_dir}/ -type f | xargs file | grep \"ELF\" | awk -F: '{print $1}' | sed -e 's/:$//'", "xargs ldd") do |line|
|
349
355
|
case line
|
350
356
|
when /^(.+):$/
|
351
357
|
current_library = Regexp.last_match[1]
|
352
|
-
log.debug(log_key) { "Analyzing dependencies for #{current_library}" }
|
353
358
|
when /^\s+(.+) \=\>\s+(.+)( \(.+\))?$/
|
354
359
|
name = Regexp.last_match[1]
|
355
360
|
linked = Regexp.last_match[2]
|
data/lib/omnibus/metadata.rb
CHANGED
@@ -218,7 +218,7 @@ module Omnibus
|
|
218
218
|
# version is the same as Windows 2012R2. It's only here for completeness
|
219
219
|
# and documentation.
|
220
220
|
when /6\.3\.\d+/, "8.1" then "8.1"
|
221
|
-
when /^10\.0/ then "10"
|
221
|
+
when "10", /^10\.0/ then "10"
|
222
222
|
else
|
223
223
|
raise UnknownPlatformVersion.new(platform, platform_version)
|
224
224
|
end
|
data/lib/omnibus/project.rb
CHANGED
@@ -179,7 +179,7 @@ module Omnibus
|
|
179
179
|
if null?(val)
|
180
180
|
@install_dir || raise(MissingRequiredAttribute.new(self, :install_dir, "/opt/chef"))
|
181
181
|
else
|
182
|
-
@install_dir = val.tr('\\', "/").squeeze("/").chomp("/")
|
182
|
+
@install_dir = val.tr('\\', "/").squeeze("/").chomp("/") # rubocop:disable Style/StringLiterals
|
183
183
|
end
|
184
184
|
end
|
185
185
|
expose :install_dir
|
data/lib/omnibus/software.rb
CHANGED
@@ -717,7 +717,7 @@ module Omnibus
|
|
717
717
|
{
|
718
718
|
"CC" => "clang",
|
719
719
|
"CXX" => "clang++",
|
720
|
-
"LDFLAGS" => "-L#{install_dir}/embedded/lib",
|
720
|
+
"LDFLAGS" => "-L#{install_dir}/embedded/lib -Wl,-rpath,#{install_dir}/embedded/lib",
|
721
721
|
"CFLAGS" => "-I#{install_dir}/embedded/include -O3 -D_FORTIFY_SOURCE=2 -fstack-protector",
|
722
722
|
}
|
723
723
|
when "windows"
|
data/lib/omnibus/version.rb
CHANGED
data/lib/omnibus/whitelist.rb
CHANGED
@@ -88,11 +88,13 @@ OMNIOS_WHITELIST_LIBS = [
|
|
88
88
|
SOLARIS_WHITELIST_LIBS = [
|
89
89
|
/libaio\.so/,
|
90
90
|
/libavl\.so/,
|
91
|
+
/libbsm\.so/,
|
91
92
|
/libcrypt_[di]\.so/,
|
92
93
|
/libcrypto.so/,
|
93
94
|
/libcurses\.so/,
|
94
95
|
/libdoor\.so/,
|
95
96
|
/libgen\.so/,
|
97
|
+
/libinetutil\.so/,
|
96
98
|
/libmd5\.so/,
|
97
99
|
/libmd\.so/,
|
98
100
|
/libmp\.so/,
|
@@ -102,9 +104,11 @@ SOLARIS_WHITELIST_LIBS = [
|
|
102
104
|
/libsocket\.so/,
|
103
105
|
/libssl.so/,
|
104
106
|
/libthread.so/,
|
107
|
+
/libtsol\.so/,
|
105
108
|
/libuutil\.so/,
|
106
109
|
/libkstat\.so/,
|
107
110
|
# solaris 11 libraries:
|
111
|
+
/libstdc\+\+\.so/,
|
108
112
|
/libc\.so\.1/,
|
109
113
|
/libm\.so\.2/,
|
110
114
|
/libdl\.so\.1/,
|
@@ -173,6 +177,8 @@ MAC_WHITELIST_LIBS = [
|
|
173
177
|
|
174
178
|
FREEBSD_WHITELIST_LIBS = [
|
175
179
|
/libc\.so/,
|
180
|
+
/libc\+\+\.so/,
|
181
|
+
/libcxxrt\.so/,
|
176
182
|
/libgcc_s\.so/,
|
177
183
|
/libcrypt\.so/,
|
178
184
|
/libm\.so/,
|
data/omnibus.gemspec
CHANGED
@@ -30,13 +30,14 @@ Gem::Specification.new do |gem|
|
|
30
30
|
gem.add_dependency "thor", ">= 0.18", "< 2.0"
|
31
31
|
gem.add_dependency "license_scout", "~> 1.0"
|
32
32
|
gem.add_dependency "contracts", ">= 0.16.0", "< 0.17.0"
|
33
|
+
gem.add_dependency "rexml", "~> 3.2"
|
33
34
|
|
34
35
|
gem.add_dependency "mixlib-versioning"
|
35
36
|
gem.add_dependency "pedump"
|
36
37
|
|
37
38
|
gem.add_development_dependency "artifactory", "~> 3.0"
|
38
39
|
gem.add_development_dependency "aruba", "~> 2.0"
|
39
|
-
gem.add_development_dependency "chefstyle", "=
|
40
|
+
gem.add_development_dependency "chefstyle", "= 2.2.2"
|
40
41
|
gem.add_development_dependency "fauxhai-ng", ">= 7.5"
|
41
42
|
gem.add_development_dependency "rspec", "~> 3.0"
|
42
43
|
gem.add_development_dependency "rspec-json_expectations"
|
@@ -222,7 +222,7 @@ module Omnibus
|
|
222
222
|
output = capture_logging { subject.build }
|
223
223
|
|
224
224
|
appbundler_path = File.join(embedded_bin_dir, "appbundler")
|
225
|
-
appbundler_path.gsub!(%r{/}, '\\') if windows?
|
225
|
+
appbundler_path.gsub!(%r{/}, '\\') if windows? # rubocop:disable Style/StringLiterals
|
226
226
|
expect(output).to include("#{appbundler_path} '#{project_dir}' '#{bin_dir}'")
|
227
227
|
end
|
228
228
|
end
|
data/spec/support/examples.rb
CHANGED
@@ -60,7 +60,7 @@ RSpec.shared_examples "a software" do |name = "chefdk"|
|
|
60
60
|
|
61
61
|
allow(software).to receive(:embedded_bin) do |binary|
|
62
62
|
p = File.join(embedded_bin_dir, binary)
|
63
|
-
p.gsub!(%r{/}, '\\') if windows?
|
63
|
+
p.gsub!(%r{/}, '\\') if windows? # rubocop:disable Style/StringLiterals
|
64
64
|
p
|
65
65
|
end
|
66
66
|
end
|
@@ -14,7 +14,7 @@ module Omnibus
|
|
14
14
|
# If we asked for Windows, we should also specify that magical
|
15
15
|
# +File::ALT_SEPARATOR+ variable
|
16
16
|
if options[:platform] && options[:platform] == "windows"
|
17
|
-
stub_const("File::ALT_SEPARATOR", '\\')
|
17
|
+
stub_const("File::ALT_SEPARATOR", '\\') # rubocop:disable Style/StringLiterals
|
18
18
|
end
|
19
19
|
end
|
20
20
|
end
|
data/spec/unit/builder_spec.rb
CHANGED
@@ -23,7 +23,7 @@ module Omnibus
|
|
23
23
|
allow(subject).to receive(:windows?).and_return(on_windows)
|
24
24
|
allow(subject).to receive(:windows_safe_path) do |*args|
|
25
25
|
path = File.join(*args)
|
26
|
-
path.gsub!(File::SEPARATOR, '\\') if on_windows
|
26
|
+
path.gsub!(File::SEPARATOR, '\\') if on_windows # rubocop:disable Style/StringLiterals
|
27
27
|
end
|
28
28
|
end
|
29
29
|
|
@@ -171,7 +171,7 @@ module Omnibus
|
|
171
171
|
context "when :bin is present" do
|
172
172
|
it "uses the custom bin" do
|
173
173
|
expect(subject).to receive(:command)
|
174
|
-
.with("/path/to/make", in_msys_bash: true)
|
174
|
+
.with("/path/to/make", { in_msys_bash: true })
|
175
175
|
subject.make(bin: "/path/to/make")
|
176
176
|
end
|
177
177
|
end
|
@@ -185,7 +185,7 @@ module Omnibus
|
|
185
185
|
|
186
186
|
it "uses gmake and sets MAKE=gmake" do
|
187
187
|
expect(subject).to receive(:command)
|
188
|
-
.with("gmake", env: { "MAKE" => "gmake" }, in_msys_bash: true)
|
188
|
+
.with("gmake", { env: { "MAKE" => "gmake" }, in_msys_bash: true } )
|
189
189
|
subject.make
|
190
190
|
end
|
191
191
|
end
|
@@ -198,26 +198,26 @@ module Omnibus
|
|
198
198
|
|
199
199
|
it "uses make" do
|
200
200
|
expect(subject).to receive(:command)
|
201
|
-
.with("make", in_msys_bash: true)
|
201
|
+
.with("make", { in_msys_bash: true } )
|
202
202
|
subject.make
|
203
203
|
end
|
204
204
|
end
|
205
205
|
|
206
206
|
it "accepts 0 options" do
|
207
207
|
expect(subject).to receive(:command)
|
208
|
-
.with("make", in_msys_bash: true)
|
208
|
+
.with("make", { in_msys_bash: true } )
|
209
209
|
expect { subject.make }.to_not raise_error
|
210
210
|
end
|
211
211
|
|
212
212
|
it "accepts an additional command string" do
|
213
213
|
expect(subject).to receive(:command)
|
214
|
-
.with("make install", in_msys_bash: true)
|
214
|
+
.with("make install", { in_msys_bash: true } )
|
215
215
|
expect { subject.make("install") }.to_not raise_error
|
216
216
|
end
|
217
217
|
|
218
218
|
it "persists given options" do
|
219
219
|
expect(subject).to receive(:command)
|
220
|
-
.with("make", timeout: 3600, in_msys_bash: true)
|
220
|
+
.with("make", { timeout: 3600, in_msys_bash: true } )
|
221
221
|
subject.make(timeout: 3600)
|
222
222
|
end
|
223
223
|
end
|
@@ -242,7 +242,7 @@ module Omnibus
|
|
242
242
|
|
243
243
|
it "appends platform host to the options" do
|
244
244
|
expect(subject).to receive(:command)
|
245
|
-
.with("./configure --build=x86_64-w64-mingw32 --prefix=#{project_dir}/embedded", in_msys_bash: true)
|
245
|
+
.with("./configure --build=x86_64-w64-mingw32 --prefix=#{project_dir}/embedded", { in_msys_bash: true } )
|
246
246
|
subject.configure
|
247
247
|
end
|
248
248
|
end
|
@@ -258,7 +258,7 @@ module Omnibus
|
|
258
258
|
|
259
259
|
it "appends platform host to the options" do
|
260
260
|
expect(subject).to receive(:command)
|
261
|
-
.with("./configure --build=i686-w64-mingw32 --prefix=#{project_dir}/embedded", in_msys_bash: true)
|
261
|
+
.with("./configure --build=i686-w64-mingw32 --prefix=#{project_dir}/embedded", { in_msys_bash: true } )
|
262
262
|
subject.configure
|
263
263
|
end
|
264
264
|
end
|
@@ -266,7 +266,7 @@ module Omnibus
|
|
266
266
|
context "when :bin is present" do
|
267
267
|
it "uses the custom bin" do
|
268
268
|
expect(subject).to receive(:command)
|
269
|
-
.with("/path/to/configure --prefix=#{project_dir}/embedded", in_msys_bash: true)
|
269
|
+
.with("/path/to/configure --prefix=#{project_dir}/embedded", { in_msys_bash: true } )
|
270
270
|
subject.configure(bin: "/path/to/configure")
|
271
271
|
end
|
272
272
|
end
|
@@ -274,32 +274,32 @@ module Omnibus
|
|
274
274
|
context "when :prefix is present" do
|
275
275
|
it "emits non-empty prefix" do
|
276
276
|
expect(subject).to receive(:command)
|
277
|
-
.with("./configure --prefix=/some/prefix", in_msys_bash: true)
|
277
|
+
.with("./configure --prefix=/some/prefix", { in_msys_bash: true } )
|
278
278
|
subject.configure(prefix: "/some/prefix")
|
279
279
|
end
|
280
280
|
|
281
281
|
it "omits prefix if empty" do
|
282
282
|
expect(subject).to receive(:command)
|
283
|
-
.with("./configure", in_msys_bash: true)
|
283
|
+
.with("./configure", { in_msys_bash: true } )
|
284
284
|
subject.configure(prefix: "")
|
285
285
|
end
|
286
286
|
end
|
287
287
|
|
288
288
|
it "accepts 0 options" do
|
289
289
|
expect(subject).to receive(:command)
|
290
|
-
.with("./configure --prefix=#{project_dir}/embedded", in_msys_bash: true)
|
290
|
+
.with("./configure --prefix=#{project_dir}/embedded", { in_msys_bash: true } )
|
291
291
|
expect { subject.configure }.to_not raise_error
|
292
292
|
end
|
293
293
|
|
294
294
|
it "accepts an additional command string" do
|
295
295
|
expect(subject).to receive(:command)
|
296
|
-
.with("./configure --prefix=#{project_dir}/embedded --myopt", in_msys_bash: true)
|
296
|
+
.with("./configure --prefix=#{project_dir}/embedded --myopt", { in_msys_bash: true } )
|
297
297
|
expect { subject.configure("--myopt") }.to_not raise_error
|
298
298
|
end
|
299
299
|
|
300
300
|
it "persists given options" do
|
301
301
|
expect(subject).to receive(:command)
|
302
|
-
.with("./configure --prefix=#{project_dir}/embedded", timeout: 3600, in_msys_bash: true)
|
302
|
+
.with("./configure --prefix=#{project_dir}/embedded", { timeout: 3600, in_msys_bash: true } )
|
303
303
|
subject.configure(timeout: 3600)
|
304
304
|
end
|
305
305
|
end
|
@@ -321,28 +321,28 @@ module Omnibus
|
|
321
321
|
it "invokes patch with patch level 1 unless specified" do
|
322
322
|
expect { subject.patch(source: "good_patch") }.to_not raise_error
|
323
323
|
expect(subject).to receive(:shellout!)
|
324
|
-
.with("patch -p1 -i #{project_dir}/patch_location2/good_patch", in_msys_bash: true)
|
324
|
+
.with("patch -p1 -i #{project_dir}/patch_location2/good_patch", { in_msys_bash: true } )
|
325
325
|
run_build_command
|
326
326
|
end
|
327
327
|
|
328
328
|
it "invokes patch with patch level provided" do
|
329
329
|
expect { subject.patch(source: "good_patch", plevel: 0) }.to_not raise_error
|
330
330
|
expect(subject).to receive(:shellout!)
|
331
|
-
.with("patch -p0 -i #{project_dir}/patch_location2/good_patch", in_msys_bash: true)
|
331
|
+
.with("patch -p0 -i #{project_dir}/patch_location2/good_patch", { in_msys_bash: true } )
|
332
332
|
run_build_command
|
333
333
|
end
|
334
334
|
|
335
335
|
it "invokes patch differently if target is provided" do
|
336
336
|
expect { subject.patch(source: "good_patch", target: "target/path") }.to_not raise_error
|
337
337
|
expect(subject).to receive(:shellout!)
|
338
|
-
.with("cat #{project_dir}/patch_location2/good_patch | patch -p1 target/path", in_msys_bash: true)
|
338
|
+
.with("cat #{project_dir}/patch_location2/good_patch | patch -p1 target/path", { in_msys_bash: true } )
|
339
339
|
run_build_command
|
340
340
|
end
|
341
341
|
|
342
342
|
it "persists other options" do
|
343
343
|
expect { subject.patch(source: "good_patch", timeout: 3600) }.to_not raise_error
|
344
344
|
expect(subject).to receive(:shellout!)
|
345
|
-
.with("patch -p1 -i #{project_dir}/patch_location2/good_patch", timeout: 3600, in_msys_bash: true)
|
345
|
+
.with("patch -p1 -i #{project_dir}/patch_location2/good_patch", { timeout: 3600, in_msys_bash: true } )
|
346
346
|
run_build_command
|
347
347
|
end
|
348
348
|
end
|
@@ -421,19 +421,19 @@ module Omnibus
|
|
421
421
|
it_behaves_like "an extractor", "zip", {},
|
422
422
|
['7z.exe x C:\\file.zip -oC:\\tmp\\project -r -y']
|
423
423
|
it_behaves_like "an extractor", "tar", {},
|
424
|
-
[[
|
424
|
+
[["tar xf C:/file.tar --force-local -CC:/tmp/project", { returns: [0] }]]
|
425
425
|
it_behaves_like "an extractor", "tgz", {},
|
426
|
-
[[
|
426
|
+
[["tar zxf C:/file.tgz --force-local -CC:/tmp/project", { returns: [0] }]]
|
427
427
|
it_behaves_like "an extractor", "tar.gz", {},
|
428
|
-
[[
|
428
|
+
[["tar zxf C:/file.tar.gz --force-local -CC:/tmp/project", { returns: [0] }]]
|
429
429
|
it_behaves_like "an extractor", "tar.bz2", {},
|
430
|
-
[[
|
430
|
+
[["tar jxf C:/file.tar.bz2 --force-local -CC:/tmp/project", { returns: [0] }]]
|
431
431
|
it_behaves_like "an extractor", "txz", {},
|
432
|
-
[[
|
432
|
+
[["tar Jxf C:/file.txz --force-local -CC:/tmp/project", { returns: [0] }]]
|
433
433
|
it_behaves_like "an extractor", "tar.xz", {},
|
434
|
-
[[
|
434
|
+
[["tar Jxf C:/file.tar.xz --force-local -CC:/tmp/project", { returns: [0] }]]
|
435
435
|
it_behaves_like "an extractor", "tar.lzma", {},
|
436
|
-
[[
|
436
|
+
[["tar --lzma -xf C:/file.tar.lzma --force-local -CC:/tmp/project", { returns: [0] }]]
|
437
437
|
end
|
438
438
|
|
439
439
|
context "when seven_zip extract strategy is chosen" do
|
@@ -469,19 +469,19 @@ module Omnibus
|
|
469
469
|
it_behaves_like "an extractor", "zip", { extract: :lax_tar },
|
470
470
|
['7z.exe x C:\\file.zip -oC:\\tmp\\project -r -y']
|
471
471
|
it_behaves_like "an extractor", "tar", { extract: :lax_tar },
|
472
|
-
[[
|
472
|
+
[["tar xf C:/file.tar --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
473
473
|
it_behaves_like "an extractor", "tgz", { extract: :lax_tar },
|
474
|
-
[[
|
474
|
+
[["tar zxf C:/file.tgz --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
475
475
|
it_behaves_like "an extractor", "tar.gz", { extract: :lax_tar },
|
476
|
-
[[
|
476
|
+
[["tar zxf C:/file.tar.gz --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
477
477
|
it_behaves_like "an extractor", "tar.bz2", { extract: :lax_tar },
|
478
|
-
[[
|
478
|
+
[["tar jxf C:/file.tar.bz2 --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
479
479
|
it_behaves_like "an extractor", "txz", { extract: :lax_tar },
|
480
|
-
[[
|
480
|
+
[["tar Jxf C:/file.txz --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
481
481
|
it_behaves_like "an extractor", "tar.xz", { extract: :lax_tar },
|
482
|
-
[[
|
482
|
+
[["tar Jxf C:/file.tar.xz --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
483
483
|
it_behaves_like "an extractor", "tar.lzma", { extract: :lax_tar },
|
484
|
-
[[
|
484
|
+
[["tar --lzma -xf C:/file.tar.lzma --force-local -CC:/tmp/project", { returns: [0, 1] }]]
|
485
485
|
end
|
486
486
|
end
|
487
487
|
|
data/spec/unit/project_spec.rb
CHANGED
@@ -229,7 +229,7 @@ module Omnibus
|
|
229
229
|
|
230
230
|
context "when on Windows" do
|
231
231
|
before { stub_ohai(platform: "windows", version: "2019") }
|
232
|
-
before { stub_const("File::ALT_SEPARATOR", '\\') }
|
232
|
+
before { stub_const("File::ALT_SEPARATOR", '\\') } # rubocop:disable Style/StringLiterals
|
233
233
|
it "returns a Windows iteration" do
|
234
234
|
expect(subject.build_iteration).to eq(1)
|
235
235
|
end
|
data/spec/unit/software_spec.rb
CHANGED
@@ -239,7 +239,7 @@ module Omnibus
|
|
239
239
|
"CXXFLAGS" => "-I/opt/project/embedded/include -O3 -D_FORTIFY_SOURCE=2 -fstack-protector",
|
240
240
|
"CPPFLAGS" => "-I/opt/project/embedded/include -O3 -D_FORTIFY_SOURCE=2 -fstack-protector",
|
241
241
|
"CXX" => "clang++",
|
242
|
-
"LDFLAGS" => "-L/opt/project/embedded/lib",
|
242
|
+
"LDFLAGS" => "-L/opt/project/embedded/lib -Wl,-rpath,/opt/project/embedded/lib",
|
243
243
|
"LD_RUN_PATH" => "/opt/project/embedded/lib",
|
244
244
|
"PKG_CONFIG_PATH" => "/opt/project/embedded/lib/pkgconfig",
|
245
245
|
"OMNIBUS_INSTALL_DIR" => "/opt/project"
|
@@ -543,7 +543,7 @@ module Omnibus
|
|
543
543
|
|
544
544
|
it "fetches from a fully expanded git path" do
|
545
545
|
expect(subject.source).to eq(git: "https://github.com/chef/ohai.git")
|
546
|
-
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", git: "https://github.com/chef/ohai.git").and_return("1.2.8")
|
546
|
+
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", { git: "https://github.com/chef/ohai.git" } ).and_return("1.2.8")
|
547
547
|
subject.send(:fetcher)
|
548
548
|
end
|
549
549
|
|
@@ -552,7 +552,7 @@ module Omnibus
|
|
552
552
|
|
553
553
|
it "fetches from the override path" do
|
554
554
|
expect(subject.source).to eq(git: "https://blah.com/git.git")
|
555
|
-
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", git: "https://blah.com/git.git").and_return("1.2.8")
|
555
|
+
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", { git: "https://blah.com/git.git" } ).and_return("1.2.8")
|
556
556
|
subject.send(:fetcher)
|
557
557
|
end
|
558
558
|
end
|
@@ -562,7 +562,7 @@ module Omnibus
|
|
562
562
|
|
563
563
|
it "fetches from the override path" do
|
564
564
|
expect(subject.source).to eq(git: "https://github.com/a/b.git")
|
565
|
-
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", git: "https://github.com/a/b.git").and_return("1.2.8")
|
565
|
+
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", { git: "https://github.com/a/b.git" } ).and_return("1.2.8")
|
566
566
|
subject.send(:fetcher)
|
567
567
|
end
|
568
568
|
end
|
@@ -577,7 +577,7 @@ module Omnibus
|
|
577
577
|
|
578
578
|
it "fetches from the git spec" do
|
579
579
|
expect(subject.source).to eq(git: "https://blah.com/git.git")
|
580
|
-
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", git: "https://blah.com/git.git").and_return("1.2.8")
|
580
|
+
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", { git: "https://blah.com/git.git" } ).and_return("1.2.8")
|
581
581
|
subject.send(:fetcher)
|
582
582
|
end
|
583
583
|
|
@@ -586,7 +586,7 @@ module Omnibus
|
|
586
586
|
|
587
587
|
it "fetches from the override path" do
|
588
588
|
expect(subject.source).to eq(git: "https://github.com/a/b.git")
|
589
|
-
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", git: "https://github.com/a/b.git").and_return("1.2.8")
|
589
|
+
expect(Omnibus::Fetcher).to receive(:resolve_version).with("1.2.3", { git: "https://github.com/a/b.git" } ).and_return("1.2.8")
|
590
590
|
subject.send(:fetcher)
|
591
591
|
end
|
592
592
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omnibus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 9.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chef Software, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-10-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-s3
|
@@ -174,6 +174,20 @@ dependencies:
|
|
174
174
|
- - "<"
|
175
175
|
- !ruby/object:Gem::Version
|
176
176
|
version: 0.17.0
|
177
|
+
- !ruby/object:Gem::Dependency
|
178
|
+
name: rexml
|
179
|
+
requirement: !ruby/object:Gem::Requirement
|
180
|
+
requirements:
|
181
|
+
- - "~>"
|
182
|
+
- !ruby/object:Gem::Version
|
183
|
+
version: '3.2'
|
184
|
+
type: :runtime
|
185
|
+
prerelease: false
|
186
|
+
version_requirements: !ruby/object:Gem::Requirement
|
187
|
+
requirements:
|
188
|
+
- - "~>"
|
189
|
+
- !ruby/object:Gem::Version
|
190
|
+
version: '3.2'
|
177
191
|
- !ruby/object:Gem::Dependency
|
178
192
|
name: mixlib-versioning
|
179
193
|
requirement: !ruby/object:Gem::Requirement
|
@@ -236,14 +250,14 @@ dependencies:
|
|
236
250
|
requirements:
|
237
251
|
- - '='
|
238
252
|
- !ruby/object:Gem::Version
|
239
|
-
version:
|
253
|
+
version: 2.2.2
|
240
254
|
type: :development
|
241
255
|
prerelease: false
|
242
256
|
version_requirements: !ruby/object:Gem::Requirement
|
243
257
|
requirements:
|
244
258
|
- - '='
|
245
259
|
- !ruby/object:Gem::Version
|
246
|
-
version:
|
260
|
+
version: 2.2.2
|
247
261
|
- !ruby/object:Gem::Dependency
|
248
262
|
name: fauxhai-ng
|
249
263
|
requirement: !ruby/object:Gem::Requirement
|