omnibus 5.6.1 → 5.6.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.expeditor/config.yml +31 -0
- data/.expeditor/update_version.sh +12 -0
- data/.github/CODEOWNERS +3 -0
- data/.github/ISSUE_TEMPLATE.md +0 -2
- data/.github/PULL_REQUEST_TEMPLATE.md +0 -1
- data/.gitignore +1 -0
- data/.travis.yml +2 -2
- data/CHANGELOG.md +29 -3
- data/Gemfile +1 -1
- data/README.md +2 -2
- data/VERSION +1 -0
- data/appveyor.yml +3 -2
- data/docs/Building on Debian.md +6 -4
- data/docs/Building on OSX.md +2 -2
- data/docs/Building on RHEL.md +3 -3
- data/docs/Building on Windows.md +1 -1
- data/lib/omnibus.rb +1 -0
- data/lib/omnibus/build_version.rb +13 -4
- data/lib/omnibus/builder.rb +10 -5
- data/lib/omnibus/config.rb +40 -8
- data/lib/omnibus/fetcher.rb +2 -0
- data/lib/omnibus/fetchers/file_fetcher.rb +131 -0
- data/lib/omnibus/packagers/deb.rb +81 -0
- data/lib/omnibus/packagers/ips.rb +22 -7
- data/lib/omnibus/publishers/artifactory_publisher.rb +2 -6
- data/lib/omnibus/publishers/s3_publisher.rb +7 -5
- data/lib/omnibus/s3_cache.rb +1 -0
- data/lib/omnibus/s3_helpers.rb +2 -0
- data/lib/omnibus/sugarable.rb +1 -0
- data/lib/omnibus/version.rb +1 -1
- data/lib/omnibus/whitelist.rb +1 -0
- data/omnibus.gemspec +3 -3
- data/resources/msi/CustomActionFastMsi.CA.dll +0 -0
- data/resources/msi/source.wxs.erb +7 -0
- data/spec/functional/fetchers/file_fetcher_spec.rb +92 -0
- data/spec/spec_helper.rb +1 -1
- data/spec/unit/build_version_spec.rb +11 -1
- data/spec/unit/compressor_spec.rb +2 -2
- data/spec/unit/config_spec.rb +13 -3
- data/spec/unit/fetchers/file_fetcher_spec.rb +81 -0
- data/spec/unit/fetchers/net_fetcher_spec.rb +14 -3
- data/spec/unit/health_check_spec.rb +3 -3
- data/spec/unit/metadata_spec.rb +8 -8
- data/spec/unit/packager_spec.rb +10 -10
- data/spec/unit/packagers/bff_spec.rb +1 -1
- data/spec/unit/packagers/deb_spec.rb +40 -0
- data/spec/unit/packagers/ips_spec.rb +31 -5
- data/spec/unit/packagers/rpm_spec.rb +5 -5
- data/spec/unit/project_spec.rb +7 -7
- data/spec/unit/publishers/artifactory_publisher_spec.rb +16 -0
- data/spec/unit/publishers/s3_publisher_spec.rb +17 -0
- data/spec/unit/software_spec.rb +10 -8
- metadata +16 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 71f2ae10f52145f7642fc97328ef8dbe9a2124aeae94d4f937285d8a0c433237
|
4
|
+
data.tar.gz: 96984676c415146364c059c68097247ef05c5b82198bce8fe241276509b921ff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f5c09bce7a955067eb2e487a4e5debc44f2cbf57fb29a62cb1f331130b9170228845098f9acc615122cacac4b7e51b296c66401c64f7bbf8819681b101693ede
|
7
|
+
data.tar.gz: c9be0cfa0ec4fb0b59a6f1741a240a7a1ade7664e462dd6bec5eba2bbfbb967bb6d0fb6932544b6628b39864e187e1456521086b599e049a6d39c4c4bd824584
|
@@ -0,0 +1,31 @@
|
|
1
|
+
slack:
|
2
|
+
notify_channel: omnibus-rfr
|
3
|
+
|
4
|
+
github:
|
5
|
+
maintainer_group: chef/omnibus-maintainers
|
6
|
+
version_tag_format: "v{{version}}"
|
7
|
+
minor_bump_labels:
|
8
|
+
- "Version: Bump Minor"
|
9
|
+
|
10
|
+
rubygems:
|
11
|
+
- omnibus
|
12
|
+
|
13
|
+
merge_actions:
|
14
|
+
- built_in:bump_version:
|
15
|
+
ignore_labels:
|
16
|
+
- "Version: Skip Bump"
|
17
|
+
- "Expeditor: Skip All"
|
18
|
+
- bash:.expeditor/update_version.sh:
|
19
|
+
only_if:
|
20
|
+
- built_in:bump_version
|
21
|
+
- built_in:update_changelog:
|
22
|
+
ignore_labels:
|
23
|
+
- "Changelog: Skip Update"
|
24
|
+
- "Expeditor: Skip All"
|
25
|
+
- built_in:build_gem:
|
26
|
+
only_if:
|
27
|
+
- built_in:bump_version
|
28
|
+
|
29
|
+
promote:
|
30
|
+
action:
|
31
|
+
- built_in:publish_rubygems
|
@@ -0,0 +1,12 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
#
|
3
|
+
# After a PR merge, Chef Expeditor will bump the PATCH version in the VERSION file.
|
4
|
+
# It then executes this file to update any other files/components with that new version.
|
5
|
+
#
|
6
|
+
|
7
|
+
set -evx
|
8
|
+
|
9
|
+
sed -i -r "s/^(\s*)VERSION = \".+\"/\1VERSION = \"$(cat VERSION)\"/" lib/omnibus/version.rb
|
10
|
+
|
11
|
+
# Once Expeditor finshes executing this script, it will commit the changes and push
|
12
|
+
# the commit as a new tag corresponding to the value in the VERSION file.
|
data/.github/CODEOWNERS
ADDED
data/.github/ISSUE_TEMPLATE.md
CHANGED
@@ -22,5 +22,3 @@ The relevant output of the Omnibus build or a link to a gist of the entire build
|
|
22
22
|
The verbose build output (`omnibus build <PROJECT> -l internal`) may be useful, but please link to a gist, or truncate it.
|
23
23
|
|
24
24
|
--------------------------------------------------
|
25
|
-
/cc @chef/omnibus-maintainers <- This ensures the Omnibus Maintainers team are notified to review this PR.
|
26
|
-
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,31 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
<!-- usage documentation: http://expeditor-docs.es.chef.io/configuration/changelog/ -->
|
2
|
+
|
3
|
+
<!-- latest_release 5.6.6 -->
|
4
|
+
## [v5.6.6](https://github.com/chef/omnibus/tree/v5.6.6) (2018-01-30)
|
5
|
+
|
6
|
+
#### Merged Pull Requests
|
7
|
+
- Empty commit to force release trigger [#817](https://github.com/chef/omnibus/pull/817) ([scotthain](https://github.com/scotthain))
|
8
|
+
<!-- latest_release -->
|
9
|
+
|
10
|
+
## [v5.6.5](https://github.com/chef/omnibus/tree/v5.6.5) (2018-01-30)
|
11
|
+
|
12
|
+
#### Merged Pull Requests
|
13
|
+
- Add config to allow rubygems publish and promote [#816](https://github.com/chef/omnibus/pull/816) ([scotthain](https://github.com/scotthain))
|
14
|
+
|
15
|
+
## [v5.6.4](https://github.com/chef/omnibus/tree/v5.6.4) (2018-01-29)
|
16
|
+
|
17
|
+
#### Merged Pull Requests
|
18
|
+
- Update custom action and support MSIFASTINSTALL property [#815](https://github.com/chef/omnibus/pull/815) ([stuartpreston](https://github.com/stuartpreston))
|
19
|
+
|
20
|
+
## [v5.6.3](https://github.com/chef/omnibus/tree/v5.6.3) (2018-01-26)
|
21
|
+
|
22
|
+
#### Merged Pull Requests
|
23
|
+
- sometimes we just need to gorram make a link [#814](https://github.com/chef/omnibus/pull/814) ([thommay](https://github.com/thommay))
|
24
|
+
|
25
|
+
## [v5.6.2](https://github.com/chef/omnibus/tree/v5.6.2) (2018-01-25)
|
26
|
+
|
27
|
+
#### Merged Pull Requests
|
28
|
+
- Whitelist Foundation framework [#813](https://github.com/chef/omnibus/pull/813) ([thommay](https://github.com/thommay))
|
3
29
|
|
4
30
|
v5.6.1 (June 22, 2017)
|
5
31
|
----------------------
|
@@ -773,4 +799,4 @@ BUG FIXES:
|
|
773
799
|
[@ohlol]: https://github.com/ohlol
|
774
800
|
[@schisamo]: https://github.com/schisamo
|
775
801
|
[@sl4mmy]: https://github.com/sl4mmy
|
776
|
-
[@totally]: https://github.com/totally
|
802
|
+
[@totally]: https://github.com/totally
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -83,7 +83,7 @@ s3_secret_key ENV['S3_SECRET_KEY']
|
|
83
83
|
s3_bucket ENV['S3_BUCKET']
|
84
84
|
```
|
85
85
|
|
86
|
-
For more information, please see the [`Config` documentation](http://rubydoc.info/github/
|
86
|
+
For more information, please see the [`Config` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Config).
|
87
87
|
|
88
88
|
You can tell Omnibus to load a different configuration file by passing the `--config` option to any command:
|
89
89
|
|
@@ -129,7 +129,7 @@ DSL Method | Description
|
|
129
129
|
|
130
130
|
By default a timestamp is appended to the build_version. You can turn this behavior off by setting `append_timestamp` to `false` in your configuration file or using `--override append_timestamp:false` at the command line.
|
131
131
|
|
132
|
-
For more information, please see the [`Project` documentation](http://rubydoc.info/github/
|
132
|
+
For more information, please see the [`Project` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Project).
|
133
133
|
|
134
134
|
### Software
|
135
135
|
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
5.6.6
|
data/appveyor.yml
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
version: "{build}"
|
2
2
|
|
3
|
-
os: Windows Server 2012
|
3
|
+
os: Windows Server 2012 R2
|
4
4
|
platform:
|
5
5
|
- x64
|
6
6
|
|
7
7
|
environment:
|
8
8
|
matrix:
|
9
|
+
- RUBY_VERSION: 24
|
9
10
|
- RUBY_VERSION: 23
|
10
11
|
- RUBY_VERSION: 22
|
11
12
|
|
@@ -21,7 +22,7 @@ install:
|
|
21
22
|
- echo %PATH%
|
22
23
|
- ruby --version
|
23
24
|
- gem --version
|
24
|
-
- gem install bundler -v 1.10.6 --quiet --no-ri --no-rdoc
|
25
|
+
- gem install bundler -v 1.10.6 --quiet --no-ri --no-rdoc --force
|
25
26
|
- bundler --version
|
26
27
|
- cp C:\Ruby23-x64\DevKit\mingw\bin\bsdtar.exe C:\Ruby23-x64\DevKit\mingw\bin\tar.exe
|
27
28
|
- appveyor DownloadFile http://curl.haxx.se/ca/cacert.pem -FileName C:\cacert.pem
|
data/docs/Building on Debian.md
CHANGED
@@ -9,7 +9,7 @@ Building a .deb
|
|
9
9
|
Omnibus assumes the existence of the `fakeroot` and `dpkg-deb` command on the build system. The [omnibus cookbook](https://supermarket.getchef.com/cookbooks/omnibus) automatically handles this installation. If you are not using the Omnibus cookbook, you must install these packages manually or using another tool.
|
10
10
|
|
11
11
|
### Configurables
|
12
|
-
A number of project configuration values are taken into consideration for building Debian packages. These options are further described in the [`Project` documentation](http://rubydoc.info/github/
|
12
|
+
A number of project configuration values are taken into consideration for building Debian packages. These options are further described in the [`Project` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Project).
|
13
13
|
|
14
14
|
These values are interpolated and evaluated using Omnibus' internal DEB templates. For 99% of users, these templates should be satisfactory. If you encounter an instance where Omnibus' ERB templates do not satisfy a use case, please open an issue.
|
15
15
|
|
@@ -39,6 +39,7 @@ package :deb do
|
|
39
39
|
license 'Apache 2.0'
|
40
40
|
priority 'extra'
|
41
41
|
section 'databases'
|
42
|
+
signing_passphrase 'acbd1234'
|
42
43
|
end
|
43
44
|
```
|
44
45
|
|
@@ -46,14 +47,15 @@ Some DSL methods available include:
|
|
46
47
|
|
47
48
|
| DSL Method | Description |
|
48
49
|
| :------------------: | --------------------------------------------|
|
50
|
+
| `signing_passphrase` | The passphrase to sign the RPM with |
|
49
51
|
| `vendor` | The name of the package producer |
|
50
52
|
| `license` | The default license for the package |
|
51
53
|
| `priority` | The priority for the package |
|
52
54
|
| `section` | The section for this package |
|
53
55
|
|
54
|
-
If you are
|
56
|
+
If you are unfamiliar with any of these terms, you should just accept the defaults. For more information on the purpose of any of these configuration options, please see the DEB spec.
|
55
57
|
|
56
|
-
For more information, please see the [`Packager::DEB` documentation](http://rubydoc.info/github/
|
58
|
+
For more information, please see the [`Packager::DEB` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Packager/DEB).
|
57
59
|
|
58
60
|
### Notes on DEB-signing
|
59
|
-
|
61
|
+
To sign an DEB, you will need a GPG keypair. You can [create your own signing key](http://www.madboa.com/geek/gpg-quickstart/) or [import an existing one](http://irtfweb.ifa.hawaii.edu/~lockhart/gpg/gpg-cs.html). Omnibus will automatically call `gpg` with arguments that assume the real name associated to the GPG key is the same as the name of the project maintainer as specified in your Omnibus config.
|
data/docs/Building on OSX.md
CHANGED
@@ -5,7 +5,7 @@ This document details the steps and configurables for building omnibus packages
|
|
5
5
|
|
6
6
|
Building a .pkg
|
7
7
|
---------------
|
8
|
-
In Mac OS X, a `.pkg` is a special file that is read by Installer.app that contains the set of instructions for
|
8
|
+
In Mac OS X, a `.pkg` is a special file that is read by Installer.app that contains the set of instructions for installing a piece of software on a target system.
|
9
9
|
|
10
10
|
### Requirements
|
11
11
|
By default, Omnibus does not generate pkg-related assets. To generate the pkg assets, run the Omnibus new command with the `--pkg-assets` flag:
|
@@ -89,4 +89,4 @@ Some DSL methods available include:
|
|
89
89
|
| `window_bounds` | The size and location of the DMG window |
|
90
90
|
| `pkg_position` | The position of the pkg inside the DMG |
|
91
91
|
|
92
|
-
For more information, please see the [`Compressor::DMG` documentation](http://rubydoc.info/github/
|
92
|
+
For more information, please see the [`Compressor::DMG` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Compressor/DMG).
|
data/docs/Building on RHEL.md
CHANGED
@@ -27,7 +27,7 @@ The following Project values are taken into consideration when building RPMs:
|
|
27
27
|
- `runtime_dependency`
|
28
28
|
- `url`
|
29
29
|
|
30
|
-
These options are further described in the [`Project` documentation](http://rubydoc.info/github/
|
30
|
+
These options are further described in the [`Project` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Project).
|
31
31
|
|
32
32
|
These values are interpolated and evaluated using Omnibus' internal RPM templates. For 99% of users, these templates should be satisfactory. If you encounter an instance where Omnibus' RPM templates do not satisfy a use case, please open an issue.
|
33
33
|
|
@@ -67,9 +67,9 @@ Some DSL methods available include:
|
|
67
67
|
| `priority` | The priority for the package |
|
68
68
|
| `category` | The category for this package |
|
69
69
|
|
70
|
-
If you are
|
70
|
+
If you are unfamiliar with any of these terms, you should just accept the defaults. For more information on the purpose of any of these configuration options, please see the RPM spec.
|
71
71
|
|
72
|
-
For more information, please see the [`Packager::RPM` documentation](http://rubydoc.info/github/
|
72
|
+
For more information, please see the [`Packager::RPM` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Packager/RPM).
|
73
73
|
|
74
74
|
### Notes on RPM-signing
|
75
75
|
To sign an RPM, you will need a GPG keypair. You can [create your own signing key](http://www.madboa.com/geek/gpg-quickstart/) or [import an existing one](http://irtfweb.ifa.hawaii.edu/~lockhart/gpg/gpg-cs.html). Omnibus automatically generates an `.rpmmacros` config file for `rpmbuild` that assumes that the real name associated to the GPG key is the same as the name of the project maintainer as specified in your Omnibus config. You can override this by creating your own `.rpmmacros` using the steps above.
|
data/docs/Building on Windows.md
CHANGED
@@ -54,4 +54,4 @@ Some DSL methods available include:
|
|
54
54
|
| **`upgrade_code`** | The unique GUID for this package |
|
55
55
|
| `parameters` | And arbirtary list of key-value pairs to render |
|
56
56
|
|
57
|
-
For more information, please see the [`Packager::MSI` documentation](http://rubydoc.info/github/
|
57
|
+
For more information, please see the [`Packager::MSI` documentation](http://www.rubydoc.info/github/chef/omnibus/Omnibus/Packager/MSI).
|
data/lib/omnibus.rb
CHANGED
@@ -67,6 +67,7 @@ module Omnibus
|
|
67
67
|
autoload :NetFetcher, "omnibus/fetchers/net_fetcher"
|
68
68
|
autoload :NullFetcher, "omnibus/fetchers/null_fetcher"
|
69
69
|
autoload :PathFetcher, "omnibus/fetchers/path_fetcher"
|
70
|
+
autoload :FileFetcher, "omnibus/fetchers/file_fetcher"
|
70
71
|
|
71
72
|
autoload :ArtifactoryPublisher, "omnibus/publishers/artifactory_publisher"
|
72
73
|
autoload :NullPublisher, "omnibus/publishers/null_publisher"
|
@@ -124,12 +124,21 @@ module Omnibus
|
|
124
124
|
build_tag
|
125
125
|
end
|
126
126
|
|
127
|
-
# We'll attempt to
|
128
|
-
# environment variable. This will ensure platform specfic
|
129
|
-
# same build will share the same timestamp.
|
127
|
+
# We'll attempt to retrieve the timestamp from the Jenkin's set BUILD_TIMESTAMP
|
128
|
+
# or fall back to BUILD_ID environment variable. This will ensure platform specfic
|
129
|
+
# packages for the same build will share the same timestamp.
|
130
130
|
def build_start_time
|
131
131
|
@build_start_time ||= begin
|
132
|
-
if ENV["
|
132
|
+
if ENV["BUILD_TIMESTAMP"]
|
133
|
+
begin
|
134
|
+
Time.strptime(ENV["BUILD_TIMESTAMP"], "%Y-%m-%d_%H-%M-%S")
|
135
|
+
rescue ArgumentError
|
136
|
+
error_message = "BUILD_TIMESTAMP environment variable "
|
137
|
+
error_message << "should be in YYYY-MM-DD_hh-mm-ss "
|
138
|
+
error_message << "format."
|
139
|
+
raise ArgumentError, error_message
|
140
|
+
end
|
141
|
+
elsif ENV["BUILD_ID"]
|
133
142
|
begin
|
134
143
|
Time.strptime(ENV["BUILD_ID"], "%Y-%m-%d_%H-%M-%S")
|
135
144
|
rescue ArgumentError
|
data/lib/omnibus/builder.rb
CHANGED
@@ -660,12 +660,16 @@ module Omnibus
|
|
660
660
|
command = "link `#{source}' to `#{destination}'"
|
661
661
|
build_commands << BuildCommand.new(command) do
|
662
662
|
Dir.chdir(software.project_dir) do
|
663
|
-
|
664
|
-
|
665
|
-
log.warn(log_key) { "no matched files for glob #{command}" }
|
663
|
+
if options.delete(:unchecked)
|
664
|
+
FileUtils.ln_s(source, destination, options)
|
666
665
|
else
|
667
|
-
files
|
668
|
-
|
666
|
+
files = FileSyncer.glob(source)
|
667
|
+
if files.empty?
|
668
|
+
log.warn(log_key) { "no matched files for glob #{command}" }
|
669
|
+
else
|
670
|
+
files.each do |file|
|
671
|
+
FileUtils.ln_s(file, destination, options)
|
672
|
+
end
|
669
673
|
end
|
670
674
|
end
|
671
675
|
end
|
@@ -928,6 +932,7 @@ module Omnibus
|
|
928
932
|
original = ENV.to_hash
|
929
933
|
|
930
934
|
ENV.delete("_ORIGINAL_GEM_PATH")
|
935
|
+
ENV.delete_if { |k, _| k.start_with?("BUNDLER_") }
|
931
936
|
ENV.delete_if { |k, _| k.start_with?("BUNDLE_") }
|
932
937
|
ENV.delete_if { |k, _| k.start_with?("GEM_") }
|
933
938
|
ENV.delete_if { |k, _| k.start_with?("RUBY") }
|
data/lib/omnibus/config.rb
CHANGED
@@ -101,9 +101,9 @@ module Omnibus
|
|
101
101
|
# @return [String]
|
102
102
|
default(:base_dir) do
|
103
103
|
if Ohai["platform"] == "windows"
|
104
|
-
"C:/omnibus-ruby"
|
104
|
+
File.join(*["C:/omnibus-ruby", cache_suffix].compact)
|
105
105
|
else
|
106
|
-
"/var/cache/omnibus"
|
106
|
+
File.join(*["/var/cache/omnibus", cache_suffix].compact)
|
107
107
|
end
|
108
108
|
end
|
109
109
|
|
@@ -113,6 +113,12 @@ module Omnibus
|
|
113
113
|
# @return [String]
|
114
114
|
default(:cache_dir) { File.join(base_dir, "cache") }
|
115
115
|
|
116
|
+
# The suffix added (typically the software name) to create a wholly
|
117
|
+
# separate base cache directory for the software.
|
118
|
+
#
|
119
|
+
# @return [String]
|
120
|
+
default(:cache_suffix, nil)
|
121
|
+
|
116
122
|
# The absolute path to the directory on the virtual machine where
|
117
123
|
# git caching will occur and software's will be progressively cached.
|
118
124
|
#
|
@@ -277,7 +283,7 @@ module Omnibus
|
|
277
283
|
|
278
284
|
# The S3 access key to use with S3 caching.
|
279
285
|
#
|
280
|
-
# @return [String]
|
286
|
+
# @return [String, nil]
|
281
287
|
default(:s3_access_key) do
|
282
288
|
if s3_profile
|
283
289
|
nil
|
@@ -299,7 +305,7 @@ module Omnibus
|
|
299
305
|
|
300
306
|
# The AWS credentials profile to use with S3 caching.
|
301
307
|
#
|
302
|
-
# @return [String]
|
308
|
+
# @return [String, nil]
|
303
309
|
default(:s3_profile, nil)
|
304
310
|
|
305
311
|
# The region of the S3 bucket you want to cache software artifacts in.
|
@@ -315,6 +321,11 @@ module Omnibus
|
|
315
321
|
# @return [String, nil]
|
316
322
|
default(:s3_endpoint, nil)
|
317
323
|
|
324
|
+
# Use path style URLs instead of subdomains for S3 URLs
|
325
|
+
#
|
326
|
+
# @return [true, false]
|
327
|
+
default(:s3_force_path_style, false)
|
328
|
+
|
318
329
|
# Enable or disable S3 Accelerate support
|
319
330
|
#
|
320
331
|
# @return [true, false]
|
@@ -371,6 +382,14 @@ module Omnibus
|
|
371
382
|
raise MissingRequiredAttribute.new(self, :artifactory_base_path, "'com/mycompany'")
|
372
383
|
end
|
373
384
|
|
385
|
+
# Directory pattern for the Artifactory publisher.
|
386
|
+
# Interpolation of metadata keys is supported.
|
387
|
+
#
|
388
|
+
# @example '%{platform}/%{platform_version}/%{arch}/%{basename}'
|
389
|
+
#
|
390
|
+
# @return [String]
|
391
|
+
default(:artifactory_publish_pattern, "%{name}/%{version}/%{platform}/%{platform_version}/%{basename}")
|
392
|
+
|
374
393
|
# The path on disk to an SSL pem file to sign requests with.
|
375
394
|
#
|
376
395
|
# @return [String, nil]
|
@@ -411,9 +430,9 @@ module Omnibus
|
|
411
430
|
|
412
431
|
# The S3 access key to use for S3 artifact release.
|
413
432
|
#
|
414
|
-
# @return [String]
|
433
|
+
# @return [String, nil]
|
415
434
|
default(:publish_s3_access_key) do
|
416
|
-
if
|
435
|
+
if publish_s3_profile
|
417
436
|
nil
|
418
437
|
else
|
419
438
|
raise MissingRequiredAttribute.new(self, :publish_s3_access_key, "'ABCD1234'")
|
@@ -422,15 +441,28 @@ module Omnibus
|
|
422
441
|
|
423
442
|
# The S3 secret key to use for S3 artifact release
|
424
443
|
#
|
425
|
-
# @return [String]
|
444
|
+
# @return [String, nil]
|
426
445
|
default(:publish_s3_secret_key) do
|
427
|
-
if
|
446
|
+
if publish_s3_profile
|
428
447
|
nil
|
429
448
|
else
|
430
449
|
raise MissingRequiredAttribute.new(self, :publish_s3_secret_key, "'EFGH5678'")
|
431
450
|
end
|
432
451
|
end
|
433
452
|
|
453
|
+
# The AWS credentials profile to use with S3 publisher.
|
454
|
+
#
|
455
|
+
# @return [String, nil]
|
456
|
+
default(:publish_s3_profile, nil)
|
457
|
+
|
458
|
+
# Directory pattern for the S3 publisher.
|
459
|
+
# Interpolation of metadata keys is supported.
|
460
|
+
#
|
461
|
+
# @example '%{platform}/%{platform_version}/%{arch}/%{basename}'
|
462
|
+
#
|
463
|
+
# @return [String]
|
464
|
+
default(:s3_publish_pattern, "%{platform}/%{platform_version}/%{arch}/%{basename}")
|
465
|
+
|
434
466
|
# --------------------------------------------------
|
435
467
|
# @!endgroup
|
436
468
|
#
|