From eeda605b26524729649142bbe79d77718874e1a8 Mon Sep 17 00:00:00 2001 From: Lance Albertson Date: Mon, 17 Apr 2023 08:41:33 -0700 Subject: [PATCH] Update to modern platforms (#87) * Remove EPEL Modular This has been removed upstream: https://pagure.io/epel/issue/198 Signed-off-by: Lance Albertson * Add support for Amazon Linux 2023 Signed-off-by: Lance Albertson * Remove circleci files Signed-off-by: Lance Albertson * Update actions/stale action to v8 * Update actions/checkout action to v3 * Properly fix EPEL version for Amazon Linux globally Signed-off-by: Lance Albertson * Update README with EL9 Signed-off-by: Lance Albertson * Update workflow and remove md-links Signed-off-by: Lance Albertson * Updates Signed-off-by: Lance Albertson * Add missing .markdownlint-cli2.yaml and fix README.md Signed-off-by: Lance Albertson --------- Signed-off-by: Lance Albertson Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .circleci/config.yml | 10 --- .github/workflows/ci.yml | 19 +++-- .github/workflows/md-links.yml | 19 ----- .github/workflows/stale.yml | 2 +- .markdownlint-cli2.yaml | 5 ++ CHANGELOG.md | 5 ++ README.md | 36 ++++---- attributes/default.rb | 2 +- attributes/epel-debuginfo.rb | 16 ++-- attributes/epel-modular-debuginfo.rb | 8 -- attributes/epel-modular-source.rb | 8 -- attributes/epel-modular.rb | 8 -- attributes/epel-next-debuginfo.rb | 6 +- attributes/epel-next-source.rb | 6 +- attributes/epel-next-testing-debuginfo.rb | 6 +- attributes/epel-next-testing-source.rb | 6 +- attributes/epel-next-testing.rb | 6 +- attributes/epel-next.rb | 4 +- attributes/epel-source.rb | 16 ++-- attributes/epel-testing-debuginfo.rb | 16 ++-- attributes/epel-testing-modular-debuginfo.rb | 8 -- attributes/epel-testing-modular-source.rb | 8 -- attributes/epel-testing-modular.rb | 8 -- attributes/epel-testing-source.rb | 16 ++-- attributes/epel-testing.rb | 16 ++-- attributes/epel.rb | 16 ++-- kitchen.dokken.yml | 88 +++++++++++++++++--- kitchen.yml | 18 ---- libraries/helpers.rb | 21 +++-- test/integration/all/all_spec.rb | 69 +-------------- test/integration/default/default_spec.rb | 2 +- 31 files changed, 185 insertions(+), 289 deletions(-) delete mode 100644 .circleci/config.yml delete mode 100644 .github/workflows/md-links.yml create mode 100644 .markdownlint-cli2.yaml delete mode 100644 attributes/epel-modular-debuginfo.rb delete mode 100644 attributes/epel-modular-source.rb delete mode 100644 attributes/epel-modular.rb delete mode 100644 attributes/epel-testing-modular-debuginfo.rb delete mode 100644 attributes/epel-testing-modular-source.rb delete mode 100644 attributes/epel-testing-modular.rb diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 8af810e..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -version: 2.1 -orbs: - kitchen: sous-chefs/kitchen@2 -workflows: - danger: - jobs: - - kitchen/danger: - name: danger - context: Danger-Minimal diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f940220..71164df 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,7 +9,12 @@ name: ci jobs: lint-unit: - uses: sous-chefs/.github/.github/workflows/lint-unit.yml@0.0.3 + uses: sous-chefs/.github/.github/workflows/lint-unit.yml@2.0.2 + permissions: + actions: write + checks: write + pull-requests: write + statuses: write integration: needs: 'lint-unit' @@ -18,12 +23,16 @@ jobs: matrix: os: - 'almalinux-8' - - 'amazonlinux-2' + - 'almalinux-9' + - 'amazonlinux-2023' - 'centos-7' - 'centos-stream-8' + - 'centos-stream-9' - 'oraclelinux-7' - 'oraclelinux-8' + - 'oraclelinux-9' - 'rockylinux-8' + - 'rockylinux-9' suite: - 'default' - 'all' @@ -31,11 +40,11 @@ jobs: steps: - name: Check out code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Install Chef - uses: actionshub/chef-install@main + uses: actionshub/chef-install@2.0.4 - name: Dokken - uses: actionshub/test-kitchen@main + uses: actionshub/test-kitchen@2.1.0 env: CHEF_LICENSE: accept-no-persist KITCHEN_LOCAL_YAML: kitchen.dokken.yml diff --git a/.github/workflows/md-links.yml b/.github/workflows/md-links.yml deleted file mode 100644 index ba887a1..0000000 --- a/.github/workflows/md-links.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -name: md-links - -"on": - pull_request: - push: - branches: [main] - -jobs: - md-links: - runs-on: ubuntu-latest - steps: - - name: Check out code - uses: actions/checkout@v2 - - name: markdown-link-check - uses: gaurav-nelson/github-action-markdown-link-check@v1 - with: - use-verbose-mode: "yes" - folder-path: "documentation" diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 9e2ff38..4bb59c6 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -8,7 +8,7 @@ jobs: stale: runs-on: ubuntu-latest steps: - - uses: actions/stale@v3 + - uses: actions/stale@v8 with: repo-token: ${{ secrets.GITHUB_TOKEN }} close-issue-message: > diff --git a/.markdownlint-cli2.yaml b/.markdownlint-cli2.yaml new file mode 100644 index 0000000..6fa8e77 --- /dev/null +++ b/.markdownlint-cli2.yaml @@ -0,0 +1,5 @@ +config: + ul-indent: false # MD007 + line-length: false # MD013 + no-duplicate-heading: false # MD024 + reference-links-images: false # MD052 diff --git a/CHANGELOG.md b/CHANGELOG.md index acc5737..96a2fa5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,13 @@ This file is used to list changes made in each version of the yum-epel cookbook. ## Unreleased +- Remove EPEL Modular +- Add support for Amazon Linux 2023 + ## 4.5.1 - *2023-04-13* +- Add renovate.json + ## 4.5.0 - *2022-06-03* - Remove epel-playground per upstream removal diff --git a/README.md b/README.md index 1aa948f..3f56bee 100644 --- a/README.md +++ b/README.md @@ -12,26 +12,20 @@ The yum-epel cookbook takes over management of the default repositoryids shipped Below is a table showing which repositoryids we manage that are shipped by default via the epel-release package: -| Repo ID | EL 7 | EL 8 | CentOS Stream 8 | -| ------------------------------ | :--------------: | :--------------: | :--------------: | -| epel |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| -| epel-debuginfo |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| -| epel-modular | :x: |:heavy_check_mark:|:heavy_check_mark:| -| epel-modular-debuginfo | :x: |:heavy_check_mark:|:heavy_check_mark:| -| epel-modular-source | :x: |:heavy_check_mark:|:heavy_check_mark:| -| epel-next | :x: | :x: |:heavy_check_mark:| -| epel-next-debuginfo | :x: | :x: |:heavy_check_mark:| -| epel-next-source | :x: | :x: |:heavy_check_mark:| -| epel-next-testing | :x: | :x: |:heavy_check_mark:| -| epel-next-testing-debug | :x: | :x: |:heavy_check_mark:| -| epel-next-testing-source | :x: | :x: |:heavy_check_mark:| -| epel-source |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| -| epel-testing |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| -| epel-testing-debuginfo |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| -| epel-testing-modular | :x: |:heavy_check_mark:|:heavy_check_mark:| -| epel-testing-modular-debuginfo | :x: |:heavy_check_mark:|:heavy_check_mark:| -| epel-testing-modular-source | :x: |:heavy_check_mark:|:heavy_check_mark:| -| epel-testing-source |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +| Repo ID | EL 7 | EL 8 | EL 9 | CentOS Stream 8 | CentOS Stream 9 | +| ------------------------------ | :--------------: | :--------------: | :--------------: | :--------------: | :--------------: | +| epel |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +| epel-debuginfo |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +| epel-next | :x: | :x: | :x: |:heavy_check_mark:|:heavy_check_mark:| +| epel-next-debuginfo | :x: | :x: | :x: |:heavy_check_mark:|:heavy_check_mark:| +| epel-next-source | :x: | :x: | :x: |:heavy_check_mark:|:heavy_check_mark:| +| epel-next-testing | :x: | :x: | :x: |:heavy_check_mark:|:heavy_check_mark:| +| epel-next-testing-debug | :x: | :x: | :x: |:heavy_check_mark:|:heavy_check_mark:| +| epel-next-testing-source | :x: | :x: | :x: |:heavy_check_mark:|:heavy_check_mark:| +| epel-source |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +| epel-testing |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +| epel-testing-debuginfo |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| +| epel-testing-source |:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| ## Requirements @@ -63,7 +57,7 @@ See individual repository attribute files for defaults. To disable the epel repository through a Role or Environment definition -``` +```ruby default_attributes( :yum => { :epel => { diff --git a/attributes/default.rb b/attributes/default.rb index 8d32a08..74589cc 100644 --- a/attributes/default.rb +++ b/attributes/default.rb @@ -1,7 +1,7 @@ default['yum-epel']['repos'] = value_for_platform( %w(almalinux redhat centos oracle rocky) => { - '>= 8.0' => epel_8_repos, + '>= 8.0' => epel_repos, '~> 7.0' => %w( epel diff --git a/attributes/epel-debuginfo.rb b/attributes/epel-debuginfo.rb index 01b9b1e..6229f6b 100644 --- a/attributes/epel-debuginfo.rb +++ b/attributes/epel-debuginfo.rb @@ -1,14 +1,10 @@ default['yum']['epel-debuginfo']['repositoryid'] = 'epel-debuginfo' - -if platform?('amazon') - default['yum']['epel-debuginfo']['description'] = 'Extra Packages for 7 - $basearch - Debug' - default['yum']['epel-debuginfo']['mirrorlist'] = 'https://mirrors.fedoraproject.org/mirrorlist?repo=epel-debug-7&arch=$basearch' - default['yum']['epel-debuginfo']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7' -else - default['yum']['epel-debuginfo']['description'] = "Extra Packages for #{node['platform_version'].to_i} - $basearch - Debug" - default['yum']['epel-debuginfo']['mirrorlist'] = "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-debug-#{node['platform_version'].to_i}&arch=$basearch" - default['yum']['epel-debuginfo']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" -end +default['yum']['epel-debuginfo']['description'] = + "Extra Packages for #{yum_epel_release} - $basearch - Debug" +default['yum']['epel-debuginfo']['mirrorlist'] = + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-debug-#{yum_epel_release}&arch=$basearch" +default['yum']['epel-debuginfo']['gpgkey'] = + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-debuginfo']['gpgcheck'] = true default['yum']['epel-debuginfo']['enabled'] = false default['yum']['epel-debuginfo']['managed'] = false diff --git a/attributes/epel-modular-debuginfo.rb b/attributes/epel-modular-debuginfo.rb deleted file mode 100644 index 04e9f52..0000000 --- a/attributes/epel-modular-debuginfo.rb +++ /dev/null @@ -1,8 +0,0 @@ -default['yum']['epel-modular-debuginfo']['repositoryid'] = 'epel-modular-debuginfo' -default['yum']['epel-modular-debuginfo']['description'] = 'Extra Packages for Enterprise Linux Modular $releasever - $basearch - Debug' -default['yum']['epel-modular-debuginfo']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=epel-modular-debug-$releasever&arch=$basearch&infra=$infra&content=$contentdir' -default['yum']['epel-modular-debuginfo']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8' -default['yum']['epel-modular-debuginfo']['gpgcheck'] = true -default['yum']['epel-modular-debuginfo']['enabled'] = false -default['yum']['epel-modular-debuginfo']['managed'] = false -default['yum']['epel-modular-debuginfo']['make_cache'] = true diff --git a/attributes/epel-modular-source.rb b/attributes/epel-modular-source.rb deleted file mode 100644 index 150e1eb..0000000 --- a/attributes/epel-modular-source.rb +++ /dev/null @@ -1,8 +0,0 @@ -default['yum']['epel-modular-source']['repositoryid'] = 'epel-modular-source' -default['yum']['epel-modular-source']['description'] = 'Extra Packages for Enterprise Linux Modular $releasever - $basearch - Source' -default['yum']['epel-modular-source']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=epel-modular-source-$releasever&arch=$basearch&infra=$infra&content=$contentdir' -default['yum']['epel-modular-source']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8' -default['yum']['epel-modular-source']['gpgcheck'] = true -default['yum']['epel-modular-source']['enabled'] = false -default['yum']['epel-modular-source']['managed'] = false -default['yum']['epel-modular-source']['make_cache'] = true diff --git a/attributes/epel-modular.rb b/attributes/epel-modular.rb deleted file mode 100644 index 9fea914..0000000 --- a/attributes/epel-modular.rb +++ /dev/null @@ -1,8 +0,0 @@ -default['yum']['epel-modular']['repositoryid'] = 'epel-modular' -default['yum']['epel-modular']['description'] = 'Extra Packages for Enterprise Linux Modular $releasever - $basearch' -default['yum']['epel-modular']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=epel-modular-$releasever&arch=$basearch&infra=$infra&content=$contentdir' -default['yum']['epel-modular']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8' -default['yum']['epel-modular']['gpgcheck'] = true -default['yum']['epel-modular']['enabled'] = false -default['yum']['epel-modular']['managed'] = false -default['yum']['epel-modular']['make_cache'] = true diff --git a/attributes/epel-next-debuginfo.rb b/attributes/epel-next-debuginfo.rb index dd43687..c16bf6f 100644 --- a/attributes/epel-next-debuginfo.rb +++ b/attributes/epel-next-debuginfo.rb @@ -1,10 +1,10 @@ default['yum']['epel-next-debuginfo']['repositoryid'] = 'epel-next-debuginfo' default['yum']['epel-next-debuginfo']['description'] = - "Extra Packages for #{node['platform_version'].to_i} - $basearch - Next - Debug" + "Extra Packages for #{yum_epel_release} - $basearch - Next - Debug" default['yum']['epel-next-debuginfo']['mirrorlist'] = - "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-next-debug-#{node['platform_version'].to_i}&arch=$basearch" + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-next-debug-#{yum_epel_release}&arch=$basearch" default['yum']['epel-next-debuginfo']['gpgkey'] = - "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-next-debuginfo']['gpgcheck'] = true default['yum']['epel-next-debuginfo']['enabled'] = false default['yum']['epel-next-debuginfo']['managed'] = false diff --git a/attributes/epel-next-source.rb b/attributes/epel-next-source.rb index e7c70a7..22a2571 100644 --- a/attributes/epel-next-source.rb +++ b/attributes/epel-next-source.rb @@ -1,10 +1,10 @@ default['yum']['epel-next-source']['repositoryid'] = 'epel-next-source' default['yum']['epel-next-source']['description'] = - "Extra Packages for #{node['platform_version'].to_i} $basearch - Next -Source" + "Extra Packages for #{yum_epel_release} $basearch - Next -Source" default['yum']['epel-next-source']['mirrorlist'] = - "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-next-source-#{node['platform_version'].to_i}&arch=$basearch" + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-next-source-#{yum_epel_release}&arch=$basearch" default['yum']['epel-next-source']['gpgkey'] = - "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-next-source']['gpgcheck'] = true default['yum']['epel-next-source']['enabled'] = false default['yum']['epel-next-source']['managed'] = false diff --git a/attributes/epel-next-testing-debuginfo.rb b/attributes/epel-next-testing-debuginfo.rb index 118b636..115cd8a 100644 --- a/attributes/epel-next-testing-debuginfo.rb +++ b/attributes/epel-next-testing-debuginfo.rb @@ -1,10 +1,10 @@ default['yum']['epel-next-testing-debuginfo']['repositoryid'] = 'epel-next-testing-debuginfo' default['yum']['epel-next-testing-debuginfo']['description'] = - "Extra Packages for #{node['platform_version'].to_i} - $basearch - Next - Testing Debug" + "Extra Packages for #{yum_epel_release} - $basearch - Next - Testing Debug" default['yum']['epel-next-testing-debuginfo']['mirrorlist'] = - "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-testing-next-debug-#{node['platform_version'].to_i}&arch=$basearch" + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-testing-next-debug-#{yum_epel_release}&arch=$basearch" default['yum']['epel-next-testing-debuginfo']['gpgkey'] = - "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-next-testing-debuginfo']['gpgcheck'] = true default['yum']['epel-next-testing-debuginfo']['enabled'] = false default['yum']['epel-next-testing-debuginfo']['managed'] = false diff --git a/attributes/epel-next-testing-source.rb b/attributes/epel-next-testing-source.rb index 8548e54..355b149 100644 --- a/attributes/epel-next-testing-source.rb +++ b/attributes/epel-next-testing-source.rb @@ -1,10 +1,10 @@ default['yum']['epel-next-testing-source']['repositoryid'] = 'epel-next-testing-source' default['yum']['epel-next-testing-source']['description'] = - "Extra Packages for #{node['platform_version'].to_i} - $basearch - Next - Testing Source" + "Extra Packages for #{yum_epel_release} - $basearch - Next - Testing Source" default['yum']['epel-next-testing-source']['mirrorlist'] = - "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-source-epel#{node['platform_version'].to_i}&arch=$basearch" + "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-source-epel#{yum_epel_release}&arch=$basearch" default['yum']['epel-next-testing-source']['gpgkey'] = - "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-next-testing-source']['gpgcheck'] = true default['yum']['epel-next-testing-source']['enabled'] = false default['yum']['epel-next-testing-source']['managed'] = false diff --git a/attributes/epel-next-testing.rb b/attributes/epel-next-testing.rb index 18476e3..7d9b6bb 100644 --- a/attributes/epel-next-testing.rb +++ b/attributes/epel-next-testing.rb @@ -1,10 +1,10 @@ default['yum']['epel-next-testing']['repositoryid'] = 'epel-next-testing' default['yum']['epel-next-testing']['description'] = - "Extra Packages for #{node['platform_version'].to_i} - $basearch - Next - Testing" + "Extra Packages for #{yum_epel_release} - $basearch - Next - Testing" default['yum']['epel-next-testing']['mirrorlist'] = - "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-testing-next-#{node['platform_version'].to_i}&arch=$basearch" + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-testing-next-#{yum_epel_release}&arch=$basearch" default['yum']['epel-next-testing']['gpgkey'] = - "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-next-testing']['gpgcheck'] = true default['yum']['epel-next-testing']['enabled'] = false default['yum']['epel-next-testing']['managed'] = false diff --git a/attributes/epel-next.rb b/attributes/epel-next.rb index 246f5a3..a4d192b 100644 --- a/attributes/epel-next.rb +++ b/attributes/epel-next.rb @@ -2,9 +2,9 @@ default['yum']['epel-next']['gpgcheck'] = true default['yum']['epel-next']['description'] = 'Extra Packages for $releasever - Next - $basearch' default['yum']['epel-next']['mirrorlist'] = - "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-next-#{node['platform_version'].to_i}&arch=$basearch" + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-next-#{yum_epel_release}&arch=$basearch" default['yum']['epel-next']['gpgkey'] = - "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-next']['enabled'] = true default['yum']['epel-next']['managed'] = true default['yum']['epel-next']['make_cache'] = true diff --git a/attributes/epel-source.rb b/attributes/epel-source.rb index 6c89989..4e8f231 100644 --- a/attributes/epel-source.rb +++ b/attributes/epel-source.rb @@ -1,14 +1,10 @@ default['yum']['epel-source']['repositoryid'] = 'epel-source' - -if platform?('amazon') - default['yum']['epel-source']['description'] = 'Extra Packages for 7 - $basearch - Source' - default['yum']['epel-source']['mirrorlist'] = 'https://mirrors.fedoraproject.org/mirrorlist?repo=epel-source-7&arch=$basearch' - default['yum']['epel-source']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7' -else - default['yum']['epel-source']['description'] = "Extra Packages for #{node['platform_version'].to_i} - $basearch - Source" - default['yum']['epel-source']['mirrorlist'] = "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-source-#{node['platform_version'].to_i}&arch=$basearch" - default['yum']['epel-source']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" -end +default['yum']['epel-source']['description'] = + "Extra Packages for #{yum_epel_release} - $basearch - Source" +default['yum']['epel-source']['mirrorlist'] = + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-source-#{yum_epel_release}&arch=$basearch" +default['yum']['epel-source']['gpgkey'] = + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-source']['gpgcheck'] = true default['yum']['epel-source']['enabled'] = false default['yum']['epel-source']['managed'] = false diff --git a/attributes/epel-testing-debuginfo.rb b/attributes/epel-testing-debuginfo.rb index 4330c33..94b5159 100644 --- a/attributes/epel-testing-debuginfo.rb +++ b/attributes/epel-testing-debuginfo.rb @@ -1,14 +1,10 @@ default['yum']['epel-testing-debuginfo']['repositoryid'] = 'epel-testing-debuginfo' - -if platform?('amazon') - default['yum']['epel-testing-debuginfo']['description'] = 'Extra Packages for 7 - $basearch - Testing Debug' - default['yum']['epel-testing-debuginfo']['mirrorlist'] = 'https://mirrors.fedoraproject.org/mirrorlist?repo=testing-debug-epel7&arch=$basearch' - default['yum']['epel-testing-debuginfo']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7' -else - default['yum']['epel-testing-debuginfo']['description'] = "Extra Packages for #{node['platform_version'].to_i} - $basearch - Testing Debug" - default['yum']['epel-testing-debuginfo']['mirrorlist'] = "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-debug-epel#{node['platform_version'].to_i}&arch=$basearch" - default['yum']['epel-testing-debuginfo']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" -end +default['yum']['epel-testing-debuginfo']['description'] = + "Extra Packages for #{yum_epel_release} - $basearch - Testing Debug" +default['yum']['epel-testing-debuginfo']['mirrorlist'] = + "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-debug-epel#{yum_epel_release}&arch=$basearch" +default['yum']['epel-testing-debuginfo']['gpgkey'] = + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-testing-debuginfo']['gpgcheck'] = true default['yum']['epel-testing-debuginfo']['enabled'] = false default['yum']['epel-testing-debuginfo']['managed'] = false diff --git a/attributes/epel-testing-modular-debuginfo.rb b/attributes/epel-testing-modular-debuginfo.rb deleted file mode 100644 index fa938de..0000000 --- a/attributes/epel-testing-modular-debuginfo.rb +++ /dev/null @@ -1,8 +0,0 @@ -default['yum']['epel-testing-modular-debuginfo']['repositoryid'] = 'epel-testing-modular-debuginfo' -default['yum']['epel-testing-modular-debuginfo']['description'] = 'Extra Packages for Enterprise Linux Modular $releasever - Testing - $basearch - Debug' -default['yum']['epel-testing-modular-debuginfo']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=testing-modular-debug-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir' -default['yum']['epel-testing-modular-debuginfo']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8' -default['yum']['epel-testing-modular-debuginfo']['gpgcheck'] = true -default['yum']['epel-testing-modular-debuginfo']['enabled'] = false -default['yum']['epel-testing-modular-debuginfo']['managed'] = false -default['yum']['epel-testing-modular-debuginfo']['make_cache'] = true diff --git a/attributes/epel-testing-modular-source.rb b/attributes/epel-testing-modular-source.rb deleted file mode 100644 index 4a4ae41..0000000 --- a/attributes/epel-testing-modular-source.rb +++ /dev/null @@ -1,8 +0,0 @@ -default['yum']['epel-testing-modular-source']['repositoryid'] = 'epel-testing-modular-source' -default['yum']['epel-testing-modular-source']['description'] = 'Extra Packages for Enterprise Linux Modular $releasever- Testing - $basearch - Source' -default['yum']['epel-testing-modular-source']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=testing-modular-source-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir' -default['yum']['epel-testing-modular-source']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8' -default['yum']['epel-testing-modular-source']['gpgcheck'] = true -default['yum']['epel-testing-modular-source']['enabled'] = false -default['yum']['epel-testing-modular-source']['managed'] = false -default['yum']['epel-testing-modular-source']['make_cache'] = true diff --git a/attributes/epel-testing-modular.rb b/attributes/epel-testing-modular.rb deleted file mode 100644 index a707c65..0000000 --- a/attributes/epel-testing-modular.rb +++ /dev/null @@ -1,8 +0,0 @@ -default['yum']['epel-testing-modular']['repositoryid'] = 'epel-testing-modular' -default['yum']['epel-testing-modular']['description'] = 'Extra Packages for Enterprise Linux Modular $releasever - Testing - $basearch' -default['yum']['epel-testing-modular']['mirrorlist'] = 'https://mirrors.fedoraproject.org/metalink?repo=testing-modular-epel$releasever&arch=$basearch&infra=$infra&content=$contentdir' -default['yum']['epel-testing-modular']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8' -default['yum']['epel-testing-modular']['gpgcheck'] = true -default['yum']['epel-testing-modular']['enabled'] = false -default['yum']['epel-testing-modular']['managed'] = false -default['yum']['epel-testing-modular']['make_cache'] = true diff --git a/attributes/epel-testing-source.rb b/attributes/epel-testing-source.rb index 7da8d24..805eb0c 100644 --- a/attributes/epel-testing-source.rb +++ b/attributes/epel-testing-source.rb @@ -1,14 +1,10 @@ default['yum']['epel-testing-source']['repositoryid'] = 'epel-testing-source' - -if platform?('amazon') - default['yum']['epel-testing-source']['description'] = 'Extra Packages for 7 - $basearch - Testing Source' - default['yum']['epel-testing-source']['mirrorlist'] = 'https://mirrors.fedoraproject.org/mirrorlist?repo=testing-source-epel7&arch=$basearch' - default['yum']['epel-testing-source']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7' -else - default['yum']['epel-testing-source']['description'] = "Extra Packages for #{node['platform_version'].to_i} - $basearch - Testing Source" - default['yum']['epel-testing-source']['mirrorlist'] = "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-source-epel#{node['platform_version'].to_i}&arch=$basearch" - default['yum']['epel-testing-source']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" -end +default['yum']['epel-testing-source']['description'] = + "Extra Packages for #{yum_epel_release} - $basearch - Testing Source" +default['yum']['epel-testing-source']['mirrorlist'] = + "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-source-epel#{yum_epel_release}&arch=$basearch" +default['yum']['epel-testing-source']['gpgkey'] = + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-testing-source']['gpgcheck'] = true default['yum']['epel-testing-source']['enabled'] = false default['yum']['epel-testing-source']['managed'] = false diff --git a/attributes/epel-testing.rb b/attributes/epel-testing.rb index ae3aa16..a8ba20f 100644 --- a/attributes/epel-testing.rb +++ b/attributes/epel-testing.rb @@ -1,14 +1,10 @@ default['yum']['epel-testing']['repositoryid'] = 'epel-testing' - -if platform?('amazon') - default['yum']['epel-testing']['description'] = 'Extra Packages for 7 - $basearch - Testing ' - default['yum']['epel-testing']['mirrorlist'] = 'https://mirrors.fedoraproject.org/mirrorlist?repo=testing-epel7&arch=$basearch' - default['yum']['epel-testing']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7' -else - default['yum']['epel-testing']['description'] = "Extra Packages for #{node['platform_version'].to_i} - $basearch - Testing " - default['yum']['epel-testing']['mirrorlist'] = "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-epel#{node['platform_version'].to_i}&arch=$basearch" - default['yum']['epel-testing']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" -end +default['yum']['epel-testing']['description'] = + "Extra Packages for #{yum_epel_release} - $basearch - Testing " +default['yum']['epel-testing']['mirrorlist'] = + "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-epel#{yum_epel_release}&arch=$basearch" +default['yum']['epel-testing']['gpgkey'] = + "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" default['yum']['epel-testing']['gpgcheck'] = true default['yum']['epel-testing']['enabled'] = false default['yum']['epel-testing']['managed'] = false diff --git a/attributes/epel.rb b/attributes/epel.rb index 119296d..e8976df 100644 --- a/attributes/epel.rb +++ b/attributes/epel.rb @@ -6,17 +6,13 @@ default['yum']['epel']['gpgcheck'] = false when 's390x' default['yum']['epel']['baseurl'] = 'https://kojipkgs.fedoraproject.org/rhel/rc/7/Server/s390x/os/' - default['yum']['epel']['gpgkey'] = 'https://kojipkgs.fedoraproject.org/rhel/rc/7/Server/s390x/os/RPM-GPG-KEY-redhat-release' + default['yum']['epel']['gpgkey'] = + 'https://kojipkgs.fedoraproject.org/rhel/rc/7/Server/s390x/os/RPM-GPG-KEY-redhat-release' else - if platform?('amazon') - default['yum']['epel']['description'] = 'Extra Packages for 7 - $basearch' - default['yum']['epel']['mirrorlist'] = 'https://mirrors.fedoraproject.org/mirrorlist?repo=epel-7&arch=$basearch' - default['yum']['epel']['gpgkey'] = 'https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7' - else - default['yum']['epel']['description'] = "Extra Packages for #{node['platform_version'].to_i} - $basearch" - default['yum']['epel']['mirrorlist'] = "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-#{node['platform_version'].to_i}&arch=$basearch" - default['yum']['epel']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{node['platform_version'].to_i}" - end + default['yum']['epel']['description'] = "Extra Packages for #{yum_epel_release} - $basearch" + default['yum']['epel']['mirrorlist'] = + "https://mirrors.fedoraproject.org/mirrorlist?repo=epel-#{yum_epel_release}&arch=$basearch" + default['yum']['epel']['gpgkey'] = "https://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-#{yum_epel_release}" end default['yum']['epel']['enabled'] = true default['yum']['epel']['managed'] = true diff --git a/kitchen.dokken.yml b/kitchen.dokken.yml index 4b33f8a..47eff95 100644 --- a/kitchen.dokken.yml +++ b/kitchen.dokken.yml @@ -1,18 +1,10 @@ driver: name: dokken - privileged: true # because Docker and SystemD + privileged: true chef_version: <%= ENV['CHEF_VERSION'] || 'current' %> - chef_license: accept-no-persist -transport: - name: dokken - -provisioner: - name: dokken - deprecations_as_errors: true - -verifier: - name: inspec +transport: { name: dokken } +provisioner: { name: dokken } platforms: - name: almalinux-8 @@ -20,9 +12,14 @@ platforms: image: dokken/almalinux-8 pid_one_command: /usr/lib/systemd/systemd - - name: amazonlinux-2 + - name: almalinux-9 + driver: + image: dokken/almalinux-9 + pid_one_command: /usr/lib/systemd/systemd + + - name: amazonlinux-2023 driver: - image: dokken/amazonlinux-2 + image: dokken/amazonlinux-2023 pid_one_command: /usr/lib/systemd/systemd - name: centos-7 @@ -35,6 +32,41 @@ platforms: image: dokken/centos-stream-8 pid_one_command: /usr/lib/systemd/systemd + - name: centos-stream-9 + driver: + image: dokken/centos-stream-9 + pid_one_command: /usr/lib/systemd/systemd + + - name: debian-9 + driver: + image: dokken/debian-9 + pid_one_command: /bin/systemd + + - name: debian-10 + driver: + image: dokken/debian-10 + pid_one_command: /bin/systemd + + - name: debian-11 + driver: + image: dokken/debian-11 + pid_one_command: /bin/systemd + + - name: debian-12 + driver: + image: dokken/debian-12 + pid_one_command: /bin/systemd + + - name: fedora-latest + driver: + image: dokken/fedora-latest + pid_one_command: /usr/lib/systemd/systemd + + - name: opensuse-leap-15 + driver: + image: dokken/opensuse-leap-15 + pid_one_command: /usr/lib/systemd/systemd + - name: oraclelinux-7 driver: image: dokken/oraclelinux-7 @@ -45,7 +77,37 @@ platforms: image: dokken/oraclelinux-8 pid_one_command: /usr/lib/systemd/systemd + - name: oraclelinux-9 + driver: + image: dokken/oraclelinux-9 + pid_one_command: /usr/lib/systemd/systemd + - name: rockylinux-8 driver: image: dokken/rockylinux-8 pid_one_command: /usr/lib/systemd/systemd + + - name: rockylinux-9 + driver: + image: dokken/rockylinux-9 + pid_one_command: /usr/lib/systemd/systemd + + - name: ubuntu-18.04 + driver: + image: dokken/ubuntu-18.04 + pid_one_command: /bin/systemd + + - name: ubuntu-20.04 + driver: + image: dokken/ubuntu-20.04 + pid_one_command: /bin/systemd + + - name: ubuntu-22.04 + driver: + image: dokken/ubuntu-22.04 + pid_one_command: /bin/systemd + + - name: ubuntu-23.04 + driver: + image: dokken/ubuntu-23.04 + pid_one_command: /bin/systemd diff --git a/kitchen.yml b/kitchen.yml index 0452dc3..e966de0 100644 --- a/kitchen.yml +++ b/kitchen.yml @@ -30,15 +30,6 @@ suites: epel-debuginfo: managed: true enabled: true - epel-modular: - managed: true - enabled: true - epel-modular-debuginfo: - managed: true - enabled: true - epel-modular-source: - managed: true - enabled: true epel-next: managed: true enabled: true @@ -66,15 +57,6 @@ suites: epel-testing-debuginfo: managed: true enabled: true - epel-testing-modular: - managed: true - enabled: true - epel-testing-modular-debuginfo: - managed: true - enabled: true - epel-testing-modular-source: - managed: true - enabled: true epel-testing-source: managed: true enabled: true diff --git a/libraries/helpers.rb b/libraries/helpers.rb index 0efea8a..c772d31 100644 --- a/libraries/helpers.rb +++ b/libraries/helpers.rb @@ -1,19 +1,13 @@ module YumEpel module Cookbook module Helpers - def epel_8_repos + def epel_repos repos = %w( epel epel-debuginfo - epel-modular - epel-modular-debuginfo - epel-modular-source epel-source epel-testing epel-testing-debuginfo - epel-testing-modular - epel-testing-modular-debuginfo - epel-testing-modular-source epel-testing-source ) @@ -36,6 +30,19 @@ def epel_8_repos def yum_epel_centos_stream? respond_to?(:centos_stream_platform?) && centos_stream_platform? end + + def yum_epel_release + if platform?('amazon') + case node['platform_version'].to_i + when 2023 + 9 + when 2 + 7 + end + else + node['platform_version'].to_i + end + end end end end diff --git a/test/integration/all/all_spec.rb b/test/integration/all/all_spec.rb index 4f3c8d7..2fbd939 100644 --- a/test/integration/all/all_spec.rb +++ b/test/integration/all/all_spec.rb @@ -1,22 +1,5 @@ -os_release = os.name == 'amazon' ? 7 : os.release.to_i +os_release = os.name == 'amazon' ? 9 : os.release.to_i stream = file('/etc/os-release').content.match?('Stream') -infra = - if os.name == 'oracle' - '$infra' - elsif os.name == 'almalinux' - 'stock' - elsif stream - 'stock' - else - 'container' - end - -content = case os.name - when 'oracle' then '$contentdir' - when 'rocky' then 'pub/rocky' - when 'almalinux' then 'almalinux' - else 'centos' - end describe yum.repo 'epel' do it { should exist } @@ -55,42 +38,6 @@ end if os_release >= 8 - describe yum.repo 'epel-modular' do - it { should exist } - it { should be_enabled } - its('mirrors') { should cmp "https://mirrors.fedoraproject.org/metalink?repo=epel-modular-8&arch=x86_64&infra=#{infra}&content=#{content}" } - end - - describe yum.repo 'epel-modular-debuginfo' do - it { should exist } - it { should be_enabled } - its('mirrors') { should cmp "https://mirrors.fedoraproject.org/metalink?repo=epel-modular-debug-8&arch=x86_64&infra=#{infra}&content=#{content}" } - end - - describe yum.repo 'epel-modular-source' do - it { should exist } - it { should be_enabled } - its('mirrors') { should cmp "https://mirrors.fedoraproject.org/metalink?repo=epel-modular-source-8&arch=x86_64&infra=#{infra}&content=#{content}" } - end - - describe yum.repo 'epel-testing-modular' do - it { should exist } - it { should be_enabled } - its('mirrors') { should cmp "https://mirrors.fedoraproject.org/metalink?repo=testing-modular-epel8&arch=x86_64&infra=#{infra}&content=#{content}" } - end - - describe yum.repo 'epel-testing-modular-debuginfo' do - it { should exist } - it { should be_enabled } - its('mirrors') { should cmp "https://mirrors.fedoraproject.org/metalink?repo=testing-modular-debug-epel8&arch=x86_64&infra=#{infra}&content=#{content}" } - end - - describe yum.repo 'epel-testing-modular-source' do - it { should exist } - it { should be_enabled } - its('mirrors') { should cmp "https://mirrors.fedoraproject.org/metalink?repo=testing-modular-source-epel8&arch=x86_64&infra=#{infra}&content=#{content}" } - end - if stream describe yum.repo 'epel-next' do it { should exist } @@ -128,18 +75,4 @@ its('mirrors') { should cmp "https://mirrors.fedoraproject.org/mirrorlist?repo=testing-source-epel#{os_release}&arch=x86_64" } end end -else - %w( - epel-modular - epel-modular-debuginfo - epel-modular-source - epel-testing-modular - epel-testing-modular-debuginfo - epel-testing-modular-source - ).each do |repo| - describe yum.repo repo do - it { should_not exist } - it { should_not be_enabled } - end - end end diff --git a/test/integration/default/default_spec.rb b/test/integration/default/default_spec.rb index 4436a26..db334c1 100644 --- a/test/integration/default/default_spec.rb +++ b/test/integration/default/default_spec.rb @@ -1,4 +1,4 @@ -os_release = os.name == 'amazon' ? '7' : os.release.to_i +os_release = os.name == 'amazon' ? '9' : os.release.to_i stream = file('/etc/os-release').content.match?('Stream') describe yum.repo 'epel' do