From 5fb3323e84e72378fcf68ef635136586dc2fa168 Mon Sep 17 00:00:00 2001 From: Pedro Algarvio Date: Tue, 28 Feb 2023 07:15:37 +0000 Subject: [PATCH] Template package tests Signed-off-by: Pedro Algarvio --- .github/workflows/ci.yml | 45 ++- .github/workflows/nightly.yml | 45 ++- .github/workflows/scheduled.yml | 45 ++- .github/workflows/staging.yml | 81 +++-- .github/workflows/templates/ci.yml.jinja | 295 +----------------- .github/workflows/templates/staging.yml.jinja | 3 + .../templates/test-salt-pkg.yml.jinja | 103 ++++++ .../workflows/test-packages-action-macos.yml | 6 +- .github/workflows/test-packages-action.yml | 6 +- tools/pre_commit.py | 1 + 10 files changed, 212 insertions(+), 418 deletions(-) create mode 100644 .github/workflows/templates/test-salt-pkg.yml.jinja diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 90085eed7fe..dfccdd71b30 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -427,9 +427,6 @@ jobs: self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - # <-------------------------------- PACKAGE TESTS --------------------------------> - # TODO: Extract these out later - amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -443,7 +440,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centos-7-pkg-tests: name: CentOS 7 Package Tests @@ -458,11 +455,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-8-pkg-tests: - name: CentOS 8 Stream Package Tests + name: CentOS Stream 8 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -474,10 +470,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-9-pkg-tests: - name: CentOS 9 Stream Package Tests + name: CentOS Stream 9 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -489,7 +485,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-10-pkg-tests: name: Debian 10 Package Tests @@ -504,7 +500,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-pkg-tests: name: Debian 11 Package Tests @@ -519,7 +515,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Tests @@ -534,7 +530,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Tests @@ -549,7 +545,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Tests @@ -564,7 +560,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Tests @@ -579,7 +575,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Tests @@ -594,7 +590,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 macos-12-pkg-tests: name: macOS 12 Package Tests @@ -609,7 +605,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: macos - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Tests @@ -624,7 +620,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-msi-pkg-tests: name: Windows 2016 MSI Package Tests @@ -639,7 +635,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Tests @@ -654,7 +650,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Tests @@ -669,7 +665,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Tests @@ -684,7 +680,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Tests @@ -699,8 +695,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - # <-------------------------------- PACKAGE TESTS --------------------------------> + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016: name: Windows 2016 diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index bb3f66e64b3..d3deb4e8111 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -425,9 +425,6 @@ jobs: self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - # <-------------------------------- PACKAGE TESTS --------------------------------> - # TODO: Extract these out later - amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -441,7 +438,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centos-7-pkg-tests: name: CentOS 7 Package Tests @@ -456,11 +453,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-8-pkg-tests: - name: CentOS 8 Stream Package Tests + name: CentOS Stream 8 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -472,10 +468,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-9-pkg-tests: - name: CentOS 9 Stream Package Tests + name: CentOS Stream 9 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -487,7 +483,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-10-pkg-tests: name: Debian 10 Package Tests @@ -502,7 +498,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-pkg-tests: name: Debian 11 Package Tests @@ -517,7 +513,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Tests @@ -532,7 +528,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Tests @@ -547,7 +543,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Tests @@ -562,7 +558,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Tests @@ -577,7 +573,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Tests @@ -592,7 +588,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 macos-12-pkg-tests: name: macOS 12 Package Tests @@ -607,7 +603,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: macos - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Tests @@ -622,7 +618,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-msi-pkg-tests: name: Windows 2016 MSI Package Tests @@ -637,7 +633,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Tests @@ -652,7 +648,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Tests @@ -667,7 +663,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Tests @@ -682,7 +678,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Tests @@ -697,8 +693,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - # <-------------------------------- PACKAGE TESTS --------------------------------> + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016: name: Windows 2016 diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 48486eb7783..b77d7eb0d62 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -425,9 +425,6 @@ jobs: self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - # <-------------------------------- PACKAGE TESTS --------------------------------> - # TODO: Extract these out later - amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -441,7 +438,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centos-7-pkg-tests: name: CentOS 7 Package Tests @@ -456,11 +453,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-8-pkg-tests: - name: CentOS 8 Stream Package Tests + name: CentOS Stream 8 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -472,10 +468,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-9-pkg-tests: - name: CentOS 9 Stream Package Tests + name: CentOS Stream 9 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -487,7 +483,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-10-pkg-tests: name: Debian 10 Package Tests @@ -502,7 +498,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-pkg-tests: name: Debian 11 Package Tests @@ -517,7 +513,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Tests @@ -532,7 +528,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Tests @@ -547,7 +543,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Tests @@ -562,7 +558,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Tests @@ -577,7 +573,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Tests @@ -592,7 +588,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 macos-12-pkg-tests: name: macOS 12 Package Tests @@ -607,7 +603,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: macos - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Tests @@ -622,7 +618,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-msi-pkg-tests: name: Windows 2016 MSI Package Tests @@ -637,7 +633,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Tests @@ -652,7 +648,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Tests @@ -667,7 +663,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Tests @@ -682,7 +678,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Tests @@ -697,8 +693,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - # <-------------------------------- PACKAGE TESTS --------------------------------> + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016: name: Windows 2016 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 19b1c413562..a691bec3a2d 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -463,9 +463,6 @@ jobs: self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - # <-------------------------------- PACKAGE TESTS --------------------------------> - # TODO: Extract these out later - amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -479,7 +476,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centos-7-pkg-tests: name: CentOS 7 Package Tests @@ -494,11 +491,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-8-pkg-tests: - name: CentOS 8 Stream Package Tests + name: CentOS Stream 8 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -510,10 +506,10 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 centosstream-9-pkg-tests: - name: CentOS 9 Stream Package Tests + name: CentOS Stream 9 Package Tests if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -525,7 +521,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-10-pkg-tests: name: Debian 10 Package Tests @@ -540,7 +536,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-pkg-tests: name: Debian 11 Package Tests @@ -555,7 +551,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Tests @@ -570,7 +566,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Tests @@ -585,7 +581,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Tests @@ -600,7 +596,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Tests @@ -615,7 +611,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Tests @@ -630,7 +626,7 @@ jobs: arch: aarch64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 macos-12-pkg-tests: name: macOS 12 Package Tests @@ -645,7 +641,7 @@ jobs: arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: macos - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Tests @@ -660,7 +656,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016-msi-pkg-tests: name: Windows 2016 MSI Package Tests @@ -675,7 +671,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Tests @@ -690,7 +686,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Tests @@ -705,7 +701,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Tests @@ -720,7 +716,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Tests @@ -735,8 +731,7 @@ jobs: arch: amd64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - # <-------------------------------- PACKAGE TESTS --------------------------------> + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.10 windows-2016: name: Windows 2016 @@ -1247,6 +1242,24 @@ jobs: - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - amazonlinux-2-pkg-tests + - centos-7-pkg-tests + - centosstream-8-pkg-tests + - centosstream-9-pkg-tests + - debian-10-pkg-tests + - debian-11-pkg-tests + - debian-11-arm64-pkg-tests + - ubuntu-2004-pkg-tests + - ubuntu-2004-arm64-pkg-tests + - ubuntu-2204-pkg-tests + - ubuntu-2204-arm64-pkg-tests + - macos-12-pkg-tests + - windows-2016-nsis-pkg-tests + - windows-2016-msi-pkg-tests + - windows-2019-nsis-pkg-tests + - windows-2019-msi-pkg-tests + - windows-2022-nsis-pkg-tests + - windows-2022-msi-pkg-tests environment: staging runs-on: - self-hosted @@ -1313,24 +1326,6 @@ jobs: - publish-repositories - upload-release-artifacts - publish-pypi - - amazonlinux-2-pkg-tests - - centos-7-pkg-tests - - centosstream-8-pkg-tests - - centosstream-9-pkg-tests - - debian-10-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - - ubuntu-2204-pkg-tests - - ubuntu-2204-arm64-pkg-tests - - macos-12-pkg-tests - - windows-2016-nsis-pkg-tests - - windows-2016-msi-pkg-tests - - windows-2019-nsis-pkg-tests - - windows-2019-msi-pkg-tests - - windows-2022-nsis-pkg-tests - - windows-2022-msi-pkg-tests steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 6ac18e9fc15..c0a13f54f45 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -309,300 +309,7 @@ on: <%- set job_name = "pkg-tests" %> <%- if includes.get(job_name, True) %> - - # <-------------------------------- PACKAGE TESTS --------------------------------> - # TODO: Extract these out later - - amazonlinux-2-pkg-tests: - <%- do test_salt_pkg_needs.append('amazonlinux-2-pkg-tests') %> - name: Amazon Linux 2 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: amazonlinux-2 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - centos-7-pkg-tests: - <%- do test_salt_pkg_needs.append('centos-7-pkg-tests') %> - name: CentOS 7 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: centos-7 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - centosstream-8-pkg-tests: - <%- do test_salt_pkg_needs.append('centosstream-8-pkg-tests') %> - name: CentOS 8 Stream Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: centosstream-8 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - centosstream-9-pkg-tests: - <%- do test_salt_pkg_needs.append('centosstream-9-pkg-tests') %> - name: CentOS 9 Stream Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: centosstream-9 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - debian-10-pkg-tests: - <%- do test_salt_pkg_needs.append('debian-10-pkg-tests') %> - name: Debian 10 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: debian-10 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - debian-11-pkg-tests: - <%- do test_salt_pkg_needs.append('debian-11-pkg-tests') %> - name: Debian 11 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: debian-11 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - debian-11-arm64-pkg-tests: - <%- do test_salt_pkg_needs.append('debian-11-arm64-pkg-tests') %> - name: Debian 11 Arm64 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: debian-11-arm64 - platform: linux - arch: aarch64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - ubuntu-2004-pkg-tests: - <%- do test_salt_pkg_needs.append('ubuntu-2004-pkg-tests') %> - name: Ubuntu 20.04 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: ubuntu-20.04 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - ubuntu-2004-arm64-pkg-tests: - <%- do test_salt_pkg_needs.append('ubuntu-2004-arm64-pkg-tests') %> - name: Ubuntu 20.04 Arm64 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: ubuntu-20.04-arm64 - platform: linux - arch: aarch64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - ubuntu-2204-pkg-tests: - <%- do test_salt_pkg_needs.append('ubuntu-2204-pkg-tests') %> - name: Ubuntu 22.04 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: ubuntu-22.04 - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - ubuntu-2204-arm64-pkg-tests: - <%- do test_salt_pkg_needs.append('ubuntu-2204-arm64-pkg-tests') %> - name: Ubuntu 22.04 Arm64 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: ubuntu-22.04-arm64 - platform: linux - arch: aarch64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - macos-12-pkg-tests: - <%- do test_salt_pkg_needs.append('macos-12-pkg-tests') %> - name: macOS 12 Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - platform: darwin - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - windows-2016-nsis-pkg-tests: - <%- do test_salt_pkg_needs.append('windows-2016-nsis-pkg-tests') %> - name: Windows 2016 NSIS Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: windows-2016 - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - windows-2016-msi-pkg-tests: - <%- do test_salt_pkg_needs.append('windows-2016-msi-pkg-tests') %> - name: Windows 2016 MSI Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: windows-2016 - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - windows-2019-nsis-pkg-tests: - <%- do test_salt_pkg_needs.append('windows-2019-nsis-pkg-tests') %> - name: Windows 2019 NSIS Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: windows-2019 - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - windows-2019-msi-pkg-tests: - <%- do test_salt_pkg_needs.append('windows-2019-msi-pkg-tests') %> - name: Windows 2019 MSI Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: windows-2019 - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - windows-2022-nsis-pkg-tests: - <%- do test_salt_pkg_needs.append('windows-2022-nsis-pkg-tests') %> - name: Windows 2022 NSIS Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: windows-2022 - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - - windows-2022-msi-pkg-tests: - <%- do test_salt_pkg_needs.append('windows-2022-msi-pkg-tests') %> - name: Windows 2022 MSI Package Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs - uses: ./.github/workflows/test-packages-action.yml - with: - distro-slug: windows-2022 - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - # <-------------------------------- PACKAGE TESTS --------------------------------> - + <%- include "test-salt-pkg.yml.jinja" %> <%- endif %> diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 9f78a6dd3ff..3f9deec9632 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -138,6 +138,9 @@ concurrency: <%- for need in test_salt_needs.iter(consume=True) %> - <{ need }> <%- endfor %> + <%- for need in test_salt_pkg_needs.iter(consume=True) %> + - <{ need }> + <%- endfor %> <%- for need in test_repo_needs.iter(consume=True) %> - <{ need }> <%- endfor %> diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja new file mode 100644 index 00000000000..9201c3d3fee --- /dev/null +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -0,0 +1,103 @@ + + <%- set linux_pkg_tests = ( + ("almalinux-8", "Alma Linux 8", "x86_64", "rpm"), + ("almalinux-9", "Alma Linux 9", "x86_64", "rpm"), + ("amazonlinux-2", "Amazon Linux 2", "x86_64", "rpm"), + ("centos-7", "CentOS 7", "x86_64", "rpm"), + ("centosstream-8", "CentOS Stream 8", "x86_64", "rpm"), + ("centosstream-9", "CentOS Stream 9", "x86_64", "rpm"), + ("debian-10", "Debian 10", "x86_64", "deb"), + ("debian-11", "Debian 11", "x86_64", "deb"), + ("debian-11-arm64", "Debian 11 Arm64", "aarch64", "deb"), + ("fedora-36", "Fedora 36", "x86_64", "rpm"), + ("fedora-37", "Fedora 37", "x86_64", "rpm"), + ("fedora-38", "Fedora 38", "x86_64", "rpm"), + ("ubuntu-20.04", "Ubuntu 20.04", "x86_64", "deb"), + ("ubuntu-20.04-arm64", "Ubuntu 20.04 Arm64", "aarch64", "deb"), + ("ubuntu-22.04", "Ubuntu 22.04", "x86_64", "deb"), + ("ubuntu-22.04-arm64", "Ubuntu 22.04 Arm64", "aarch64", "deb") + ) %> + + <%- set linux_pkg_tests = ( + ("amazonlinux-2", "Amazon Linux 2", "x86_64", "rpm"), + ("centos-7", "CentOS 7", "x86_64", "rpm"), + ("centosstream-8", "CentOS Stream 8", "x86_64", "rpm"), + ("centosstream-9", "CentOS Stream 9", "x86_64", "rpm"), + ("debian-10", "Debian 10", "x86_64", "deb"), + ("debian-11", "Debian 11", "x86_64", "deb"), + ("debian-11-arm64", "Debian 11 Arm64", "aarch64", "deb"), + ("ubuntu-20.04", "Ubuntu 20.04", "x86_64", "deb"), + ("ubuntu-20.04-arm64", "Ubuntu 20.04 Arm64", "aarch64", "deb"), + ("ubuntu-22.04", "Ubuntu 22.04", "x86_64", "deb"), + ("ubuntu-22.04-arm64", "Ubuntu 22.04 Arm64", "aarch64", "deb") + ) %> + + <%- for slug, display_name, arch, pkg_type in linux_pkg_tests %> + <%- set job_name = "{}-pkg-tests".format(slug.replace(".", "")) %> + + <{ job_name }>: + <%- do test_salt_pkg_needs.append(job_name) %> + name: <{ display_name }> Package Tests + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs + uses: ./.github/workflows/test-packages-action.yml + with: + distro-slug: <{ slug }> + platform: linux + arch: <{ arch }> + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: <{ pkg_type }> + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version_linux }> + + <%- endfor %> + + + + <%- for slug, display_name, arch in (("macos-12", "macOS 12", "x86_64"),) %> + <%- set job_name = "{}-pkg-tests".format(slug.replace(".", "")) %> + + <{ job_name }>: + <%- do test_salt_pkg_needs.append(job_name) %> + name: <{ display_name }> Package Tests + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-pkgs + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: <{ slug }> + platform: darwin + arch: <{ arch }> + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version_macos }> + + <%- endfor %> + + + <%- for slug, display_name, arch in (("windows-2016", "Windows 2016", "amd64"), + ("windows-2019", "Windows 2019", "amd64"), + ("windows-2022", "Windows 2022", "amd64")) %> + <%- for pkg_type in ("NSIS", "MSI") %> + <%- set job_name = "{}-{}-pkg-tests".format(slug.replace(".", ""), pkg_type.lower()) %> + + <{ job_name }>: + <%- do test_salt_pkg_needs.append(job_name) %> + name: <{ display_name }> <{ pkg_type }> Package Tests + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs + uses: ./.github/workflows/test-packages-action.yml + with: + distro-slug: <{ slug }> + platform: windows + arch: <{ arch }> + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: <{ pkg_type }> + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version_windows }> + + <%- endfor %> + <%- endfor %> diff --git a/.github/workflows/test-packages-action-macos.yml b/.github/workflows/test-packages-action-macos.yml index 5e98884f43b..d59072436f0 100644 --- a/.github/workflows/test-packages-action-macos.yml +++ b/.github/workflows/test-packages-action-macos.yml @@ -23,7 +23,7 @@ on: type: string required: true description: The Salt version of the packages to install and test - cache-seed: + cache-prefix: required: true type: string description: Seed used to invalidate caches @@ -87,7 +87,7 @@ jobs: uses: actions/cache@v3 with: path: nox.${{ inputs.distro-slug }}.tar.* - key: ${{ inputs.cache-seed }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} + key: ${{ inputs.cache-prefix }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} # Skip jobs if nox.*.tar.* is already cached - name: Download Onedir Tarball as an Artifact @@ -200,7 +200,7 @@ jobs: uses: actions/cache@v3 with: path: nox.${{ inputs.distro-slug }}.tar.* - key: ${{ inputs.cache-seed }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} + key: ${{ inputs.cache-prefix }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} - name: Decompress .nox Directory run: | diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index e049c1d71d4..1496e02330e 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -23,7 +23,7 @@ on: type: string required: true description: The Salt version of the packages to install and test - cache-seed: + cache-prefix: required: true type: string description: Seed used to invalidate caches @@ -88,7 +88,7 @@ jobs: uses: actions/cache@v3 with: path: nox.${{ inputs.distro-slug }}.tar.* - key: ${{ inputs.cache-seed }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} + key: ${{ inputs.cache-prefix }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} # Skip jobs if nox.*.tar.* is already cached - name: Download Onedir Tarball as an Artifact @@ -211,7 +211,7 @@ jobs: uses: actions/cache@v3 with: path: nox.${{ inputs.distro-slug }}.tar.* - key: ${{ inputs.cache-seed }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} + key: ${{ inputs.cache-prefix }}|testrun-deps|${{ inputs.distro-slug }}|${{ matrix.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }} - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts diff --git a/tools/pre_commit.py b/tools/pre_commit.py index 98497cde2e4..98f1d13ba15 100644 --- a/tools/pre_commit.py +++ b/tools/pre_commit.py @@ -77,6 +77,7 @@ def generate_workflows(ctx: Context): "includes": { "pre-commit": False, "lint": False, + "pkg-tests": False, "salt-tests": False, "test-pkg-uploads": False, },