omnibus 5.6.8 → 6.0.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.
- checksums.yaml +4 -4
- data/Gemfile +10 -7
- data/README.md +1 -1
- data/lib/omnibus.rb +1 -1
- data/lib/omnibus/build_version.rb +1 -1
- data/lib/omnibus/build_version_dsl.rb +1 -1
- data/lib/omnibus/builder.rb +26 -7
- data/lib/omnibus/cleaner.rb +1 -1
- data/lib/omnibus/cli.rb +1 -1
- data/lib/omnibus/cli/changelog.rb +1 -1
- data/lib/omnibus/compressor.rb +1 -1
- data/lib/omnibus/compressors/base.rb +1 -1
- data/lib/omnibus/compressors/dmg.rb +1 -1
- data/lib/omnibus/compressors/null.rb +1 -1
- data/lib/omnibus/compressors/tgz.rb +1 -1
- data/lib/omnibus/config.rb +1 -1
- data/lib/omnibus/digestable.rb +1 -1
- data/lib/omnibus/download_helpers.rb +1 -1
- data/lib/omnibus/exceptions.rb +1 -1
- data/lib/omnibus/fetcher.rb +1 -1
- data/lib/omnibus/fetchers/file_fetcher.rb +1 -1
- data/lib/omnibus/fetchers/git_fetcher.rb +1 -1
- data/lib/omnibus/fetchers/net_fetcher.rb +1 -1
- data/lib/omnibus/fetchers/null_fetcher.rb +1 -1
- data/lib/omnibus/fetchers/path_fetcher.rb +1 -1
- data/lib/omnibus/file_syncer.rb +1 -1
- data/lib/omnibus/generator.rb +1 -1
- data/lib/omnibus/generator_files/Berksfile.erb +1 -1
- data/lib/omnibus/generator_files/Gemfile.erb +1 -1
- data/lib/omnibus/generator_files/README.md.erb +3 -3
- data/lib/omnibus/git_cache.rb +1 -1
- data/lib/omnibus/health_check.rb +1 -1
- data/lib/omnibus/library.rb +1 -1
- data/lib/omnibus/licensing.rb +1 -1
- data/lib/omnibus/logger.rb +1 -1
- data/lib/omnibus/manifest.rb +1 -1
- data/lib/omnibus/manifest_entry.rb +1 -1
- data/lib/omnibus/metadata.rb +5 -5
- data/lib/omnibus/null_argumentable.rb +1 -1
- data/lib/omnibus/ohai.rb +1 -1
- data/lib/omnibus/package.rb +1 -1
- data/lib/omnibus/packager.rb +1 -1
- data/lib/omnibus/packagers/appx.rb +1 -1
- data/lib/omnibus/packagers/base.rb +1 -1
- data/lib/omnibus/packagers/bff.rb +1 -1
- data/lib/omnibus/packagers/deb.rb +1 -1
- data/lib/omnibus/packagers/ips.rb +1 -1
- data/lib/omnibus/packagers/makeself.rb +1 -1
- data/lib/omnibus/packagers/msi.rb +1 -1
- data/lib/omnibus/packagers/pkg.rb +1 -1
- data/lib/omnibus/packagers/pkgsrc.rb +1 -1
- data/lib/omnibus/packagers/rpm.rb +1 -1
- data/lib/omnibus/packagers/solaris.rb +1 -1
- data/lib/omnibus/packagers/windows_base.rb +1 -1
- data/lib/omnibus/project.rb +2 -2
- data/lib/omnibus/publisher.rb +1 -1
- data/lib/omnibus/publishers/artifactory_publisher.rb +1 -1
- data/lib/omnibus/publishers/null_publisher.rb +1 -1
- data/lib/omnibus/publishers/s3_publisher.rb +1 -1
- data/lib/omnibus/reports.rb +1 -1
- data/lib/omnibus/s3_cache.rb +1 -1
- data/lib/omnibus/s3_helpers.rb +1 -1
- data/lib/omnibus/semantic_version.rb +1 -1
- data/lib/omnibus/software.rb +7 -14
- data/lib/omnibus/sugarable.rb +1 -1
- data/lib/omnibus/templating.rb +1 -1
- data/lib/omnibus/thread_pool.rb +1 -1
- data/lib/omnibus/version.rb +2 -2
- data/lib/omnibus/whitelist.rb +1 -1
- data/omnibus.gemspec +5 -6
- data/spec/unit/compressors/dmg_spec.rb +2 -2
- data/spec/unit/metadata_spec.rb +3 -1
- data/spec/unit/packager_spec.rb +4 -4
- data/spec/unit/packagers/bff_spec.rb +2 -2
- data/spec/unit/packagers/rpm_spec.rb +2 -2
- data/spec/unit/project_spec.rb +3 -3
- data/spec/unit/publisher_spec.rb +1 -1
- data/spec/unit/publishers/artifactory_publisher_spec.rb +1 -1
- data/spec/unit/semantic_version_spec.rb +1 -1
- data/spec/unit/software_spec.rb +40 -18
- metadata +22 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b284dd534123f25d29564a4e30f2d4c2aad7681c866e498a27dcd5bdd31ac98b
|
4
|
+
data.tar.gz: ba218cd4ed48cf4e1c7697b8aeee068c167bbaa5c776d09e7cd4e80fe67765c7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cf7dffcc3674c570065db2183937da6d10ed75167ac065c91800fdc4e7d7487c8dd959d9cc42109cb38b1e7a764115657137599d076cadb80c9c609f7fe6ead8
|
7
|
+
data.tar.gz: a195cbdeb15ab989bc5b0da999b828eda914dbaf28dbfd9833cba683073f4acba7217f559c82c8988360340625aa83a274ce2a7b03d8a1452e955cf849b83ef8
|
data/Gemfile
CHANGED
@@ -1,12 +1,15 @@
|
|
1
1
|
source "https://rubygems.org"
|
2
|
-
gemspec
|
3
2
|
|
4
|
-
|
5
|
-
# are pinned to 3.2 so pinning that here. Only used by fauxhai in this project
|
6
|
-
gem "net-ssh", "3.2.0"
|
3
|
+
gemspec
|
7
4
|
|
8
5
|
group :docs do
|
9
|
-
gem "yard"
|
10
|
-
gem "redcarpet"
|
11
|
-
gem "github-markup"
|
6
|
+
gem "yard"
|
7
|
+
gem "redcarpet"
|
8
|
+
gem "github-markup"
|
9
|
+
end
|
10
|
+
|
11
|
+
group :debug do
|
12
|
+
gem "pry"
|
13
|
+
gem "pry-byebug"
|
14
|
+
gem "pry-stack_explorer"
|
12
15
|
end
|
data/README.md
CHANGED
data/lib/omnibus.rb
CHANGED
data/lib/omnibus/builder.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Copyright 2012-
|
2
|
+
# Copyright 2012-2018, Chef Software Inc.
|
3
3
|
#
|
4
4
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
5
|
# you may not use this file except in compliance with the License.
|
@@ -372,19 +372,38 @@ module Omnibus
|
|
372
372
|
# @param (see #command)
|
373
373
|
# @return (see #command)
|
374
374
|
#
|
375
|
-
def appbundle(software_name,
|
375
|
+
def appbundle(software_name, lockdir: nil, gem: nil, without: nil, **options)
|
376
376
|
build_commands << BuildCommand.new("appbundle `#{software_name}'") do
|
377
|
-
app_software = project.softwares.find do |p|
|
378
|
-
p.name == software_name
|
379
|
-
end
|
380
|
-
|
381
377
|
bin_dir = "#{install_dir}/bin"
|
382
378
|
appbundler_bin = embedded_bin("appbundler")
|
383
379
|
|
380
|
+
lockdir ||=
|
381
|
+
begin
|
382
|
+
app_software = project.softwares.find do |p|
|
383
|
+
p.name == software_name
|
384
|
+
end
|
385
|
+
if app_software.nil?
|
386
|
+
raise "could not find software definition for #{software_name}, add a dependency to it, or pass a lockdir argument to appbundle command."
|
387
|
+
end
|
388
|
+
app_software.project_dir
|
389
|
+
end
|
390
|
+
|
391
|
+
command = [ appbundler_bin, "'#{lockdir}'", "'#{bin_dir}'" ]
|
392
|
+
|
393
|
+
# This option is almost entirely for support of ChefDK and enables transitive gemfile lock construction in order
|
394
|
+
# to be able to decouple the dev gems for all the different components of ChefDK. AKA: don't use it outside of
|
395
|
+
# ChefDK. You should also explicitly specify the lockdir when going down this road.
|
396
|
+
command << [ "'#{gem}'" ] if gem
|
397
|
+
|
398
|
+
# FIXME: appbundler lacks support for this argument when not also specifying the gem (2-arg appbundling lacks support)
|
399
|
+
# (if you really need this bug fixed, though, fix it in appbundler, don't try using the 3-arg version to try to
|
400
|
+
# get `--without` support, you will likely wind up going down a sad path).
|
401
|
+
command << [ "--without", without.join(",") ] unless without.nil?
|
402
|
+
|
384
403
|
# Ensure the main bin dir exists
|
385
404
|
FileUtils.mkdir_p(bin_dir)
|
386
405
|
|
387
|
-
shellout!("
|
406
|
+
shellout!(command.join(" "), options)
|
388
407
|
end
|
389
408
|
end
|
390
409
|
expose :appbundle
|
data/lib/omnibus/cleaner.rb
CHANGED
data/lib/omnibus/cli.rb
CHANGED
data/lib/omnibus/compressor.rb
CHANGED
data/lib/omnibus/config.rb
CHANGED
data/lib/omnibus/digestable.rb
CHANGED
data/lib/omnibus/exceptions.rb
CHANGED
data/lib/omnibus/fetcher.rb
CHANGED
data/lib/omnibus/file_syncer.rb
CHANGED
data/lib/omnibus/generator.rb
CHANGED
@@ -3,7 +3,7 @@ source 'https://supermarket.chef.io'
|
|
3
3
|
cookbook 'omnibus'
|
4
4
|
|
5
5
|
# Uncomment to use the latest version of the Omnibus cookbook from GitHub
|
6
|
-
# cookbook 'omnibus', github: '
|
6
|
+
# cookbook 'omnibus', github: 'chef-cookbooks/omnibus'
|
7
7
|
|
8
8
|
group :integration do
|
9
9
|
cookbook 'apt', '~> 2.8'
|
@@ -5,7 +5,7 @@ gem 'omnibus', '~> <%= Omnibus::VERSION.split('.')[0...-1].join('.') %>'
|
|
5
5
|
|
6
6
|
# Use Chef's software definitions. It is recommended that you write your own
|
7
7
|
# software definitions, but you can clone/fork Chef's to get you started.
|
8
|
-
# gem 'omnibus-software', github: '
|
8
|
+
# gem 'omnibus-software', github: 'chef/omnibus-software'
|
9
9
|
|
10
10
|
# This development group is installed by default when you run `bundle install`,
|
11
11
|
# but if you are using Omnibus in a CI-based infrastructure, you do not need
|
@@ -83,19 +83,19 @@ version of every software definition.
|
|
83
83
|
Kitchen-based Build Environment
|
84
84
|
-------------------------------
|
85
85
|
Every Omnibus project ships will a project-specific
|
86
|
-
[Berksfile](
|
86
|
+
[Berksfile](https://docs.chef.io/berkshelf.html) that will allow you to build your omnibus projects on all of the projects listed
|
87
87
|
in the `.kitchen.yml`. You can add/remove additional platforms as needed by
|
88
88
|
changing the list found in the `.kitchen.yml` `platforms` YAML stanza.
|
89
89
|
|
90
90
|
This build environment is designed to get you up-and-running quickly. However,
|
91
91
|
there is nothing that restricts you to building on other platforms. Simply use
|
92
|
-
the [omnibus cookbook](https://github.com/
|
92
|
+
the [omnibus cookbook](https://github.com/chef-cookbooks/omnibus) to setup
|
93
93
|
your desired platform and execute the build steps listed above.
|
94
94
|
|
95
95
|
The default build environment requires Test Kitchen and VirtualBox for local
|
96
96
|
development. Test Kitchen also exposes the ability to provision instances using
|
97
97
|
various cloud providers like AWS, DigitalOcean, or OpenStack. For more
|
98
|
-
information, please see the [Test Kitchen documentation](
|
98
|
+
information, please see the [Test Kitchen documentation](https://kitchen.ci/).
|
99
99
|
|
100
100
|
Once you have tweaked your `.kitchen.yml` (or `.kitchen.local.yml`) to your
|
101
101
|
liking, you can bring up an individual build environment using the `kitchen`
|
data/lib/omnibus/git_cache.rb
CHANGED
data/lib/omnibus/health_check.rb
CHANGED
data/lib/omnibus/library.rb
CHANGED
data/lib/omnibus/licensing.rb
CHANGED
data/lib/omnibus/logger.rb
CHANGED
data/lib/omnibus/manifest.rb
CHANGED
data/lib/omnibus/metadata.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Copyright 2014 Chef Software, Inc.
|
2
|
+
# Copyright 2014-2018 Chef Software, Inc.
|
3
3
|
#
|
4
4
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
5
|
# you may not use this file except in compliance with the License.
|
@@ -173,11 +173,11 @@ module Omnibus
|
|
173
173
|
when "centos", "debian", "el", "fedora", "freebsd", "omnios", "pidora", "raspbian", "rhel", "sles", "suse", "smartos", "nexus", "ios_xr"
|
174
174
|
# Only want MAJOR (e.g. Debian 7, OmniOS r151006, SmartOS 20120809T221258Z)
|
175
175
|
platform_version.split(".").first
|
176
|
-
when "aix", "alpine", "
|
176
|
+
when "aix", "alpine", "mac_os_x", "openbsd", "slackware", "solaris2", "opensuse", "opensuseleap", "ubuntu", "amazon"
|
177
177
|
# Only want MAJOR.MINOR (e.g. Mac OS X 10.9, Ubuntu 12.04)
|
178
178
|
platform_version.split(".")[0..1].join(".")
|
179
|
-
when "arch"
|
180
|
-
# Arch Linux
|
179
|
+
when "arch", "gentoo"
|
180
|
+
# Arch Linux / Gentoo do not have a platform_version ohai attribute, they are rolling release (lsb_release -r)
|
181
181
|
"rolling"
|
182
182
|
when "windows"
|
183
183
|
# Windows has this really awesome "feature", where their version numbers
|
@@ -187,7 +187,7 @@ module Omnibus
|
|
187
187
|
# than the platform version. Take a look at the following file for the
|
188
188
|
# details:
|
189
189
|
#
|
190
|
-
# https://github.com/
|
190
|
+
# https://github.com/chef/chef/blob/master/lib/chef/win32/version.rb
|
191
191
|
#
|
192
192
|
# As we don't need to be exact here the simple mapping below is based on:
|
193
193
|
#
|
data/lib/omnibus/ohai.rb
CHANGED
data/lib/omnibus/package.rb
CHANGED
data/lib/omnibus/packager.rb
CHANGED