cookbook 'packagecloud', '= 0.3.0'
packagecloud
(35) Versions
0.3.0
-
Follow18
Installs/Configures packagecloud.io repositories.
cookbook 'packagecloud', '= 0.3.0', :supermarket
knife supermarket install packagecloud
knife supermarket download packagecloud
packagecloud cookbook
This cookbook provides an LWRP for installing https://packagecloud.io repositories.
NOTE: Please see the Changelog below for important changes if upgrading from 0.0.19 to 0.1.0.
Usage
Be sure to depend on packagecloud
in metadata.rb
so that the packagecloud
resource will be loaded.
For public repos:
packagecloud_repo "computology/packagecloud-cookbook-test-public" do type "deb" end
For private repos, you need to supply a master_token
:
packagecloud_repo "computology/packagecloud-cookbook-test-private" do type "deb" master_token "762748f7ae0bfdb086dd539575bdc8cffdca78c6a9af0db9" end
For packagecloud:enterprise users, add base_url
to your resource:
packagecloud_repo "computology/packagecloud-cookbook-test-private" do
base_url "https://packages.example.com"
type "deb"
master_token "762748f7ae0bfdb086dd539575bdc8cffdca78c6a9af0db9"
end
For forcing the os and dist for repository install:
packagecloud_repo 'computology/packagecloud-cookbook-test-public' do
type 'rpm'
force_os 'rhel'
force_dist '6.5'
end
Valid options for type
include deb
, rpm
, and gem
.
This cookbook performs checks to determine if a package exists before attempting
to install it. To enable proxy support for these checks (not to be confused
with proxy support for your package manager of choice), add the following
attributes to your cookbook:
default['packagecloud']['proxy_host'] = 'myproxy.organization.com'
default['packagecloud']['proxy_port'] = '80'
Interactions with other cookbooks
On CentOS 5, the official chef yum cookbook overwrites the file
/etc/yum.conf
setting some default values. When it does this, the cachedir
value is changed from the CentOS5 default to the default value in the
cookbook. The result of this change is that any packagecloud repository
installed before a repository installed with the yum cookbook will appear as
though it's gpg keys were not imported.
There are a few potential workarounds for this:
- Pass the "-y" flag to package resource using the
options
attribute. This should cause yum to import the GPG key automatically if it was not imported already. - Move your packagecloud repos so that they are installed last, after any/all repos installed via the yum cookbook.
- Set the cachedir option in the chef yum cookbook to the system default value
of
/var/cache/yum
using theyum_globalconfig
resource.
CentOS 6 and 7 are not affected as the default cachedir
value provided by
the yum chef cookbook is set to the system default, unless you use the
yum_globalconfig
resource to set a custom cachedir. If you do set a custom
cachedir
, you should make sure to setup packagecloud repos after that
resource is set so that the GPG keys end up in the right place.
Changelog
See CHANGELOG.md for more recent changes.
Credits
Computology, LLC.
Dependent cookbooks
This cookbook has no specified dependencies.
Contingent cookbooks
packagecloud
This is the Changelog for the packagecloud cookbook
v0.3.0 (2017-03-08)
Fix force_os and force_dist for Ubuntu/Debian.
Drop support for Ubuntu Lucid.
Add support for Ubuntu Xenial.
Ensure lsb_release is installed on Ubuntu/Debian.
v0.2.5 (2016-08-11)
Check for empty node hostname. Display error when a node's fully qualified hostname
is not set; as returned by hostname -f
v0.2.4 (2016-07-05)
Add proxy_host
and proxy_port
attributes so that the cookbook can contact the
packagecloud server.
v0.2.3 (2016-06-01)
Try to fix metadata_expire
type (set as String)
v0.2.2 (2016-06-01)
Try to fix metadata_expire
type (set as Integer)
v0.2.1 (2016-05-31)
Set metadata_expire
option to default of 300 (5 minutes) to match the
generated configs produced by the bash and manual install instructions.
v0.2.0 (2016-02-17)
Rework GPG paths to support new GPG endpoints for repos with repo-specific GPG
keys. Old endpoints/URLs still work, too.
v0.1.0 (2015-09-08)
packagecloud cookbook versions 0.0.19 used an attribute called
default['packagecloud']['hostname']
for caching the local machine's hostname
to avoid regenerating read tokens.
This attribute has been removed as it is confusing and in some edge cases,
buggy.
Beginning in 0.1.0, you can use
default['packagecloud']['hostname_override']
to specify a hostname if ohai
is unable to determine the hostname of the node on its own.
v0.0.1 (2014-06-05)
Initial release.
v0.0.1 (2014-06-05)
Initial release!
Collaborator Number Metric
0.3.0 passed this metric
Contributing File Metric
0.3.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.3.0 failed this metric
FC066: Ensure chef_version is set in metadata: packagecloud/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: packagecloud/metadata.rb:1
FC069: Ensure standardized license defined in metadata: packagecloud/metadata.rb:1
FC104: Use the :run action in ruby_block instead of :create: packagecloud/providers/repo.rb:117
Run with Foodcritic Version 12.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
License Metric
0.3.0 passed this metric
No Binaries Metric
0.3.0 passed this metric
Testing File Metric
0.3.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.3.0 passed this metric
0.3.0 passed this metric
0.3.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.3.0 failed this metric
FC066: Ensure chef_version is set in metadata: packagecloud/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: packagecloud/metadata.rb:1
FC069: Ensure standardized license defined in metadata: packagecloud/metadata.rb:1
FC104: Use the :run action in ruby_block instead of :create: packagecloud/providers/repo.rb:117
Run with Foodcritic Version 12.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
License Metric
0.3.0 passed this metric
No Binaries Metric
0.3.0 passed this metric
Testing File Metric
0.3.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.3.0 passed this metric
0.3.0 failed this metric
FC067: Ensure at least one platform supported in metadata: packagecloud/metadata.rb:1
FC069: Ensure standardized license defined in metadata: packagecloud/metadata.rb:1
FC104: Use the :run action in ruby_block instead of :create: packagecloud/providers/repo.rb:117
Run with Foodcritic Version 12.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
0.3.0 passed this metric
No Binaries Metric
0.3.0 passed this metric
Testing File Metric
0.3.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.3.0 passed this metric
0.3.0 passed this metric
0.3.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.3.0 passed this metric
0.3.0 passed this metric