cookbook 'yum-ius', '= 3.2.3'
yum-ius
(26) Versions
3.2.3
-
Follow10
Installs and configures the IUS Community Project Yum Repository
cookbook 'yum-ius', '= 3.2.3', :supermarket
knife supermarket install yum-ius
knife supermarket download yum-ius
yum-ius Cookbook
The yum-ius cookbook takes over management of the default repositoryids that ship with CentOS systems. It allows attribute manipulation of ius
, ius-debuginfo
, ius-source
, ius-archive
, ius-archive-debuginfo
, ius-archive-source
, ius-testing
, ius-testing-debuginfo
, ius-testing-source
Requirements
Platforms
- RHEL/CentOS and derivatives
Chef
- Chef 12.14+
Cookbooks
- yum-epel
Attributes
The following attributes are set by default
default['yum']['ius']['repositoryid'] = 'ius' default['yum']['ius']['enabled'] = true default['yum']['ius']['managed'] = true default['yum']['ius']['failovermethod'] = 'priority' default['yum']['ius']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius']['gpgcheck'] = true default['yum']['ius']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch" default['yum']['ius']['baseurl'] = "https://repo.ius.io/#{node['platform_version'].to_i}/$basearch"
default['yum']['ius-debuginfo']['repositoryid'] = 'ius-debuginfo' default['yum']['ius-debuginfo']['enabled'] = false default['yum']['ius-debuginfo']['managed'] = false default['yum']['ius-debuginfo']['failovermethod'] = 'priority' default['yum']['ius-debuginfo']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-debuginfo']['gpgcheck'] = true default['yum']['ius-debuginfo']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Debug" default['yum']['ius-debuginfo']['baseurl'] = "https://repo.ius.io/#{node['platform_version'].to_i}/$basearch/debug"
default['yum']['ius-source']['repositoryid'] = 'ius-source' default['yum']['ius-source']['enabled'] = false default['yum']['ius-source']['managed'] = false default['yum']['ius-source']['failovermethod'] = 'priority' default['yum']['ius-source']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-source']['gpgcheck'] = true default['yum']['ius-source']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Source" default['yum']['ius-source']['baseurl'] = "https://repo.ius.io/#{node['platform_version'].to_i}/src"
default['yum']['ius-archive']['repositoryid'] = 'ius-archive' default['yum']['ius-archive']['enabled'] = false default['yum']['ius-archive']['managed'] = false default['yum']['ius-archive']['failovermethod'] = 'priority' default['yum']['ius-archive']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-archive']['gpgcheck'] = true default['yum']['ius-archive']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Archive" default['yum']['ius-archive']['baseurl'] = "https://repo.ius.io/archive/#{node['platform_version'].to_i}/$basearch"
default['yum']['ius-archive-debuginfo']['repositoryid'] = 'ius-archive-debuginfo' default['yum']['ius-archive-debuginfo']['enabled'] = false default['yum']['ius-archive-debuginfo']['managed'] = false default['yum']['ius-archive-debuginfo']['failovermethod'] = 'priority' default['yum']['ius-archive-debuginfo']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-archive-debuginfo']['gpgcheck'] = true default['yum']['ius-archive-debuginfo']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Archive Debug" default['yum']['ius-archive-debuginfo']['baseurl'] = "https://repo.ius.io/archive/#{node['platform_version'].to_i}/$basearch/debug"
default['yum']['ius-archive-source']['repositoryid'] = 'ius-archive-source' default['yum']['ius-archive-source']['enabled'] = false default['yum']['ius-archive-source']['managed'] = false default['yum']['ius-archive-source']['failovermethod'] = 'priority' default['yum']['ius-archive-source']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-archive-source']['gpgcheck'] = true default['yum']['ius-archive-source']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Archive Source" default['yum']['ius-archive-source']['baseurl'] = "https://repo.ius.io/archive/#{node['platform_version'].to_i}/src"
default['yum']['ius-testing']['repositoryid'] = 'ius-testing' default['yum']['ius-testing']['enabled'] = false default['yum']['ius-testing']['managed'] = false default['yum']['ius-testing']['failovermethod'] = 'priority' default['yum']['ius-testing']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-testing']['gpgcheck'] = true default['yum']['ius-testing']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Testing" default['yum']['ius-testing']['baseurl'] = "https://repo.ius.io/testing/#{node['platform_version'].to_i}/$basearch"
default['yum']['ius-testing-debuginfo']['repositoryid'] = 'ius-testing-debuginfo' default['yum']['ius-testing-debuginfo']['enabled'] = false default['yum']['ius-testing-debuginfo']['managed'] = false default['yum']['ius-testing-debuginfo']['failovermethod'] = 'priority' default['yum']['ius-testing-debuginfo']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-testing-debuginfo']['gpgcheck'] = true default['yum']['ius-testing-debuginfo']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Testing Debug" default['yum']['ius-testing-debuginfo']['baseurl'] = "https://repo.ius.io/testing/#{node['platform_version'].to_i}/$basearch/debug"
default['yum']['ius-testing-source']['repositoryid'] = 'ius-testing-source' default['yum']['ius-testing-source']['enabled'] = false default['yum']['ius-testing-source']['managed'] = false default['yum']['ius-testing-source']['failovermethod'] = 'priority' default['yum']['ius-testing-source']['gpgkey'] = "https://repo.ius.io/RPM-GPG-KEY-IUS-#{node['platform_version'].to_i}" default['yum']['ius-testing-source']['gpgcheck'] = true default['yum']['ius-testing-source']['description'] = "IUS Community Packages for Enterprise Linux #{node['platform_version'].to_i} - $basearch Testing Source" default['yum']['ius-testing-source']['baseurl'] = "https://repo.ius.io/testing/#{node['platform_version'].to_i}/src"
Recipes
- default - Walks through node attributes and feeds a
yum_resource
parameters. The following is an example a resource generated by the recipe during compilation.
yum_repository 'ius' do baseurl 'https://repo.ius.io/7/$basearch' description 'IUS Community Packages for Enterprise Linux 7 - $basearch' enabled true gpgcheck true gpgkey 'https://repo.ius.io/RPM-GPG-KEY-IUS-7' end
Usage Example
To disable the ius
repository through a Role or Environment definition
default_attributes( :yum => { :ius => { :enabled => { false } } } )
Uncommonly used repositoryids are not managed by default. This is speeds up integration testing pipelines by avoiding yum-cache builds that nobody cares about. To enable the ius-testing
repository with a wrapper cookbook, place the following in a recipe:
node.default['yum']['ius-tesing']['managed'] = true node.default['yum']['ius-tesing']['enabled'] = true include_recipe 'yum-ius'
More Examples
Point the base and debuginfo repositories at an internally hosted server.
node.default['yum']['ius']['enabled'] = true node.default['yum']['ius']['mirrorlist'] = nil node.default['yum']['ius']['baseurl'] = 'https://internal.example.com/centos/6/os/x86_64' node.default['yum']['ius']['sslverify'] = false node.default['yum']['ius-debuginfo']['enabled'] = true node.default['yum']['ius-debuginfo']['mirrorlist'] = nil node.default['yum']['ius-debuginfo']['baseurl'] = 'https://internal.example.com/centos/6/updates/x86_64' node.default['yum']['ius-debuginfo']['sslverify'] = false include_recipe 'yum-ius'
Contributors
This project exists thanks to all the people who contribute.
Backers
Thank you to all our backers!
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website.
yum-ius Cookbook CHANGELOG
This file is used to list changes made in each version of the yum-ius cookbook.
3.2.3 - 2023-02-14
3.2.2 - 2021-08-29
- Standardise files with files in sous-chefs/repo-management
3.2.1 - 2021-06-01
- Standardise files with files in sous-chefs/repo-management
3.2.0 - 2021-03-03
- Sous Chefs adoption
- Various style fixes
3.1.0 (2019-10-17)
- Updated all the repos to use the new IUS CDN system. This greatly simplifies our attribute setup and makes sure this cookbook continues to work with the latest mirror setup.
- @gsdevme
- Resolve Cookstyle 5.8 warnings - @tas50
- Remove references to CentOS 5 - @ramereth
- Removed the various dev repos which don't seem to exist anymore - @ramereth
- Fix all other active upstream repos with new baseurl for CDN - @ramereth
3.0.0 (2018-02-16)
- Require Chef 12.14+ and remove the compat_resource dep
2.2.0 (3.2.0 - 2021-03-03)
- Remove use of releasever to eliminate centos-release dependency.
- Add warning for use of EL 5 variants as IUS is ending support as of March 31, 2017 following the RHEL EOL of RHEL 5.
- Update chefspecs to avoid deprecation warnings
2.1.0 (2016-12-22)
- Allow the use of any valid property via attributes
- Depend on the latest compat_resource cookbook
- Cookstyle fixes
2.0.0 (2016-11-26)
- Replace yum dependency with compat_resource
- Add inspec integration test
1.0.0 (2016-09-06)
- Testing updates
- Add chef_version metadata
- Remove support for Chef 11
v0.4.6 (2016-04-27)
- Remove support for fedora / amazon from metadata as they are not actually supported
v0.4.5 (2015-11-30)
- Fixed attributes with a false value being skipped
v0.4.4 (2015-10-28)
- Fixing logic bug around managed attribute
v0.4.3 (2015-10-28)
- Fixing Chef 13 nil property deprecation warnings
v0.4.2 (2015-09-21)
- Added Chef standard Rubocop file and resolved all warnings
- Updated platforms in Kitchen CI config
- Add supported platforms to the metadata
- Added Chef standard chefignore and .gitignore files
- Updated and expanded development dependencies in the Gemfile
- Added contributing, testing, and maintainers docs
- Added platform requirements to the readme
- Added Travis and cookbook version badges to the readme
- Update Chefspec to 4.X format
- Convert all hash rockets to the Ruby 1.9+ hash format
v0.4.1 (2015-06-21)
- Updating URLs for https and new mirrorlists
- Depending on yum ~> 3.2
v0.4.0 (2014-10-29)
- Accounting for differences between RHEL and Centos
- Adding EL7 Support
v0.3.0 (2014-09-11)
- Add the yum-epel::default recipe if at least one yum-ius repository managed
v0.2.0 (2014-02-14)
- Updating test harness
- Disabling uncommonly used repositories by default
v0.1.4
- Adding CHANGELOG.md
v0.1.0
- initial release
Collaborator Number Metric
3.2.3 passed this metric
Contributing File Metric
3.2.3 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
Cookstyle Metric
3.2.3 passed this metric
No Binaries Metric
3.2.3 passed this metric
Testing File Metric
3.2.3 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
3.2.3 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 include a tag that matches this cookbook version number
3.2.3 passed this metric
3.2.3 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
Cookstyle Metric
3.2.3 passed this metric
No Binaries Metric
3.2.3 passed this metric
Testing File Metric
3.2.3 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
3.2.3 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 include a tag that matches this cookbook version number
3.2.3 passed this metric
3.2.3 passed this metric
Testing File Metric
3.2.3 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
3.2.3 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 include a tag that matches this cookbook version number
3.2.3 failed this metric
3.2.3 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 include a tag that matches this cookbook version number