From 92ef0d861bfc10781438d309e78f12fc4e817af0 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Tue, 13 Aug 2024 17:01:09 +0300 Subject: [PATCH 01/16] ci :: Add FreeBSD --- .github/workflows/ci.yml | 10 +++- matrix.json | 103 +++++++++++++++++++++++++++++++++++++++ metadata.json | 7 +++ 3 files changed, 119 insertions(+), 1 deletion(-) create mode 100755 matrix.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 289de57..7e85cc6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,7 @@ jobs: - name: Setup Acceptance Test Matrix id: get-matrix run: | - bundle exec matrix_from_metadata_v2 --exclude-platforms '["Ubuntu-22.04-arm"]' + bundle exec matrix_from_metadata_v3 --matrix matrix.json --output github Acceptance: name: "${{matrix.platforms.label}}, ${{matrix.collection}}" @@ -71,6 +71,14 @@ jobs: sudo systemctl disable apparmor sudo systemctl stop apparmor + - name: Install vagrant + if: ${{matrix.platforms.provider == 'vagrant'}} + run: | + sudo add-apt-repository ppa:evgeni/vagrant + sudo apt-get update + sudo apt-get install -y --no-install-recommends vagrant vagrant-libvirt libvirt-daemon-system libvirt-daemon qemu-system-x86 qemu-utils dnsmasq + sudo chmod 666 /var/run/libvirt/libvirt-sock + - name: Provision test environment run: | bundle exec rake 'litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }}]' diff --git a/matrix.json b/matrix.json new file mode 100755 index 0000000..a1a3485 --- /dev/null +++ b/matrix.json @@ -0,0 +1,103 @@ +{ + "collections": [ + { + "puppet": 7.24, + "ruby": 2.7 + }, + { + "puppet": 8.0, + "ruby": 3.2 + } + ], + "provisioners": { + "provision_service": { + "AlmaLinux": { + "8": { "x86_64": "almalinux-cloud/almalinux-8" }, + "9": { "x86_64": "almalinux-cloud/almalinux-9" } + }, + "CentOS": { + "7": { "x86_64": "centos-7" }, + "8": { "x86_64": "centos-stream-8" }, + "9": { "x86_64": "centos-stream-9" } + }, + "Rocky": { + "8": { "x86_64": "rocky-linux-cloud/rocky-linux-8" }, + "9": { "x86_64": "rocky-linux-cloud/rocky-linux-9" } + }, + "Debian": { + "10": { "x86_64": "debian-10" }, + "11": { "x86_64": "debian-11" }, + "12": { "x86_64": "debian-12", "arm": "debian-12-arm64" } + }, + "RedHat": { + "7": { "x86_64": "rhel-7" }, + "8": { "x86_64": "rhel-8" }, + "9": { "x86_64": "rhel-9", "arm": "rhel-9-arm64" } + }, + "SLES" : { + "12": { "x86_64": "sles-12" }, + "15": { "x86_64": "sles-15" } + }, + "Ubuntu": { + "20.04": { "x86_64": "ubuntu-2004-lts" }, + "22.04": { "x86_64": "ubuntu-2204-lts", "arm": "ubuntu-2204-lts-arm64" } + }, + "Windows": { + "2016": { "x86_64": "windows-2016" }, + "2019": { "x86_64": "windows-2019" }, + "2022": { "x86_64": "windows-2022" } + } + }, + "docker": { + "AmazonLinux": { + "2": { "x86_64": "litmusimage/amazonlinux:2" }, + "2023": { "x86_64": "litmusimage/amazonlinux:2023" } + }, + "CentOS": { + "7": { "x86_64": "litmusimage/centos:7" }, + "8": { "x86_64": "litmusimage/centos:stream8" }, + "9": { "x86_64": "litmusimage/centos:stream9" } + }, + "Rocky": { + "8": { "x86_64": "litmusimage/rockylinux:8" }, + "9": { "x86_64": "litmusimage/rockylinux:9" } + }, + "AlmaLinux": { + "8": { "x86_64": "litmusimage/almalinux:8" }, + "9": { "x86_64": "litmusimage/almalinux:9" } + }, + "Debian": { + "10": { "x86_64": "litmusimage/debian:10" }, + "11": { "x86_64": "litmusimage/debian:11" }, + "12": { "x86_64": "litmusimage/debian:12" } + }, + "OracleLinux": { + "7": { "x86_64": "litmusimage/oraclelinux:7" }, + "8": { "x86_64": "litmusimage/oraclelinux:8" }, + "9": { "x86_64": "litmusimage/oraclelinux:9" } + }, + "Scientific": { + "7": { "x86_64": "litmusimage/scientificlinux:7" } + }, + "Ubuntu": { + "18.04": { "x86_64": "litmusimage/ubuntu:18.04" }, + "20.04": { "x86_64": "litmusimage/ubuntu:20.04" }, + "22.04": { "x86_64": "litmusimage/ubuntu:22.04" } + } + }, + "vagrant": { + "FreeBSD": { + "13": { "x86_64": "freebsd/FreeBSD-13.0-STABLE" }, + "14": { "x86_64": "freebsd/FreeBSD-14.0-STABLE" } + } + } + }, + "github_runner": { + "docker": { + "^(AmazonLinux-2|(CentOS|OracleLinux|Scientific)-7|Ubuntu-18|Debian-10)": "ubuntu-20.04" + }, + "vagrant": { + "^FreeBSD": "ubuntu-24.04" + } + } +} diff --git a/metadata.json b/metadata.json index 77e2afb..b3fb136 100644 --- a/metadata.json +++ b/metadata.json @@ -21,6 +21,13 @@ "20.04", "22.04" ] + }, + { + "operatingsystem": "FreeBSD", + "operatingsystemrelease": [ + "13", + "14" + ] } ], "requirements": [ From 36c9db586e6b02daf27fe5821c0e0b95b29097a5 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Tue, 13 Aug 2024 17:07:04 +0300 Subject: [PATCH 02/16] ci :: Set acceptance tests to run on custom matrix runners --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7e85cc6..4696406 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,7 +42,7 @@ jobs: - setup_matrix if: ${{ needs.setup_matrix.outputs.matrix != '{}' }} - runs-on: ubuntu-20.04 + runs-on: "${{matrix.platform.runner}}" strategy: fail-fast: false matrix: ${{fromJson(needs.setup_matrix.outputs.matrix)}} From 31b6b5d84f744e1b1759831c4197e0cd88f05c85 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Tue, 13 Aug 2024 17:10:28 +0300 Subject: [PATCH 03/16] ci :: Set acceptance tests to run on custom matrix runners :: 2 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4696406..e1a512a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,7 +42,7 @@ jobs: - setup_matrix if: ${{ needs.setup_matrix.outputs.matrix != '{}' }} - runs-on: "${{matrix.platform.runner}}" + runs-on: "${{matrix.platforms.runner}}" strategy: fail-fast: false matrix: ${{fromJson(needs.setup_matrix.outputs.matrix)}} From 3831728b1d187926fd4c80ef49d932e1f3593ca1 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Tue, 13 Aug 2024 18:47:42 +0300 Subject: [PATCH 04/16] ci :: Try using vagrant_libvirt provider --- .github/workflows/ci.yml | 2 +- matrix.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e1a512a..6f64d02 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -72,7 +72,7 @@ jobs: sudo systemctl stop apparmor - name: Install vagrant - if: ${{matrix.platforms.provider == 'vagrant'}} + if: ${{matrix.platforms.provider == 'vagrant_libvirt'}} run: | sudo add-apt-repository ppa:evgeni/vagrant sudo apt-get update diff --git a/matrix.json b/matrix.json index a1a3485..5af7118 100755 --- a/matrix.json +++ b/matrix.json @@ -85,7 +85,7 @@ "22.04": { "x86_64": "litmusimage/ubuntu:22.04" } } }, - "vagrant": { + "vagrant_libvirt": { "FreeBSD": { "13": { "x86_64": "freebsd/FreeBSD-13.0-STABLE" }, "14": { "x86_64": "freebsd/FreeBSD-14.0-STABLE" } @@ -96,7 +96,7 @@ "docker": { "^(AmazonLinux-2|(CentOS|OracleLinux|Scientific)-7|Ubuntu-18|Debian-10)": "ubuntu-20.04" }, - "vagrant": { + "vagrant_libvirt": { "^FreeBSD": "ubuntu-24.04" } } From c96d1a206467a721c47fdddd87f37c86b8e153df Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 12:03:31 +0300 Subject: [PATCH 05/16] ci :: Switch back to vagrant, add VAGRANT_DEFAULT_PROVIDER env var --- .github/workflows/ci.yml | 3 ++- matrix.json | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6f64d02..6f4ae04 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -72,12 +72,13 @@ jobs: sudo systemctl stop apparmor - name: Install vagrant - if: ${{matrix.platforms.provider == 'vagrant_libvirt'}} + if: ${{matrix.platforms.provider == 'vagrant'}} run: | sudo add-apt-repository ppa:evgeni/vagrant sudo apt-get update sudo apt-get install -y --no-install-recommends vagrant vagrant-libvirt libvirt-daemon-system libvirt-daemon qemu-system-x86 qemu-utils dnsmasq sudo chmod 666 /var/run/libvirt/libvirt-sock + export VAGRANT_DEFAULT_PROVIDER=libvirt - name: Provision test environment run: | diff --git a/matrix.json b/matrix.json index 5af7118..a1a3485 100755 --- a/matrix.json +++ b/matrix.json @@ -85,7 +85,7 @@ "22.04": { "x86_64": "litmusimage/ubuntu:22.04" } } }, - "vagrant_libvirt": { + "vagrant": { "FreeBSD": { "13": { "x86_64": "freebsd/FreeBSD-13.0-STABLE" }, "14": { "x86_64": "freebsd/FreeBSD-14.0-STABLE" } @@ -96,7 +96,7 @@ "docker": { "^(AmazonLinux-2|(CentOS|OracleLinux|Scientific)-7|Ubuntu-18|Debian-10)": "ubuntu-20.04" }, - "vagrant_libvirt": { + "vagrant": { "^FreeBSD": "ubuntu-24.04" } } From db3c53dd4ab72192740d79d09ab481ef90bed893 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 12:11:11 +0300 Subject: [PATCH 06/16] ci :: Test vagrant with custom arguments --- .github/workflows/ci.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6f4ae04..6dc4f07 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -65,12 +65,6 @@ jobs: run: | bundle env - - name: Disable apparmor - if: ${{matrix.platforms.provider == 'docker'}} - run: | - sudo systemctl disable apparmor - sudo systemctl stop apparmor - - name: Install vagrant if: ${{matrix.platforms.provider == 'vagrant'}} run: | @@ -81,9 +75,15 @@ jobs: export VAGRANT_DEFAULT_PROVIDER=libvirt - name: Provision test environment + if: ${{matrix.platforms.provider == 'docker'}} run: | bundle exec rake 'litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }}]' + - name: Provision test environment + if: ${{matrix.platforms.provider == 'vagrant'}} + run: | + bundle exec rake 'litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }},provider=libvirt]' + - name: Install agent run: | bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' From 6022853156bf1204081a55e8e7c090374e9ceb6c Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 12:28:19 +0300 Subject: [PATCH 07/16] ci :: Switch tests to run @ Ruby 3.2 --- .github/workflows/ci.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6dc4f07..60f1713 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,10 +19,10 @@ jobs: - name: Checkout Source uses: actions/checkout@v4 - - name: Activate Ruby 2.7 + - name: Activate Ruby 3.2 uses: ruby/setup-ruby@v1 with: - ruby-version: "2.7" + ruby-version: '3.2' bundler-cache: true - name: Print bundle environment @@ -37,12 +37,12 @@ jobs: bundle exec matrix_from_metadata_v3 --matrix matrix.json --output github Acceptance: - name: "${{matrix.platforms.label}}, ${{matrix.collection}}" + name: "${{ matrix.platforms.label }}, ${{ matrix.collection }}" needs: - setup_matrix if: ${{ needs.setup_matrix.outputs.matrix != '{}' }} - runs-on: "${{matrix.platforms.runner}}" + runs-on: ${{ matrix.platforms.runner }} strategy: fail-fast: false matrix: ${{fromJson(needs.setup_matrix.outputs.matrix)}} @@ -55,10 +55,10 @@ jobs: - name: Checkout Source uses: actions/checkout@v4 - - name: Activate Ruby 2.7 + - name: Activate Ruby 3.2 uses: ruby/setup-ruby@v1 with: - ruby-version: "2.7" + ruby-version: '3.2' bundler-cache: true - name: Print bundle environment @@ -77,12 +77,12 @@ jobs: - name: Provision test environment if: ${{matrix.platforms.provider == 'docker'}} run: | - bundle exec rake 'litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }}]' + bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}]' - name: Provision test environment if: ${{matrix.platforms.provider == 'vagrant'}} run: | - bundle exec rake 'litmus:provision[${{matrix.platforms.provider}},${{ matrix.platforms.image }},provider=libvirt]' + bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}, provider: libvirt]' - name: Install agent run: | From a610240b22c97e7a4e2a48a579360ddbd686b098 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 12:33:28 +0300 Subject: [PATCH 08/16] ci :: Spacing --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 60f1713..6cbdbfe 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -66,7 +66,7 @@ jobs: bundle env - name: Install vagrant - if: ${{matrix.platforms.provider == 'vagrant'}} + if: ${{ matrix.platforms.provider == 'vagrant' }} run: | sudo add-apt-repository ppa:evgeni/vagrant sudo apt-get update @@ -75,12 +75,12 @@ jobs: export VAGRANT_DEFAULT_PROVIDER=libvirt - name: Provision test environment - if: ${{matrix.platforms.provider == 'docker'}} + if: ${{ matrix.platforms.provider == 'docker' }} run: | bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}]' - name: Provision test environment - if: ${{matrix.platforms.provider == 'vagrant'}} + if: ${{ matrix.platforms.provider == 'vagrant' }} run: | bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}, provider: libvirt]' From cd5a9d2697270b79b4467b2d85f903e5e645de37 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 12:58:58 +0300 Subject: [PATCH 09/16] ci :: Test vagrant with custom arguments :: 2 --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6cbdbfe..04884de 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -82,7 +82,7 @@ jobs: - name: Provision test environment if: ${{ matrix.platforms.provider == 'vagrant' }} run: | - bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}, provider: libvirt]' + bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}, vagrant_provider: libvirt]' - name: Install agent run: | From f95251140f765a082f54da6b23df04fdfa13c042 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 13:23:52 +0300 Subject: [PATCH 10/16] ci :: Test vagrant with custom arguments :: 3 --- .github/workflows/ci.yml | 56 ++++++++++++++++----- matrix.json | 103 --------------------------------------- provision.yaml | 7 +++ 3 files changed, 51 insertions(+), 115 deletions(-) delete mode 100755 matrix.json create mode 100644 provision.yaml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 04884de..a5c88a6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,9 +34,9 @@ jobs: - name: Setup Acceptance Test Matrix id: get-matrix run: | - bundle exec matrix_from_metadata_v3 --matrix matrix.json --output github + bundle exec matrix_from_metadata_v3 --output github - Acceptance: + Acceptance (Docker): name: "${{ matrix.platforms.label }}, ${{ matrix.collection }}" needs: - setup_matrix @@ -51,6 +51,46 @@ jobs: PUPPET_GEM_VERSION: '~> 7.24' FACTER_GEM_VERSION: 'https://github.com/puppetlabs/facter#main' + steps: + - name: Checkout Source + uses: actions/checkout@v4 + + - name: Activate Ruby 3.2 + uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.2' + bundler-cache: true + + - name: Print bundle environment + run: | + bundle env + + - name: Provision test environment + run: | + bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}]' + + - name: Install agent + run: | + bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' + + - name: Install module + run: | + bundle exec rake 'litmus:install_module' + + - name: Run acceptance tests + run: | + bundle exec rake 'litmus:acceptance:parallel' + + - name: Remove test environment + if: ${{ always() }} + continue-on-error: true + run: | + bundle exec rake 'litmus:tear_down' + + Acceptance (Vagrant): + name: FreeBSD 14.0, Puppet 8 + runs-on: ubuntu-24.04 + steps: - name: Checkout Source uses: actions/checkout@v4 @@ -66,27 +106,19 @@ jobs: bundle env - name: Install vagrant - if: ${{ matrix.platforms.provider == 'vagrant' }} run: | sudo add-apt-repository ppa:evgeni/vagrant sudo apt-get update sudo apt-get install -y --no-install-recommends vagrant vagrant-libvirt libvirt-daemon-system libvirt-daemon qemu-system-x86 qemu-utils dnsmasq sudo chmod 666 /var/run/libvirt/libvirt-sock - export VAGRANT_DEFAULT_PROVIDER=libvirt - name: Provision test environment - if: ${{ matrix.platforms.provider == 'docker' }} run: | - bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}]' - - - name: Provision test environment - if: ${{ matrix.platforms.provider == 'vagrant' }} - run: | - bundle exec rake 'litmus:provision[${{ matrix.platforms.provider }}, ${{ matrix.platforms.image }}, vagrant_provider: libvirt]' + bundle exec rake 'litmus:provision_list[vagrant]' - name: Install agent run: | - bundle exec rake 'litmus:install_agent[${{ matrix.collection }}]' + bundle exec rake 'litmus:install_agent[puppet8-nightly]' - name: Install module run: | diff --git a/matrix.json b/matrix.json deleted file mode 100755 index a1a3485..0000000 --- a/matrix.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "collections": [ - { - "puppet": 7.24, - "ruby": 2.7 - }, - { - "puppet": 8.0, - "ruby": 3.2 - } - ], - "provisioners": { - "provision_service": { - "AlmaLinux": { - "8": { "x86_64": "almalinux-cloud/almalinux-8" }, - "9": { "x86_64": "almalinux-cloud/almalinux-9" } - }, - "CentOS": { - "7": { "x86_64": "centos-7" }, - "8": { "x86_64": "centos-stream-8" }, - "9": { "x86_64": "centos-stream-9" } - }, - "Rocky": { - "8": { "x86_64": "rocky-linux-cloud/rocky-linux-8" }, - "9": { "x86_64": "rocky-linux-cloud/rocky-linux-9" } - }, - "Debian": { - "10": { "x86_64": "debian-10" }, - "11": { "x86_64": "debian-11" }, - "12": { "x86_64": "debian-12", "arm": "debian-12-arm64" } - }, - "RedHat": { - "7": { "x86_64": "rhel-7" }, - "8": { "x86_64": "rhel-8" }, - "9": { "x86_64": "rhel-9", "arm": "rhel-9-arm64" } - }, - "SLES" : { - "12": { "x86_64": "sles-12" }, - "15": { "x86_64": "sles-15" } - }, - "Ubuntu": { - "20.04": { "x86_64": "ubuntu-2004-lts" }, - "22.04": { "x86_64": "ubuntu-2204-lts", "arm": "ubuntu-2204-lts-arm64" } - }, - "Windows": { - "2016": { "x86_64": "windows-2016" }, - "2019": { "x86_64": "windows-2019" }, - "2022": { "x86_64": "windows-2022" } - } - }, - "docker": { - "AmazonLinux": { - "2": { "x86_64": "litmusimage/amazonlinux:2" }, - "2023": { "x86_64": "litmusimage/amazonlinux:2023" } - }, - "CentOS": { - "7": { "x86_64": "litmusimage/centos:7" }, - "8": { "x86_64": "litmusimage/centos:stream8" }, - "9": { "x86_64": "litmusimage/centos:stream9" } - }, - "Rocky": { - "8": { "x86_64": "litmusimage/rockylinux:8" }, - "9": { "x86_64": "litmusimage/rockylinux:9" } - }, - "AlmaLinux": { - "8": { "x86_64": "litmusimage/almalinux:8" }, - "9": { "x86_64": "litmusimage/almalinux:9" } - }, - "Debian": { - "10": { "x86_64": "litmusimage/debian:10" }, - "11": { "x86_64": "litmusimage/debian:11" }, - "12": { "x86_64": "litmusimage/debian:12" } - }, - "OracleLinux": { - "7": { "x86_64": "litmusimage/oraclelinux:7" }, - "8": { "x86_64": "litmusimage/oraclelinux:8" }, - "9": { "x86_64": "litmusimage/oraclelinux:9" } - }, - "Scientific": { - "7": { "x86_64": "litmusimage/scientificlinux:7" } - }, - "Ubuntu": { - "18.04": { "x86_64": "litmusimage/ubuntu:18.04" }, - "20.04": { "x86_64": "litmusimage/ubuntu:20.04" }, - "22.04": { "x86_64": "litmusimage/ubuntu:22.04" } - } - }, - "vagrant": { - "FreeBSD": { - "13": { "x86_64": "freebsd/FreeBSD-13.0-STABLE" }, - "14": { "x86_64": "freebsd/FreeBSD-14.0-STABLE" } - } - } - }, - "github_runner": { - "docker": { - "^(AmazonLinux-2|(CentOS|OracleLinux|Scientific)-7|Ubuntu-18|Debian-10)": "ubuntu-20.04" - }, - "vagrant": { - "^FreeBSD": "ubuntu-24.04" - } - } -} diff --git a/provision.yaml b/provision.yaml new file mode 100644 index 0000000..2a2d7a0 --- /dev/null +++ b/provision.yaml @@ -0,0 +1,7 @@ +--- +vagrant: + provisioner: vagrant + images: ['freebsd/FreeBSD-14.0-CURRENT'] + params: + vagrant_provider: libvirt +... From 00afb227d0df3e1b7a04ca291d0f2e84fcc642e4 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 13:26:06 +0300 Subject: [PATCH 11/16] ci :: Test vagrant with custom arguments :: 4 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a5c88a6..5a06af7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: run: | bundle exec matrix_from_metadata_v3 --output github - Acceptance (Docker): + Acceptance w/Docker: name: "${{ matrix.platforms.label }}, ${{ matrix.collection }}" needs: - setup_matrix @@ -87,7 +87,7 @@ jobs: run: | bundle exec rake 'litmus:tear_down' - Acceptance (Vagrant): + Acceptance w/Vagrant: name: FreeBSD 14.0, Puppet 8 runs-on: ubuntu-24.04 From ed7dcf54f86dd12e9c499aa5520d617e41f65642 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 13:27:19 +0300 Subject: [PATCH 12/16] ci :: Test vagrant with custom arguments :: 5 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5a06af7..e3f4166 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: run: | bundle exec matrix_from_metadata_v3 --output github - Acceptance w/Docker: + Acceptance w-Docker: name: "${{ matrix.platforms.label }}, ${{ matrix.collection }}" needs: - setup_matrix @@ -87,7 +87,7 @@ jobs: run: | bundle exec rake 'litmus:tear_down' - Acceptance w/Vagrant: + Acceptance w-Vagrant: name: FreeBSD 14.0, Puppet 8 runs-on: ubuntu-24.04 From 54666639bdeb334d003bd267e143820c908d1581 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 13:44:08 +0300 Subject: [PATCH 13/16] ci :: Test vagrant with custom arguments :: 6 --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e3f4166..9adc09b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,7 +36,7 @@ jobs: run: | bundle exec matrix_from_metadata_v3 --output github - Acceptance w-Docker: + Acceptance_Docker: name: "${{ matrix.platforms.label }}, ${{ matrix.collection }}" needs: - setup_matrix @@ -87,7 +87,7 @@ jobs: run: | bundle exec rake 'litmus:tear_down' - Acceptance w-Vagrant: + Acceptance_Vagrant: name: FreeBSD 14.0, Puppet 8 runs-on: ubuntu-24.04 From b2d81f348aea1b9aefef67d77a43ab71ccf74dab Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 14:07:29 +0300 Subject: [PATCH 14/16] ci :: Test vagrant with custom arguments :: 7 --- Gemfile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Gemfile b/Gemfile index 197de74..d27cfa9 100644 --- a/Gemfile +++ b/Gemfile @@ -42,6 +42,10 @@ group :development, :release_prep do end group :system_tests do gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] + gem "racc" + gem "nkf" + gem "bigdecimal" + gem "io-console" gem "CFPropertyList", '< 3.0.7', require: false, platforms: [:mswin, :mingw, :x64_mingw] gem "serverspec", '~> 2.41', require: false end From cbe965ac85924f9f905a733c72c31e5470be0d82 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 14:14:28 +0300 Subject: [PATCH 15/16] ci :: Test vagrant with custom arguments :: 8 --- Gemfile | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Gemfile b/Gemfile index d27cfa9..197de74 100644 --- a/Gemfile +++ b/Gemfile @@ -42,10 +42,6 @@ group :development, :release_prep do end group :system_tests do gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] - gem "racc" - gem "nkf" - gem "bigdecimal" - gem "io-console" gem "CFPropertyList", '< 3.0.7', require: false, platforms: [:mswin, :mingw, :x64_mingw] gem "serverspec", '~> 2.41', require: false end From 3bc546da18deb7bb29025fecbfa18f7ae38aefa0 Mon Sep 17 00:00:00 2001 From: Eugene Piven Date: Wed, 14 Aug 2024 15:50:11 +0300 Subject: [PATCH 16/16] ci :: Test vagrant with custom arguments :: 9 --- Gemfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Gemfile b/Gemfile index 197de74..5f779c1 100644 --- a/Gemfile +++ b/Gemfile @@ -41,6 +41,7 @@ group :development, :release_prep do gem "puppetlabs_spec_helper", '~> 7.0', require: false end group :system_tests do + gem 'voxpupuli-acceptance', '~> 3.0', :require => false gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] gem "CFPropertyList", '< 3.0.7', require: false, platforms: [:mswin, :mingw, :x64_mingw] gem "serverspec", '~> 2.41', require: false