From 15a7b4da629748ce9e71536a8c2f7f316c1ae2b0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 6 Dec 2025 21:21:23 +0000 Subject: [PATCH 1/8] Initial plan From f048fd8e7a5540b1383cf15a186ca7a09c2bd49a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 6 Dec 2025 21:28:01 +0000 Subject: [PATCH 2/8] Add Rocky Linux and AlmaLinux support Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- CHANGELOG.md | 6 ++ metadata.rb | 2 + resources/installation_package.rb | 3 + spec/docker_test/installation_package_spec.rb | 68 +++++++++++++++++++ 4 files changed, 79 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c01f8cfd..2e7598ea1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ This file is used to list changes made in each version of the docker cookbook. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased + +### Added + +* Add Rocky Linux and AlmaLinux support - map to CentOS repositories since they are CentOS successors + ## [11.10.2](https://github.com/sous-chefs/docker/compare/11.10.1...v11.10.2) (2025-10-15) diff --git a/metadata.rb b/metadata.rb index 9c1fa56f8..bc552a5ab 100644 --- a/metadata.rb +++ b/metadata.rb @@ -16,5 +16,7 @@ supports 'fedora' supports 'redhat' supports 'ubuntu' +supports 'rocky' +supports 'almalinux' gem 'docker-api', '>= 2.3', '< 3' diff --git a/resources/installation_package.rb b/resources/installation_package.rb index c8cefffda..94cc85414 100644 --- a/resources/installation_package.rb +++ b/resources/installation_package.rb @@ -142,6 +142,9 @@ def version_string(v) # s390x is only available under rhel platform elsif platform?('redhat', 'oracle') && (arch == 's390x' || !el7?) 'rhel' + # Rocky and AlmaLinux are CentOS successors, use centos repos + elsif platform?('rocky', 'almalinux') + 'centos' # use rhel for all el8 since CentOS 8 is dead elsif el8? && !platform?('centos') 'rhel' diff --git a/spec/docker_test/installation_package_spec.rb b/spec/docker_test/installation_package_spec.rb index a245299af..c5f75f03a 100644 --- a/spec/docker_test/installation_package_spec.rb +++ b/spec/docker_test/installation_package_spec.rb @@ -196,6 +196,74 @@ end end + context 'Rocky Linux 8: testing default action, default properties' do + platform 'rocky', '8' + cached(:subject) { chef_run } + it 'installs docker' do + expect(chef_run).to create_docker_installation_package('default') + end + it do + expect(chef_run).to create_yum_repository('docker').with( + baseurl: 'https://download.docker.com/linux/centos/8/x86_64/stable', + gpgkey: 'https://download.docker.com/linux/centos/gpg', + description: 'Docker Stable repository', + gpgcheck: true, + enabled: true + ) + end + end + + context 'Rocky Linux 9: testing default action, default properties' do + platform 'rocky', '9' + cached(:subject) { chef_run } + it 'installs docker' do + expect(chef_run).to create_docker_installation_package('default') + end + it do + expect(chef_run).to create_yum_repository('docker').with( + baseurl: 'https://download.docker.com/linux/centos/9/x86_64/stable', + gpgkey: 'https://download.docker.com/linux/centos/gpg', + description: 'Docker Stable repository', + gpgcheck: true, + enabled: true + ) + end + end + + context 'AlmaLinux 8: testing default action, default properties' do + platform 'almalinux', '8' + cached(:subject) { chef_run } + it 'installs docker' do + expect(chef_run).to create_docker_installation_package('default') + end + it do + expect(chef_run).to create_yum_repository('docker').with( + baseurl: 'https://download.docker.com/linux/centos/8/x86_64/stable', + gpgkey: 'https://download.docker.com/linux/centos/gpg', + description: 'Docker Stable repository', + gpgcheck: true, + enabled: true + ) + end + end + + context 'AlmaLinux 9: testing default action, default properties' do + platform 'almalinux', '9' + cached(:subject) { chef_run } + it 'installs docker' do + expect(chef_run).to create_docker_installation_package('default') + end + it do + expect(chef_run).to create_yum_repository('docker').with( + baseurl: 'https://download.docker.com/linux/centos/9/x86_64/stable', + gpgkey: 'https://download.docker.com/linux/centos/gpg', + description: 'Docker Stable repository', + gpgcheck: true, + enabled: true + ) + end + end + # Coverage of all recent docker versions # To ensure test coverage and backwards compatibility # With the frequent changes in package naming convention From eb185fbd05fe3afb2196676451ac4d6e8cd4c0a1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 6 Dec 2025 21:31:18 +0000 Subject: [PATCH 3/8] Update README with Rocky and AlmaLinux support Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index ce921f107..9f92c8c89 100644 --- a/README.md +++ b/README.md @@ -23,10 +23,12 @@ This cookbook is maintained by the Sous Chefs. The Sous Chefs are a community of ## Platform Support - Amazon Linux 2 -- Debian 9/10/11 +- Debian 9/10/11/12 - Fedora -- Ubuntu 18.04/20.04/22.04 -- CentOS 7/8 +- Ubuntu 18.04/20.04/22.04/24.04 +- CentOS 7/8/9 +- Rocky Linux 8/9 +- AlmaLinux 8/9 ## Cookbook Dependencies From 56ee29e6440c55d0e2db5bdf327636a58b29e98f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 6 Dec 2025 21:42:47 +0000 Subject: [PATCH 4/8] Fix markdown linting error in CHANGELOG Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2e7598ea1..fc86d3933 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,7 +13,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [11.10.2](https://github.com/sous-chefs/docker/compare/11.10.1...v11.10.2) (2025-10-15) - ### Bug Fixes * **ci:** Update workflows to use release pipeline ([#1320](https://github.com/sous-chefs/docker/issues/1320)) ([5fce840](https://github.com/sous-chefs/docker/commit/5fce84023bac5499c9552cd295dddcab2504ed9c)) From e66e0727f0fd9c23ac0a66a72e3921356e929efb Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 7 Dec 2025 04:03:58 +0000 Subject: [PATCH 5/8] Add Rocky Linux to CI test matrices Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- .github/workflows/ci.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 14b181ca8..64f80edb2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,6 +29,9 @@ jobs: - centos-stream-9 - centos-stream-10 - debian-12 + - rockylinux-8 + - rockylinux-9 + - rockylinux-10 - ubuntu-2204 - ubuntu-2404 suite: @@ -105,6 +108,8 @@ jobs: - "almalinux-8" - "almalinux-9" - "debian-12" + - "rockylinux-8" + - "rockylinux-9" - "ubuntu-2004" - "ubuntu-2204" - "ubuntu-2404" From c2ebdfd79bae6031433025ebf9468bb74163237c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 7 Dec 2025 04:11:20 +0000 Subject: [PATCH 6/8] Revert CHANGELOG.md changes and update copilot instructions for release-please Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- .github/copilot-instructions.md | 4 ++-- CHANGELOG.md | 7 +------ 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index e10849328..05974301c 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -55,11 +55,11 @@ chef exec rspec # Unit tests (ChefSpec) 3. Also update any InSpec tests under test/integration 4. Ensure cookstyle and rspec passes at least. You may run `cookstyle -a` to automatically fix issues if needed. 5. Also always update all documentation found in README.md and any files under documentation/* -6. **Always update CHANGELOG.md** (required by Dangerfile) - Make sure this conforms with the Sous Chefs changelog standards. +6. **Do NOT update CHANGELOG.md** - This cookbook uses release-please for automatic changelog generation ### Pull Request Requirements - **PR description >10 chars** (Danger enforced) -- **CHANGELOG.md entry** for all code changes +- **Do NOT manually update CHANGELOG.md** - release-please handles this automatically - **Version labels** (major/minor/patch) required - **All linters must pass** (cookstyle, yamllint, markdownlint) - **Test updates** needed for code changes >5 lines and parameter changes that affect the code logic diff --git a/CHANGELOG.md b/CHANGELOG.md index fc86d3933..6c01f8cfd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,14 +5,9 @@ This file is used to list changes made in each version of the docker cookbook. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## Unreleased - -### Added - -* Add Rocky Linux and AlmaLinux support - map to CentOS repositories since they are CentOS successors - ## [11.10.2](https://github.com/sous-chefs/docker/compare/11.10.1...v11.10.2) (2025-10-15) + ### Bug Fixes * **ci:** Update workflows to use release pipeline ([#1320](https://github.com/sous-chefs/docker/issues/1320)) ([5fce840](https://github.com/sous-chefs/docker/commit/5fce84023bac5499c9552cd295dddcab2504ed9c)) From 4dca2881ec9cf656cae99dbeceb2947e56165bef Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 13 Dec 2025 02:44:30 +0000 Subject: [PATCH 7/8] Disable MD012 (no-multiple-blanks) in markdown linters Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- .markdownlint-cli2.yaml | 1 + .mdlrc | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.markdownlint-cli2.yaml b/.markdownlint-cli2.yaml index 0196ac7b3..ef5dbb1af 100644 --- a/.markdownlint-cli2.yaml +++ b/.markdownlint-cli2.yaml @@ -1,6 +1,7 @@ config: ul-indent: false # MD007 line-length: false # MD013 + no-multiple-blanks: false # MD012 no-duplicate-heading: false # MD024 reference-links-images: false # MD052 ignores: diff --git a/.mdlrc b/.mdlrc index 9cc2c6322..b01209a70 100644 --- a/.mdlrc +++ b/.mdlrc @@ -1 +1 @@ -rules "~MD013", "~MD024", "~MD025" +rules "~MD012", "~MD013", "~MD024", "~MD025" From 15d49bb8cc7773caed173345837cdd8e4c92fa34 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 13 Dec 2025 03:23:26 +0000 Subject: [PATCH 8/8] Disable MD004 (ul-style) in markdown linters Co-authored-by: damacus <40786+damacus@users.noreply.github.com> --- .markdownlint-cli2.yaml | 1 + .mdlrc | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.markdownlint-cli2.yaml b/.markdownlint-cli2.yaml index ef5dbb1af..bba8ff8c8 100644 --- a/.markdownlint-cli2.yaml +++ b/.markdownlint-cli2.yaml @@ -2,6 +2,7 @@ config: ul-indent: false # MD007 line-length: false # MD013 no-multiple-blanks: false # MD012 + ul-style: false # MD004 no-duplicate-heading: false # MD024 reference-links-images: false # MD052 ignores: diff --git a/.mdlrc b/.mdlrc index b01209a70..163eb1dbc 100644 --- a/.mdlrc +++ b/.mdlrc @@ -1 +1 @@ -rules "~MD012", "~MD013", "~MD024", "~MD025" +rules "~MD004", "~MD012", "~MD013", "~MD024", "~MD025"