From 4c612e5e9f2ef90af83dbece3da75ef6058aa262 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 27 Oct 2024 17:55:36 -0700 Subject: [PATCH 001/225] Add some gh runners --- .github/workflows/build-salt-onedir.yml | 4 +- .github/workflows/nightly.yml | 28 ++++--------- .github/workflows/release.yml | 24 +++-------- .github/workflows/staging.yml | 41 +++++-------------- .../workflows/templates/build-repos.yml.jinja | 4 +- .github/workflows/templates/ci.yml.jinja | 5 +-- .github/workflows/templates/nightly.yml.jinja | 4 +- .github/workflows/templates/release.yml.jinja | 28 ++++--------- .github/workflows/templates/staging.yml.jinja | 8 +--- 9 files changed, 36 insertions(+), 110 deletions(-) diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 5913038bbd21..e3887b9f146b 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -51,9 +51,7 @@ jobs: - x86_64 - arm64 runs-on: - - self-hosted - - linux - - ${{ matrix.arch }} + - linux-${{ matrix.arch }} steps: - name: "Throttle Builds" diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 10182dac0d5f..b926ce6e1ca6 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2017,9 +2017,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2120,9 +2118,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2251,9 +2247,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2429,9 +2423,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2533,9 +2525,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2626,9 +2616,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2755,9 +2743,7 @@ jobs: name: Publish Repositories if: ${{ always() && ! failure() && ! cancelled() }} runs-on: - - self-hosted - - linux - - repo-nightly + - linux-x86_64 environment: nightly needs: - prepare-workflow diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 30ced2d7efa8..a141aa45eefa 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -49,9 +49,7 @@ jobs: prepare-workflow: name: Prepare Workflow Run runs-on: - - self-hosted - - linux - - repo-release + - linux-x86_64 env: USE_S3_CACHE: 'true' environment: release @@ -124,9 +122,7 @@ jobs: download-onedir-artifact: name: Download Staging Onedir Artifact runs-on: - - self-hosted - - linux - - repo-release + - linux-x86_64 env: USE_S3_CACHE: 'true' environment: release @@ -190,9 +186,7 @@ jobs: backup: name: Backup runs-on: - - self-hosted - - linux - - repo-release + - linux-x86_64 needs: - prepare-workflow env: @@ -223,9 +217,7 @@ jobs: publish-repositories: name: Publish Repositories runs-on: - - self-hosted - - linux - - repo-release + - linux_x86_64 env: USE_S3_CACHE: 'true' needs: @@ -279,9 +271,7 @@ jobs: name: Release v${{ needs.prepare-workflow.outputs.salt-version }} if: ${{ always() && ! failure() && ! cancelled() }} runs-on: - - self-hosted - - linux - - repo-release + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -395,9 +385,7 @@ jobs: - release environment: release runs-on: - - self-hosted - - linux - - repo-release + - linux-x86_64 env: USE_S3_CACHE: 'true' steps: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index e625038505e5..098b02e05149 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -309,10 +309,7 @@ jobs: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} runs-on: - - self-hosted - - linux - - medium - - x86_64 + - linux-x86_64 needs: - prepare-workflow steps: @@ -2002,9 +1999,7 @@ jobs: name: Build Repository environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2105,9 +2100,7 @@ jobs: name: Build Repository environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2236,9 +2229,7 @@ jobs: name: Build Repository environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2416,9 +2407,7 @@ jobs: name: Build Repository environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2520,9 +2509,7 @@ jobs: name: Build Repository environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2613,9 +2600,7 @@ jobs: name: Build Repository environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -2742,9 +2727,7 @@ jobs: name: Publish Repositories if: ${{ always() && ! failure() && ! cancelled() }} runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 environment: staging needs: - prepare-workflow @@ -2802,9 +2785,7 @@ jobs: - build-src-repo environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 steps: - uses: actions/checkout@v4 @@ -2954,9 +2935,7 @@ jobs: - pkg-download-tests environment: staging runs-on: - - self-hosted - - linux - - repo-staging + - linux-x86_64 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index 92f621c857ea..24d4be7e084a 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -14,9 +14,7 @@ name: Build Repository environment: <{ gh_environment }> runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index cf8a33415ce7..8702b761096a 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -61,10 +61,7 @@ <%- if prepare_actual_release %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} runs-on: - - self-hosted - - linux - - medium - - x86_64 + - linux-x86_64 <%- else %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} runs-on: ubuntu-latest diff --git a/.github/workflows/templates/nightly.yml.jinja b/.github/workflows/templates/nightly.yml.jinja index 1dcc2212efeb..c2157ff523e4 100644 --- a/.github/workflows/templates/nightly.yml.jinja +++ b/.github/workflows/templates/nightly.yml.jinja @@ -65,9 +65,7 @@ concurrency: name: Publish Repositories if: ${{ always() && ! failure() && ! cancelled() }} runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 environment: <{ gh_environment }> needs: - prepare-workflow diff --git a/.github/workflows/templates/release.yml.jinja b/.github/workflows/templates/release.yml.jinja index cb6d251b966c..4a22f6c396d9 100644 --- a/.github/workflows/templates/release.yml.jinja +++ b/.github/workflows/templates/release.yml.jinja @@ -71,9 +71,7 @@ permissions: prepare-workflow: name: Prepare Workflow Run runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 env: USE_S3_CACHE: 'true' environment: <{ gh_environment }> @@ -156,9 +154,7 @@ permissions: download-onedir-artifact: name: Download Staging Onedir Artifact runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 env: USE_S3_CACHE: 'true' environment: <{ gh_environment }> @@ -211,9 +207,7 @@ permissions: backup: name: Backup runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 needs: - prepare-workflow env: @@ -245,9 +239,7 @@ permissions: <%- do conclusion_needs.append('publish-repositories') %> name: Publish Repositories runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux_x86_64 env: USE_S3_CACHE: 'true' needs: @@ -286,9 +278,7 @@ permissions: name: Release v${{ needs.prepare-workflow.outputs.salt-version }} if: ${{ always() && ! failure() && ! cancelled() }} runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -402,9 +392,7 @@ permissions: name: Restore Release Bucket From Backup if: ${{ always() && needs.backup.outputs.backup-complete == 'true' && (failure() || cancelled()) }} runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: @@ -445,9 +433,7 @@ permissions: - restore #} environment: <{ gh_environment }> runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 env: USE_S3_CACHE: 'true' steps: diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index a15302bc00ad..d3e1ab4e2a14 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -89,9 +89,7 @@ concurrency: - build-src-repo environment: <{ gh_environment }> runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 steps: - uses: actions/checkout@v4 @@ -174,9 +172,7 @@ concurrency: <%- endfor %> environment: <{ gh_environment }> runs-on: - - self-hosted - - linux - - repo-<{ gh_environment }> + - linux-x86_64 steps: - uses: actions/checkout@v4 From 5ce0922c57f75d7e693e9feb6173934fd98de882 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 14:34:58 -0700 Subject: [PATCH 002/225] Add runners to linter and disbale cache for salt onedir builds --- .github/actionlint.yaml | 2 ++ .github/actions/build-onedir-salt/action.yml | 1 + 2 files changed, 3 insertions(+) diff --git a/.github/actionlint.yaml b/.github/actionlint.yaml index f37fdbea9699..732493c5d99d 100644 --- a/.github/actionlint.yaml +++ b/.github/actionlint.yaml @@ -12,3 +12,5 @@ self-hosted-runner: - medium - large - macos-13-xlarge + - linux-x86_64 + - linux-arm64 diff --git a/.github/actions/build-onedir-salt/action.yml b/.github/actions/build-onedir-salt/action.yml index 0e3888cada6a..41da4706384a 100644 --- a/.github/actions/build-onedir-salt/action.yml +++ b/.github/actions/build-onedir-salt/action.yml @@ -31,6 +31,7 @@ runs: - name: Download Cached Deps Onedir Package Directory id: onedir-bare-cache + if: false uses: ./.github/actions/cache with: path: artifacts/${{ inputs.package-name }} From 8ff31a114ed8a6d401471bf8d8c5757d52e73a5f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 14:43:21 -0700 Subject: [PATCH 003/225] Migrate build-deps-onedir step to gh runners --- .github/actions/build-onedir-deps/action.yml | 1 + .github/actions/build-onedir-salt/action.yml | 2 +- .github/workflows/build-deps-onedir.yml | 4 +--- .github/workflows/release.yml | 2 +- .github/workflows/templates/release.yml.jinja | 2 +- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/actions/build-onedir-deps/action.yml b/.github/actions/build-onedir-deps/action.yml index 1d36086ec0d8..000f1208dd5e 100644 --- a/.github/actions/build-onedir-deps/action.yml +++ b/.github/actions/build-onedir-deps/action.yml @@ -27,6 +27,7 @@ runs: steps: - name: Cache Deps Onedir Package Directory id: onedir-pkg-cache + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: artifacts/${{ inputs.package-name }} diff --git a/.github/actions/build-onedir-salt/action.yml b/.github/actions/build-onedir-salt/action.yml index 41da4706384a..01bf36c69768 100644 --- a/.github/actions/build-onedir-salt/action.yml +++ b/.github/actions/build-onedir-salt/action.yml @@ -31,7 +31,7 @@ runs: - name: Download Cached Deps Onedir Package Directory id: onedir-bare-cache - if: false + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: artifacts/${{ inputs.package-name }} diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 1502f662d1a2..7331d0421bc8 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -49,9 +49,7 @@ jobs: - x86_64 - arm64 runs-on: - - self-hosted - - linux - - ${{ matrix.arch }} + - linux-${{ matrix.arch }} env: USE_S3_CACHE: 'true' steps: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a141aa45eefa..17b5a18bc8c5 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -217,7 +217,7 @@ jobs: publish-repositories: name: Publish Repositories runs-on: - - linux_x86_64 + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: diff --git a/.github/workflows/templates/release.yml.jinja b/.github/workflows/templates/release.yml.jinja index 4a22f6c396d9..09a8837df809 100644 --- a/.github/workflows/templates/release.yml.jinja +++ b/.github/workflows/templates/release.yml.jinja @@ -239,7 +239,7 @@ permissions: <%- do conclusion_needs.append('publish-repositories') %> name: Publish Repositories runs-on: - - linux_x86_64 + - linux-x86_64 env: USE_S3_CACHE: 'true' needs: From 30acc6d4a401bfb14f51bd1367ad3c81cf55d5b1 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 14:48:25 -0700 Subject: [PATCH 004/225] Do not cache relenv for now --- .github/actions/setup-relenv/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/setup-relenv/action.yml b/.github/actions/setup-relenv/action.yml index 825d0401d129..e086de280f19 100644 --- a/.github/actions/setup-relenv/action.yml +++ b/.github/actions/setup-relenv/action.yml @@ -37,6 +37,7 @@ runs: python3 -m pip install relenv==${{ inputs.version }} - name: Cache Relenv Data Directory + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: ${{ github.workspace }}/.relenv From a51a9f0f15385a46dd4c1dba4ad26b23e8e66be1 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 15:01:28 -0700 Subject: [PATCH 005/225] Disable more caches --- .github/actions/cached-virtualenv/action.yml | 1 + .github/actions/setup-actionlint/action.yml | 1 + .github/actions/setup-pre-commit/action.yml | 1 + .github/actions/setup-python-tools-scripts/action.yml | 1 + .github/actions/setup-shellcheck/action.yml | 1 + 5 files changed, 5 insertions(+) diff --git a/.github/actions/cached-virtualenv/action.yml b/.github/actions/cached-virtualenv/action.yml index a24b805599df..f3d7a39f87b1 100644 --- a/.github/actions/cached-virtualenv/action.yml +++ b/.github/actions/cached-virtualenv/action.yml @@ -51,6 +51,7 @@ runs: - name: Cache VirtualEnv id: cache-virtualenv + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: key: ${{ steps.setup-cache-key.outputs.cache-key }} diff --git a/.github/actions/setup-actionlint/action.yml b/.github/actions/setup-actionlint/action.yml index 44b68e86c9f5..36f1cfe71183 100644 --- a/.github/actions/setup-actionlint/action.yml +++ b/.github/actions/setup-actionlint/action.yml @@ -16,6 +16,7 @@ runs: steps: - name: Cache actionlint Binary + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: /usr/local/bin/actionlint diff --git a/.github/actions/setup-pre-commit/action.yml b/.github/actions/setup-pre-commit/action.yml index 2acd58895c59..0ee2f5b46358 100644 --- a/.github/actions/setup-pre-commit/action.yml +++ b/.github/actions/setup-pre-commit/action.yml @@ -30,6 +30,7 @@ runs: ${{ steps.pre-commit-virtualenv.outputs.python-executable }} -m pip install pre-commit==${{ inputs.version }} - name: Cache Pre-Commit Hooks + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache id: pre-commit-hooks-cache with: diff --git a/.github/actions/setup-python-tools-scripts/action.yml b/.github/actions/setup-python-tools-scripts/action.yml index e640ffe86f70..78ced8bdb360 100644 --- a/.github/actions/setup-python-tools-scripts/action.yml +++ b/.github/actions/setup-python-tools-scripts/action.yml @@ -44,6 +44,7 @@ runs: cache-seed: tools|${{ steps.venv-hash.outputs.venv-hash }} - name: Restore Python Tools Virtualenvs Cache + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: ${{ inputs.cwd }}/.tools-venvs diff --git a/.github/actions/setup-shellcheck/action.yml b/.github/actions/setup-shellcheck/action.yml index e6d0697933d9..08be70d6c17a 100644 --- a/.github/actions/setup-shellcheck/action.yml +++ b/.github/actions/setup-shellcheck/action.yml @@ -16,6 +16,7 @@ runs: steps: - name: Cache shellcheck Binary + if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: /usr/local/bin/shellcheck From 26832031004e106f9a808e06bf823a8b6b061288 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 15:16:10 -0700 Subject: [PATCH 006/225] Update constraints for python 3.12 --- requirements/constraints.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index d38a53d31017..cb905d01fe55 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -1,3 +1,4 @@ setuptools >= 65.6.3,< 69.0 setuptools-scm < 8.0.0 -pip >= 23.3,< 24.0 +pip >= 23.3,< 24.0 ; python_version < '3.12' +pip >24 ; python_version >= '3.12' From d7c8d9c9e7e3b3c7a9d6ec242f740d78ece50a2a Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 17:45:50 -0700 Subject: [PATCH 007/225] Fix download location --- .github/actions/build-onedir-salt/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/build-onedir-salt/action.yml b/.github/actions/build-onedir-salt/action.yml index 01bf36c69768..68e95eeb7161 100644 --- a/.github/actions/build-onedir-salt/action.yml +++ b/.github/actions/build-onedir-salt/action.yml @@ -50,6 +50,7 @@ runs: uses: actions/download-artifact@v4 with: name: salt-${{ inputs.salt-version }}.tar.gz + path: ./artifacts/ - name: Install Salt Into Onedir shell: bash From 2b3041e03c926c02e46a5d41127a87e9a8deec55 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 18:21:48 -0700 Subject: [PATCH 008/225] Set use s3 cache env to false --- .github/actions/build-onedir-deps/action.yml | 1 - .github/actions/build-onedir-salt/action.yml | 2 -- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-salt-onedir.yml | 2 +- 4 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/actions/build-onedir-deps/action.yml b/.github/actions/build-onedir-deps/action.yml index 000f1208dd5e..1d36086ec0d8 100644 --- a/.github/actions/build-onedir-deps/action.yml +++ b/.github/actions/build-onedir-deps/action.yml @@ -27,7 +27,6 @@ runs: steps: - name: Cache Deps Onedir Package Directory id: onedir-pkg-cache - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: artifacts/${{ inputs.package-name }} diff --git a/.github/actions/build-onedir-salt/action.yml b/.github/actions/build-onedir-salt/action.yml index 68e95eeb7161..0e3888cada6a 100644 --- a/.github/actions/build-onedir-salt/action.yml +++ b/.github/actions/build-onedir-salt/action.yml @@ -31,7 +31,6 @@ runs: - name: Download Cached Deps Onedir Package Directory id: onedir-bare-cache - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: artifacts/${{ inputs.package-name }} @@ -50,7 +49,6 @@ runs: uses: actions/download-artifact@v4 with: name: salt-${{ inputs.salt-version }}.tar.gz - path: ./artifacts/ - name: Install Salt Into Onedir shell: bash diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 7331d0421bc8..6ee0717df08a 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -51,7 +51,7 @@ jobs: runs-on: - linux-${{ matrix.arch }} env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' steps: - name: "Throttle Builds" diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index e3887b9f146b..d117b6b2425d 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -43,7 +43,7 @@ jobs: name: Linux if: ${{ inputs.self-hosted-runners }} env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' strategy: fail-fast: false matrix: From a101dc8e42743dc4c9f10c41ef6a416a0f3e286f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 28 Oct 2024 19:33:50 -0700 Subject: [PATCH 009/225] Build packages on gh runners --- .github/workflows/build-packages.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 06cf4d5337fa..80584aec496b 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -165,9 +165,7 @@ jobs: build-deb-packages: name: DEB runs-on: - - self-hosted - - linux - - ${{ matrix.arch }} + - linux-${{ matrix.arch }} strategy: fail-fast: false matrix: @@ -263,9 +261,7 @@ jobs: build-rpm-packages: name: RPM runs-on: - - self-hosted - - linux - - ${{ matrix.arch }} + - linux-${{ matrix.arch }} strategy: fail-fast: false matrix: From 7b635d192e99416000dff3c0b2ade1f4658b6e5d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 03:09:41 -0700 Subject: [PATCH 010/225] Migrate build deps ci action --- .github/workflows/build-deps-ci-action.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 577f7c55c84b..42066abbb7dd 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -85,9 +85,7 @@ jobs: needs: - generate-matrix runs-on: - - self-hosted - - linux - - bastion + - linux-${{ matrix.arch }} env: USE_S3_CACHE: 'true' timeout-minutes: 90 From da4c73d4b31b3880fdd3c9775eef4a92a4e96e1d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 14:53:48 -0700 Subject: [PATCH 011/225] Add test-action-linux-ng.yml --- .github/workflows/ci.yml | 56 +-- .github/workflows/test-action-linux-gh.yml | 455 +++++++++++++++++++++ 2 files changed, 483 insertions(+), 28 deletions(-) create mode 100644 .github/workflows/test-action-linux-gh.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a1bbf26343fa..c5a9c38d56d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1365,7 +1365,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: rockylinux-8 nox-session: ci-test-onedir @@ -1386,7 +1386,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir @@ -1407,7 +1407,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: rockylinux-9 nox-session: ci-test-onedir @@ -1428,7 +1428,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir @@ -1449,7 +1449,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: amazonlinux-2 nox-session: ci-test-onedir @@ -1470,7 +1470,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: amazonlinux-2-arm64 nox-session: ci-test-onedir @@ -1491,7 +1491,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: amazonlinux-2023 nox-session: ci-test-onedir @@ -1512,7 +1512,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: amazonlinux-2023-arm64 nox-session: ci-test-onedir @@ -1533,7 +1533,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: debian-11 nox-session: ci-test-onedir @@ -1554,7 +1554,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: debian-11-arm64 nox-session: ci-test-onedir @@ -1575,7 +1575,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: debian-12 nox-session: ci-test-onedir @@ -1596,7 +1596,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: debian-12-arm64 nox-session: ci-test-onedir @@ -1617,7 +1617,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: fedora-40 nox-session: ci-test-onedir @@ -1638,7 +1638,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: opensuse-15 nox-session: ci-test-onedir @@ -1659,7 +1659,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1680,7 +1680,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1701,7 +1701,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1723,7 +1723,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1745,7 +1745,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1766,7 +1766,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1787,7 +1787,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1809,7 +1809,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1831,7 +1831,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: ubuntu-20.04 nox-session: ci-test-onedir @@ -1852,7 +1852,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: ubuntu-20.04-arm64 nox-session: ci-test-onedir @@ -1873,7 +1873,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1894,7 +1894,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1915,7 +1915,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: ubuntu-24.04 nox-session: ci-test-onedir @@ -1936,7 +1936,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-ng.yml with: distro-slug: ubuntu-24.04-arm64 nox-session: ci-test-onedir diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml new file mode 100644 index 000000000000..ca27ca5f57c4 --- /dev/null +++ b/.github/workflows/test-action-linux-gh.yml @@ -0,0 +1,455 @@ +--- +name: Test Artifact(macOS) + +on: + workflow_call: + inputs: + distro-slug: + required: true + type: string + description: The OS slug to run tests against + nox-session: + required: true + type: string + description: The nox session to run + testrun: + required: true + type: string + description: JSON string containing information about what and how to run the test suite + gh-actions-python-version: + required: false + type: string + description: The python version to run tests with + default: "3.11" + salt-version: + type: string + required: true + description: The Salt version to set prior to running tests. + cache-prefix: + required: true + type: string + description: Seed used to invalidate caches + platform: + required: true + type: string + description: The platform being tested + arch: + required: true + type: string + description: The platform arch being tested + fips: + required: false + type: boolean + default: false + description: Test run with FIPS enabled + nox-version: + required: true + type: string + description: The nox version to install + package-name: + required: false + type: string + description: The onedir package name to use + default: salt + skip-code-coverage: + required: false + type: boolean + description: Skip code coverage + default: false + workflow-slug: + required: false + type: string + description: Which workflow is running. + default: ci + default-timeout: + required: false + type: number + description: Timeout, in minutes, for the test job(Default 360, 6 hours). + default: 360 + +env: + COLUMNS: 190 + PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} + PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} + PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} + PIP_DISABLE_PIP_VERSION_CHECK: "1" + RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" + +jobs: + + generate-matrix: + name: Test Matrix + runs-on: ubuntu-latest + outputs: + matrix-include: ${{ steps.generate-matrix.outputs.matrix }} + build-reports: ${{ steps.generate-matrix.outputs.build-reports }} + steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Generate Test Matrix + id: generate-matrix + run: | + tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ inputs.distro-slug }} + + test: + name: Test + runs-on: linux-${{ inputs.arch }} + container: + image: rockylinux:8 + # Full test runs. Each chunk should never take more than 2 hours. + # Partial test runs(no chunk parallelization), 6 Hours + timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} + needs: + - generate-matrix + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + env: + SALT_TRANSPORT: ${{ matrix.transport }} + + steps: + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Salt Version + run: | + echo "${{ inputs.salt-version }}" > salt/_version.txt + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + + - name: Install System Dependencies + run: | + brew install tree + + - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Decompress .nox Directory + run: | + tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + + - name: Download testrun-changed-files.txt + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + uses: actions/download-artifact@v4 + with: + name: testrun-changed-files.txt + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + + - name: Run Changed Tests + id: run-fast-changed-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ + --from-filenames=testrun-changed-files.txt + + - name: Run Fast Tests + id: run-fast-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code + + - name: Run Slow Tests + id: run-slow-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + + - name: Run Core Tests + id: run-core-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + + - name: Run Flaky Tests + id: run-flaky-tests + if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + + - name: Run Full Tests + id: run-full-tests + if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --slow-tests --core-tests -k "mac or darwin" + + - name: Fix file ownership + run: | + sudo chown -R "$(id -un)" . + + - name: Combine Coverage Reports + if: always() && inputs.skip-code-coverage == false + run: | + nox --force-color -e combine-coverage + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + tree -a artifacts + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi + + - name: Upload Code Coverage Test Run Artifacts + if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' + uses: actions/upload-artifact@v4 + with: + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/coverage/ + include-hidden-files: true + + - name: Upload JUnit XML Test Run Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/xml-unittests-output/ + include-hidden-files: true + + - name: Upload Test Run Log Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + report: + name: Test Reports + if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + runs-on: ubuntu-latest + needs: + - test + - generate-matrix + env: + PIP_INDEX_URL: https://pypi.org/simple + + steps: + - name: Checkout Source Code + uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Merge JUnit XML Test Run Artifacts + if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Merge Log Test Run Artifacts + if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Merge Code Coverage Test Run Artifacts + if: ${{ inputs.skip-code-coverage == false }} + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Download Code Coverage Test Run Artifacts + uses: actions/download-artifact@v4 + if: ${{ inputs.skip-code-coverage == false }} + id: download-coverage-artifacts + with: + path: artifacts/coverage/ + pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* + merge-multiple: true + + - name: Show Downloaded Test Run Artifacts + if: ${{ inputs.skip-code-coverage == false }} + run: | + tree -a artifacts + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + + - name: Create XML Coverage Reports + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' + run: | + nox --force-color -e create-xml-coverage-reports + mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml + mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml + + - name: Report Salt Code Coverage + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + nox --force-color -e report-coverage -- salt + + - name: Report Combined Code Coverage + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + nox --force-color -e report-coverage + + - name: Rename Code Coverage DB + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} + + - name: Upload Code Coverage DB + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} + path: artifacts/coverage + include-hidden-files: true From 83dbb38df552c64b7c88d85da34dff578522cf9c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 14:57:15 -0700 Subject: [PATCH 012/225] Fix workflow name --- .github/workflows/ci.yml | 56 ++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c5a9c38d56d9..da9e560d076b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1365,7 +1365,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8 nox-session: ci-test-onedir @@ -1386,7 +1386,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir @@ -1407,7 +1407,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9 nox-session: ci-test-onedir @@ -1428,7 +1428,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir @@ -1449,7 +1449,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2 nox-session: ci-test-onedir @@ -1470,7 +1470,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2-arm64 nox-session: ci-test-onedir @@ -1491,7 +1491,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023 nox-session: ci-test-onedir @@ -1512,7 +1512,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023-arm64 nox-session: ci-test-onedir @@ -1533,7 +1533,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11 nox-session: ci-test-onedir @@ -1554,7 +1554,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11-arm64 nox-session: ci-test-onedir @@ -1575,7 +1575,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12 nox-session: ci-test-onedir @@ -1596,7 +1596,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12-arm64 nox-session: ci-test-onedir @@ -1617,7 +1617,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: fedora-40 nox-session: ci-test-onedir @@ -1638,7 +1638,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: opensuse-15 nox-session: ci-test-onedir @@ -1659,7 +1659,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1680,7 +1680,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1701,7 +1701,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1723,7 +1723,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1745,7 +1745,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1766,7 +1766,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1787,7 +1787,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1809,7 +1809,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1831,7 +1831,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04 nox-session: ci-test-onedir @@ -1852,7 +1852,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04-arm64 nox-session: ci-test-onedir @@ -1873,7 +1873,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1894,7 +1894,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1915,7 +1915,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04 nox-session: ci-test-onedir @@ -1936,7 +1936,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux-ng.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04-arm64 nox-session: ci-test-onedir From 971236d67ae4f69fbfd43c6ed917233ccb00b0e7 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 15:03:39 -0700 Subject: [PATCH 013/225] Change template not generated files --- .github/workflows/nightly.yml | 56 +++++++++---------- .github/workflows/scheduled.yml | 56 +++++++++---------- .github/workflows/staging.yml | 56 +++++++++---------- .../workflows/templates/test-salt.yml.jinja | 2 +- 4 files changed, 85 insertions(+), 85 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index b926ce6e1ca6..52d980ba3028 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1427,7 +1427,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8 nox-session: ci-test-onedir @@ -1448,7 +1448,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir @@ -1469,7 +1469,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9 nox-session: ci-test-onedir @@ -1490,7 +1490,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir @@ -1511,7 +1511,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2 nox-session: ci-test-onedir @@ -1532,7 +1532,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2-arm64 nox-session: ci-test-onedir @@ -1553,7 +1553,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023 nox-session: ci-test-onedir @@ -1574,7 +1574,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023-arm64 nox-session: ci-test-onedir @@ -1595,7 +1595,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11 nox-session: ci-test-onedir @@ -1616,7 +1616,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11-arm64 nox-session: ci-test-onedir @@ -1637,7 +1637,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12 nox-session: ci-test-onedir @@ -1658,7 +1658,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12-arm64 nox-session: ci-test-onedir @@ -1679,7 +1679,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: fedora-40 nox-session: ci-test-onedir @@ -1700,7 +1700,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: opensuse-15 nox-session: ci-test-onedir @@ -1721,7 +1721,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1742,7 +1742,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1763,7 +1763,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1785,7 +1785,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1807,7 +1807,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1828,7 +1828,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1849,7 +1849,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1871,7 +1871,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1893,7 +1893,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04 nox-session: ci-test-onedir @@ -1914,7 +1914,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04-arm64 nox-session: ci-test-onedir @@ -1935,7 +1935,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1956,7 +1956,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1977,7 +1977,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04 nox-session: ci-test-onedir @@ -1998,7 +1998,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04-arm64 nox-session: ci-test-onedir diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index dc57040b92c7..bd5c18f7d859 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1404,7 +1404,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8 nox-session: ci-test-onedir @@ -1425,7 +1425,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir @@ -1446,7 +1446,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9 nox-session: ci-test-onedir @@ -1467,7 +1467,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir @@ -1488,7 +1488,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2 nox-session: ci-test-onedir @@ -1509,7 +1509,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2-arm64 nox-session: ci-test-onedir @@ -1530,7 +1530,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023 nox-session: ci-test-onedir @@ -1551,7 +1551,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023-arm64 nox-session: ci-test-onedir @@ -1572,7 +1572,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11 nox-session: ci-test-onedir @@ -1593,7 +1593,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11-arm64 nox-session: ci-test-onedir @@ -1614,7 +1614,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12 nox-session: ci-test-onedir @@ -1635,7 +1635,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12-arm64 nox-session: ci-test-onedir @@ -1656,7 +1656,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: fedora-40 nox-session: ci-test-onedir @@ -1677,7 +1677,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: opensuse-15 nox-session: ci-test-onedir @@ -1698,7 +1698,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1719,7 +1719,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1740,7 +1740,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1762,7 +1762,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1784,7 +1784,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1805,7 +1805,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1826,7 +1826,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1848,7 +1848,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1870,7 +1870,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04 nox-session: ci-test-onedir @@ -1891,7 +1891,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04-arm64 nox-session: ci-test-onedir @@ -1912,7 +1912,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1933,7 +1933,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1954,7 +1954,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04 nox-session: ci-test-onedir @@ -1975,7 +1975,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04-arm64 nox-session: ci-test-onedir diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 098b02e05149..61c70bde32e9 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1409,7 +1409,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8 nox-session: ci-test-onedir @@ -1430,7 +1430,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir @@ -1451,7 +1451,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9 nox-session: ci-test-onedir @@ -1472,7 +1472,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir @@ -1493,7 +1493,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2 nox-session: ci-test-onedir @@ -1514,7 +1514,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2-arm64 nox-session: ci-test-onedir @@ -1535,7 +1535,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023 nox-session: ci-test-onedir @@ -1556,7 +1556,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: amazonlinux-2023-arm64 nox-session: ci-test-onedir @@ -1577,7 +1577,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11 nox-session: ci-test-onedir @@ -1598,7 +1598,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-11-arm64 nox-session: ci-test-onedir @@ -1619,7 +1619,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12 nox-session: ci-test-onedir @@ -1640,7 +1640,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: debian-12-arm64 nox-session: ci-test-onedir @@ -1661,7 +1661,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: fedora-40 nox-session: ci-test-onedir @@ -1682,7 +1682,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: opensuse-15 nox-session: ci-test-onedir @@ -1703,7 +1703,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1724,7 +1724,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1745,7 +1745,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4 nox-session: ci-test-onedir @@ -1767,7 +1767,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir @@ -1789,7 +1789,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1810,7 +1810,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1831,7 +1831,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5 nox-session: ci-test-onedir @@ -1853,7 +1853,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir @@ -1875,7 +1875,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04 nox-session: ci-test-onedir @@ -1896,7 +1896,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-20.04-arm64 nox-session: ci-test-onedir @@ -1917,7 +1917,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1938,7 +1938,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1959,7 +1959,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04 nox-session: ci-test-onedir @@ -1980,7 +1980,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-24.04-arm64 nox-session: ci-test-onedir diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 67d61ba3f1cd..60cdcf4c50d7 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -80,7 +80,7 @@ needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml + uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: <{ os.slug }> nox-session: ci-test-onedir From 52b5b967ad81bbabe059bb91ea4a58370b3ec098 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 15:30:10 -0700 Subject: [PATCH 014/225] Disable s3 cache for build deps ci --- .github/workflows/build-deps-ci-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 42066abbb7dd..6d3a70f53ffe 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -87,7 +87,7 @@ jobs: runs-on: - linux-${{ matrix.arch }} env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' timeout-minutes: 90 strategy: fail-fast: false From 9ffb506bf9fc71a5c932a524428fd0693e8b2e3f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 16:21:05 -0700 Subject: [PATCH 015/225] Do not use tools vm for deps ci action --- .github/workflows/build-deps-ci-action.yml | 36 ++++++++-------------- 1 file changed, 13 insertions(+), 23 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 6d3a70f53ffe..84062ac17ef7 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -94,6 +94,9 @@ jobs: matrix: include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include)['linux'] }} steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' - name: "Throttle Builds" shell: bash @@ -143,46 +146,33 @@ jobs: SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Start VM - if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' - id: spin-up-vm - run: | - tools --timestamps vm create --environment "${SPB_ENVIRONMENT}" --retries=2 ${{ matrix.distro-slug }} - - - name: List Free Space + - name: Install System Dependencies if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm ssh ${{ matrix.distro-slug }} -- df -h || true + echo true - - name: Upload Checkout To VM + - name: Install Nox if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm rsync ${{ matrix.distro-slug }} + python3 -m pip install 'nox==${{ inputs.nox-version }}' - name: Install Dependencies if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' + env: + PRINT_TEST_SELECTION: "0" + PRINT_SYSTEM_INFO: "0" run: | - tools --timestamps vm install-dependencies --nox-session=${{ inputs.nox-session }} ${{ matrix.distro-slug }} + nox --install-only -e ${{ inputs.nox-session }} - name: Cleanup .nox Directory if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm pre-archive-cleanup ${{ matrix.distro-slug }} + nox --force-color -e "pre-archive-cleanup(pkg=False)" - name: Compress .nox Directory if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm compress-dependencies ${{ matrix.distro-slug }} - - - name: Download Compressed .nox Directory - if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' - run: | - tools --timestamps vm download-dependencies ${{ matrix.distro-slug }} - - - name: Destroy VM - if: always() && steps.nox-dependencies-cache.outputs.cache-hit != 'true' - run: | - tools --timestamps vm destroy --no-wait ${{ matrix.distro-slug }} + nox --force-color -e compress-dependencies -- macos ${{ matrix.arch }} - name: Upload Nox Requirements Tarball uses: actions/upload-artifact@v4 From 11a5b6bad9d695d6d7ffb989c4997fd40bb34a1e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 16:53:12 -0700 Subject: [PATCH 016/225] wean of aws bits --- .github/workflows/build-deps-ci-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 84062ac17ef7..b12133be38be 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -140,7 +140,7 @@ jobs: cache-prefix: ${{ inputs.cache-prefix }}-build-deps-ci - name: Get Salt Project GitHub Actions Bot Environment - if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' + if: false run: | TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) From d2690ed9f45ff1f18db359a2cf0693ebe08bd6a9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 17:44:45 -0700 Subject: [PATCH 017/225] Setup python --- .github/workflows/test-action-linux-gh.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index ca27ca5f57c4..733f0e05143e 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -126,6 +126,9 @@ jobs: SALT_TRANSPORT: ${{ matrix.transport }} steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' - name: "Throttle Builds" shell: bash From 0ed0370d2cdb4981ab6ea2fc813ae5f1ce33b053 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 18:23:17 -0700 Subject: [PATCH 018/225] Migrate windows to gh runners --- .github/workflows/ci.yml | 6 +- .github/workflows/nightly.yml | 6 +- .github/workflows/scheduled.yml | 6 +- .github/workflows/staging.yml | 6 +- .../workflows/templates/test-salt.yml.jinja | 2 +- .github/workflows/test-action-linux-gh.yml | 2 +- .github/workflows/test-action-windows-gh.yml | 456 ++++++++++++++++++ 7 files changed, 470 insertions(+), 14 deletions(-) create mode 100644 .github/workflows/test-action-windows-gh.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index da9e560d076b..b867f647f1ba 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1236,7 +1236,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 nox-session: ci-test-onedir @@ -1257,7 +1257,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -1278,7 +1278,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 52d980ba3028..1272e4cb6584 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1298,7 +1298,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 nox-session: ci-test-onedir @@ -1319,7 +1319,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -1340,7 +1340,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index bd5c18f7d859..b3643ee1e24f 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1275,7 +1275,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 nox-session: ci-test-onedir @@ -1296,7 +1296,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -1317,7 +1317,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 61c70bde32e9..e9ee1464ebba 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1280,7 +1280,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 nox-session: ci-test-onedir @@ -1301,7 +1301,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -1322,7 +1322,7 @@ jobs: needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 60cdcf4c50d7..7d018ba1757d 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -17,7 +17,7 @@ needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: <{ os.slug }> nox-session: ci-test-onedir diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 733f0e05143e..435e1be4d68f 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -112,7 +112,7 @@ jobs: name: Test runs-on: linux-${{ inputs.arch }} container: - image: rockylinux:8 + image: ubuntu:20.04 # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml new file mode 100644 index 000000000000..b4a4d635a448 --- /dev/null +++ b/.github/workflows/test-action-windows-gh.yml @@ -0,0 +1,456 @@ +--- +name: Test Artifact(macOS) + +on: + workflow_call: + inputs: + distro-slug: + required: true + type: string + description: The OS slug to run tests against + nox-session: + required: true + type: string + description: The nox session to run + testrun: + required: true + type: string + description: JSON string containing information about what and how to run the test suite + gh-actions-python-version: + required: false + type: string + description: The python version to run tests with + default: "3.11" + salt-version: + type: string + required: true + description: The Salt version to set prior to running tests. + cache-prefix: + required: true + type: string + description: Seed used to invalidate caches + platform: + required: true + type: string + description: The platform being tested + arch: + required: true + type: string + description: The platform arch being tested + fips: + required: false + type: boolean + default: false + description: Test run with FIPS enabled + nox-version: + required: true + type: string + description: The nox version to install + package-name: + required: false + type: string + description: The onedir package name to use + default: salt + skip-code-coverage: + required: false + type: boolean + description: Skip code coverage + default: false + workflow-slug: + required: false + type: string + description: Which workflow is running. + default: ci + default-timeout: + required: false + type: number + description: Timeout, in minutes, for the test job(Default 360, 6 hours). + default: 360 + +env: + COLUMNS: 190 + PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} + PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} + PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} + PIP_DISABLE_PIP_VERSION_CHECK: "1" + RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" + +jobs: + + generate-matrix: + name: Test Matrix + runs-on: ubuntu-latest + outputs: + matrix-include: ${{ steps.generate-matrix.outputs.matrix }} + build-reports: ${{ steps.generate-matrix.outputs.build-reports }} + steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Generate Test Matrix + id: generate-matrix + run: | + tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ fromJSON(inputs.testrun)['type'] == 'full' && '--full ' || '' }}${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} + + test: + name: Test + runs-on: windows-latest + # Full test runs. Each chunk should never take more than 2 hours. + # Partial test runs(no chunk parallelization), 6 Hours + timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} + needs: + - generate-matrix + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + env: + SALT_TRANSPORT: ${{ matrix.transport }} + + steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Salt Version + run: | + echo "${{ inputs.salt-version }}" > salt/_version.txt + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + + - name: Install System Dependencies + run: | + brew install tree + + - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Decompress .nox Directory + run: | + tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + + - name: Download testrun-changed-files.txt + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + uses: actions/download-artifact@v4 + with: + name: testrun-changed-files.txt + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + + - name: Run Changed Tests + id: run-fast-changed-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ + --from-filenames=testrun-changed-files.txt + + - name: Run Fast Tests + id: run-fast-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code + + - name: Run Slow Tests + id: run-slow-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + + - name: Run Core Tests + id: run-core-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + + - name: Run Flaky Tests + id: run-flaky-tests + if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + + - name: Run Full Tests + id: run-full-tests + if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --slow-tests --core-tests -k "mac or darwin" + + - name: Fix file ownership + run: | + sudo chown -R "$(id -un)" . + + - name: Combine Coverage Reports + if: always() && inputs.skip-code-coverage == false + run: | + nox --force-color -e combine-coverage + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + tree -a artifacts + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi + + - name: Upload Code Coverage Test Run Artifacts + if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' + uses: actions/upload-artifact@v4 + with: + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/coverage/ + include-hidden-files: true + + - name: Upload JUnit XML Test Run Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/xml-unittests-output/ + include-hidden-files: true + + - name: Upload Test Run Log Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + report: + name: Test Reports + if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + runs-on: ubuntu-latest + needs: + - test + - generate-matrix + env: + PIP_INDEX_URL: https://pypi.org/simple + + steps: + - name: Checkout Source Code + uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Merge JUnit XML Test Run Artifacts + if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Merge Log Test Run Artifacts + if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Merge Code Coverage Test Run Artifacts + if: ${{ inputs.skip-code-coverage == false }} + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Download Code Coverage Test Run Artifacts + uses: actions/download-artifact@v4 + if: ${{ inputs.skip-code-coverage == false }} + id: download-coverage-artifacts + with: + path: artifacts/coverage/ + pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* + merge-multiple: true + + - name: Show Downloaded Test Run Artifacts + if: ${{ inputs.skip-code-coverage == false }} + run: | + tree -a artifacts + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + + - name: Create XML Coverage Reports + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' + run: | + nox --force-color -e create-xml-coverage-reports + mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml + mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml + + - name: Report Salt Code Coverage + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + nox --force-color -e report-coverage -- salt + + - name: Report Combined Code Coverage + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + nox --force-color -e report-coverage + + - name: Rename Code Coverage DB + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} + + - name: Upload Code Coverage DB + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} + path: artifacts/coverage + include-hidden-files: true From 46d92b1c04b8976aa8255cc9611e12e1248f1fc4 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 21:11:59 -0700 Subject: [PATCH 019/225] be more specific with python version --- .github/workflows/test-action-linux-gh.yml | 2 +- .github/workflows/test-action-windows-gh.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 435e1be4d68f..b6f145f0dd0e 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -86,7 +86,7 @@ jobs: steps: - uses: actions/setup-python@v5 with: - python-version: '3.10' + python-version: 3.10.14 - name: "Throttle Builds" shell: bash diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml index b4a4d635a448..6e49e6b9dfa3 100644 --- a/.github/workflows/test-action-windows-gh.yml +++ b/.github/workflows/test-action-windows-gh.yml @@ -86,7 +86,7 @@ jobs: steps: - uses: actions/setup-python@v5 with: - python-version: '3.10' + python-version: 3.10.14 - name: "Throttle Builds" shell: bash From caf5f570f7b85e85e67fa9643c42122c875f4ced Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 29 Oct 2024 23:17:51 -0700 Subject: [PATCH 020/225] check python binary --- .github/workflows/test-action-linux-gh.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index b6f145f0dd0e..96a9e28af029 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -130,6 +130,11 @@ jobs: with: python-version: '3.10' + - name: Check python + run: | + which python3 + + - name: "Throttle Builds" shell: bash run: | From ba0e47cdc5a23df1f01372fccfe74db9affb9bfb Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 01:15:22 -0700 Subject: [PATCH 021/225] no container --- .github/workflows/test-action-linux-gh.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 96a9e28af029..be25f21a5042 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -98,8 +98,8 @@ jobs: - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} + #with: + # cache-prefix: ${{ inputs.cache-prefix }} env: PIP_INDEX_URL: https://pypi.org/simple @@ -111,8 +111,8 @@ jobs: test: name: Test runs-on: linux-${{ inputs.arch }} - container: - image: ubuntu:20.04 + #container: + # image: ubuntu:20.04 # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} From 36fb0c26d7ff225f651a4c5f95acc3ed6a9296d8 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 14:35:14 -0700 Subject: [PATCH 022/225] revert cache change --- .github/workflows/test-action-linux-gh.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index be25f21a5042..29a2233d1f79 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -98,8 +98,8 @@ jobs: - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts - #with: - # cache-prefix: ${{ inputs.cache-prefix }} + with: + cache-prefix: ${{ inputs.cache-prefix }} env: PIP_INDEX_URL: https://pypi.org/simple From 298553b57914e6ad6ea73bf384da049e07933bad Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 14:55:11 -0700 Subject: [PATCH 023/225] Disable more s3 caching --- .github/workflows/nightly.yml | 12 ++++++------ .github/workflows/release.yml | 2 +- .github/workflows/staging.yml | 12 ++++++------ .github/workflows/templates/build-repos.yml.jinja | 2 +- .github/workflows/templates/release.yml.jinja | 2 +- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 1272e4cb6584..c1804ac37c16 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2019,7 +2019,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-source-tarball @@ -2120,7 +2120,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2249,7 +2249,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2425,7 +2425,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2527,7 +2527,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2618,7 +2618,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-salt-onedir diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 17b5a18bc8c5..49ad108b7db1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -51,7 +51,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' environment: release needs: - check-requirements diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index e9ee1464ebba..b2dab0822eee 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -2001,7 +2001,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-source-tarball @@ -2102,7 +2102,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2231,7 +2231,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2409,7 +2409,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2511,7 +2511,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-pkgs-onedir @@ -2602,7 +2602,7 @@ jobs: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow - build-salt-onedir diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index 24d4be7e084a..77c45623d2cd 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -16,7 +16,7 @@ runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' needs: - prepare-workflow <%- if type not in ("src", "onedir") %> diff --git a/.github/workflows/templates/release.yml.jinja b/.github/workflows/templates/release.yml.jinja index 09a8837df809..1943fe2fe849 100644 --- a/.github/workflows/templates/release.yml.jinja +++ b/.github/workflows/templates/release.yml.jinja @@ -73,7 +73,7 @@ permissions: runs-on: - linux-x86_64 env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' environment: <{ gh_environment }> <%- if prepare_workflow_needs %> needs: From ee592c068a94de2c069653796758369f44e05641 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 15:11:27 -0700 Subject: [PATCH 024/225] Do not install any system dependencies yet --- .github/workflows/test-action-linux-gh.yml | 2 +- .github/workflows/test-action-windows-gh.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 29a2233d1f79..8e4aa734666a 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -167,7 +167,7 @@ jobs: - name: Install System Dependencies run: | - brew install tree + echo true - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml index 6e49e6b9dfa3..9c9d6ed62288 100644 --- a/.github/workflows/test-action-windows-gh.yml +++ b/.github/workflows/test-action-windows-gh.yml @@ -160,7 +160,7 @@ jobs: - name: Install System Dependencies run: | - brew install tree + echo true - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 From 93462460338b688750e3d908140194df310f81b5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 15:23:10 -0700 Subject: [PATCH 025/225] Do not build 'source' packages for PRs --- .github/workflows/ci.yml | 15 --------------- .github/workflows/scheduled.yml | 15 --------------- .../workflows/templates/build-packages.yml.jinja | 7 ++++++- 3 files changed, 6 insertions(+), 31 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b867f647f1ba..df036255167c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -459,20 +459,6 @@ jobs: relenv-version: "0.17.3" python-version: "3.10.15" source: "onedir" - - build-pkgs-src: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" - python-version: "3.10.15" - source: "src" build-ci-deps: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -2128,7 +2114,6 @@ jobs: - build-docs - build-deps-onedir - build-salt-onedir - - build-pkgs-src - combine-all-code-coverage - build-ci-deps - windows-2016 diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index b3643ee1e24f..c31d56ceec7b 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -498,20 +498,6 @@ jobs: relenv-version: "0.17.3" python-version: "3.10.15" source: "onedir" - - build-pkgs-src: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" - python-version: "3.10.15" - source: "src" build-ci-deps: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -2006,7 +1992,6 @@ jobs: - build-docs - build-deps-onedir - build-salt-onedir - - build-pkgs-src - build-ci-deps - windows-2016 - windows-2019 diff --git a/.github/workflows/templates/build-packages.yml.jinja b/.github/workflows/templates/build-packages.yml.jinja index e2ae278a044b..dd729c25a276 100644 --- a/.github/workflows/templates/build-packages.yml.jinja +++ b/.github/workflows/templates/build-packages.yml.jinja @@ -1,4 +1,9 @@ - <%- for backend in ("onedir", "src") %> +<%- if gh_environment != "ci" -%> +<%- set pkg_types = ("onedir", "src") %> +<%- else -%> +<%- set pkg_types = ("onedir",) %> +<%- endif -%> + <%- for backend in pkg_types %> <%- set job_name = "build-pkgs-{}".format(backend) %> <%- if backend == "src" %> <%- do conclusion_needs.append(job_name) %> From 6da4f095fc4d3f1e81db488ad19e0708ff74b2f2 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 16:19:58 -0700 Subject: [PATCH 026/225] Fix nox tarball name --- .github/workflows/build-deps-ci-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index b12133be38be..bae301528969 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -172,7 +172,7 @@ jobs: - name: Compress .nox Directory if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - nox --force-color -e compress-dependencies -- macos ${{ matrix.arch }} + nox --force-color -e compress-dependencies -- linux ${{ matrix.arch }} - name: Upload Nox Requirements Tarball uses: actions/upload-artifact@v4 From 1350ae9f9532fea7e5fa0bbb7295e9fd7dceb580 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 16:58:29 -0700 Subject: [PATCH 027/225] Build windows deps on github runner --- .github/workflows/build-deps-ci-action.yml | 55 +++++++--------------- 1 file changed, 16 insertions(+), 39 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index bae301528969..ca46807d4d1e 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -272,12 +272,9 @@ jobs: needs: - generate-matrix name: Windows - runs-on: - - self-hosted - - linux - - bastion + runs-on: windows-latest env: - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' timeout-minutes: 90 strategy: fail-fast: false @@ -314,11 +311,11 @@ jobs: python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-windows-${{ matrix.arch }}.tar.xz - - - name: PyPi Proxy + - name: Set up Python ${{ inputs.python-version }} if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' - run: | - sed -i '7s;^;--index-url=${{ vars.PIP_INDEX_URL }} --trusted-host ${{ vars.PIP_TRUSTED_HOST }} --extra-index-url=${{ vars.PIP_EXTRA_INDEX_URL }}\n;' requirements/static/ci/*/*.txt + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" - name: Setup Python Tools Scripts if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' @@ -326,53 +323,33 @@ jobs: with: cache-prefix: ${{ inputs.cache-prefix }}-build-deps-ci - - name: Get Salt Project GitHub Actions Bot Environment - if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Start VM - if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' - id: spin-up-vm - run: | - tools --timestamps vm create --environment "${SPB_ENVIRONMENT}" --retries=2 ${{ matrix.distro-slug }} - - - name: List Free Space + - name: Install System Dependencies if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm ssh ${{ matrix.distro-slug }} -- df -h || true + echo true - - name: Upload Checkout To VM + - name: Install Nox if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm rsync ${{ matrix.distro-slug }} + python3 -m pip install 'nox==${{ inputs.nox-version }}' - name: Install Dependencies if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' + env: + PRINT_TEST_SELECTION: "0" + PRINT_SYSTEM_INFO: "0" run: | - tools --timestamps vm install-dependencies --nox-session=${{ inputs.nox-session }} ${{ matrix.distro-slug }} + nox --install-only -e ${{ inputs.nox-session }} - name: Cleanup .nox Directory if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm pre-archive-cleanup ${{ matrix.distro-slug }} + nox --force-color -e "pre-archive-cleanup(pkg=False)" - name: Compress .nox Directory if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | - tools --timestamps vm compress-dependencies ${{ matrix.distro-slug }} - - - name: Download Compressed .nox Directory - if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' - run: | - tools --timestamps vm download-dependencies ${{ matrix.distro-slug }} - - - name: Destroy VM - if: always() && steps.nox-dependencies-cache.outputs.cache-hit != 'true' - run: | - tools --timestamps vm destroy --no-wait ${{ matrix.distro-slug }} + nox --force-color -e compress-dependencies -- windows ${{ matrix.arch }} - name: Upload Nox Requirements Tarball uses: actions/upload-artifact@v4 From 004bfeeaa731b3c849a0d1c14ddf2ca9a164ea68 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 17:47:43 -0700 Subject: [PATCH 028/225] Fix decompress step --- .github/workflows/test-action-linux-gh.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 8e4aa734666a..39a9e3cf8722 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -187,7 +187,7 @@ jobs: - name: Decompress .nox Directory run: | - tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + nox --force-color -e decompress-dependencies -- linux ${{ inputs.arch }} - name: Download testrun-changed-files.txt if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} From 42558724aab163a4b50d6249efe081f8aad568e7 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 17:49:14 -0700 Subject: [PATCH 029/225] Fix decompress nox step on windows --- .github/workflows/test-action-windows-gh.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml index 9c9d6ed62288..96cb9c381dfb 100644 --- a/.github/workflows/test-action-windows-gh.yml +++ b/.github/workflows/test-action-windows-gh.yml @@ -180,7 +180,7 @@ jobs: - name: Decompress .nox Directory run: | - tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - name: Download testrun-changed-files.txt if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} From 16897ecd9eb67eeb62da868c35f0d7eda9b71b51 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 30 Oct 2024 19:05:43 -0700 Subject: [PATCH 030/225] fetch correct nox tarball --- .github/workflows/test-action-windows-gh.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml index 96cb9c381dfb..4f6f9f64816a 100644 --- a/.github/workflows/test-action-windows-gh.yml +++ b/.github/workflows/test-action-windows-gh.yml @@ -162,10 +162,10 @@ jobs: run: | echo true - - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 with: - name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} + name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - name: Set up Python ${{ inputs.gh-actions-python-version }} uses: actions/setup-python@v5 From 11f101ab1f1d2e41c18c986a1c6fd449af84e0f2 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 31 Oct 2024 09:38:56 -0700 Subject: [PATCH 031/225] bump relenv version --- .github/workflows/ci.yml | 6 +++--- .github/workflows/nightly.yml | 8 ++++---- .github/workflows/scheduled.yml | 6 +++--- .github/workflows/staging.yml | 8 ++++---- cicd/shared-gh-workflows-context.yml | 2 +- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index df036255167c..876f7b5f968c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -427,7 +427,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-salt-onedir: @@ -443,7 +443,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-pkgs-onedir: @@ -456,7 +456,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" build-ci-deps: diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index c1804ac37c16..1a22a67e7fb7 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -481,7 +481,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-salt-onedir: @@ -497,7 +497,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-pkgs-onedir: @@ -510,7 +510,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" environment: nightly @@ -528,7 +528,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" source: "src" environment: nightly diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index c31d56ceec7b..271c5417d07a 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -466,7 +466,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-salt-onedir: @@ -482,7 +482,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-pkgs-onedir: @@ -495,7 +495,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" build-ci-deps: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index b2dab0822eee..6537936d61d6 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -463,7 +463,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-salt-onedir: @@ -479,7 +479,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" build-pkgs-onedir: @@ -492,7 +492,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" environment: staging @@ -510,7 +510,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.17.3" + relenv-version: "0.18.0" python-version: "3.10.15" source: "src" environment: staging diff --git a/cicd/shared-gh-workflows-context.yml b/cicd/shared-gh-workflows-context.yml index b759400266dc..4a2ca3bd5951 100644 --- a/cicd/shared-gh-workflows-context.yml +++ b/cicd/shared-gh-workflows-context.yml @@ -1,6 +1,6 @@ nox_version: "2022.8.7" python_version: "3.10.15" -relenv_version: "0.17.3" +relenv_version: "0.18.0" mandatory_os_slugs: - rockylinux-9 - amazonlinux-2023-arm64 From b30242476fc01bb79c0f3f87c42da56ea1ed9cce Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 31 Oct 2024 13:05:17 -0700 Subject: [PATCH 032/225] Download from alt location --- pkg/windows/prep_salt.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/windows/prep_salt.ps1 b/pkg/windows/prep_salt.ps1 index 7bcde5b60c7b..5ac8155109e8 100644 --- a/pkg/windows/prep_salt.ps1 +++ b/pkg/windows/prep_salt.ps1 @@ -74,11 +74,11 @@ $ARCH = $(. $PYTHON_BIN -c "import platform; print(platform.architectu if ( $ARCH -eq "64bit" ) { $ARCH = "AMD64" $ARCH_X = "x64" - $SALT_DEP_URL = "https://repo.saltproject.io/windows/dependencies/64" + $SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/64/" } else { $ARCH = "x86" $ARCH_X = "x86" - $SALT_DEP_URL = "https://repo.saltproject.io/windows/dependencies/32" + $SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/32/" } #------------------------------------------------------------------------------- From 111ef166cfb1c3f726738f452d14a8426a44941f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 31 Oct 2024 14:03:17 -0700 Subject: [PATCH 033/225] Update download location --- pkg/windows/install_nsis.ps1 | 2 +- pkg/windows/prep_salt.ps1 | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/windows/install_nsis.ps1 b/pkg/windows/install_nsis.ps1 index f30abdfbb9a3..9fe963e6f8d8 100644 --- a/pkg/windows/install_nsis.ps1 +++ b/pkg/windows/install_nsis.ps1 @@ -46,7 +46,7 @@ $NSIS_DIR = "${env:ProgramFiles(x86)}\NSIS" $NSIS_PLUG_A = "$NSIS_DIR\Plugins\x86-ansi" $NSIS_PLUG_U = "$NSIS_DIR\Plugins\x86-unicode" $NSIS_LIB_DIR = "$NSIS_DIR\Include" -$DEPS_URL = "https://repo.saltproject.io/windows/dependencies" +$DEPS_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/nsis" #------------------------------------------------------------------------------- # Start the Script diff --git a/pkg/windows/prep_salt.ps1 b/pkg/windows/prep_salt.ps1 index 5ac8155109e8..c43707eceee9 100644 --- a/pkg/windows/prep_salt.ps1 +++ b/pkg/windows/prep_salt.ps1 @@ -74,11 +74,11 @@ $ARCH = $(. $PYTHON_BIN -c "import platform; print(platform.architectu if ( $ARCH -eq "64bit" ) { $ARCH = "AMD64" $ARCH_X = "x64" - $SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/64/" + $SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/ssm/64/" } else { $ARCH = "x86" $ARCH_X = "x86" - $SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/32/" + $SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/ssm/32/" } #------------------------------------------------------------------------------- From 6f1a5a31111dfe5dbb91f5dde2ff9e234b6bcc14 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 1 Nov 2024 14:11:07 -0700 Subject: [PATCH 034/225] Disable most of linux and all of mac --- .github/actions/setup-actionlint/action.yml | 1 - .github/actions/setup-pre-commit/action.yml | 1 - .../setup-python-tools-scripts/action.yml | 1 - .github/actions/setup-relenv/action.yml | 1 - .github/actions/setup-shellcheck/action.yml | 1 - .github/workflows/build-deps-ci-action.yml | 7 - .github/workflows/ci.yml | 674 ------------------ .github/workflows/nightly.yml | 645 ----------------- .github/workflows/scheduled.yml | 645 ----------------- .github/workflows/staging.yml | 645 ----------------- tools/precommit/workflows.py | 172 ++--- 11 files changed, 86 insertions(+), 2707 deletions(-) diff --git a/.github/actions/setup-actionlint/action.yml b/.github/actions/setup-actionlint/action.yml index 36f1cfe71183..44b68e86c9f5 100644 --- a/.github/actions/setup-actionlint/action.yml +++ b/.github/actions/setup-actionlint/action.yml @@ -16,7 +16,6 @@ runs: steps: - name: Cache actionlint Binary - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: /usr/local/bin/actionlint diff --git a/.github/actions/setup-pre-commit/action.yml b/.github/actions/setup-pre-commit/action.yml index 0ee2f5b46358..2acd58895c59 100644 --- a/.github/actions/setup-pre-commit/action.yml +++ b/.github/actions/setup-pre-commit/action.yml @@ -30,7 +30,6 @@ runs: ${{ steps.pre-commit-virtualenv.outputs.python-executable }} -m pip install pre-commit==${{ inputs.version }} - name: Cache Pre-Commit Hooks - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache id: pre-commit-hooks-cache with: diff --git a/.github/actions/setup-python-tools-scripts/action.yml b/.github/actions/setup-python-tools-scripts/action.yml index 78ced8bdb360..e640ffe86f70 100644 --- a/.github/actions/setup-python-tools-scripts/action.yml +++ b/.github/actions/setup-python-tools-scripts/action.yml @@ -44,7 +44,6 @@ runs: cache-seed: tools|${{ steps.venv-hash.outputs.venv-hash }} - name: Restore Python Tools Virtualenvs Cache - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: ${{ inputs.cwd }}/.tools-venvs diff --git a/.github/actions/setup-relenv/action.yml b/.github/actions/setup-relenv/action.yml index e086de280f19..825d0401d129 100644 --- a/.github/actions/setup-relenv/action.yml +++ b/.github/actions/setup-relenv/action.yml @@ -37,7 +37,6 @@ runs: python3 -m pip install relenv==${{ inputs.version }} - name: Cache Relenv Data Directory - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: ${{ github.workspace }}/.relenv diff --git a/.github/actions/setup-shellcheck/action.yml b/.github/actions/setup-shellcheck/action.yml index 08be70d6c17a..e6d0697933d9 100644 --- a/.github/actions/setup-shellcheck/action.yml +++ b/.github/actions/setup-shellcheck/action.yml @@ -16,7 +16,6 @@ runs: steps: - name: Cache shellcheck Binary - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: path: /usr/local/bin/shellcheck diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index ca46807d4d1e..0bff3e58dd1f 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -139,13 +139,6 @@ jobs: with: cache-prefix: ${{ inputs.cache-prefix }}-build-deps-ci - - name: Get Salt Project GitHub Actions Bot Environment - if: false - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Install System Dependencies if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' run: | diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 876f7b5f968c..f986bd663bcb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1279,580 +1279,6 @@ jobs: workflow-slug: ci default-timeout: 180 - macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - macos-13-arm64: - name: macOS 13 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - opensuse-15: - name: Opensuse 15 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'opensuse-15') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: opensuse-15 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} @@ -1895,48 +1321,6 @@ jobs: workflow-slug: ci default-timeout: 180 - ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - combine-all-code-coverage: name: Combine Code Coverage if: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] == false }} @@ -1949,37 +1333,8 @@ jobs: - windows-2016 - windows-2019 - windows-2022 - - macos-12 - - macos-13 - - macos-13-arm64 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - opensuse-15 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 steps: - uses: actions/checkout@v4 @@ -2119,37 +1474,8 @@ jobs: - windows-2016 - windows-2019 - windows-2022 - - macos-12 - - macos-13 - - macos-13-arm64 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - opensuse-15 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 - rockylinux-8-pkg-tests - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 1a22a67e7fb7..f85c8ac58eec 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1355,580 +1355,6 @@ jobs: workflow-slug: nightly default-timeout: 360 - macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - macos-13-arm64: - name: macOS 13 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - opensuse-15: - name: Opensuse 15 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: opensuse-15 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1971,48 +1397,6 @@ jobs: workflow-slug: nightly default-timeout: 360 - ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - build-src-repo: name: Build Repository environment: nightly @@ -2758,37 +2142,8 @@ jobs: - windows-2016 - windows-2019 - windows-2022 - - macos-12 - - macos-13 - - macos-13-arm64 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - opensuse-15 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 steps: diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 271c5417d07a..cf7b404b4ed6 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1318,580 +1318,6 @@ jobs: workflow-slug: scheduled default-timeout: 360 - macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - macos-13-arm64: - name: macOS 13 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - opensuse-15: - name: Opensuse 15 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: opensuse-15 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1934,48 +1360,6 @@ jobs: workflow-slug: scheduled default-timeout: 360 - ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks # on a pull request instead of requiring all @@ -1996,37 +1380,8 @@ jobs: - windows-2016 - windows-2019 - windows-2022 - - macos-12 - - macos-13 - - macos-13-arm64 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - opensuse-15 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 - rockylinux-8-pkg-tests - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 6537936d61d6..6d05e6d86d14 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1337,580 +1337,6 @@ jobs: workflow-slug: staging default-timeout: 180 - macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - macos-13-arm64: - name: macOS 13 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - opensuse-15: - name: Opensuse 15 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: opensuse-15 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1953,48 +1379,6 @@ jobs: workflow-slug: staging default-timeout: 180 - ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux-gh.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - build-src-repo: name: Build Repository environment: staging @@ -2866,37 +2250,8 @@ jobs: - windows-2016 - windows-2019 - windows-2022 - - macos-12 - - macos-13 - - macos-13-arm64 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - opensuse-15 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 - rockylinux-8-pkg-tests - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index b60371aa80cb..0153b9f97f81 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -23,100 +23,100 @@ TEST_SALT_LISTING = PlatformDefinitions( { "linux": [ - Linux(slug="rockylinux-8", display_name="Rocky Linux 8", arch="x86_64"), - Linux( - slug="rockylinux-8-arm64", - display_name="Rocky Linux 8 Arm64", - arch="arm64", - ), - Linux(slug="rockylinux-9", display_name="Rocky Linux 9", arch="x86_64"), - Linux( - slug="rockylinux-9-arm64", - display_name="Rocky Linux 9 Arm64", - arch="arm64", - ), - Linux(slug="amazonlinux-2", display_name="Amazon Linux 2", arch="x86_64"), - Linux( - slug="amazonlinux-2-arm64", - display_name="Amazon Linux 2 Arm64", - arch="arm64", - ), - Linux( - slug="amazonlinux-2023", - display_name="Amazon Linux 2023", - arch="x86_64", - ), - Linux( - slug="amazonlinux-2023-arm64", - display_name="Amazon Linux 2023 Arm64", - arch="arm64", - ), - Linux(slug="debian-11", display_name="Debian 11", arch="x86_64"), - Linux(slug="debian-11-arm64", display_name="Debian 11 Arm64", arch="arm64"), - Linux(slug="debian-12", display_name="Debian 12", arch="x86_64"), - Linux(slug="debian-12-arm64", display_name="Debian 12 Arm64", arch="arm64"), - Linux(slug="fedora-40", display_name="Fedora 40", arch="x86_64"), - Linux(slug="opensuse-15", display_name="Opensuse 15", arch="x86_64"), - Linux(slug="photonos-4", display_name="Photon OS 4", arch="x86_64"), - Linux( - slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64" - ), - Linux( - slug="photonos-4", - display_name="Photon OS 4", - arch="x86_64", - fips=True, - ), - Linux( - slug="photonos-4-arm64", - display_name="Photon OS 4 Arm64", - arch="arm64", - fips=True, - ), - Linux(slug="photonos-5", display_name="Photon OS 5", arch="x86_64"), - Linux( - slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64" - ), - Linux( - slug="photonos-5", - display_name="Photon OS 5", - arch="x86_64", - fips=True, - ), - Linux( - slug="photonos-5-arm64", - display_name="Photon OS 5 Arm64", - arch="arm64", - fips=True, - ), - Linux(slug="ubuntu-20.04", display_name="Ubuntu 20.04", arch="x86_64"), - Linux( - slug="ubuntu-20.04-arm64", - display_name="Ubuntu 20.04 Arm64", - arch="arm64", - ), + # Linux(slug="rockylinux-8", display_name="Rocky Linux 8", arch="x86_64"), + # Linux( + # slug="rockylinux-8-arm64", + # display_name="Rocky Linux 8 Arm64", + # arch="arm64", + # ), + # Linux(slug="rockylinux-9", display_name="Rocky Linux 9", arch="x86_64"), + # Linux( + # slug="rockylinux-9-arm64", + # display_name="Rocky Linux 9 Arm64", + # arch="arm64", + # ), + # Linux(slug="amazonlinux-2", display_name="Amazon Linux 2", arch="x86_64"), + # Linux( + # slug="amazonlinux-2-arm64", + # display_name="Amazon Linux 2 Arm64", + # arch="arm64", + # ), + # Linux( + # slug="amazonlinux-2023", + # display_name="Amazon Linux 2023", + # arch="x86_64", + # ), + # Linux( + # slug="amazonlinux-2023-arm64", + # display_name="Amazon Linux 2023 Arm64", + # arch="arm64", + # ), + # Linux(slug="debian-11", display_name="Debian 11", arch="x86_64"), + # Linux(slug="debian-11-arm64", display_name="Debian 11 Arm64", arch="arm64"), + # Linux(slug="debian-12", display_name="Debian 12", arch="x86_64"), + # Linux(slug="debian-12-arm64", display_name="Debian 12 Arm64", arch="arm64"), + # Linux(slug="fedora-40", display_name="Fedora 40", arch="x86_64"), + # Linux(slug="opensuse-15", display_name="Opensuse 15", arch="x86_64"), + # Linux(slug="photonos-4", display_name="Photon OS 4", arch="x86_64"), + # Linux( + # slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64" + # ), + # Linux( + # slug="photonos-4", + # display_name="Photon OS 4", + # arch="x86_64", + # fips=True, + # ), + # Linux( + # slug="photonos-4-arm64", + # display_name="Photon OS 4 Arm64", + # arch="arm64", + # fips=True, + # ), + # Linux(slug="photonos-5", display_name="Photon OS 5", arch="x86_64"), + # Linux( + # slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64" + # ), + # Linux( + # slug="photonos-5", + # display_name="Photon OS 5", + # arch="x86_64", + # fips=True, + # ), + # Linux( + # slug="photonos-5-arm64", + # display_name="Photon OS 5 Arm64", + # arch="arm64", + # fips=True, + # ), + # Linux(slug="ubuntu-20.04", display_name="Ubuntu 20.04", arch="x86_64"), + # Linux( + # slug="ubuntu-20.04-arm64", + # display_name="Ubuntu 20.04 Arm64", + # arch="arm64", + # ), Linux(slug="ubuntu-22.04", display_name="Ubuntu 22.04", arch="x86_64"), Linux( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", ), - Linux(slug="ubuntu-24.04", display_name="Ubuntu 24.04", arch="x86_64"), - Linux( - slug="ubuntu-24.04-arm64", - display_name="Ubuntu 24.04 Arm64", - arch="arm64", - ), + # Linux(slug="ubuntu-24.04", display_name="Ubuntu 24.04", arch="x86_64"), + # Linux( + # slug="ubuntu-24.04-arm64", + # display_name="Ubuntu 24.04 Arm64", + # arch="arm64", + # ), ], "macos": [ - MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), - MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), - MacOS( - slug="macos-13-arm64", - display_name="macOS 13 Arm64", - arch="arm64", - runner="macos-13-xlarge", - ), + # MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), + # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), + # MacOS( + # slug="macos-13-arm64", + # display_name="macOS 13 Arm64", + # arch="arm64", + # runner="macos-13-xlarge", + # ), ], "windows": [ Windows(slug="windows-2016", display_name="Windows 2016", arch="amd64"), From 72af084b58d6284245de9400ad2ddef5cf74048f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 1 Nov 2024 14:27:02 -0700 Subject: [PATCH 035/225] Disable more OSes for package tests --- .github/workflows/ci.yml | 601 -------------------------------- .github/workflows/nightly.yml | 601 -------------------------------- .github/workflows/scheduled.yml | 601 -------------------------------- .github/workflows/staging.yml | 601 -------------------------------- tools/precommit/workflows.py | 316 ++++++++--------- 5 files changed, 159 insertions(+), 2561 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f986bd663bcb..90f4486389de 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -474,472 +474,6 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - rockylinux-8-pkg-tests: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-8-arm64-pkg-tests: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-pkg-tests: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-arm64-pkg-tests: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-pkg-tests: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-arm64-pkg-tests: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-pkg-tests: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-arm64-pkg-tests: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-pkg-tests: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-arm64-pkg-tests: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-pkg-tests: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-arm64-pkg-tests: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-arm64-pkg-tests: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-4-arm64-pkg-tests-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-pkg-tests: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-arm64-pkg-tests: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-pkg-tests-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-arm64-pkg-tests-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - ubuntu-2004-pkg-tests: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2004-arm64-pkg-tests: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} @@ -982,114 +516,6 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2404-arm64-pkg-tests: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-12-pkg-tests: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-pkg-tests: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-arm64-pkg-tests: - name: macOS 13 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13-arm64') }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} @@ -1476,35 +902,8 @@ jobs: - windows-2022 - ubuntu-2204 - ubuntu-2204-arm64 - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - macos-13-pkg-tests - - macos-13-arm64-pkg-tests - windows-2016-nsis-pkg-tests - windows-2016-msi-pkg-tests - windows-2019-nsis-pkg-tests diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index f85c8ac58eec..2db52c9cd5ef 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -550,472 +550,6 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - rockylinux-8-pkg-tests: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-8-arm64-pkg-tests: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-pkg-tests: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-arm64-pkg-tests: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-pkg-tests: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-arm64-pkg-tests: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-pkg-tests: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-arm64-pkg-tests: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-pkg-tests: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-arm64-pkg-tests: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-pkg-tests: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-arm64-pkg-tests: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-arm64-pkg-tests: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-4-arm64-pkg-tests-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-pkg-tests: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-arm64-pkg-tests: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-pkg-tests-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-arm64-pkg-tests-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - ubuntu-2004-pkg-tests: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2004-arm64-pkg-tests: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1058,114 +592,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2404-arm64-pkg-tests: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-12-pkg-tests: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-pkg-tests: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-arm64-pkg-tests: - name: macOS 13 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -2202,35 +1628,8 @@ jobs: - build-salt-onedir - build-pkgs-src - publish-repositories - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - macos-13-pkg-tests - - macos-13-arm64-pkg-tests - windows-2016-nsis-pkg-tests - windows-2016-msi-pkg-tests - windows-2019-nsis-pkg-tests diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index cf7b404b4ed6..dd561fd04356 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -513,472 +513,6 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - rockylinux-8-pkg-tests: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-8-arm64-pkg-tests: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-pkg-tests: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-arm64-pkg-tests: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-pkg-tests: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-arm64-pkg-tests: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-pkg-tests: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-arm64-pkg-tests: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-pkg-tests: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-arm64-pkg-tests: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-pkg-tests: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-arm64-pkg-tests: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-arm64-pkg-tests: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-4-arm64-pkg-tests-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-pkg-tests: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-arm64-pkg-tests: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-pkg-tests-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-arm64-pkg-tests-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - ubuntu-2004-pkg-tests: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2004-arm64-pkg-tests: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1021,114 +555,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2404-arm64-pkg-tests: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-12-pkg-tests: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-pkg-tests: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-arm64-pkg-tests: - name: macOS 13 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1382,35 +808,8 @@ jobs: - windows-2022 - ubuntu-2204 - ubuntu-2204-arm64 - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - macos-13-pkg-tests - - macos-13-arm64-pkg-tests - windows-2016-nsis-pkg-tests - windows-2016-msi-pkg-tests - windows-2019-nsis-pkg-tests diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 6d05e6d86d14..b009bb5cf19b 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -532,472 +532,6 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - rockylinux-8-pkg-tests: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-8-arm64-pkg-tests: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-pkg-tests: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - rockylinux-9-arm64-pkg-tests: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-pkg-tests: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2-arm64-pkg-tests: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-pkg-tests: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - amazonlinux-2023-arm64-pkg-tests: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-pkg-tests: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-11-arm64-pkg-tests: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-pkg-tests: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - debian-12-arm64-pkg-tests: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-arm64-pkg-tests: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-4-pkg-tests-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-4-arm64-pkg-tests-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-pkg-tests: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-arm64-pkg-tests: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - photonos-5-pkg-tests-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - photonos-5-arm64-pkg-tests-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - ubuntu-2004-pkg-tests: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2004-arm64-pkg-tests: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1040,114 +574,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - ubuntu-2404-arm64-pkg-tests: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-12-pkg-tests: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-pkg-tests: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - macos-13-arm64-pkg-tests: - name: macOS 13 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13-arm64 - runner: macos-13-xlarge - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -2252,35 +1678,8 @@ jobs: - windows-2022 - ubuntu-2204 - ubuntu-2204-arm64 - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - macos-13-pkg-tests - - macos-13-arm64-pkg-tests - windows-2016-nsis-pkg-tests - windows-2016-msi-pkg-tests - windows-2019-nsis-pkg-tests diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 0153b9f97f81..5aed95498124 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -13,7 +13,9 @@ from ptscripts import Context, command_group import tools.utils -from tools.utils import Linux, MacOS, PlatformDefinitions, Windows + +# from tools.utils import Linux, MacOS, PlatformDefinitions, Windows +from tools.utils import Linux, PlatformDefinitions, Windows log = logging.getLogger(__name__) @@ -195,142 +197,142 @@ def generate_workflows(ctx: Context): test_salt_pkg_listing = PlatformDefinitions( { "linux": [ - Linux( - slug="rockylinux-8", - display_name="Rocky Linux 8", - arch="x86_64", - pkg_type="rpm", - ), - Linux( - slug="rockylinux-8-arm64", - display_name="Rocky Linux 8 Arm64", - arch="arm64", - pkg_type="rpm", - ), - Linux( - slug="rockylinux-9", - display_name="Rocky Linux 9", - arch="x86_64", - pkg_type="rpm", - ), - Linux( - slug="rockylinux-9-arm64", - display_name="Rocky Linux 9 Arm64", - arch="arm64", - pkg_type="rpm", - ), - Linux( - slug="amazonlinux-2", - display_name="Amazon Linux 2", - arch="x86_64", - pkg_type="rpm", - ), - Linux( - slug="amazonlinux-2-arm64", - display_name="Amazon Linux 2 Arm64", - arch="arm64", - pkg_type="rpm", - ), - Linux( - slug="amazonlinux-2023", - display_name="Amazon Linux 2023", - arch="x86_64", - pkg_type="rpm", - ), - Linux( - slug="amazonlinux-2023-arm64", - display_name="Amazon Linux 2023 Arm64", - arch="arm64", - pkg_type="rpm", - ), - Linux( - slug="debian-11", - display_name="Debian 11", - arch="x86_64", - pkg_type="deb", - ), - Linux( - slug="debian-11-arm64", - display_name="Debian 11 Arm64", - arch="arm64", - pkg_type="deb", - ), - Linux( - slug="debian-12", - display_name="Debian 12", - arch="x86_64", - pkg_type="deb", - ), - Linux( - slug="debian-12-arm64", - display_name="Debian 12 Arm64", - arch="arm64", - pkg_type="deb", - ), - Linux( - slug="photonos-4", - display_name="Photon OS 4", - arch="x86_64", - pkg_type="rpm", - ), - Linux( - slug="photonos-4-arm64", - display_name="Photon OS 4 Arm64", - arch="arm64", - pkg_type="rpm", - ), - Linux( - slug="photonos-4", - display_name="Photon OS 4", - arch="x86_64", - pkg_type="rpm", - fips=True, - ), - Linux( - slug="photonos-4-arm64", - display_name="Photon OS 4 Arm64", - arch="arm64", - pkg_type="rpm", - fips=True, - ), - Linux( - slug="photonos-5", - display_name="Photon OS 5", - arch="x86_64", - pkg_type="rpm", - ), - Linux( - slug="photonos-5-arm64", - display_name="Photon OS 5 Arm64", - arch="arm64", - pkg_type="rpm", - ), - Linux( - slug="photonos-5", - display_name="Photon OS 5", - arch="x86_64", - pkg_type="rpm", - fips=True, - ), - Linux( - slug="photonos-5-arm64", - display_name="Photon OS 5 Arm64", - arch="arm64", - pkg_type="rpm", - fips=True, - ), - Linux( - slug="ubuntu-20.04", - display_name="Ubuntu 20.04", - arch="x86_64", - pkg_type="deb", - ), - Linux( - slug="ubuntu-20.04-arm64", - display_name="Ubuntu 20.04 Arm64", - arch="arm64", - pkg_type="deb", - ), + # jLinux( + # j slug="rockylinux-8", + # j display_name="Rocky Linux 8", + # j arch="x86_64", + # j pkg_type="rpm", + # j), + # jLinux( + # j slug="rockylinux-8-arm64", + # j display_name="Rocky Linux 8 Arm64", + # j arch="arm64", + # j pkg_type="rpm", + # j), + # jLinux( + # j slug="rockylinux-9", + # j display_name="Rocky Linux 9", + # j arch="x86_64", + # j pkg_type="rpm", + # j), + # jLinux( + # j slug="rockylinux-9-arm64", + # j display_name="Rocky Linux 9 Arm64", + # j arch="arm64", + # j pkg_type="rpm", + # ), + # Linux( + # slug="amazonlinux-2", + # display_name="Amazon Linux 2", + # arch="x86_64", + # pkg_type="rpm", + # ), + # Linux( + # slug="amazonlinux-2-arm64", + # display_name="Amazon Linux 2 Arm64", + # arch="arm64", + # pkg_type="rpm", + # ), + # Linux( + # slug="amazonlinux-2023", + # display_name="Amazon Linux 2023", + # arch="x86_64", + # pkg_type="rpm", + # ), + # Linux( + # slug="amazonlinux-2023-arm64", + # display_name="Amazon Linux 2023 Arm64", + # arch="arm64", + # pkg_type="rpm", + # ), + # Linux( + # slug="debian-11", + # display_name="Debian 11", + # arch="x86_64", + # pkg_type="deb", + # ), + # Linux( + # slug="debian-11-arm64", + # display_name="Debian 11 Arm64", + # arch="arm64", + # pkg_type="deb", + # ), + # Linux( + # slug="debian-12", + # display_name="Debian 12", + # arch="x86_64", + # pkg_type="deb", + # ), + # Linux( + # slug="debian-12-arm64", + # display_name="Debian 12 Arm64", + # arch="arm64", + # pkg_type="deb", + # ), + # Linux( + # slug="photonos-4", + # display_name="Photon OS 4", + # arch="x86_64", + # pkg_type="rpm", + # ), + # Linux( + # slug="photonos-4-arm64", + # display_name="Photon OS 4 Arm64", + # arch="arm64", + # pkg_type="rpm", + # ), + # Linux( + # slug="photonos-4", + # display_name="Photon OS 4", + # arch="x86_64", + # pkg_type="rpm", + # fips=True, + # ), + # Linux( + # slug="photonos-4-arm64", + # display_name="Photon OS 4 Arm64", + # arch="arm64", + # pkg_type="rpm", + # fips=True, + # ), + # Linux( + # slug="photonos-5", + # display_name="Photon OS 5", + # arch="x86_64", + # pkg_type="rpm", + # ), + # Linux( + # slug="photonos-5-arm64", + # display_name="Photon OS 5 Arm64", + # arch="arm64", + # pkg_type="rpm", + # ), + # Linux( + # slug="photonos-5", + # display_name="Photon OS 5", + # arch="x86_64", + # pkg_type="rpm", + # fips=True, + # ), + # Linux( + # slug="photonos-5-arm64", + # display_name="Photon OS 5 Arm64", + # arch="arm64", + # pkg_type="rpm", + # fips=True, + # ), + # Linux( + # slug="ubuntu-20.04", + # display_name="Ubuntu 20.04", + # arch="x86_64", + # pkg_type="deb", + # ), + # Linux( + # slug="ubuntu-20.04-arm64", + # display_name="Ubuntu 20.04 Arm64", + # arch="arm64", + # pkg_type="deb", + # ), Linux( slug="ubuntu-22.04", display_name="Ubuntu 22.04", @@ -343,28 +345,28 @@ def generate_workflows(ctx: Context): arch="arm64", pkg_type="deb", ), - Linux( - slug="ubuntu-24.04", - display_name="Ubuntu 24.04", - arch="x86_64", - pkg_type="deb", - ), - Linux( - slug="ubuntu-24.04-arm64", - display_name="Ubuntu 24.04 Arm64", - arch="arm64", - pkg_type="deb", - ), + # Linux( + # slug="ubuntu-24.04", + # display_name="Ubuntu 24.04", + # arch="x86_64", + # pkg_type="deb", + # ), + # Linux( + # slug="ubuntu-24.04-arm64", + # display_name="Ubuntu 24.04 Arm64", + # arch="arm64", + # pkg_type="deb", + # ), ], "macos": [ - MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), - MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), - MacOS( - slug="macos-13-arm64", - display_name="macOS 13 Arm64", - arch="arm64", - runner="macos-13-xlarge", - ), + # MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), + # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), + # MacOS( + # slug="macos-13-arm64", + # display_name="macOS 13 Arm64", + # arch="arm64", + # runner="macos-13-xlarge", + # ), ], "windows": [ Windows( From 2d5a782c4b5f012becb89bd04ea644d2e7f02d54 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 1 Nov 2024 16:41:51 -0700 Subject: [PATCH 036/225] use newer container for nwo --- .github/workflows/test-action-linux-gh.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 39a9e3cf8722..47f4d0624d7a 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -111,8 +111,8 @@ jobs: test: name: Test runs-on: linux-${{ inputs.arch }} - #container: - # image: ubuntu:20.04 + container: + image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} @@ -202,6 +202,10 @@ jobs: run: | sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + - name: Current Directory + run: | + echo $(pwd) + - name: Run Changed Tests id: run-fast-changed-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} From 53cb61685fdc1f4b726c4ce0560ce28b5a1cb4e8 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 1 Nov 2024 17:14:37 -0700 Subject: [PATCH 037/225] No longer use sudo --- .github/workflows/build-deps-ci-action.yml | 8 + .github/workflows/build-deps-onedir.yml | 10 +- .github/workflows/build-packages.yml | 240 +++++++------- .github/workflows/build-salt-onedir.yml | 10 +- .github/workflows/ci.yml | 255 ++++++++++++-- .github/workflows/nightly.yml | 313 +++++++++++++++--- .github/workflows/release.yml | 37 ++- .github/workflows/scheduled.yml | 250 ++++++++++++-- .github/workflows/staging.yml | 313 +++++++++++++++--- .../templates/build-ci-deps.yml.jinja | 56 +++- .../templates/build-packages.yml.jinja | 61 +++- .../workflows/templates/build-repos.yml.jinja | 6 +- .github/workflows/templates/ci.yml.jinja | 96 +++++- .../templates/test-salt-pkg.yml.jinja | 12 +- .../workflows/templates/test-salt.yml.jinja | 6 +- .github/workflows/test-action-linux-gh.yml | 22 +- .github/workflows/test-action-windows-gh.yml | 18 +- .../workflows/test-packages-action-linux.yml | 75 ++--- cicd/shared-gh-workflows-context.yml | 1 - tools/ci.py | 6 + tools/precommit/workflows.py | 57 ++-- 21 files changed, 1464 insertions(+), 388 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 0bff3e58dd1f..f17fe17d2ead 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -24,6 +24,10 @@ on: required: true type: string description: Nox Tarball Cache Hash + kind: + required: true + type: string + description: Kine of dependencies to build; linux, macos, windows python-version: required: false type: string @@ -86,6 +90,7 @@ jobs: - generate-matrix runs-on: - linux-${{ matrix.arch }} + if: ${{ inputs.kind == 'linux' }} env: USE_S3_CACHE: 'false' timeout-minutes: 90 @@ -178,6 +183,7 @@ jobs: needs: - generate-matrix runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} + if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: fail-fast: false @@ -261,11 +267,13 @@ jobs: name: nox-macos-${{ matrix.arch }}-${{ inputs.nox-session }} path: nox.macos.${{ matrix.arch }}.tar.* + windows-dependencies: needs: - generate-matrix name: Windows runs-on: windows-latest + if: ${{ inputs.kind == 'windows' }} env: USE_S3_CACHE: 'false' timeout-minutes: 90 diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 6ee0717df08a..934928d14a7d 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -26,6 +26,10 @@ on: required: true type: string description: The version of python to use with relenv + kind: + type: string + required: true + description: The kind of tests to run windows, macos, or linux env: RELENV_DATA: "${{ github.workspace }}/.relenv" @@ -41,7 +45,7 @@ jobs: build-deps-linux: name: Linux - if: ${{ inputs.self-hosted-runners }} + if: ${{ inputs.self-hosted-runners && inputs.kind == 'linux' }} strategy: fail-fast: false matrix: @@ -86,7 +90,7 @@ jobs: build-deps-macos: name: macOS - if: ${{ inputs.github-hosted-runners }} + if: ${{ inputs.github-hosted-runners && inputs.kind == 'macOS' }} strategy: fail-fast: false max-parallel: 2 @@ -136,7 +140,7 @@ jobs: build-deps-windows: name: Windows - if: ${{ inputs.github-hosted-runners }} + if: ${{ inputs.github-hosted-runners && inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 80584aec496b..1132490620f9 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -16,6 +16,10 @@ on: required: true type: string description: The version of python to use with relenv + kind: + type: string + required: true + description: The kind of tests to run windows, macos, or linux sign-macos-packages: type: boolean default: false @@ -46,126 +50,11 @@ env: jobs: - build-macos-pkgs: - name: macOS - environment: ${{ inputs.environment }} - strategy: - fail-fast: false - matrix: - arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} - source: - - ${{ inputs.source }} - env: - PIP_INDEX_URL: https://pypi.org/simple - runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} - - steps: - - name: Check Package Signing Enabled - shell: bash - id: check-pkg-sign - run: | - if [ "${{ inputs.sign-macos-packages }}" == "true" ]; then - if [ "${{ (secrets.MAC_SIGN_APPLE_ACCT != '' && contains(fromJSON('["nightly", "staging"]'), inputs.environment)) && 'true' || 'false' }}" != "true" ]; then - MSG="Secrets for signing packages are not available. The packages created will NOT be signed." - echo "${MSG}" - echo "${MSG}" >> "${GITHUB_STEP_SUMMARY}" - echo "sign-pkgs=false" >> "$GITHUB_OUTPUT" - else - MSG="The packages created WILL be signed." - echo "${MSG}" - echo "${MSG}" >> "${GITHUB_STEP_SUMMARY}" - echo "sign-pkgs=true" >> "$GITHUB_OUTPUT" - fi - else - MSG="The sign-macos-packages input is false. The packages created will NOT be signed." - echo "${MSG}" - echo "${MSG}" >> "${GITHUB_STEP_SUMMARY}" - echo "sign-pkgs=false" >> "$GITHUB_OUTPUT" - fi - - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: 3.11 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - - name: Setup Salt Version - id: setup-salt-version - uses: ./.github/actions/setup-salt-version - with: - salt-version: "${{ inputs.salt-version }}" - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: salt-${{ inputs.salt-version }}-onedir-macos-${{ matrix.arch }}.tar.xz - path: artifacts/ - - - name: Prepare Package Signing - if: ${{ steps.check-pkg-sign.outputs.sign-pkgs == 'true' }} - run: | - echo ${{ secrets.MAC_SIGN_DEV_APP_CERT_B64 }} | base64 --decode > app-cert.p12 - echo ${{ secrets.MAC_SIGN_DEV_INSTALL_CERT_B64 }} | base64 --decode > install-cert.p12 - # Create SaltSigning keychain. This will contain the certificates for signing - security create-keychain -p "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" - # Append SaltSigning keychain to the search list - security list-keychains -d user -s "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" "$(security list-keychains -d user | sed s/\"//g)" - # Unlock the keychain so we can import certs - security unlock-keychain -p "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" - # Developer Application Certificate - security import "app-cert.p12" -t agg -k "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" -P "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" -A - rm app-cert.p12 - # Developer Installer Certificate - security import "install-cert.p12" -t agg -k "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" -P "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" -A - rm install-cert.p12 - security set-key-partition-list -S apple-tool:,apple: -k "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" &> /dev/null - - - name: Build MacOS Package - env: - DEV_APP_CERT: "${{ secrets.MAC_SIGN_DEV_APP_CERT }}" - DEV_INSTALL_CERT: "${{ secrets.MAC_SIGN_DEV_INSTALL_CERT }}" - APPLE_ACCT: "${{ secrets.MAC_SIGN_APPLE_ACCT }}" - APPLE_TEAM_ID: "${{ secrets.MAC_SIGN_APPLE_TEAM_ID }}" - APP_SPEC_PWD: "${{ secrets.MAC_SIGN_APP_SPEC_PWD }}" - run: | - tools pkg build macos --relenv-version=${{ inputs.relenv-version }} --python-version=${{ inputs.python-version }} ${{ - inputs.source == 'onedir' && - format( - '--onedir salt-{0}-onedir-macos-{1}.tar.xz --salt-version {0} {2}', - inputs.salt-version, - matrix.arch, - steps.check-pkg-sign.outputs.sign-pkgs == 'true' && '--sign' || '' - ) - || - format('--salt-version {0}', inputs.salt-version) - }} - - - name: Set Artifact Name - id: set-artifact-name - run: | - if [ "${{ inputs.source }}" != "src" ]; then - echo "artifact-name=salt-${{ inputs.salt-version }}-${{ matrix.arch }}-macos" >> "$GITHUB_OUTPUT" - else - echo "artifact-name=salt-${{ inputs.salt-version }}-${{ matrix.arch }}-macos-from-src" >> "$GITHUB_OUTPUT" - fi - - - name: Upload ${{ matrix.arch }} Package - uses: actions/upload-artifact@v4 - with: - name: ${{ steps.set-artifact-name.outputs.artifact-name }} - path: pkg/macos/salt-${{ inputs.salt-version }}-py3-*.pkg - retention-days: 7 - if-no-files-found: error - build-deb-packages: name: DEB runs-on: - linux-${{ matrix.arch }} + if: ${{ inputs.kind == 'linux' }} strategy: fail-fast: false matrix: @@ -262,6 +151,7 @@ jobs: name: RPM runs-on: - linux-${{ matrix.arch }} + if: ${{ inputs.kind == 'linux' }} strategy: fail-fast: false matrix: @@ -336,9 +226,127 @@ jobs: retention-days: 7 if-no-files-found: error + build-macos-pkgs: + name: macOS + environment: ${{ inputs.environment }} + if: ${{ inputs.kind == 'macos' }} + strategy: + fail-fast: false + matrix: + arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} + source: + - ${{ inputs.source }} + env: + PIP_INDEX_URL: https://pypi.org/simple + runs-on: + - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + + steps: + - name: Check Package Signing Enabled + shell: bash + id: check-pkg-sign + run: | + if [ "${{ inputs.sign-macos-packages }}" == "true" ]; then + if [ "${{ (secrets.MAC_SIGN_APPLE_ACCT != '' && contains(fromJSON('["nightly", "staging"]'), inputs.environment)) && 'true' || 'false' }}" != "true" ]; then + MSG="Secrets for signing packages are not available. The packages created will NOT be signed." + echo "${MSG}" + echo "${MSG}" >> "${GITHUB_STEP_SUMMARY}" + echo "sign-pkgs=false" >> "$GITHUB_OUTPUT" + else + MSG="The packages created WILL be signed." + echo "${MSG}" + echo "${MSG}" >> "${GITHUB_STEP_SUMMARY}" + echo "sign-pkgs=true" >> "$GITHUB_OUTPUT" + fi + else + MSG="The sign-macos-packages input is false. The packages created will NOT be signed." + echo "${MSG}" + echo "${MSG}" >> "${GITHUB_STEP_SUMMARY}" + echo "sign-pkgs=false" >> "$GITHUB_OUTPUT" + fi + + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: 3.11 + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + + - name: Setup Salt Version + id: setup-salt-version + uses: ./.github/actions/setup-salt-version + with: + salt-version: "${{ inputs.salt-version }}" + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: salt-${{ inputs.salt-version }}-onedir-macos-${{ matrix.arch }}.tar.xz + path: artifacts/ + + - name: Prepare Package Signing + if: ${{ steps.check-pkg-sign.outputs.sign-pkgs == 'true' }} + run: | + echo ${{ secrets.MAC_SIGN_DEV_APP_CERT_B64 }} | base64 --decode > app-cert.p12 + echo ${{ secrets.MAC_SIGN_DEV_INSTALL_CERT_B64 }} | base64 --decode > install-cert.p12 + # Create SaltSigning keychain. This will contain the certificates for signing + security create-keychain -p "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" + # Append SaltSigning keychain to the search list + security list-keychains -d user -s "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" "$(security list-keychains -d user | sed s/\"//g)" + # Unlock the keychain so we can import certs + security unlock-keychain -p "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" + # Developer Application Certificate + security import "app-cert.p12" -t agg -k "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" -P "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" -A + rm app-cert.p12 + # Developer Installer Certificate + security import "install-cert.p12" -t agg -k "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" -P "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" -A + rm install-cert.p12 + security set-key-partition-list -S apple-tool:,apple: -k "${{ secrets.MAC_SIGN_DEV_PASSWORD }}" "${{ secrets.MAC_SIGN_DEV_KEYCHAIN }}" &> /dev/null + + - name: Build MacOS Package + env: + DEV_APP_CERT: "${{ secrets.MAC_SIGN_DEV_APP_CERT }}" + DEV_INSTALL_CERT: "${{ secrets.MAC_SIGN_DEV_INSTALL_CERT }}" + APPLE_ACCT: "${{ secrets.MAC_SIGN_APPLE_ACCT }}" + APPLE_TEAM_ID: "${{ secrets.MAC_SIGN_APPLE_TEAM_ID }}" + APP_SPEC_PWD: "${{ secrets.MAC_SIGN_APP_SPEC_PWD }}" + run: | + tools pkg build macos --relenv-version=${{ inputs.relenv-version }} --python-version=${{ inputs.python-version }} ${{ + inputs.source == 'onedir' && + format( + '--onedir salt-{0}-onedir-macos-{1}.tar.xz --salt-version {0} {2}', + inputs.salt-version, + matrix.arch, + steps.check-pkg-sign.outputs.sign-pkgs == 'true' && '--sign' || '' + ) + || + format('--salt-version {0}', inputs.salt-version) + }} + + - name: Set Artifact Name + id: set-artifact-name + run: | + if [ "${{ inputs.source }}" != "src" ]; then + echo "artifact-name=salt-${{ inputs.salt-version }}-${{ matrix.arch }}-macos" >> "$GITHUB_OUTPUT" + else + echo "artifact-name=salt-${{ inputs.salt-version }}-${{ matrix.arch }}-macos-from-src" >> "$GITHUB_OUTPUT" + fi + + - name: Upload ${{ matrix.arch }} Package + uses: actions/upload-artifact@v4 + with: + name: ${{ steps.set-artifact-name.outputs.artifact-name }} + path: pkg/macos/salt-${{ inputs.salt-version }}-py3-*.pkg + retention-days: 7 + if-no-files-found: error + build-windows-pkgs: name: Windows environment: ${{ inputs.environment }} + if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index d117b6b2425d..b0f85d05d251 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -26,6 +26,10 @@ on: required: true type: string description: The version of python to use with relenv + kind: + type: string + required: true + description: The kind of tests to run windows, macos, or linux env: RELENV_DATA: "${{ github.workspace }}/.relenv" @@ -41,7 +45,7 @@ jobs: build-salt-linux: name: Linux - if: ${{ inputs.self-hosted-runners }} + if: ${{ inputs.self-hosted-runners && inputs.kind == 'linux' }} env: USE_S3_CACHE: 'false' strategy: @@ -93,7 +97,7 @@ jobs: build-salt-macos: name: macOS - if: ${{ inputs.github-hosted-runners }} + if: ${{ inputs.self-hosted-runners && inputs.kind == 'macos' }} strategy: fail-fast: false max-parallel: 2 @@ -148,7 +152,7 @@ jobs: build-salt-windows: name: Windows - if: ${{ inputs.github-hosted-runners }} + if: ${{ inputs.self-hosted-runners && inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 90f4486389de..1aea18af0512 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -416,9 +416,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir: - name: Build Dependencies Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + build-deps-onedir-linux: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -429,13 +429,61 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux - build-salt-onedir: + build-deps-onedir-macos: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: macos + + build-deps-onedir-windows: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-salt-onedir-linux: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + needs: + - prepare-workflow + - build-deps-onedir-linux + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + + build-salt-onedir-macos: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} needs: - prepare-workflow - - build-deps-onedir + - build-deps-onedir-macos - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -445,13 +493,61 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: macos + + build-salt-onedir-windows: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + needs: + - prepare-workflow + - build-deps-onedir-windows + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-pkgs-onedir-linux: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-linux + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + source: "onedir" + + build-pkgs-onedir-macos: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "onedir" + kind: macos - build-pkgs-onedir: + build-pkgs-onedir-windows: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-windows uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -459,12 +555,45 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" - build-ci-deps: + kind: windows + build-ci-deps-linux: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-linux + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: linux + + build-ci-deps-macos: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: macos + + build-ci-deps-windows: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-windows uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -473,14 +602,15 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: windows ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -500,8 +630,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -516,13 +646,35 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: + name: macOS 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -542,8 +694,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -563,8 +715,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -584,8 +736,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -605,8 +757,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -626,8 +778,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -647,7 +799,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 @@ -668,7 +820,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 @@ -689,7 +841,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 @@ -705,12 +857,34 @@ jobs: workflow-slug: ci default-timeout: 180 + macos-12: + name: macOS 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 @@ -731,7 +905,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 @@ -755,10 +929,13 @@ jobs: PIP_INDEX_URL: https://pypi.org/simple needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows - windows-2016 - windows-2019 - windows-2022 + - macos-12 - ubuntu-2204 - ubuntu-2204-arm64 steps: @@ -893,17 +1070,25 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir - - build-salt-onedir + - build-deps-onedir-linux + - build-deps-onedir-macos + - build-deps-onedir-windows + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows - combine-all-code-coverage - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows - windows-2016 - windows-2019 - windows-2022 + - macos-12 - ubuntu-2204 - ubuntu-2204-arm64 - 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 diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 2db52c9cd5ef..81b3e0b00538 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -470,9 +470,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir: - name: Build Dependencies Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + build-deps-onedir-linux: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -483,13 +483,44 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux - build-salt-onedir: + build-deps-onedir-macos: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: macos + + build-deps-onedir-windows: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-salt-onedir-linux: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} needs: - prepare-workflow - - build-deps-onedir + - build-deps-onedir-linux - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -499,31 +530,105 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux - build-pkgs-onedir: + build-salt-onedir-macos: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} + needs: + - prepare-workflow + - build-deps-onedir-macos + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: macos + + build-salt-onedir-windows: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + needs: + - prepare-workflow + - build-deps-onedir-windows + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-pkgs-onedir-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux source: "onedir" environment: nightly sign-macos-packages: false sign-windows-packages: false secrets: inherit - build-pkgs-src: + build-pkgs-src-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + source: "src" + environment: nightly + sign-macos-packages: false + sign-windows-packages: false + secrets: inherit + + build-pkgs-onedir-macos: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "onedir" + kind: macos + environment: nightly + sign-macos-packages: false + sign-windows-packages: false + secrets: inherit + + build-pkgs-src-macos: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -531,16 +636,71 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "src" + kind: macos environment: nightly sign-macos-packages: false sign-windows-packages: false secrets: inherit - build-ci-deps: + + build-pkgs-onedir-windows: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "onedir" + kind: windows + environment: nightly + sign-macos-packages: false + sign-windows-packages: false + secrets: inherit + + build-pkgs-src-windows: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "src" + kind: windows + environment: nightly + sign-macos-packages: false + sign-windows-packages: false + secrets: inherit + build-ci-deps-linux: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: linux + + build-ci-deps-macos: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -549,14 +709,31 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: macos + + build-ci-deps-windows: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: windows ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -576,8 +753,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -592,13 +769,35 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: + name: macOS 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -618,8 +817,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -639,8 +838,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -660,8 +859,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -681,8 +880,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -702,8 +901,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -723,7 +922,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 @@ -744,7 +943,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 @@ -765,7 +964,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 @@ -781,12 +980,34 @@ jobs: workflow-slug: nightly default-timeout: 360 + macos-12: + name: macOS 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 @@ -807,7 +1028,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 @@ -933,7 +1154,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-linux strategy: fail-fast: false matrix: @@ -1062,7 +1283,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-linux strategy: fail-fast: false matrix: @@ -1238,7 +1459,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-windows strategy: fail-fast: false matrix: @@ -1340,7 +1561,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-macos strategy: fail-fast: false matrix: @@ -1564,10 +1785,13 @@ jobs: - build-windows-repo - build-macos-repo - build-onedir-repo - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows - windows-2016 - windows-2019 - windows-2022 + - macos-12 - ubuntu-2204 - ubuntu-2204-arm64 @@ -1624,12 +1848,19 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir - - build-salt-onedir - - build-pkgs-src + - build-deps-onedir-linux + - build-deps-onedir-macos + - build-deps-onedir-windows + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows + - build-pkgs-src-linux + - build-pkgs-src-macos + - build-pkgs-src-windows - publish-repositories - 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 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 49ad108b7db1..7e2b19c58b4e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -169,7 +169,7 @@ jobs: path: artifacts/salt-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz* retention-days: 7 if-no-files-found: error - build-ci-deps: + build-ci-deps-linux: name: CI Deps needs: - prepare-workflow @@ -182,6 +182,37 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: linux + + build-ci-deps-macos: + name: CI Deps + needs: + - prepare-workflow + - download-onedir-artifact + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: macos + + build-ci-deps-windows: + name: CI Deps + needs: + - prepare-workflow + - download-onedir-artifact + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: windows backup: name: Backup @@ -445,7 +476,9 @@ jobs: - pkg-download-tests - release - publish-pypi - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index dd561fd04356..7809e6dc5243 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -455,9 +455,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir: - name: Build Dependencies Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + build-deps-onedir-linux: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -468,13 +468,61 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux - build-salt-onedir: + build-deps-onedir-macos: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: macos + + build-deps-onedir-windows: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-salt-onedir-linux: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + needs: + - prepare-workflow + - build-deps-onedir-linux + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + + build-salt-onedir-macos: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} needs: - prepare-workflow - - build-deps-onedir + - build-deps-onedir-macos - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -484,13 +532,61 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: macos + + build-salt-onedir-windows: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + needs: + - prepare-workflow + - build-deps-onedir-windows + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-pkgs-onedir-linux: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-linux + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + source: "onedir" + + build-pkgs-onedir-macos: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "onedir" + kind: macos - build-pkgs-onedir: + build-pkgs-onedir-windows: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-windows uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -498,12 +594,45 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" - build-ci-deps: + kind: windows + build-ci-deps-linux: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-linux + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: linux + + build-ci-deps-macos: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: macos + + build-ci-deps-windows: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-windows uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -512,14 +641,15 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: windows ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -539,8 +669,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -555,13 +685,35 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: + name: macOS 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -581,8 +733,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -602,8 +754,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -623,8 +775,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -644,8 +796,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -665,8 +817,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -686,7 +838,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 @@ -707,7 +859,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 @@ -728,7 +880,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 @@ -744,12 +896,34 @@ jobs: workflow-slug: scheduled default-timeout: 360 + macos-12: + name: macOS 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 @@ -770,7 +944,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 @@ -800,16 +974,24 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir - - build-salt-onedir - - build-ci-deps + - build-deps-onedir-linux + - build-deps-onedir-macos + - build-deps-onedir-windows + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows - windows-2016 - windows-2019 - windows-2022 + - macos-12 - ubuntu-2204 - ubuntu-2204-arm64 - 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 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index b009bb5cf19b..b99a24a82913 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -452,9 +452,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir: - name: Build Dependencies Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + build-deps-onedir-linux: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -465,13 +465,78 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux - build-salt-onedir: + build-deps-onedir-macos: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: macos + + build-deps-onedir-windows: + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: windows + + build-salt-onedir-linux: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + needs: + - prepare-workflow + - build-deps-onedir-linux + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + + build-salt-onedir-macos: + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} + needs: + - prepare-workflow + - build-deps-onedir-macos + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: macos + + build-salt-onedir-windows: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} needs: - prepare-workflow - - build-deps-onedir + - build-deps-onedir-windows - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -481,31 +546,71 @@ jobs: github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: windows - build-pkgs-onedir: + build-pkgs-onedir-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} relenv-version: "0.18.0" python-version: "3.10.15" + kind: linux source: "onedir" environment: staging sign-macos-packages: false sign-windows-packages: ${{ inputs.sign-windows-packages }} secrets: inherit - build-pkgs-src: + build-pkgs-src-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + kind: linux + source: "src" + environment: staging + sign-macos-packages: false + sign-windows-packages: ${{ inputs.sign-windows-packages }} + secrets: inherit + + build-pkgs-onedir-macos: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "onedir" + kind: macos + environment: staging + sign-macos-packages: false + sign-windows-packages: ${{ inputs.sign-windows-packages }} + secrets: inherit + + build-pkgs-src-macos: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -513,16 +618,55 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "src" + kind: macos environment: staging sign-macos-packages: false sign-windows-packages: ${{ inputs.sign-windows-packages }} secrets: inherit - build-ci-deps: + + build-pkgs-onedir-windows: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "onedir" + kind: windows + environment: staging + sign-macos-packages: false + sign-windows-packages: ${{ inputs.sign-windows-packages }} + secrets: inherit + + build-pkgs-src-windows: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "0.18.0" + python-version: "3.10.15" + source: "src" + kind: windows + environment: staging + sign-macos-packages: false + sign-windows-packages: ${{ inputs.sign-windows-packages }} + secrets: inherit + build-ci-deps-linux: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -531,14 +675,47 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: linux + + build-ci-deps-macos: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: macos + + build-ci-deps-windows: + name: CI Deps + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: 2022.8.7 + python-version: "3.10" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: windows ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -558,8 +735,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -574,13 +751,35 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: + name: macOS 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + windows-2016-nsis-pkg-tests: name: Windows 2016 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -600,8 +799,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2016 @@ -621,8 +820,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -642,8 +841,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -663,8 +862,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -684,8 +883,8 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -705,7 +904,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2016 @@ -726,7 +925,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2019 @@ -747,7 +946,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: windows-2022 @@ -763,12 +962,34 @@ jobs: workflow-slug: staging default-timeout: 180 + macos-12: + name: macOS 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-12 + runner: macos-12 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04 @@ -789,7 +1010,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: ubuntu-22.04-arm64 @@ -915,7 +1136,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-linux strategy: fail-fast: false matrix: @@ -1044,7 +1265,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-linux strategy: fail-fast: false matrix: @@ -1222,7 +1443,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-windows strategy: fail-fast: false matrix: @@ -1324,7 +1545,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir + - build-pkgs-onedir-macos strategy: fail-fast: false matrix: @@ -1672,14 +1893,18 @@ jobs: needs: - prepare-workflow - upload-release-artifacts - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows - windows-2016 - windows-2019 - windows-2022 + - macos-12 - ubuntu-2204 - ubuntu-2204-arm64 - 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 @@ -1747,9 +1972,15 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir - - build-salt-onedir - - build-pkgs-src + - build-deps-onedir-linux + - build-deps-onedir-macos + - build-deps-onedir-windows + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows + - build-pkgs-src-linux + - build-pkgs-src-macos + - build-pkgs-src-windows - publish-repositories - upload-release-artifacts - pkg-download-tests diff --git a/.github/workflows/templates/build-ci-deps.yml.jinja b/.github/workflows/templates/build-ci-deps.yml.jinja index 59f2bf0b9bcf..28d01b517eeb 100644 --- a/.github/workflows/templates/build-ci-deps.yml.jinja +++ b/.github/workflows/templates/build-ci-deps.yml.jinja @@ -1,6 +1,7 @@ - build-ci-deps: - <%- do test_salt_needs.append("build-ci-deps") %> + build-ci-deps-linux: + <%- do test_salt_needs.append("build-ci-deps-linux") %> + <%- do test_salt_linux_needs.append("build-ci-deps-linux") %> name: CI Deps <%- if workflow_slug != 'release' %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -8,7 +9,7 @@ needs: - prepare-workflow <%- if workflow_slug != 'release' %> - - build-salt-onedir + - build-salt-onedir-linux <%- else %> - download-onedir-artifact <%- endif %> @@ -20,3 +21,52 @@ salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: linux + + build-ci-deps-macos: + <%- do test_salt_needs.append("build-ci-deps-macos") %> + <%- do test_salt_macos_needs.append("build-ci-deps-macos") %> + name: CI Deps + <%- if workflow_slug != 'release' %> + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + <%- endif %> + needs: + - prepare-workflow + <%- if workflow_slug != 'release' %> + - build-salt-onedir-macos + <%- else %> + - download-onedir-artifact + <%- endif %> + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: <{ nox_version }> + python-version: "<{ gh_actions_workflows_python_version }>" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: macos + + build-ci-deps-windows: + <%- do test_salt_needs.append("build-ci-deps-windows") %> + <%- do test_salt_windows_needs.append("build-ci-deps-windows") %> + name: CI Deps + <%- if workflow_slug != 'release' %> + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + <%- endif %> + needs: + - prepare-workflow + <%- if workflow_slug != 'release' %> + - build-salt-onedir-windows + <%- else %> + - download-onedir-artifact + <%- endif %> + uses: ./.github/workflows/build-deps-ci-action.yml + with: + nox-session: ci-test-onedir + nox-version: <{ nox_version }> + python-version: "<{ gh_actions_workflows_python_version }>" + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> + nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" + kind: windows diff --git a/.github/workflows/templates/build-packages.yml.jinja b/.github/workflows/templates/build-packages.yml.jinja index dd729c25a276..cc627ec4bce7 100644 --- a/.github/workflows/templates/build-packages.yml.jinja +++ b/.github/workflows/templates/build-packages.yml.jinja @@ -4,7 +4,7 @@ <%- set pkg_types = ("onedir",) %> <%- endif -%> <%- for backend in pkg_types %> - <%- set job_name = "build-pkgs-{}".format(backend) %> + <%- set job_name = "build-pkgs-{}-linux".format(backend) %> <%- if backend == "src" %> <%- do conclusion_needs.append(job_name) %> <%- endif %> @@ -14,13 +14,14 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" + kind: linux source: "<{ backend }>" <%- if gh_environment != "ci" %> environment: <{ gh_environment }> @@ -30,3 +31,59 @@ <%- endif %> <%- endfor %> + <%- for backend in pkg_types %> + <%- set job_name = "build-pkgs-{}-macos".format(backend) %> + <%- if backend == "src" %> + <%- do conclusion_needs.append(job_name) %> + <%- endif %> + + <{ job_name }>: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-macos + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "<{ relenv_version }>" + python-version: "<{ python_version }>" + source: "<{ backend }>" + kind: macos + <%- if gh_environment != "ci" %> + environment: <{ gh_environment }> + sign-macos-packages: false + sign-windows-packages: <% if gh_environment == 'nightly' -%> false <%- else -%> ${{ inputs.sign-windows-packages }} <%- endif %> + secrets: inherit + <%- endif %> + + <%- endfor %> + <%- for backend in pkg_types %> + <%- set job_name = "build-pkgs-{}-windows".format(backend) %> + <%- if backend == "src" %> + <%- do conclusion_needs.append(job_name) %> + <%- endif %> + + <{ job_name }>: + name: Build Packages + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-salt-onedir-windows + uses: ./.github/workflows/build-packages.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} + relenv-version: "<{ relenv_version }>" + python-version: "<{ python_version }>" + source: "<{ backend }>" + kind: windows + <%- if gh_environment != "ci" %> + environment: <{ gh_environment }> + sign-macos-packages: false + sign-windows-packages: <% if gh_environment == 'nightly' -%> false <%- else -%> ${{ inputs.sign-windows-packages }} <%- endif %> + secrets: inherit + <%- endif %> + + <%- endfor %> diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index 77c45623d2cd..a73abe4d91ce 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -20,7 +20,11 @@ needs: - prepare-workflow <%- if type not in ("src", "onedir") %> - - build-pkgs-onedir + <%- if type in ("deb", "rpm") %> + - build-pkgs-onedir-linux + <%- else %> + - build-pkgs-onedir-<{ type }> + <%- endif %> <%- elif type == 'onedir' %> - build-salt-onedir <%- elif type == 'src' %> diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 8702b761096a..0e41c6480ce3 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -245,12 +245,12 @@ <%- endif %> - <%- set job_name = "build-deps-onedir" %> + <%- set job_name = "build-deps-onedir-linux" %> <%- if includes.get(job_name, True) %> <{ job_name }>: <%- do conclusion_needs.append(job_name) %> - name: Build Dependencies Onedir + name: Build Onedir Dependencies if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow @@ -262,11 +262,98 @@ github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" + kind: linux <%- endif %> + <%- set job_name = "build-deps-onedir-macos" %> + <%- if includes.get(job_name, True) %> + + <{ job_name }>: + <%- do conclusion_needs.append(job_name) %> + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "<{ relenv_version }>" + python-version: "<{ python_version }>" + kind: macos + + <%- endif %> + + <%- set job_name = "build-deps-onedir-windows" %> + <%- if includes.get(job_name, True) %> + + <{ job_name }>: + <%- do conclusion_needs.append(job_name) %> + name: Build Onedir Dependencies + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + uses: ./.github/workflows/build-deps-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "<{ relenv_version }>" + python-version: "<{ python_version }>" + kind: windows + + <%- endif %> + + + <%- set job_name = "build-salt-onedir-linux" %> + <%- if includes.get(job_name, True) %> - <%- set job_name = "build-salt-onedir" %> + <{ job_name }>: + <%- do conclusion_needs.append(job_name) %> + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + needs: + - prepare-workflow + - build-deps-onedir-linux + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "<{ relenv_version }>" + python-version: "<{ python_version }>" + kind: linux + + <%- endif %> + <%- set job_name = "build-salt-onedir-macos" %> + <%- if includes.get(job_name, True) %> + + <{ job_name }>: + <%- do conclusion_needs.append(job_name) %> + name: Build Salt Onedir + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + needs: + - prepare-workflow + - build-deps-onedir-macos + - build-source-tarball + uses: ./.github/workflows/build-salt-onedir.yml + with: + cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + relenv-version: "<{ relenv_version }>" + python-version: "<{ python_version }>" + kind: macos + + <%- endif %> + <%- set job_name = "build-salt-onedir-windows" %> <%- if includes.get(job_name, True) %> <{ job_name }>: @@ -275,7 +362,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow - - build-deps-onedir + - build-deps-onedir-windows - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -285,6 +372,7 @@ github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" + kind: windows <%- endif %> diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 5feb9bf3dbed..2fd4e3c802b6 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -11,8 +11,8 @@ <%- endif %> needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-linux + - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: <{ os.slug }> @@ -47,8 +47,8 @@ <%- endif %> needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-macos + - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: <{ os.slug }> @@ -80,8 +80,8 @@ <%- endif %> needs: - prepare-workflow - - build-pkgs-onedir - - build-ci-deps + - build-pkgs-onedir-windows + - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: <{ os.slug }> diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 7d018ba1757d..2ef384f512ea 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -16,7 +16,7 @@ <%- endif %> needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-windows uses: ./.github/workflows/test-action-windows-gh.yml with: distro-slug: <{ os.slug }> @@ -47,7 +47,7 @@ <%- endif %> needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-macos uses: ./.github/workflows/test-action-macos.yml with: distro-slug: <{ os.slug }> @@ -79,7 +79,7 @@ <%- endif %> needs: - prepare-workflow - - build-ci-deps + - build-ci-deps-linux uses: ./.github/workflows/test-action-linux-gh.yml with: distro-slug: <{ os.slug }> diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml index 47f4d0624d7a..3c813636fad9 100644 --- a/.github/workflows/test-action-linux-gh.yml +++ b/.github/workflows/test-action-linux-gh.yml @@ -195,16 +195,16 @@ jobs: with: name: testrun-changed-files.txt + - name: Current Directory + run: | + pwd + - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - - - name: Current Directory - run: | - echo $(pwd) + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - name: Run Changed Tests id: run-fast-changed-tests @@ -220,7 +220,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ --from-filenames=testrun-changed-files.txt @@ -238,7 +238,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code - name: Run Slow Tests @@ -255,7 +255,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests @@ -272,7 +272,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests @@ -289,7 +289,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests @@ -306,7 +306,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --slow-tests --core-tests -k "mac or darwin" - name: Fix file ownership diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml index 4f6f9f64816a..8b617cc070d4 100644 --- a/.github/workflows/test-action-windows-gh.yml +++ b/.github/workflows/test-action-windows-gh.yml @@ -193,7 +193,7 @@ jobs: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - name: Run Changed Tests id: run-fast-changed-tests @@ -209,7 +209,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ --from-filenames=testrun-changed-files.txt @@ -227,7 +227,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code - name: Run Slow Tests @@ -244,7 +244,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests @@ -261,7 +261,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests @@ -278,7 +278,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests @@ -295,13 +295,9 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --slow-tests --core-tests -k "mac or darwin" - - name: Fix file ownership - run: | - sudo chown -R "$(id -un)" . - - name: Combine Coverage Reports if: always() && inputs.skip-code-coverage == false run: | diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 47a5e2cdc500..7b34381753d7 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -76,12 +76,7 @@ jobs: generate-matrix: name: Generate Matrix - runs-on: - # We need to run on our self-hosted runners because we need proper credentials - # for boto3 to scan through our repositories. - - self-hosted - - linux - - x86_64 + runs-on: ubuntu-latest outputs: pkg-matrix-include: ${{ steps.generate-pkg-matrix.outputs.matrix }} build-reports: ${{ steps.generate-pkg-matrix.outputs.build-reports }} @@ -110,9 +105,10 @@ jobs: test: name: Test runs-on: - - self-hosted - - linux - - bastion + - linux-${{ inputs.arch }} + container: + image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: - generate-matrix @@ -155,6 +151,17 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + - name: List Packages run: | tree artifacts/pkg/ @@ -169,55 +176,37 @@ jobs: with: cache-prefix: ${{ inputs.cache-prefix }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Start VM - id: spin-up-vm - run: | - tools --timestamps vm create --environment "${SPB_ENVIRONMENT}" --retries=2 ${{ inputs.distro-slug }} - - name: List Free Space run: | tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - name: Upload Checkout To VM - run: | - tools --timestamps vm rsync ${{ inputs.distro-slug }} - - name: Decompress .nox Directory run: | - tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + nox --force-color -e decompress-dependencies -- macos ${{ inputs.arch }} - name: Show System Info run: | tools --timestamps --timeout-secs=1800 vm test --skip-requirements-install --print-system-information-only \ --nox-session=${{ inputs.nox-session }}-pkgs ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} - + #- name: Run Package Tests + # run: | + # tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install ${{ inputs.fips && '--fips ' || '' }}\ + # --nox-session=${{ inputs.nox-session }}-pkgs --rerun-failures ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} \ + # ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Run Package Tests + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install ${{ inputs.fips && '--fips ' || '' }}\ - --nox-session=${{ inputs.nox-session }}-pkgs --rerun-failures ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} \ + sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - - name: Download Test Run Artifacts - id: download-artifacts-from-vm - if: always() && steps.spin-up-vm.outcome == 'success' - run: | - tools --timestamps vm download-artifacts ${{ inputs.distro-slug }} - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - tree -a artifacts - - - name: Destroy VM - if: always() - run: | - tools --timestamps vm destroy --no-wait ${{ inputs.distro-slug }} || true - - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' uses: actions/upload-artifact@v4 diff --git a/cicd/shared-gh-workflows-context.yml b/cicd/shared-gh-workflows-context.yml index 4a2ca3bd5951..a5a5f55e4828 100644 --- a/cicd/shared-gh-workflows-context.yml +++ b/cicd/shared-gh-workflows-context.yml @@ -5,6 +5,5 @@ mandatory_os_slugs: - rockylinux-9 - amazonlinux-2023-arm64 - photonos-5-arm64 - - macos-12 - ubuntu-24.04-arm64 - windows-2022 diff --git a/tools/ci.py b/tools/ci.py index 3bb8ef4d72d7..25e70a836a81 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -298,7 +298,13 @@ def define_jobs( "build-docs": True, "build-source-tarball": True, "build-deps-onedir": True, + "build-deps-onedir-linux": True, + "build-deps-onedir-macos": True, + "build-deps-onedir-windows": True, "build-salt-onedir": True, + "build-salt-onedir-linux": True, + "build-salt-onedir-macos": True, + "build-salt-onedir-windows": True, "build-pkgs": True, "build-deps-ci": True, } diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 5aed95498124..8cfc0f6662c1 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -13,9 +13,7 @@ from ptscripts import Context, command_group import tools.utils - -# from tools.utils import Linux, MacOS, PlatformDefinitions, Windows -from tools.utils import Linux, PlatformDefinitions, Windows +from tools.utils import Linux, MacOS, PlatformDefinitions, Windows log = logging.getLogger(__name__) @@ -111,7 +109,7 @@ # ), ], "macos": [ - # MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), + MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), # MacOS( # slug="macos-13-arm64", @@ -197,29 +195,29 @@ def generate_workflows(ctx: Context): test_salt_pkg_listing = PlatformDefinitions( { "linux": [ - # jLinux( - # j slug="rockylinux-8", - # j display_name="Rocky Linux 8", - # j arch="x86_64", - # j pkg_type="rpm", - # j), - # jLinux( - # j slug="rockylinux-8-arm64", - # j display_name="Rocky Linux 8 Arm64", - # j arch="arm64", - # j pkg_type="rpm", - # j), - # jLinux( - # j slug="rockylinux-9", - # j display_name="Rocky Linux 9", - # j arch="x86_64", - # j pkg_type="rpm", - # j), - # jLinux( - # j slug="rockylinux-9-arm64", - # j display_name="Rocky Linux 9 Arm64", - # j arch="arm64", - # j pkg_type="rpm", + # Linux( + # slug="rockylinux-8", + # display_name="Rocky Linux 8", + # arch="x86_64", + # pkg_type="rpm", + # ), + # Linux( + # slug="rockylinux-8-arm64", + # display_name="Rocky Linux 8 Arm64", + # arch="arm64", + # pkg_type="rpm", + # ), + # Linux( + # slug="rockylinux-9", + # display_name="Rocky Linux 9", + # arch="x86_64", + # pkg_type="rpm", + # ), + # Linux( + # slug="rockylinux-9-arm64", + # display_name="Rocky Linux 9 Arm64", + # arch="arm64", + # pkg_type="rpm", # ), # Linux( # slug="amazonlinux-2", @@ -359,7 +357,7 @@ def generate_workflows(ctx: Context): # ), ], "macos": [ - # MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), + MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), # MacOS( # slug="macos-13-arm64", @@ -476,6 +474,9 @@ def generate_workflows(ctx: Context): "includes": includes, "conclusion_needs": NeedsTracker(), "test_salt_needs": NeedsTracker(), + "test_salt_linux_needs": NeedsTracker(), + "test_salt_macos_needs": NeedsTracker(), + "test_salt_windows_needs": NeedsTracker(), "test_salt_pkg_needs": NeedsTracker(), "test_repo_needs": NeedsTracker(), "prepare_workflow_needs": NeedsTracker(), From 088e3b700d82be5f89c9becf9d2ff7a5aca30f17 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 1 Nov 2024 21:46:59 -0700 Subject: [PATCH 038/225] Less macos --- tools/ci.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 25e70a836a81..0001d9831fdd 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -299,11 +299,11 @@ def define_jobs( "build-source-tarball": True, "build-deps-onedir": True, "build-deps-onedir-linux": True, - "build-deps-onedir-macos": True, + "build-deps-onedir-macos": False, "build-deps-onedir-windows": True, "build-salt-onedir": True, "build-salt-onedir-linux": True, - "build-salt-onedir-macos": True, + "build-salt-onedir-macos": False, "build-salt-onedir-windows": True, "build-pkgs": True, "build-deps-ci": True, From e01318d105b85a35bd9079516e55177a8f73fdf5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 1 Nov 2024 21:50:34 -0700 Subject: [PATCH 039/225] Less macos --- .github/actions/cached-virtualenv/action.yml | 1 - .github/workflows/ci.yml | 4 +-- .github/workflows/nightly.yml | 8 +++-- .github/workflows/release.yml | 4 ++- .github/workflows/staging.yml | 16 +++++++--- .../workflows/templates/build-repos.yml.jinja | 8 +++-- .../test-salt-pkg-repo-downloads.yml.jinja | 8 +++-- .../workflows/templates/test-salt.yml.jinja | 2 +- .../workflows/test-packages-action-linux.yml | 6 ++-- .../test-packages-action-windows.yml | 30 ++----------------- tools/ci.py | 3 ++ 11 files changed, 45 insertions(+), 45 deletions(-) diff --git a/.github/actions/cached-virtualenv/action.yml b/.github/actions/cached-virtualenv/action.yml index f3d7a39f87b1..a24b805599df 100644 --- a/.github/actions/cached-virtualenv/action.yml +++ b/.github/actions/cached-virtualenv/action.yml @@ -51,7 +51,6 @@ runs: - name: Cache VirtualEnv id: cache-virtualenv - if: false # Disable cache since aws is going away. uses: ./.github/actions/cache with: key: ${{ steps.setup-cache-key.outputs.cache-key }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1aea18af0512..6cf42c4ff421 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -796,7 +796,7 @@ jobs: windows-2016: name: Windows 2016 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -817,7 +817,7 @@ jobs: windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - build-ci-deps-windows diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 81b3e0b00538..91a369f8d919 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1054,7 +1054,9 @@ jobs: needs: - prepare-workflow - build-source-tarball - - build-pkgs-src + - build-pkgs-src-linux + - build-pkgs-src-macos + - build-pkgs-src-windows strategy: fail-fast: false matrix: @@ -1652,7 +1654,9 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows strategy: fail-fast: false matrix: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7e2b19c58b4e..1b82cc0e2a0f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -284,7 +284,9 @@ jobs: needs: - prepare-workflow - publish-repositories - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows - download-onedir-artifact uses: ./.github/workflows/test-package-downloads-action.yml with: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index b99a24a82913..586d05f66411 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1036,7 +1036,9 @@ jobs: needs: - prepare-workflow - build-source-tarball - - build-pkgs-src + - build-pkgs-src-linux + - build-pkgs-src-macos + - build-pkgs-src-windows strategy: fail-fast: false matrix: @@ -1636,7 +1638,9 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-salt-onedir + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows strategy: fail-fast: false matrix: @@ -1873,8 +1877,12 @@ jobs: needs: - prepare-workflow - publish-repositories - - build-ci-deps - - build-salt-onedir + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows uses: ./.github/workflows/test-package-downloads-action.yml with: nox-session: ci-test-onedir diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index a73abe4d91ce..a01a09d728c9 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -26,10 +26,14 @@ - build-pkgs-onedir-<{ type }> <%- endif %> <%- elif type == 'onedir' %> - - build-salt-onedir + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows <%- elif type == 'src' %> - build-source-tarball - - build-pkgs-src + - build-pkgs-src-linux + - build-pkgs-src-macos + - build-pkgs-src-windows <%- endif %> <%- include "build-{}-repo.yml.jinja".format(type) %> diff --git a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja index d547bd504dba..3619e8c10bad 100644 --- a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja @@ -13,11 +13,15 @@ needs: - prepare-workflow - publish-repositories - - build-ci-deps + - build-ci-deps-linux + - build-ci-deps-macos + - build-ci-deps-windows <%- if gh_environment == "release" %> - download-onedir-artifact <%- else %> - - build-salt-onedir + - build-salt-onedir-linux + - build-salt-onedir-macos + - build-salt-onedir-windows <%- endif %> uses: ./.github/workflows/test-package-downloads-action.yml with: diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 2ef384f512ea..c545bc05f26c 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -12,7 +12,7 @@ <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} <%- endif %> needs: - prepare-workflow diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 7b34381753d7..d3f1e3ac6a3d 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -70,7 +70,7 @@ env: PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - USE_S3_CACHE: 'true' + USE_S3_CACHE: 'false' jobs: @@ -208,7 +208,7 @@ jobs: ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Upload Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' + if: always() uses: actions/upload-artifact@v4 with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.pkg-type }}-${{ inputs.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} @@ -263,6 +263,6 @@ jobs: - name: Show Test Run Artifacts - if: always() && steps.download-test-run-artifacts.outcome == 'success' + if: always() run: | tree -a artifacts diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index 310b08eefb5e..4b8ea70bc4b3 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -78,9 +78,7 @@ jobs: runs-on: # We need to run on our self-hosted runners because we need proper credentials # for boto3 to scan through our repositories. - - self-hosted - - linux - - x86_64 + - ubuntu-latest outputs: pkg-matrix-include: ${{ steps.generate-pkg-matrix.outputs.matrix }} build-reports: ${{ steps.generate-pkg-matrix.outputs.build-reports }} @@ -108,10 +106,7 @@ jobs: test: name: Test - runs-on: - - self-hosted - - linux - - bastion + runs-on: windows-latest timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: - generate-matrix @@ -168,28 +163,9 @@ jobs: with: cache-prefix: ${{ inputs.cache-prefix }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Start VM - id: spin-up-vm - run: | - tools --timestamps vm create --environment "${SPB_ENVIRONMENT}" --retries=2 ${{ inputs.distro-slug }} - - - name: List Free Space - run: | - tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - - name: Upload Checkout To VM - run: | - tools --timestamps vm rsync ${{ inputs.distro-slug }} - - name: Decompress .nox Directory run: | - tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - name: Show System Info run: | diff --git a/tools/ci.py b/tools/ci.py index 0001d9831fdd..5669bc2ac56e 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -399,6 +399,9 @@ def define_jobs( changed_files_contents["workflows"], changed_files_contents["golden_images"], } + if any([_.startswith("test:os:macos") for _ in labels]): + jobs["build-deps-onedir-macos"] = True + jobs["build-salt-onedir-macos"] = True if jobs["test-pkg"] and required_pkg_test_changes == {"false"}: if "test:pkg" in labels: with open(github_step_summary, "a", encoding="utf-8") as wfh: From 80cd9ca4372e73b03b13a7b7b8c63681727ee29e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 00:04:12 -0700 Subject: [PATCH 040/225] Fix up windows package test action --- .../test-packages-action-windows.yml | 46 +++++++++++-------- 1 file changed, 28 insertions(+), 18 deletions(-) diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index 4b8ea70bc4b3..cc8d8e048233 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -142,6 +142,17 @@ jobs: name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz path: artifacts/ + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + - name: Decompress Onedir Tarball shell: bash run: | @@ -158,43 +169,42 @@ jobs: with: name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - name: Decompress .nox Directory run: | nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" run: | - tools --timestamps --timeout-secs=1800 vm test --skip-requirements-install --print-system-information-only \ - --nox-session=${{ inputs.nox-session }}-pkgs ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - name: Run Package Tests + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install ${{ matrix.fips && '--fips ' || '' }}\ - --nox-session=${{ inputs.nox-session }}-pkgs --rerun-failures ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} \ + nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - - name: Download Test Run Artifacts + - name: Prepare Test Run Artifacts id: download-artifacts-from-vm - if: always() && steps.spin-up-vm.outcome == 'success' + if: always() run: | - tools --timestamps vm download-artifacts ${{ inputs.distro-slug }} # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below rm -rf artifacts/salt* tree -a artifacts - - name: Destroy VM - if: always() - run: | - tools --timestamps vm destroy --no-wait ${{ inputs.distro-slug }} || true - - name: Upload Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' + if: always() uses: actions/upload-artifact@v4 with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}-${{ inputs.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} From 08ed938c4dff42815a9f21b52d0a171608a0ecae Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 00:38:12 -0700 Subject: [PATCH 041/225] Show sys info fix --- .github/workflows/ci.yml | 75 +-- .github/workflows/nightly.yml | 74 +-- .github/workflows/scheduled.yml | 74 +-- .github/workflows/staging.yml | 74 +-- .../workflows/templates/test-salt.yml.jinja | 4 +- .github/workflows/test-action-linux-gh.yml | 467 ------------------ .github/workflows/test-action-linux.yml | 240 +++++---- .github/workflows/test-action-windows-gh.yml | 452 ----------------- .github/workflows/test-action-windows.yml | 210 ++++---- .../workflows/test-packages-action-macos.yml | 4 +- .../test-packages-action-windows.yml | 14 +- tools/ci.py | 2 +- tools/precommit/workflows.py | 26 +- 13 files changed, 312 insertions(+), 1404 deletions(-) delete mode 100644 .github/workflows/test-action-linux-gh.yml delete mode 100644 .github/workflows/test-action-windows-gh.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6cf42c4ff421..74287003fc48 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -668,48 +668,6 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: - name: Windows 2016 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - windows-2016-msi-pkg-tests: - name: Windows 2016 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2016') }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} @@ -794,34 +752,13 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016: - name: Windows 2016 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -842,7 +779,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir @@ -885,7 +822,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -906,7 +843,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -932,7 +869,6 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2016 - windows-2019 - windows-2022 - macos-12 @@ -1080,7 +1016,6 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2016 - windows-2019 - windows-2022 - macos-12 @@ -1089,8 +1024,6 @@ jobs: - 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 diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 91a369f8d919..28a5b78dd08c 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -791,48 +791,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: - name: Windows 2016 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - windows-2016-msi-pkg-tests: - name: Windows 2016 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -917,34 +875,13 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016: - name: Windows 2016 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -965,7 +902,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir @@ -1008,7 +945,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1029,7 +966,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1792,7 +1729,6 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2016 - windows-2019 - windows-2022 - macos-12 @@ -1865,8 +1801,6 @@ jobs: - 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 diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 7809e6dc5243..38cd955944e1 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -707,48 +707,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: - name: Windows 2016 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - windows-2016-msi-pkg-tests: - name: Windows 2016 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -833,34 +791,13 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016: - name: Windows 2016 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -881,7 +818,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir @@ -924,7 +861,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -945,7 +882,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -983,7 +920,6 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2016 - windows-2019 - windows-2022 - macos-12 @@ -992,8 +928,6 @@ jobs: - 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 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 586d05f66411..31a488fea6cd 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -773,48 +773,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016-nsis-pkg-tests: - name: Windows 2016 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - windows-2016-msi-pkg-tests: - name: Windows 2016 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-pkgs-onedir-windows - - build-ci-deps-windows - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -899,34 +857,13 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2016: - name: Windows 2016 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - needs: - - prepare-workflow - - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml - with: - distro-slug: windows-2016 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 nox-session: ci-test-onedir @@ -947,7 +884,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 nox-session: ci-test-onedir @@ -990,7 +927,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir @@ -1011,7 +948,7 @@ jobs: needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir @@ -1904,7 +1841,6 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2016 - windows-2019 - windows-2022 - macos-12 @@ -1913,8 +1849,6 @@ jobs: - 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 diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index c545bc05f26c..cb9bd0fbc35a 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -17,7 +17,7 @@ needs: - prepare-workflow - build-ci-deps-windows - uses: ./.github/workflows/test-action-windows-gh.yml + uses: ./.github/workflows/test-action-windows.yml with: distro-slug: <{ os.slug }> nox-session: ci-test-onedir @@ -80,7 +80,7 @@ needs: - prepare-workflow - build-ci-deps-linux - uses: ./.github/workflows/test-action-linux-gh.yml + uses: ./.github/workflows/test-action-linux.yml with: distro-slug: <{ os.slug }> nox-session: ci-test-onedir diff --git a/.github/workflows/test-action-linux-gh.yml b/.github/workflows/test-action-linux-gh.yml deleted file mode 100644 index 3c813636fad9..000000000000 --- a/.github/workflows/test-action-linux-gh.yml +++ /dev/null @@ -1,467 +0,0 @@ ---- -name: Test Artifact(macOS) - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - nox-session: - required: true - type: string - description: The nox session to run - testrun: - required: true - type: string - description: JSON string containing information about what and how to run the test suite - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.11" - salt-version: - type: string - required: true - description: The Salt version to set prior to running tests. - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - fips: - required: false - type: boolean - default: false - description: Test run with FIPS enabled - nox-version: - required: true - type: string - description: The nox version to install - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - workflow-slug: - required: false - type: string - description: Which workflow is running. - default: ci - default-timeout: - required: false - type: number - description: Timeout, in minutes, for the test job(Default 360, 6 hours). - default: 360 - -env: - COLUMNS: 190 - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Test Matrix - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-matrix.outputs.build-reports }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: 3.10.14 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: | - tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ inputs.distro-slug }} - - test: - name: Test - runs-on: linux-${{ inputs.arch }} - container: - image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - # Full test runs. Each chunk should never take more than 2 hours. - # Partial test runs(no chunk parallelization), 6 Hours - timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} - env: - SALT_TRANSPORT: ${{ matrix.transport }} - - steps: - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: Check python - run: | - which python3 - - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Salt Version - run: | - echo "${{ inputs.salt-version }}" > salt/_version.txt - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Install System Dependencies - run: | - echo true - - - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- linux ${{ inputs.arch }} - - - name: Download testrun-changed-files.txt - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - uses: actions/download-artifact@v4 - with: - name: testrun-changed-files.txt - - - name: Current Directory - run: | - pwd - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - - - name: Run Changed Tests - id: run-fast-changed-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ - --from-filenames=testrun-changed-files.txt - - - name: Run Fast Tests - id: run-fast-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code - - - name: Run Slow Tests - id: run-slow-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - - - name: Run Core Tests - id: run-core-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - - - name: Run Flaky Tests - id: run-flaky-tests - if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - - - name: Run Full Tests - id: run-full-tests - if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --slow-tests --core-tests -k "mac or darwin" - - - name: Fix file ownership - run: | - sudo chown -R "$(id -un)" . - - - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false - run: | - nox --force-color -e combine-coverage - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - tree -a artifacts - if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} - fi - - - name: Upload Code Coverage Test Run Artifacts - if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/coverage/ - include-hidden-files: true - - - name: Upload JUnit XML Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/xml-unittests-output/ - include-hidden-files: true - - - name: Upload Test Run Log Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - report: - name: Test Reports - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - runs-on: ubuntu-latest - needs: - - test - - generate-matrix - env: - PIP_INDEX_URL: https://pypi.org/simple - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Merge JUnit XML Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Log Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Code Coverage Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 - if: ${{ inputs.skip-code-coverage == false }} - id: download-coverage-artifacts - with: - path: artifacts/coverage/ - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* - merge-multiple: true - - - name: Show Downloaded Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - run: | - tree -a artifacts - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - - - name: Create XML Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' - run: | - nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - - - name: Report Salt Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage -- salt - - - name: Report Combined Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage - - - name: Rename Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} - - - name: Upload Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} - path: artifacts/coverage - include-hidden-files: true diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index df76d8e17985..3c813636fad9 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -1,5 +1,5 @@ --- -name: Test Artifact +name: Test Artifact(macOS) on: workflow_call: @@ -16,6 +16,11 @@ on: required: true type: string description: JSON string containing information about what and how to run the test suite + gh-actions-python-version: + required: false + type: string + description: The python version to run tests with + default: "3.11" salt-version: type: string required: true @@ -32,20 +37,15 @@ on: required: true type: string description: The platform arch being tested - nox-version: - required: true - type: string - description: The nox version to install - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.10" fips: required: false type: boolean default: false description: Test run with FIPS enabled + nox-version: + required: true + type: string + description: The nox version to install package-name: required: false type: string @@ -69,8 +69,6 @@ on: env: COLUMNS: 190 - AWS_MAX_ATTEMPTS: "10" - AWS_RETRY_MODE: "adaptive" PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} @@ -88,7 +86,7 @@ jobs: steps: - uses: actions/setup-python@v5 with: - python-version: '3.10' + python-version: 3.10.14 - name: "Throttle Builds" shell: bash @@ -108,14 +106,13 @@ jobs: - name: Generate Test Matrix id: generate-matrix run: | - tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ fromJSON(inputs.testrun)['type'] == 'full' && '--full ' || '' }}${{ inputs.distro-slug }} + tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ inputs.distro-slug }} test: name: Test - runs-on: - - self-hosted - - linux - - bastion + runs-on: linux-${{ inputs.arch }} + container: + image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} @@ -127,9 +124,16 @@ jobs: include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} env: SALT_TRANSPORT: ${{ matrix.transport }} - TEST_GROUP: ${{ matrix.test-group || 1 }} steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: Check python + run: | + which python3 + - name: "Throttle Builds" shell: bash @@ -161,19 +165,29 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + - name: Install System Dependencies + run: | + echo true + - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 with: name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} - - name: PyPi Proxy + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox run: | - sed -i '7s;^;--index-url=${{ vars.PIP_INDEX_URL }} --trusted-host ${{ vars.PIP_TRUSTED_HOST }} --extra-index-url=${{ vars.PIP_EXTRA_INDEX_URL }}\n;' requirements/static/ci/*/*.txt + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- linux ${{ inputs.arch }} - name: Download testrun-changed-files.txt if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} @@ -181,115 +195,146 @@ jobs: with: name: testrun-changed-files.txt - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Start VM - id: spin-up-vm - env: - TESTS_CHUNK: ${{ matrix.tests-chunk }} - run: | - tools --timestamps vm create --environment "${SPB_ENVIRONMENT}" --retries=2 ${{ inputs.distro-slug }} - - - name: List Free Space - run: | - tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - - name: Upload Checkout To VM - run: | - tools --timestamps vm rsync ${{ inputs.distro-slug }} - - - name: Decompress .nox Directory + - name: Current Directory run: | - tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} + pwd - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" run: | - tools --timestamps --timeout-secs=1800 vm test --skip-requirements-install --print-system-information-only \ - --nox-session=${{ inputs.nox-session }} ${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - name: Run Changed Tests id: run-fast-changed-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --core-tests --slow-tests --suppress-no-test-exit-code \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ --from-filenames=testrun-changed-files.txt - name: Run Fast Tests id: run-fast-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ (inputs.skip-code-coverage && matrix.tests-chunk != 'unit') && '--skip-code-coverage' || '' }} \ - ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code - name: Run Slow Tests id: run-slow-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --no-fast-tests --slow-tests + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests id: run-core-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --no-fast-tests --core-tests + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests id: run-flaky-tests if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --no-fast-tests --flaky-jail + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests id: run-full-tests if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ (inputs.skip-code-coverage && matrix.tests-chunk != 'unit') && '--skip-code-coverage' || '' }} \ - -E TEST_GROUP ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} ${{ matrix.tests-chunk }} -- --slow-tests --core-tests \ - --test-group-count=${{ matrix.test-group-count || 1 }} --test-group=${{ matrix.test-group || 1 }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --slow-tests --core-tests -k "mac or darwin" + + - name: Fix file ownership + run: | + sudo chown -R "$(id -un)" . - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.spin-up-vm.outcome == 'success' + if: always() && inputs.skip-code-coverage == false run: | - tools --timestamps vm combine-coverage ${{ inputs.distro-slug }} + nox --force-color -e combine-coverage - - name: Download Test Run Artifacts + - name: Prepare Test Run Artifacts id: download-artifacts-from-vm - if: always() && steps.spin-up-vm.outcome == 'success' + if: always() run: | - tools --timestamps vm download-artifacts ${{ inputs.distro-slug }} # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below rm -rf artifacts/salt* tree -a artifacts if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}${{ inputs.fips && '.fips' || '' }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }}.grp${{ matrix.test-group || '1' }} + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} fi - - name: Destroy VM - if: always() - run: | - tools --timestamps vm destroy --no-wait ${{ inputs.distro-slug }} || true - - name: Upload Code Coverage Test Run Artifacts if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' uses: actions/upload-artifact@v4 with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-grp${{ matrix.test-group || '1' }}-${{ env.TIMESTAMP }} + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/coverage/ include-hidden-files: true @@ -298,7 +343,7 @@ jobs: if: always() && steps.download-artifacts-from-vm.outcome == 'success' uses: actions/upload-artifact@v4 with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-grp${{ matrix.test-group || '1' }}-${{ env.TIMESTAMP }} + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/xml-unittests-output/ include-hidden-files: true @@ -307,7 +352,7 @@ jobs: if: always() && steps.download-artifacts-from-vm.outcome == 'success' uses: actions/upload-artifact@v4 with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-grp${{ matrix.test-group || '1' }}-${{ env.TIMESTAMP }} + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/logs include-hidden-files: true @@ -340,8 +385,8 @@ jobs: continue-on-error: true uses: actions/upload-artifact/merge@v4 with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }} - pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}-* + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* separate-directories: false delete-merged: true @@ -350,8 +395,8 @@ jobs: continue-on-error: true uses: actions/upload-artifact/merge@v4 with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }} - pattern: testrun-log-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}-* + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* separate-directories: false delete-merged: true @@ -360,8 +405,8 @@ jobs: continue-on-error: true uses: actions/upload-artifact/merge@v4 with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }} - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}-* + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} + pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* separate-directories: false delete-merged: true @@ -371,7 +416,7 @@ jobs: id: download-coverage-artifacts with: path: artifacts/coverage/ - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }}* + pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* merge-multiple: true - name: Show Downloaded Test Run Artifacts @@ -379,6 +424,11 @@ jobs: run: | tree -a artifacts + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + - name: Install Nox run: | python3 -m pip install 'nox==${{ inputs.nox-version }}' @@ -387,8 +437,8 @@ jobs: if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' run: | nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}${{ inputs.fips && '..fips' || '' }}..${{ inputs.nox-session }}.xml - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}${{ inputs.fips && '..fips' || '' }}..${{ inputs.nox-session }}.xml + mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml + mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - name: Report Salt Code Coverage if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' @@ -406,12 +456,12 @@ jobs: if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' continue-on-error: true run: | - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}${{ inputs.fips && '.fips' || '' }}.${{ inputs.nox-session }} + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} - name: Upload Code Coverage DB if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' uses: actions/upload-artifact@v4 with: - name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.nox-session }} + name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} path: artifacts/coverage include-hidden-files: true diff --git a/.github/workflows/test-action-windows-gh.yml b/.github/workflows/test-action-windows-gh.yml deleted file mode 100644 index 8b617cc070d4..000000000000 --- a/.github/workflows/test-action-windows-gh.yml +++ /dev/null @@ -1,452 +0,0 @@ ---- -name: Test Artifact(macOS) - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - nox-session: - required: true - type: string - description: The nox session to run - testrun: - required: true - type: string - description: JSON string containing information about what and how to run the test suite - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.11" - salt-version: - type: string - required: true - description: The Salt version to set prior to running tests. - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - fips: - required: false - type: boolean - default: false - description: Test run with FIPS enabled - nox-version: - required: true - type: string - description: The nox version to install - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - workflow-slug: - required: false - type: string - description: Which workflow is running. - default: ci - default-timeout: - required: false - type: number - description: Timeout, in minutes, for the test job(Default 360, 6 hours). - default: 360 - -env: - COLUMNS: 190 - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Test Matrix - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-matrix.outputs.build-reports }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: 3.10.14 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: | - tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ fromJSON(inputs.testrun)['type'] == 'full' && '--full ' || '' }}${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} - - test: - name: Test - runs-on: windows-latest - # Full test runs. Each chunk should never take more than 2 hours. - # Partial test runs(no chunk parallelization), 6 Hours - timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} - env: - SALT_TRANSPORT: ${{ matrix.transport }} - - steps: - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Salt Version - run: | - echo "${{ inputs.salt-version }}" > salt/_version.txt - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Install System Dependencies - run: | - echo true - - - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - - - name: Download testrun-changed-files.txt - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - uses: actions/download-artifact@v4 - with: - name: testrun-changed-files.txt - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - - - name: Run Changed Tests - id: run-fast-changed-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ - --from-filenames=testrun-changed-files.txt - - - name: Run Fast Tests - id: run-fast-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code - - - name: Run Slow Tests - id: run-slow-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - - - name: Run Core Tests - id: run-core-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - - - name: Run Flaky Tests - id: run-flaky-tests - if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - - - name: Run Full Tests - id: run-full-tests - if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --slow-tests --core-tests -k "mac or darwin" - - - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false - run: | - nox --force-color -e combine-coverage - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - tree -a artifacts - if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} - fi - - - name: Upload Code Coverage Test Run Artifacts - if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/coverage/ - include-hidden-files: true - - - name: Upload JUnit XML Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/xml-unittests-output/ - include-hidden-files: true - - - name: Upload Test Run Log Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - report: - name: Test Reports - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - runs-on: ubuntu-latest - needs: - - test - - generate-matrix - env: - PIP_INDEX_URL: https://pypi.org/simple - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Merge JUnit XML Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Log Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Code Coverage Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 - if: ${{ inputs.skip-code-coverage == false }} - id: download-coverage-artifacts - with: - path: artifacts/coverage/ - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* - merge-multiple: true - - - name: Show Downloaded Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - run: | - tree -a artifacts - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - - - name: Create XML Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' - run: | - nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - - - name: Report Salt Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage -- salt - - - name: Report Combined Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage - - - name: Rename Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} - - - name: Upload Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} - path: artifacts/coverage - include-hidden-files: true diff --git a/.github/workflows/test-action-windows.yml b/.github/workflows/test-action-windows.yml index 5f177baacbbb..67aed7409834 100644 --- a/.github/workflows/test-action-windows.yml +++ b/.github/workflows/test-action-windows.yml @@ -1,5 +1,5 @@ --- -name: Test Artifact +name: Test Artifact(macOS) on: workflow_call: @@ -16,6 +16,11 @@ on: required: true type: string description: JSON string containing information about what and how to run the test suite + gh-actions-python-version: + required: false + type: string + description: The python version to run tests with + default: "3.11" salt-version: type: string required: true @@ -32,20 +37,15 @@ on: required: true type: string description: The platform arch being tested - nox-version: - required: true - type: string - description: The nox version to install - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.10" fips: required: false type: boolean default: false description: Test run with FIPS enabled + nox-version: + required: true + type: string + description: The nox version to install package-name: required: false type: string @@ -69,8 +69,6 @@ on: env: COLUMNS: 190 - AWS_MAX_ATTEMPTS: "10" - AWS_RETRY_MODE: "adaptive" PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} @@ -88,7 +86,7 @@ jobs: steps: - uses: actions/setup-python@v5 with: - python-version: '3.10' + python-version: 3.10.14 - name: "Throttle Builds" shell: bash @@ -112,10 +110,7 @@ jobs: test: name: Test - runs-on: - - self-hosted - - linux - - bastion + runs-on: ${{ inputs.distro-slug }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} @@ -127,9 +122,11 @@ jobs: include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} env: SALT_TRANSPORT: ${{ matrix.transport }} - TEST_GROUP: ${{ matrix.test-group || 1 }} steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' - name: "Throttle Builds" shell: bash @@ -161,19 +158,29 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz + - name: Install System Dependencies + run: | + echo true + - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 with: name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - - name: PyPi Proxy + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox run: | - sed -i '7s;^;--index-url=${{ vars.PIP_INDEX_URL }} --trusted-host ${{ vars.PIP_TRUSTED_HOST }} --extra-index-url=${{ vars.PIP_EXTRA_INDEX_URL }}\n;' requirements/static/ci/*/*.txt + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - name: Download testrun-changed-files.txt if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} @@ -181,115 +188,138 @@ jobs: with: name: testrun-changed-files.txt - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Start VM - id: spin-up-vm - env: - TESTS_CHUNK: ${{ matrix.tests-chunk }} - run: | - tools --timestamps vm create --environment "${SPB_ENVIRONMENT}" --retries=2 ${{ inputs.distro-slug }} - - - name: List Free Space - run: | - tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - - name: Upload Checkout To VM - run: | - tools --timestamps vm rsync ${{ inputs.distro-slug }} - - - name: Decompress .nox Directory - run: | - tools --timestamps vm decompress-dependencies ${{ inputs.distro-slug }} - - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" run: | - tools --timestamps --timeout-secs=1800 vm test --skip-requirements-install --print-system-information-only \ - --nox-session=${{ inputs.nox-session }} ${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - name: Run Changed Tests id: run-fast-changed-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ matrix.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --core-tests --slow-tests --suppress-no-test-exit-code \ + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ --from-filenames=testrun-changed-files.txt - name: Run Fast Tests id: run-fast-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ (inputs.skip-code-coverage && matrix.tests-chunk != 'unit') && '--skip-code-coverage' || '' }} \ - ${{ matrix.fips && '--fips ' || '' }}${{ inputs.distro-slug }} ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code - name: Run Slow Tests id: run-slow-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ matrix.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --no-fast-tests --slow-tests + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests id: run-core-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ matrix.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --no-fast-tests --core-tests + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests id: run-flaky-tests if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ matrix.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ matrix.tests-chunk }} -- --no-fast-tests --flaky-jail + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests id: run-full-tests if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install \ - --nox-session=${{ inputs.nox-session }} --rerun-failures -E SALT_TRANSPORT ${{ (inputs.skip-code-coverage && matrix.tests-chunk != 'unit') && '--skip-code-coverage' || '' }} \ - -E TEST_GROUP ${{ matrix.fips && '--fips ' || '' }}${{ inputs.distro-slug }} ${{ matrix.tests-chunk }} -- --slow-tests --core-tests \ - --test-group-count=${{ matrix.test-group-count || 1 }} --test-group=${{ matrix.test-group || 1 }} + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --slow-tests --core-tests -k "mac or darwin" - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.spin-up-vm.outcome == 'success' + if: always() && inputs.skip-code-coverage == false run: | - tools --timestamps vm combine-coverage ${{ inputs.distro-slug }} + nox --force-color -e combine-coverage - - name: Download Test Run Artifacts + - name: Prepare Test Run Artifacts id: download-artifacts-from-vm - if: always() && steps.spin-up-vm.outcome == 'success' + if: always() run: | - tools --timestamps vm download-artifacts ${{ inputs.distro-slug }} # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below rm -rf artifacts/salt* tree -a artifacts if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }}.grp${{ matrix.test-group || '1' }} + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} fi - - name: Destroy VM - if: always() - run: | - tools --timestamps vm destroy --no-wait ${{ inputs.distro-slug }} || true - - name: Upload Code Coverage Test Run Artifacts if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' uses: actions/upload-artifact@v4 with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-grp${{ matrix.test-group || '1' }}-${{ env.TIMESTAMP }} + name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/coverage/ include-hidden-files: true @@ -298,7 +328,7 @@ jobs: if: always() && steps.download-artifacts-from-vm.outcome == 'success' uses: actions/upload-artifact@v4 with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-grp${{ matrix.test-group || '1' }}-${{ env.TIMESTAMP }} + name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/xml-unittests-output/ include-hidden-files: true @@ -307,12 +337,11 @@ jobs: if: always() && steps.download-artifacts-from-vm.outcome == 'success' uses: actions/upload-artifact@v4 with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-grp${{ matrix.test-group || '1' }}-${{ env.TIMESTAMP }} + name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/logs include-hidden-files: true - report: name: Test Reports if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' @@ -380,6 +409,11 @@ jobs: run: | tree -a artifacts + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + - name: Install Nox run: | python3 -m pip install 'nox==${{ inputs.nox-version }}' @@ -388,8 +422,8 @@ jobs: if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' run: | nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml || true - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml || true + mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml + mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - name: Report Salt Code Coverage if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' diff --git a/.github/workflows/test-packages-action-macos.yml b/.github/workflows/test-packages-action-macos.yml index 62f775b38837..dd10baf01584 100644 --- a/.github/workflows/test-packages-action-macos.yml +++ b/.github/workflows/test-packages-action-macos.yml @@ -75,9 +75,7 @@ jobs: runs-on: # We need to run on our self-hosted runners because we need proper credentials # for boto3 to scan through our repositories. - - self-hosted - - linux - - x86_64 + - ubuntu-latest outputs: pkg-matrix-include: ${{ steps.generate-pkg-matrix.outputs.matrix }} build-reports: ${{ steps.generate-pkg-matrix.outputs.build-reports }} diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index cc8d8e048233..f18737806b99 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -176,9 +176,19 @@ jobs: - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" PRINT_SYSTEM_INFO_ONLY: "1" + SKIP_INITIAL_ONEDIR_FAILURES: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "1" + PYTHONUTF8: "1" + OUTPUT_COLUMNS: "190" + GITHUB_ACTIONS_PIPELINE: "1" + RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" + TOOLS_DISTRO_SLUG: "${{ inputs.distro-slug }}" run: | - nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + env PYTHONUTF8=1 nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- ${{ matrix.tests-chunk }} - name: Run Package Tests env: @@ -200,7 +210,7 @@ jobs: run: | # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below - rm -rf artifacts/salt* + deltree artifacts/salt tree -a artifacts - name: Upload Test Run Artifacts diff --git a/tools/ci.py b/tools/ci.py index 5669bc2ac56e..42d0132c03fb 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -399,7 +399,7 @@ def define_jobs( changed_files_contents["workflows"], changed_files_contents["golden_images"], } - if any([_.startswith("test:os:macos") for _ in labels]): + if "test:os:all" in labels or any([_.startswith("test:os:macos") for _ in labels]): jobs["build-deps-onedir-macos"] = True jobs["build-salt-onedir-macos"] = True if jobs["test-pkg"] and required_pkg_test_changes == {"false"}: diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 8cfc0f6662c1..b677c21e017e 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -119,7 +119,7 @@ # ), ], "windows": [ - Windows(slug="windows-2016", display_name="Windows 2016", arch="amd64"), + # Windows(slug="windows-2016", display_name="Windows 2016", arch="amd64"), Windows(slug="windows-2019", display_name="Windows 2019", arch="amd64"), Windows(slug="windows-2022", display_name="Windows 2022", arch="amd64"), ], @@ -367,18 +367,18 @@ def generate_workflows(ctx: Context): # ), ], "windows": [ - Windows( - slug="windows-2016", - display_name="Windows 2016", - arch="amd64", - pkg_type="NSIS", - ), - Windows( - slug="windows-2016", - display_name="Windows 2016", - arch="amd64", - pkg_type="MSI", - ), + # Windows( + # slug="windows-2016", + # display_name="Windows 2016", + # arch="amd64", + # pkg_type="NSIS", + # ), + # Windows( + # slug="windows-2016", + # display_name="Windows 2016", + # arch="amd64", + # pkg_type="MSI", + # ), Windows( slug="windows-2019", display_name="Windows 2019", From dae1a7df6e78c2bec3e4502a9d8659735c0c6030 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 02:18:20 -0700 Subject: [PATCH 042/225] Meh --- .../workflows/test-packages-action-windows.yml | 5 +++-- tools/ci.py | 16 +++++++++------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index f18737806b99..b716f98d68ab 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -182,7 +182,6 @@ jobs: SKIP_INITIAL_ONEDIR_FAILURES: "1" SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "1" - PYTHONUTF8: "1" OUTPUT_COLUMNS: "190" GITHUB_ACTIONS_PIPELINE: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" @@ -198,10 +197,12 @@ jobs: PRINT_SYSTEM_INFO: "0" RERUN_FAILURES: "1" GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_ONEDIR_FAILURES: "1" SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} + OUTPUT_COLUMNS: "190" run: | - nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + env PYTHONUTF8=1 nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Prepare Test Run Artifacts diff --git a/tools/ci.py b/tools/ci.py index 42d0132c03fb..d83acf0f1a0a 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -847,8 +847,9 @@ def pkg_matrix( "relenv": f"salt/py3/{name}/{version}/{arch}/minor/", } - s3 = boto3.client("s3") - paginator = s3.get_paginator("list_objects_v2") + # XXX: fetch versions + # s3 = boto3.client("s3") + # paginator = s3.get_paginator("list_objects_v2") _matrix = [ { "tests-chunk": "install", @@ -862,10 +863,10 @@ def pkg_matrix( if backend == "relenv" and version >= tools.utils.Version("3006.5"): prefix.replace("/arm64/", "/aarch64/") # Using a paginator allows us to list recursively and avoid the item limit - page_iterator = paginator.paginate( - Bucket=f"salt-project-{tools.utils.SPB_ENVIRONMENT}-salt-artifacts-release", - Prefix=prefix, - ) + # page_iterator = paginator.paginate( + # Bucket=f"salt-project-{tools.utils.SPB_ENVIRONMENT}-salt-artifacts-release", + # Prefix=prefix, + # ) # Uses a jmespath expression to test if the wanted version is in any of the filenames key_filter = f"Contents[?contains(Key, '{version}')][]" if pkg_type == "MSI": @@ -877,7 +878,8 @@ def pkg_matrix( f"Contents[?contains(Key, '{version}')] | [?ends_with(Key, '.exe')]" ) continue - objects = list(page_iterator.search(key_filter)) + # objects = list(page_iterator.search(key_filter)) + objects = [] # Testing using `any` because sometimes the paginator returns `[None]` if any(objects): ctx.info( From 467e6167d6d05038ee54c9ae334e3428339532aa Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 02:30:04 -0700 Subject: [PATCH 043/225] meh --- .../workflows/test-packages-action-linux.yml | 15 +++--- .../test-packages-action-windows.yml | 2 +- tools/ci.py | 51 +++++++++---------- 3 files changed, 35 insertions(+), 33 deletions(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index d3f1e3ac6a3d..b9278237d62d 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -171,6 +171,10 @@ jobs: with: name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- linux ${{ inputs.arch }} + - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts with: @@ -180,14 +184,13 @@ jobs: run: | tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- macos ${{ inputs.arch }} - - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" run: | - tools --timestamps --timeout-secs=1800 vm test --skip-requirements-install --print-system-information-only \ - --nox-session=${{ inputs.nox-session }}-pkgs ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} + sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + #- name: Run Package Tests # run: | # tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install ${{ inputs.fips && '--fips ' || '' }}\ diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index b716f98d68ab..87adcf513e3b 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -211,7 +211,7 @@ jobs: run: | # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below - deltree artifacts/salt + rmdir /S /Qa rtifacts/salt tree -a artifacts - name: Upload Test Run Artifacts diff --git a/tools/ci.py b/tools/ci.py index d83acf0f1a0a..3cfba6dda63e 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -26,16 +26,16 @@ else: from typing import NotRequired, TypedDict # pylint: disable=no-name-in-module -try: - import boto3 -except ImportError: - print( - "\nPlease run 'python -m pip install -r " - "requirements/static/ci/py{}.{}/tools.txt'\n".format(*sys.version_info), - file=sys.stderr, - flush=True, - ) - raise +# try: +# import boto3 +# except ImportError: +# print( +# "\nPlease run 'python -m pip install -r " +# "requirements/static/ci/py{}.{}/tools.txt'\n".format(*sys.version_info), +# file=sys.stderr, +# flush=True, +# ) +# raise log = logging.getLogger(__name__) @@ -879,23 +879,22 @@ def pkg_matrix( ) continue # objects = list(page_iterator.search(key_filter)) - objects = [] # Testing using `any` because sometimes the paginator returns `[None]` - if any(objects): - ctx.info( - f"Found {version} ({backend}) for {distro_slug}: {objects[0]['Key']}" - ) - for session in ("upgrade", "downgrade"): - if backend == "classic": - session += "-classic" - _matrix.append( - { - "tests-chunk": session, - "version": str(version), - } - ) - else: - ctx.info(f"No {version} ({backend}) for {distro_slug} at {prefix}") + # if any(objects): + # ctx.info( + # f"Found {version} ({backend}) for {distro_slug}: {objects[0]['Key']}" + # ) + # for session in ("upgrade", "downgrade"): + # if backend == "classic": + # session += "-classic" + # _matrix.append( + # { + # "tests-chunk": session, + # "version": str(version), + # } + # ) + # else: + # ctx.info(f"No {version} ({backend}) for {distro_slug} at {prefix}") ctx.info("Generated matrix:") if not _matrix: From 38b234bcd74c0a4846408c050c00053c016459c3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 03:49:33 -0700 Subject: [PATCH 044/225] Skip reqs --- .github/workflows/pre-commit-action.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pre-commit-action.yml b/.github/workflows/pre-commit-action.yml index 658dbf5cc4d1..a2a2d3f451cd 100644 --- a/.github/workflows/pre-commit-action.yml +++ b/.github/workflows/pre-commit-action.yml @@ -31,10 +31,10 @@ jobs: steps: - - name: Install System Deps - run: | - apt-get update - apt-get install -y wget curl enchant-2 git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev rustc + #- name: Install System Deps + # run: | + # apt-get update + # apt-get install -y wget curl enchant-2 git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev rustc - name: Add Git Safe Directory run: | From bbc8d514e59f8883529d6af67bfe1e922b2a2507 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 09:57:45 -0700 Subject: [PATCH 045/225] No sudo for linux pkg tests --- .github/workflows/lint-action.yml | 9 --------- .github/workflows/pre-commit-action.yml | 5 ----- .github/workflows/test-packages-action-linux.yml | 4 ++-- 3 files changed, 2 insertions(+), 16 deletions(-) diff --git a/.github/workflows/lint-action.yml b/.github/workflows/lint-action.yml index 3c3df9cfb899..b696c72a9432 100644 --- a/.github/workflows/lint-action.yml +++ b/.github/workflows/lint-action.yml @@ -25,10 +25,6 @@ jobs: image: ghcr.io/saltstack/salt-ci-containers/python:3.10 steps: - - name: Install System Deps - run: | - apt-get update - apt-get install -y enchant-2 git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev - name: Add Git Safe Directory run: | @@ -69,11 +65,6 @@ jobs: image: ghcr.io/saltstack/salt-ci-containers/python:3.10 steps: - - name: Install System Deps - run: | - echo "deb http://deb.debian.org/debian bookworm-backports main" >> /etc/apt/sources.list - apt-get update - apt-get install -y enchant-2 git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev - name: Add Git Safe Directory run: | diff --git a/.github/workflows/pre-commit-action.yml b/.github/workflows/pre-commit-action.yml index a2a2d3f451cd..2b1e492dc88f 100644 --- a/.github/workflows/pre-commit-action.yml +++ b/.github/workflows/pre-commit-action.yml @@ -31,11 +31,6 @@ jobs: steps: - #- name: Install System Deps - # run: | - # apt-get update - # apt-get install -y wget curl enchant-2 git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev rustc - - name: Add Git Safe Directory run: | git config --global --add safe.directory "$(pwd)" diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index b9278237d62d..6ffe524c41b9 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -189,7 +189,7 @@ jobs: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} #- name: Run Package Tests # run: | @@ -207,7 +207,7 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Upload Test Run Artifacts From 1e0dfdb37757c718814afc34205e2e7a300b93c9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 10:40:15 -0700 Subject: [PATCH 046/225] Attempt systemctl mock --- .github/actionlint.yaml | 2 +- .github/workflows/build-deps-ci-action.yml | 2 +- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-packages.yml | 2 +- .github/workflows/build-salt-onedir.yml | 2 +- .github/workflows/test-package-downloads-action.yml | 2 +- .github/workflows/test-packages-action-linux.yml | 6 ++++++ .github/workflows/test-packages-action-windows.yml | 2 +- 8 files changed, 13 insertions(+), 7 deletions(-) diff --git a/.github/actionlint.yaml b/.github/actionlint.yaml index 732493c5d99d..372fd65e7038 100644 --- a/.github/actionlint.yaml +++ b/.github/actionlint.yaml @@ -11,6 +11,6 @@ self-hosted-runner: - repo-release - medium - large - - macos-13-xlarge + - macos-13 - linux-x86_64 - linux-arm64 diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index f17fe17d2ead..9eaae03eed50 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -182,7 +182,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13' || matrix.distro-slug }} if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 934928d14a7d..37ffefba5aae 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -97,7 +97,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13' || 'macos-12' }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 1132490620f9..640d3b662c27 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -239,7 +239,7 @@ jobs: env: PIP_INDEX_URL: https://pypi.org/simple runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13' || 'macos-12' }} steps: - name: Check Package Signing Enabled diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index b0f85d05d251..cbd9443ee16d 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -104,7 +104,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13' || 'macos-12' }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-package-downloads-action.yml b/.github/workflows/test-package-downloads-action.yml index 44dacc629142..5b2ace7735e8 100644 --- a/.github/workflows/test-package-downloads-action.yml +++ b/.github/workflows/test-package-downloads-action.yml @@ -296,7 +296,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13' || matrix.distro-slug }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 6ffe524c41b9..464c9c269670 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -184,6 +184,12 @@ jobs: run: | tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true + - name: Mock systemd + run: | + wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py + cp systemctl3.py /usr/bin/systemctl + chmod +x /usr/bin/systemctl + - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index 87adcf513e3b..b2b564316e3b 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -187,7 +187,7 @@ jobs: RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" TOOLS_DISTRO_SLUG: "${{ inputs.distro-slug }}" run: | - env PYTHONUTF8=1 nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- ${{ matrix.tests-chunk }} + env PYTHONUTF8=1 nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' - name: Run Package Tests env: From c764afc4f3c53486b3e26dc60d48b80d21b448b5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 10:56:39 -0700 Subject: [PATCH 047/225] Revert xlarge removal --- .github/actionlint.yaml | 2 +- .github/workflows/build-deps-ci-action.yml | 2 +- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/test-package-downloads-action.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/actionlint.yaml b/.github/actionlint.yaml index 372fd65e7038..732493c5d99d 100644 --- a/.github/actionlint.yaml +++ b/.github/actionlint.yaml @@ -11,6 +11,6 @@ self-hosted-runner: - repo-release - medium - large - - macos-13 + - macos-13-xlarge - linux-x86_64 - linux-arm64 diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 9eaae03eed50..f17fe17d2ead 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -182,7 +182,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 37ffefba5aae..934928d14a7d 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -97,7 +97,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-package-downloads-action.yml b/.github/workflows/test-package-downloads-action.yml index 5b2ace7735e8..44dacc629142 100644 --- a/.github/workflows/test-package-downloads-action.yml +++ b/.github/workflows/test-package-downloads-action.yml @@ -296,7 +296,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple From 669a157c48fcebcc340ebf1776e03713bfe3f626 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 14:48:35 -0700 Subject: [PATCH 048/225] Try macos-13-arm64 instead of xlarge --- .github/actionlint.yaml | 1 + .github/workflows/build-deps-ci-action.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/actionlint.yaml b/.github/actionlint.yaml index 732493c5d99d..717cd80f435f 100644 --- a/.github/actionlint.yaml +++ b/.github/actionlint.yaml @@ -11,6 +11,7 @@ self-hosted-runner: - repo-release - medium - large + - macos-13-arm64 - macos-13-xlarge - linux-x86_64 - linux-arm64 diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index f17fe17d2ead..832c1296f0ce 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -182,7 +182,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-arm64' || matrix.distro-slug }} if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: From 532ba67f3df0e469b23d477cc14999e4cb260ea5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 14:53:40 -0700 Subject: [PATCH 049/225] Stop using xlarge runners --- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-salt-onedir.yml | 2 +- .github/workflows/test-package-downloads-action.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 934928d14a7d..f4bc0e708da1 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -97,7 +97,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13-arm64' || 'macos-12' }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index cbd9443ee16d..e54b50bf6a5a 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -104,7 +104,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13-arm64' || 'macos-12' }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-package-downloads-action.yml b/.github/workflows/test-package-downloads-action.yml index 44dacc629142..1be5911ef736 100644 --- a/.github/workflows/test-package-downloads-action.yml +++ b/.github/workflows/test-package-downloads-action.yml @@ -296,7 +296,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-arm64' || matrix.distro-slug }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple From 46d34a9930f347898bffc409558e2010b43bafc7 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 15:00:53 -0700 Subject: [PATCH 050/225] Mac arm is always xlarge --- .github/workflows/build-deps-ci-action.yml | 2 +- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-packages.yml | 2 +- .github/workflows/build-salt-onedir.yml | 2 +- .github/workflows/test-package-downloads-action.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 832c1296f0ce..f17fe17d2ead 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -182,7 +182,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-arm64' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index f4bc0e708da1..934928d14a7d 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -97,7 +97,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-arm64' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 640d3b662c27..1132490620f9 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -239,7 +239,7 @@ jobs: env: PIP_INDEX_URL: https://pypi.org/simple runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} steps: - name: Check Package Signing Enabled diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index e54b50bf6a5a..b0f85d05d251 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -104,7 +104,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-arm64' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-package-downloads-action.yml b/.github/workflows/test-package-downloads-action.yml index 1be5911ef736..44dacc629142 100644 --- a/.github/workflows/test-package-downloads-action.yml +++ b/.github/workflows/test-package-downloads-action.yml @@ -296,7 +296,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-arm64' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple From f0293101966d537a6c37f8a3261bacd7b56de857 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 15:11:56 -0700 Subject: [PATCH 051/225] Use macos-14 for arm --- .github/workflows/build-deps-onedir.yml | 6 +++++- .github/workflows/build-salt-onedir.yml | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 934928d14a7d..d2accc2eb503 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -97,12 +97,16 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} env: USE_S3_CACHE: 'false' PIP_INDEX_URL: https://pypi.org/simple steps: + - name: "Check cores" + shell: bash + run: sysctl -n hw.ncpu + - name: "Throttle Builds" shell: bash run: | diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index b0f85d05d251..92fb8227c2b9 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -109,6 +109,10 @@ jobs: PIP_INDEX_URL: https://pypi.org/simple steps: + - name: "Check cores" + shell: bash + run: sysctl -n hw.ncpu + - name: "Throttle Builds" shell: bash run: | From 1d32e5e6b4cdb8395208cff2b9daeef7ce1a8232 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 15:39:20 -0700 Subject: [PATCH 052/225] Use 3 core mac-14 for arm64 --- .github/workflows/build-deps-ci-action.yml | 2 +- .github/workflows/build-packages.yml | 2 +- .github/workflows/build-salt-onedir.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index f17fe17d2ead..e584bf9c1d50 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -182,7 +182,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-13-xlarge' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-14' || matrix.distro-slug }} if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 1132490620f9..f8d2bb418022 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -239,7 +239,7 @@ jobs: env: PIP_INDEX_URL: https://pypi.org/simple runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} steps: - name: Check Package Signing Enabled diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 92fb8227c2b9..59c22a96423b 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -104,7 +104,7 @@ jobs: matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} runs-on: - - ${{ matrix.arch == 'arm64' && 'macos-13-xlarge' || 'macos-12' }} + - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} env: PIP_INDEX_URL: https://pypi.org/simple From d7903d89ec6ededfe64502e47a6c80540b8d70c3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 2 Nov 2024 15:39:31 -0700 Subject: [PATCH 053/225] Try renaming salt dir --- .github/workflows/test-packages-action-windows.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index b2b564316e3b..c13aa143f689 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -173,6 +173,9 @@ jobs: run: | nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} + - name: Rename salt directory + run: ren ./salt ./salt-bak + - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" @@ -186,8 +189,9 @@ jobs: GITHUB_ACTIONS_PIPELINE: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" TOOLS_DISTRO_SLUG: "${{ inputs.distro-slug }}" + PYTHONUTF8: "1" run: | - env PYTHONUTF8=1 nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' + nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' - name: Run Package Tests env: @@ -201,8 +205,9 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} OUTPUT_COLUMNS: "190" + PYTHONUTF8: "1" run: | - env PYTHONUTF8=1 nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Prepare Test Run Artifacts From 184346fd4581b7dee4e6c168c24affb45acf9125 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 3 Nov 2024 00:52:12 -0700 Subject: [PATCH 054/225] Fix package testing on windows --- .github/workflows/build-deps-ci-action.yml | 2 + .../test-packages-action-windows.yml | 69 +++++++++++-------- pkg/windows/nsis/tests/quick_setup.ps1 | 2 +- pkg/windows/nsis/tests/setup.ps1 | 2 +- 4 files changed, 45 insertions(+), 30 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index e584bf9c1d50..2ebd8b77cacf 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -276,6 +276,7 @@ jobs: if: ${{ inputs.kind == 'windows' }} env: USE_S3_CACHE: 'false' + GITHUB_WORKSPACE: 'C:\Windows\Temp\testing' timeout-minutes: 90 strategy: fail-fast: false @@ -312,6 +313,7 @@ jobs: python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-windows-${{ matrix.arch }}.tar.xz + - name: Set up Python ${{ inputs.python-version }} if: steps.nox-dependencies-cache.outputs.cache-hit != 'true' uses: actions/setup-python@v5 diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index c13aa143f689..a223bc3688bb 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -117,11 +117,17 @@ jobs: steps: + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" + - name: "Throttle Builds" shell: bash run: | t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + - name: "Set `TIMESTAMP` environment variable" shell: bash run: | @@ -134,24 +140,13 @@ jobs: uses: actions/download-artifact@v4 with: name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ inputs.arch }}-${{ inputs.pkg-type }} - path: artifacts/pkg/ + path: ./artifacts/pkg/ - name: Download Onedir Tarball as an Artifact uses: actions/download-artifact@v4 with: name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Set up Python ${{ inputs.python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple + path: ./artifacts/ - name: Decompress Onedir Tarball shell: bash @@ -160,9 +155,13 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - name: List Packages + - name: Install Nox run: | - tree artifacts/pkg/ + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - run: python3 --version - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 @@ -171,27 +170,41 @@ jobs: - name: Decompress .nox Directory run: | - nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} + 7z.exe x nox.windows.${{ inputs.arch }}.tar.gz -so | 7z x -aoa -si -ttar -o"d:/" + + #- name: Find and remove pyc files + # shell: bash + # run: | + # find . -name '*.pyc' -delete + # find .nox -name '*.pyc' -delete + + - name: List Packages + run: | + dir d:/ + dir . + dir artifacts/ + dir artifacts/pkg + dir .nox/ci-test-onedir/Scripts + + - name: Check onedir python + continue-on-error: true + run: | + artifacts/salt/Scripts/python.exe --version - - name: Rename salt directory - run: ren ./salt ./salt-bak + - run: Get-Item .nox/ci-test-onedir/Scripts/python.exe | Select-Object -ExpandProperty Target + + - name: Check nox python + continue-on-error: true + run: | + .nox/ci-test-onedir/Scripts/python.exe --version - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO_ONLY: "1" - SKIP_INITIAL_ONEDIR_FAILURES: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "1" - OUTPUT_COLUMNS: "190" - GITHUB_ACTIONS_PIPELINE: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - TOOLS_DISTRO_SLUG: "${{ inputs.distro-slug }}" PYTHONUTF8: "1" run: | - nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' + nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' --log-cli-level=debug - name: Run Package Tests env: diff --git a/pkg/windows/nsis/tests/quick_setup.ps1 b/pkg/windows/nsis/tests/quick_setup.ps1 index 454acc937c36..5dd752b96619 100644 --- a/pkg/windows/nsis/tests/quick_setup.ps1 +++ b/pkg/windows/nsis/tests/quick_setup.ps1 @@ -46,7 +46,7 @@ $WINDOWS_DIR = "$PROJECT_DIR\pkg\windows" $NSIS_DIR = "$WINDOWS_DIR\nsis" $BUILDENV_DIR = "$WINDOWS_DIR\buildenv" $NSIS_BIN = "$( ${env:ProgramFiles(x86)} )\NSIS\makensis.exe" -$SALT_DEP_URL = "https://repo.saltproject.io/windows/dependencies/64" +$SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/ssm/64/" #------------------------------------------------------------------------------- # Script Start diff --git a/pkg/windows/nsis/tests/setup.ps1 b/pkg/windows/nsis/tests/setup.ps1 index cd3307e339ee..60d095771fa8 100644 --- a/pkg/windows/nsis/tests/setup.ps1 +++ b/pkg/windows/nsis/tests/setup.ps1 @@ -46,7 +46,7 @@ $WINDOWS_DIR = "$PROJECT_DIR\pkg\windows" $NSIS_DIR = "$WINDOWS_DIR\nsis" $BUILDENV_DIR = "$WINDOWS_DIR\buildenv" $NSIS_BIN = "$( ${env:ProgramFiles(x86)} )\NSIS\makensis.exe" -$SALT_DEP_URL = "https://repo.saltproject.io/windows/dependencies/64" +$SALT_DEP_URL = "https://github.com/saltstack/salt-windows-deps/raw/refs/heads/main/ssm/64/" #------------------------------------------------------------------------------- # Script Start From aa9534f58b88bce96de697434e2e3c0277bed3f5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 4 Nov 2024 13:09:17 -0700 Subject: [PATCH 055/225] Fix extract location --- .github/workflows/test-action-windows.yml | 55 ++++++++++--------- .../workflows/test-packages-action-linux.yml | 9 --- .../test-packages-action-windows.yml | 24 ++++---- noxfile.py | 5 +- 4 files changed, 44 insertions(+), 49 deletions(-) diff --git a/.github/workflows/test-action-windows.yml b/.github/workflows/test-action-windows.yml index 67aed7409834..71ddd1b3f090 100644 --- a/.github/workflows/test-action-windows.yml +++ b/.github/workflows/test-action-windows.yml @@ -162,11 +162,6 @@ jobs: run: | echo true - - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - - name: Set up Python ${{ inputs.gh-actions-python-version }} uses: actions/setup-python@v5 with: @@ -178,6 +173,11 @@ jobs: env: PIP_INDEX_URL: https://pypi.org/simple + - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} + - name: Decompress .nox Directory run: | nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} @@ -188,6 +188,11 @@ jobs: with: name: testrun-changed-files.txt + - name: Check nox python + continue-on-error: true + run: | + .nox/ci-test-onedir/Scripts/python.exe --version + - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" @@ -208,10 +213,10 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ - --from-filenames=testrun-changed-files.txt + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code + "--from-filenames=testrun-changed-files.txt" - name: Run Fast Tests id: run-fast-tests @@ -226,9 +231,9 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "mac or darwin" --suppress-no-test-exit-code - name: Run Slow Tests id: run-slow-tests @@ -243,9 +248,9 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests id: run-core-tests @@ -260,9 +265,9 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests id: run-flaky-tests @@ -277,9 +282,9 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests id: run-full-tests @@ -294,9 +299,9 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --slow-tests --core-tests -k "mac or darwin" + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + --slow-tests --core-tests -k "mac or darwin" - name: Combine Coverage Reports if: always() && inputs.skip-code-coverage == false @@ -306,11 +311,11 @@ jobs: - name: Prepare Test Run Artifacts id: download-artifacts-from-vm if: always() + shell: bash run: | # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below rm -rf artifacts/salt* - tree -a artifacts if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} fi diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 464c9c269670..df7d3c1acb1d 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -197,17 +197,9 @@ jobs: run: | nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - #- name: Run Package Tests - # run: | - # tools --timestamps --no-output-timeout-secs=1800 --timeout-secs=14400 vm test --skip-requirements-install ${{ inputs.fips && '--fips ' || '' }}\ - # --nox-session=${{ inputs.nox-session }}-pkgs --rerun-failures ${{ inputs.distro-slug }} -- ${{ matrix.tests-chunk }} \ - # ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Run Package Tests env: SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" RERUN_FAILURES: "1" GITHUB_ACTIONS_PIPELINE: "1" SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" @@ -270,7 +262,6 @@ jobs: pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.pkg-type }}* merge-multiple: true - - name: Show Test Run Artifacts if: always() run: | diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index a223bc3688bb..7db830440840 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -170,15 +170,9 @@ jobs: - name: Decompress .nox Directory run: | - 7z.exe x nox.windows.${{ inputs.arch }}.tar.gz -so | 7z x -aoa -si -ttar -o"d:/" + nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - #- name: Find and remove pyc files - # shell: bash - # run: | - # find . -name '*.pyc' -delete - # find .nox -name '*.pyc' -delete - - - name: List Packages + - name: List Important Directories run: | dir d:/ dir . @@ -191,8 +185,6 @@ jobs: run: | artifacts/salt/Scripts/python.exe --version - - run: Get-Item .nox/ci-test-onedir/Scripts/python.exe | Select-Object -ExpandProperty Target - - name: Check nox python continue-on-error: true run: | @@ -202,6 +194,7 @@ jobs: env: SKIP_REQUIREMENTS_INSTALL: "1" SKIP_CODE_COVERAGE: "1" + PRINT_SYSTEM_INFO_ONLY: "1" PYTHONUTF8: "1" run: | nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' --log-cli-level=debug @@ -219,18 +212,21 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} OUTPUT_COLUMNS: "190" PYTHONUTF8: "1" - run: | - nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + run: > + nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Prepare Test Run Artifacts id: download-artifacts-from-vm if: always() + shell: bash run: | # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below - rmdir /S /Qa rtifacts/salt - tree -a artifacts + rm -rf artifacts/salt* + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi - name: Upload Test Run Artifacts if: always() diff --git a/noxfile.py b/noxfile.py index dff60827d70b..a605db687cc3 100644 --- a/noxfile.py +++ b/noxfile.py @@ -1277,7 +1277,10 @@ def decompress_dependencies(session): if not os.path.isabs(resolved_link): # Relative symlinks, resolve them resolved_link = os.path.join(scan_path, resolved_link) - if not os.path.exists(resolved_link): + prefix_check = False + if platform == "windows": + prefix_check = resolved_link.startswith("\\\\?") + if not os.path.exists(resolved_link) or prefix_check: session.log("The symlink %r looks to be broken", resolved_link) # This is a broken link, fix it resolved_link_suffix = resolved_link.split( From 90c4fa36f596808fb4c22c7ed0c7d4d7697e6505 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 5 Nov 2024 14:27:20 -0700 Subject: [PATCH 056/225] Upload pkg log artifacts --- .github/workflows/test-packages-action-windows.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index 7db830440840..8ecda36d33d6 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -228,6 +228,15 @@ jobs: mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} fi + - name: Upload Test Run Log Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + - name: Upload Test Run Artifacts if: always() uses: actions/upload-artifact@v4 From 4a17911af989a158ff910ddf0d3d4eacff23415f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 5 Nov 2024 15:04:24 -0700 Subject: [PATCH 057/225] Add rockylinux containers --- .github/workflows/ci.yml | 98 +++++++++++++++++++ .github/workflows/nightly.yml | 96 ++++++++++++++++++ .github/workflows/scheduled.yml | 96 ++++++++++++++++++ .github/workflows/staging.yml | 96 ++++++++++++++++++ .../templates/test-salt-pkg.yml.jinja | 1 + .../workflows/templates/test-salt.yml.jinja | 1 + .github/workflows/test-action-linux.yml | 6 +- .../workflows/test-packages-action-linux.yml | 15 ++- .../test-packages-action-windows.yml | 2 +- tools/precommit/workflows.py | 54 ++++++---- tools/utils/__init__.py | 1 + 11 files changed, 444 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 74287003fc48..bf63a4d50583 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -604,6 +604,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-9-pkg-tests: + name: Rocky Linux 9 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-9-arm64-pkg-tests: + name: Rocky Linux 9 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} @@ -616,6 +660,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -637,6 +682,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -816,6 +862,50 @@ jobs: workflow-slug: ci default-timeout: 180 + rockylinux-9: + name: Rocky Linux 9 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + rockylinux-9-arm64: + name: Rocky Linux 9 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} @@ -827,6 +917,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -848,6 +939,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -872,6 +964,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-9 + - rockylinux-9-arm64 - ubuntu-2204 - ubuntu-2204-arm64 steps: @@ -1019,8 +1113,12 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-9 + - rockylinux-9-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - rockylinux-9-pkg-tests + - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - macos-12-pkg-tests diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 28a5b78dd08c..e527c382ac7a 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -727,6 +727,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-9-pkg-tests: + name: Rocky Linux 9 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-9-arm64-pkg-tests: + name: Rocky Linux 9 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -739,6 +783,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -760,6 +805,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -939,6 +985,50 @@ jobs: workflow-slug: nightly default-timeout: 360 + rockylinux-9: + name: Rocky Linux 9 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + rockylinux-9-arm64: + name: Rocky Linux 9 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -950,6 +1040,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -971,6 +1062,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1732,6 +1824,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-9 + - rockylinux-9-arm64 - ubuntu-2204 - ubuntu-2204-arm64 @@ -1798,6 +1892,8 @@ jobs: - build-pkgs-src-macos - build-pkgs-src-windows - publish-repositories + - rockylinux-9-pkg-tests + - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - macos-12-pkg-tests diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 38cd955944e1..fae838e47d73 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -643,6 +643,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-9-pkg-tests: + name: Rocky Linux 9 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-9-arm64-pkg-tests: + name: Rocky Linux 9 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -655,6 +699,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -676,6 +721,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -855,6 +901,50 @@ jobs: workflow-slug: scheduled default-timeout: 360 + rockylinux-9: + name: Rocky Linux 9 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + rockylinux-9-arm64: + name: Rocky Linux 9 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -866,6 +956,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -887,6 +978,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -923,8 +1015,12 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-9 + - rockylinux-9-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - rockylinux-9-pkg-tests + - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - macos-12-pkg-tests diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 31a488fea6cd..afb691abd878 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -709,6 +709,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-9-pkg-tests: + name: Rocky Linux 9 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-9-arm64-pkg-tests: + name: Rocky Linux 9 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -721,6 +765,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -742,6 +787,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -921,6 +967,50 @@ jobs: workflow-slug: staging default-timeout: 180 + rockylinux-9: + name: Rocky Linux 9 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + rockylinux-9-arm64: + name: Rocky Linux 9 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-9-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -932,6 +1022,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -953,6 +1044,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1844,8 +1936,12 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-9 + - rockylinux-9-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - rockylinux-9-pkg-tests + - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests - macos-12-pkg-tests diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 2fd4e3c802b6..362c74cfa02d 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -18,6 +18,7 @@ distro-slug: <{ os.slug }> nox-session: ci-test-onedir platform: linux + container: <{ os.container }> arch: <{ os.arch }> salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: <{ os.pkg_type }> diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index cb9bd0fbc35a..5699337ef2ec 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -85,6 +85,7 @@ distro-slug: <{ os.slug }> nox-session: ci-test-onedir platform: linux + container: <{ os.container }> arch: <{ os.arch }> nox-version: <{ nox_version }> gh-actions-python-version: "<{ gh_actions_workflows_python_version }>" diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index 3c813636fad9..b29c0191ff47 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -12,6 +12,10 @@ on: required: true type: string description: The nox session to run + container: + required: true + type: string + description: The container image to run tests on testrun: required: true type: string @@ -112,7 +116,7 @@ jobs: name: Test runs-on: linux-${{ inputs.arch }} container: - image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + image: ${{ inputs.container }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index df7d3c1acb1d..446bec2dd202 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -11,6 +11,10 @@ on: required: true type: string description: The platform being tested + container: + required: true + type: string + description: The container image to run tests on arch: required: true type: string @@ -107,7 +111,7 @@ jobs: runs-on: - linux-${{ inputs.arch }} container: - image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + image: ${{ inputs.container }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: @@ -208,6 +212,15 @@ jobs: nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} + - name: Upload Test Run Log Artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + - name: Upload Test Run Artifacts if: always() uses: actions/upload-artifact@v4 diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index 8ecda36d33d6..cca00a17c45f 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -229,7 +229,7 @@ jobs: fi - name: Upload Test Run Log Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' + if: always() uses: actions/upload-artifact@v4 with: name: pkg-testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index b677c21e017e..cacfb2f89a67 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -29,12 +29,18 @@ # display_name="Rocky Linux 8 Arm64", # arch="arm64", # ), - # Linux(slug="rockylinux-9", display_name="Rocky Linux 9", arch="x86_64"), - # Linux( - # slug="rockylinux-9-arm64", - # display_name="Rocky Linux 9 Arm64", - # arch="arm64", - # ), + Linux( + slug="rockylinux-9", + display_name="Rocky Linux 9", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + ), + Linux( + slug="rockylinux-9-arm64", + display_name="Rocky Linux 9 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + ), # Linux(slug="amazonlinux-2", display_name="Amazon Linux 2", arch="x86_64"), # Linux( # slug="amazonlinux-2-arm64", @@ -95,11 +101,17 @@ # display_name="Ubuntu 20.04 Arm64", # arch="arm64", # ), - Linux(slug="ubuntu-22.04", display_name="Ubuntu 22.04", arch="x86_64"), + Linux( + slug="ubuntu-22.04", + display_name="Ubuntu 22.04", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", + ), Linux( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), # Linux(slug="ubuntu-24.04", display_name="Ubuntu 24.04", arch="x86_64"), # Linux( @@ -207,18 +219,20 @@ def generate_workflows(ctx: Context): # arch="arm64", # pkg_type="rpm", # ), - # Linux( - # slug="rockylinux-9", - # display_name="Rocky Linux 9", - # arch="x86_64", - # pkg_type="rpm", - # ), - # Linux( - # slug="rockylinux-9-arm64", - # display_name="Rocky Linux 9 Arm64", - # arch="arm64", - # pkg_type="rpm", - # ), + Linux( + slug="rockylinux-9", + display_name="Rocky Linux 9", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + ), + Linux( + slug="rockylinux-9-arm64", + display_name="Rocky Linux 9 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + ), # Linux( # slug="amazonlinux-2", # display_name="Amazon Linux 2", @@ -336,12 +350,14 @@ def generate_workflows(ctx: Context): display_name="Ubuntu 22.04", arch="x86_64", pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), Linux( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), # Linux( # slug="ubuntu-24.04", diff --git a/tools/utils/__init__.py b/tools/utils/__init__.py index 7588a183eefa..3b3d22323e65 100644 --- a/tools/utils/__init__.py +++ b/tools/utils/__init__.py @@ -67,6 +67,7 @@ def _get_default_arch(self): class Linux(OS): platform: str = attr.ib(default="linux") fips: bool = attr.ib(default=False) + container: str = attr.ib(default=None) @attr.s(frozen=True, slots=True) From 4bf9cce2f554366cb615ebd28b4da5249c89776a Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 5 Nov 2024 16:53:08 -0700 Subject: [PATCH 058/225] Use distro slug for windows packages --- .github/workflows/test-packages-action-windows.yml | 2 +- tools/ci.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index cca00a17c45f..d61f8c3d09ec 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -106,7 +106,7 @@ jobs: test: name: Test - runs-on: windows-latest + runs-on: ${{ inputs.distro-slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: - generate-matrix diff --git a/tools/ci.py b/tools/ci.py index 3cfba6dda63e..944f11dddc7f 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1172,7 +1172,7 @@ def get_pr_test_labels( f"The '{slug}' slug exists as a label but not as an available OS." ) selected.add(slug) - if slug != "all": + if slug != "all" and slug in available: available.remove(slug) continue test_labels.append(name) From e80a43d7539c7e1fac29b51c21d4ea66f239b4de Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 5 Nov 2024 17:51:52 -0700 Subject: [PATCH 059/225] bump cache seed --- .github/workflows/ci.yml | 2 +- .github/workflows/nightly.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/scheduled.yml | 2 +- .github/workflows/staging.yml | 2 +- .github/workflows/templates/layout.yml.jinja | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bf63a4d50583..64e610de01cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,7 +16,7 @@ on: env: COLUMNS: 190 - CACHE_SEED: SEED-2 # Bump the number to invalidate all caches + CACHE_SEED: SEED-1 # Bump the number to invalidate all caches RELENV_DATA: "${{ github.workspace }}/.relenv" PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index e527c382ac7a..dcbeda327442 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -22,7 +22,7 @@ on: env: COLUMNS: 190 - CACHE_SEED: SEED-2 # Bump the number to invalidate all caches + CACHE_SEED: SEED-1 # Bump the number to invalidate all caches RELENV_DATA: "${{ github.workspace }}/.relenv" PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1b82cc0e2a0f..7ca9d7ecf0d7 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -21,7 +21,7 @@ on: env: COLUMNS: 190 - CACHE_SEED: SEED-2 # Bump the number to invalidate all caches + CACHE_SEED: SEED-1 # Bump the number to invalidate all caches RELENV_DATA: "${{ github.workspace }}/.relenv" PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index fae838e47d73..43ececd64b75 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -12,7 +12,7 @@ on: env: COLUMNS: 190 - CACHE_SEED: SEED-2 # Bump the number to invalidate all caches + CACHE_SEED: SEED-1 # Bump the number to invalidate all caches RELENV_DATA: "${{ github.workspace }}/.relenv" PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index afb691abd878..c9768a908ae2 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -37,7 +37,7 @@ on: env: COLUMNS: 190 - CACHE_SEED: SEED-2 # Bump the number to invalidate all caches + CACHE_SEED: SEED-1 # Bump the number to invalidate all caches RELENV_DATA: "${{ github.workspace }}/.relenv" PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" diff --git a/.github/workflows/templates/layout.yml.jinja b/.github/workflows/templates/layout.yml.jinja index 2259e26bff44..b37f4d40a987 100644 --- a/.github/workflows/templates/layout.yml.jinja +++ b/.github/workflows/templates/layout.yml.jinja @@ -34,7 +34,7 @@ on: env: COLUMNS: 190 - CACHE_SEED: SEED-2 # Bump the number to invalidate all caches + CACHE_SEED: SEED-1 # Bump the number to invalidate all caches RELENV_DATA: "${{ github.workspace }}/.relenv" PIP_DISABLE_PIP_VERSION_CHECK: "1" RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" From 658936895c70fe5d503216262e1951c5e4140f67 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 5 Nov 2024 19:44:46 -0700 Subject: [PATCH 060/225] Use rocky linux 8 too --- .github/workflows/ci.yml | 48 +++++++++++++++++++++++++++++++++ .github/workflows/nightly.yml | 46 +++++++++++++++++++++++++++++++ .github/workflows/scheduled.yml | 46 +++++++++++++++++++++++++++++++ .github/workflows/staging.yml | 46 +++++++++++++++++++++++++++++++ tools/precommit/workflows.py | 18 ++++++++----- 5 files changed, 198 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 64e610de01cb..14e1cc078f3f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -862,6 +862,50 @@ jobs: workflow-slug: ci default-timeout: 180 + rockylinux-8: + name: Rocky Linux 8 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + rockylinux-8-arm64: + name: Rocky Linux 8 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -964,6 +1008,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-8 + - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 - ubuntu-2204 @@ -1113,6 +1159,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-8 + - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 - ubuntu-2204 diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index dcbeda327442..df24d4a10fcb 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -985,6 +985,50 @@ jobs: workflow-slug: nightly default-timeout: 360 + rockylinux-8: + name: Rocky Linux 8 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + rockylinux-8-arm64: + name: Rocky Linux 8 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1824,6 +1868,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-8 + - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 - ubuntu-2204 diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 43ececd64b75..90a5e39d4416 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -901,6 +901,50 @@ jobs: workflow-slug: scheduled default-timeout: 360 + rockylinux-8: + name: Rocky Linux 8 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + rockylinux-8-arm64: + name: Rocky Linux 8 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1015,6 +1059,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-8 + - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 - ubuntu-2204 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index c9768a908ae2..2869f6cf856f 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -967,6 +967,50 @@ jobs: workflow-slug: staging default-timeout: 180 + rockylinux-8: + name: Rocky Linux 8 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + rockylinux-8-arm64: + name: Rocky Linux 8 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1936,6 +1980,8 @@ jobs: - windows-2019 - windows-2022 - macos-12 + - rockylinux-8 + - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 - ubuntu-2204 diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index cacfb2f89a67..5d4554017af6 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -23,12 +23,18 @@ TEST_SALT_LISTING = PlatformDefinitions( { "linux": [ - # Linux(slug="rockylinux-8", display_name="Rocky Linux 8", arch="x86_64"), - # Linux( - # slug="rockylinux-8-arm64", - # display_name="Rocky Linux 8 Arm64", - # arch="arm64", - # ), + Linux( + slug="rockylinux-8", + display_name="Rocky Linux 8", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + ), + Linux( + slug="rockylinux-8-arm64", + display_name="Rocky Linux 8 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + ), Linux( slug="rockylinux-9", display_name="Rocky Linux 9", From 459c253c8af0bd5f0314fe0655594cbf80d4b219 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 6 Nov 2024 01:01:14 -0700 Subject: [PATCH 061/225] More testing containers --- .github/workflows/ci.yml | 508 ++++++++++++++++++++++++++++++++ .github/workflows/nightly.yml | 487 ++++++++++++++++++++++++++++++ .github/workflows/scheduled.yml | 487 ++++++++++++++++++++++++++++++ .github/workflows/staging.yml | 487 ++++++++++++++++++++++++++++++ tools/precommit/workflows.py | 195 ++++++++---- 5 files changed, 2099 insertions(+), 65 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 14e1cc078f3f..63ffe0725641 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -950,6 +950,428 @@ jobs: workflow-slug: ci default-timeout: 180 + amazonlinux-2: + name: Amazon Linux 2 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + amazonlinux-2-arm64: + name: Amazon Linux 2 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + amazonlinux-2023: + name: Amazon Linux 2023 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + amazonlinux-2023-arm64: + name: Amazon Linux 2023 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + debian-11: + name: Debian 11 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + debian-11-arm64: + name: Debian 11 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + debian-12: + name: Debian 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + debian-12-arm64: + name: Debian 12 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + fedora-40: + name: Fedora 40 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: fedora-40 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + photonos-4: + name: Photon OS 4 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + photonos-4-arm64: + name: Photon OS 4 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + photonos-4-fips: + name: Photon OS 4 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + fips: true + + photonos-4-arm64-fips: + name: Photon OS 4 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + fips: true + + photonos-5: + name: Photon OS 5 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + photonos-5-arm64: + name: Photon OS 5 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + photonos-5-fips: + name: Photon OS 5 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + fips: true + + photonos-5-arm64-fips: + name: Photon OS 5 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + fips: true + + ubuntu-2004: + name: Ubuntu 20.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + ubuntu-2004-arm64: + name: Ubuntu 20.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} @@ -994,6 +1416,50 @@ jobs: workflow-slug: ci default-timeout: 180 + ubuntu-2404: + name: Ubuntu 24.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + ubuntu-2404-arm64: + name: Ubuntu 24.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + combine-all-code-coverage: name: Combine Code Coverage if: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] == false }} @@ -1012,8 +1478,29 @@ jobs: - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 + - amazonlinux-2 + - amazonlinux-2-arm64 + - amazonlinux-2023 + - amazonlinux-2023-arm64 + - debian-11 + - debian-11-arm64 + - debian-12 + - debian-12-arm64 + - fedora-40 + - photonos-4 + - photonos-4-arm64 + - photonos-4-fips + - photonos-4-arm64-fips + - photonos-5 + - photonos-5-arm64 + - photonos-5-fips + - photonos-5-arm64-fips + - ubuntu-2004 + - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - ubuntu-2404 + - ubuntu-2404-arm64 steps: - uses: actions/checkout@v4 @@ -1163,8 +1650,29 @@ jobs: - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 + - amazonlinux-2 + - amazonlinux-2-arm64 + - amazonlinux-2023 + - amazonlinux-2023-arm64 + - debian-11 + - debian-11-arm64 + - debian-12 + - debian-12-arm64 + - fedora-40 + - photonos-4 + - photonos-4-arm64 + - photonos-4-fips + - photonos-4-arm64-fips + - photonos-5 + - photonos-5-arm64 + - photonos-5-fips + - photonos-5-arm64-fips + - ubuntu-2004 + - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - ubuntu-2404 + - ubuntu-2404-arm64 - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index df24d4a10fcb..7dfd4bafc87c 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1073,6 +1073,428 @@ jobs: workflow-slug: nightly default-timeout: 360 + amazonlinux-2: + name: Amazon Linux 2 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + amazonlinux-2-arm64: + name: Amazon Linux 2 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + amazonlinux-2023: + name: Amazon Linux 2023 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + amazonlinux-2023-arm64: + name: Amazon Linux 2023 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + debian-11: + name: Debian 11 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + debian-11-arm64: + name: Debian 11 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + debian-12: + name: Debian 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + debian-12-arm64: + name: Debian 12 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + fedora-40: + name: Fedora 40 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: fedora-40 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + photonos-4: + name: Photon OS 4 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + photonos-4-arm64: + name: Photon OS 4 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + photonos-4-fips: + name: Photon OS 4 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + fips: true + + photonos-4-arm64-fips: + name: Photon OS 4 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + fips: true + + photonos-5: + name: Photon OS 5 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + photonos-5-arm64: + name: Photon OS 5 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + photonos-5-fips: + name: Photon OS 5 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + fips: true + + photonos-5-arm64-fips: + name: Photon OS 5 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + fips: true + + ubuntu-2004: + name: Ubuntu 20.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + ubuntu-2004-arm64: + name: Ubuntu 20.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1117,6 +1539,50 @@ jobs: workflow-slug: nightly default-timeout: 360 + ubuntu-2404: + name: Ubuntu 24.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + ubuntu-2404-arm64: + name: Ubuntu 24.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + build-src-repo: name: Build Repository environment: nightly @@ -1872,8 +2338,29 @@ jobs: - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 + - amazonlinux-2 + - amazonlinux-2-arm64 + - amazonlinux-2023 + - amazonlinux-2023-arm64 + - debian-11 + - debian-11-arm64 + - debian-12 + - debian-12-arm64 + - fedora-40 + - photonos-4 + - photonos-4-arm64 + - photonos-4-fips + - photonos-4-arm64-fips + - photonos-5 + - photonos-5-arm64 + - photonos-5-fips + - photonos-5-arm64-fips + - ubuntu-2004 + - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - ubuntu-2404 + - ubuntu-2404-arm64 steps: diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 90a5e39d4416..3b11df03bbfa 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -989,6 +989,428 @@ jobs: workflow-slug: scheduled default-timeout: 360 + amazonlinux-2: + name: Amazon Linux 2 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + amazonlinux-2-arm64: + name: Amazon Linux 2 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + amazonlinux-2023: + name: Amazon Linux 2023 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + amazonlinux-2023-arm64: + name: Amazon Linux 2023 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + debian-11: + name: Debian 11 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + debian-11-arm64: + name: Debian 11 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + debian-12: + name: Debian 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + debian-12-arm64: + name: Debian 12 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + fedora-40: + name: Fedora 40 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: fedora-40 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + photonos-4: + name: Photon OS 4 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + photonos-4-arm64: + name: Photon OS 4 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + photonos-4-fips: + name: Photon OS 4 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + fips: true + + photonos-4-arm64-fips: + name: Photon OS 4 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + fips: true + + photonos-5: + name: Photon OS 5 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + photonos-5-arm64: + name: Photon OS 5 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + photonos-5-fips: + name: Photon OS 5 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + fips: true + + photonos-5-arm64-fips: + name: Photon OS 5 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + fips: true + + ubuntu-2004: + name: Ubuntu 20.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + ubuntu-2004-arm64: + name: Ubuntu 20.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1033,6 +1455,50 @@ jobs: workflow-slug: scheduled default-timeout: 360 + ubuntu-2404: + name: Ubuntu 24.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + ubuntu-2404-arm64: + name: Ubuntu 24.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks # on a pull request instead of requiring all @@ -1063,8 +1529,29 @@ jobs: - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 + - amazonlinux-2 + - amazonlinux-2-arm64 + - amazonlinux-2023 + - amazonlinux-2023-arm64 + - debian-11 + - debian-11-arm64 + - debian-12 + - debian-12-arm64 + - fedora-40 + - photonos-4 + - photonos-4-arm64 + - photonos-4-fips + - photonos-4-arm64-fips + - photonos-5 + - photonos-5-arm64 + - photonos-5-fips + - photonos-5-arm64-fips + - ubuntu-2004 + - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - ubuntu-2404 + - ubuntu-2404-arm64 - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 2869f6cf856f..b91e230bb66f 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1055,6 +1055,428 @@ jobs: workflow-slug: staging default-timeout: 180 + amazonlinux-2: + name: Amazon Linux 2 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + amazonlinux-2-arm64: + name: Amazon Linux 2 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + amazonlinux-2023: + name: Amazon Linux 2023 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + amazonlinux-2023-arm64: + name: Amazon Linux 2023 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + debian-11: + name: Debian 11 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + debian-11-arm64: + name: Debian 11 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + debian-12: + name: Debian 12 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + debian-12-arm64: + name: Debian 12 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + fedora-40: + name: Fedora 40 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: fedora-40 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + photonos-4: + name: Photon OS 4 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + photonos-4-arm64: + name: Photon OS 4 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + photonos-4-fips: + name: Photon OS 4 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + fips: true + + photonos-4-arm64-fips: + name: Photon OS 4 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + fips: true + + photonos-5: + name: Photon OS 5 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + photonos-5-arm64: + name: Photon OS 5 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + photonos-5-fips: + name: Photon OS 5 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + fips: true + + photonos-5-arm64-fips: + name: Photon OS 5 Arm64 Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + fips: true + + ubuntu-2004: + name: Ubuntu 20.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + ubuntu-2004-arm64: + name: Ubuntu 20.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -1099,6 +1521,50 @@ jobs: workflow-slug: staging default-timeout: 180 + ubuntu-2404: + name: Ubuntu 24.04 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + ubuntu-2404-arm64: + name: Ubuntu 24.04 Arm64 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-ci-deps-linux + uses: ./.github/workflows/test-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + build-src-repo: name: Build Repository environment: staging @@ -1984,8 +2450,29 @@ jobs: - rockylinux-8-arm64 - rockylinux-9 - rockylinux-9-arm64 + - amazonlinux-2 + - amazonlinux-2-arm64 + - amazonlinux-2023 + - amazonlinux-2023-arm64 + - debian-11 + - debian-11-arm64 + - debian-12 + - debian-12-arm64 + - fedora-40 + - photonos-4 + - photonos-4-arm64 + - photonos-4-fips + - photonos-4-arm64-fips + - photonos-5 + - photonos-5-arm64 + - photonos-5-fips + - photonos-5-arm64-fips + - ubuntu-2004 + - ubuntu-2004-arm64 - ubuntu-2204 - ubuntu-2204-arm64 + - ubuntu-2404 + - ubuntu-2404-arm64 - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests - ubuntu-2204-pkg-tests diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 5d4554017af6..07835b723f74 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -47,66 +47,125 @@ arch="arm64", container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", ), - # Linux(slug="amazonlinux-2", display_name="Amazon Linux 2", arch="x86_64"), - # Linux( - # slug="amazonlinux-2-arm64", - # display_name="Amazon Linux 2 Arm64", - # arch="arm64", - # ), - # Linux( - # slug="amazonlinux-2023", - # display_name="Amazon Linux 2023", - # arch="x86_64", - # ), - # Linux( - # slug="amazonlinux-2023-arm64", - # display_name="Amazon Linux 2023 Arm64", - # arch="arm64", - # ), - # Linux(slug="debian-11", display_name="Debian 11", arch="x86_64"), - # Linux(slug="debian-11-arm64", display_name="Debian 11 Arm64", arch="arm64"), - # Linux(slug="debian-12", display_name="Debian 12", arch="x86_64"), - # Linux(slug="debian-12-arm64", display_name="Debian 12 Arm64", arch="arm64"), - # Linux(slug="fedora-40", display_name="Fedora 40", arch="x86_64"), + Linux( + slug="amazonlinux-2", + display_name="Amazon Linux 2", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", + ), + Linux( + slug="amazonlinux-2-arm64", + display_name="Amazon Linux 2 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", + ), + Linux( + slug="amazonlinux-2023", + display_name="Amazon Linux 2023", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", + ), + Linux( + slug="amazonlinux-2023-arm64", + display_name="Amazon Linux 2023 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", + ), + Linux( + slug="debian-11", + display_name="Debian 11", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", + ), + Linux( + slug="debian-11-arm64", + display_name="Debian 11 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", + ), + Linux( + slug="debian-12", + display_name="Debian 12", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", + ), + Linux( + slug="debian-12-arm64", + display_name="Debian 12 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", + ), + Linux( + slug="fedora-40", + display_name="Fedora 40", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:fedora-40", + ), # Linux(slug="opensuse-15", display_name="Opensuse 15", arch="x86_64"), - # Linux(slug="photonos-4", display_name="Photon OS 4", arch="x86_64"), - # Linux( - # slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64" - # ), - # Linux( - # slug="photonos-4", - # display_name="Photon OS 4", - # arch="x86_64", - # fips=True, - # ), - # Linux( - # slug="photonos-4-arm64", - # display_name="Photon OS 4 Arm64", - # arch="arm64", - # fips=True, - # ), - # Linux(slug="photonos-5", display_name="Photon OS 5", arch="x86_64"), - # Linux( - # slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64" - # ), - # Linux( - # slug="photonos-5", - # display_name="Photon OS 5", - # arch="x86_64", - # fips=True, - # ), - # Linux( - # slug="photonos-5-arm64", - # display_name="Photon OS 5 Arm64", - # arch="arm64", - # fips=True, - # ), - # Linux(slug="ubuntu-20.04", display_name="Ubuntu 20.04", arch="x86_64"), - # Linux( - # slug="ubuntu-20.04-arm64", - # display_name="Ubuntu 20.04 Arm64", - # arch="arm64", - # ), + Linux( + slug="photonos-4", + display_name="Photon OS 4", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + ), + Linux( + slug="photonos-4-arm64", + display_name="Photon OS 4 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + ), + Linux( + slug="photonos-4", + display_name="Photon OS 4", + arch="x86_64", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + ), + Linux( + slug="photonos-4-arm64", + display_name="Photon OS 4 Arm64", + arch="arm64", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + ), + Linux( + slug="photonos-5", + display_name="Photon OS 5", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + ), + Linux( + slug="photonos-5-arm64", + display_name="Photon OS 5 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + ), + Linux( + slug="photonos-5", + display_name="Photon OS 5", + arch="x86_64", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + ), + Linux( + slug="photonos-5-arm64", + display_name="Photon OS 5 Arm64", + arch="arm64", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + ), + Linux( + slug="ubuntu-20.04", + display_name="Ubuntu 20.04", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", + ), + Linux( + slug="ubuntu-20.04-arm64", + display_name="Ubuntu 20.04 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", + ), Linux( slug="ubuntu-22.04", display_name="Ubuntu 22.04", @@ -119,12 +178,18 @@ arch="arm64", container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), - # Linux(slug="ubuntu-24.04", display_name="Ubuntu 24.04", arch="x86_64"), - # Linux( - # slug="ubuntu-24.04-arm64", - # display_name="Ubuntu 24.04 Arm64", - # arch="arm64", - # ), + Linux( + slug="ubuntu-24.04", + display_name="Ubuntu 24.04", + arch="x86_64", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", + ), + Linux( + slug="ubuntu-24.04-arm64", + display_name="Ubuntu 24.04 Arm64", + arch="arm64", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", + ), ], "macos": [ MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), From 2abe0d12d8d30b6cb7b039cce3a056c6755d945b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 6 Nov 2024 01:33:32 -0700 Subject: [PATCH 062/225] fix photon container name --- .github/workflows/ci.yml | 16 ++++++++-------- .github/workflows/nightly.yml | 16 ++++++++-------- .github/workflows/scheduled.yml | 16 ++++++++-------- .github/workflows/staging.yml | 16 ++++++++-------- tools/precommit/workflows.py | 16 ++++++++-------- 5 files changed, 40 insertions(+), 40 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 63ffe0725641..eb211dabcfeb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1159,7 +1159,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1181,7 +1181,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1203,7 +1203,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1226,7 +1226,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1249,7 +1249,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1271,7 +1271,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1293,7 +1293,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1316,7 +1316,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 7dfd4bafc87c..60bf6e290e3b 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1282,7 +1282,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1304,7 +1304,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1326,7 +1326,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1349,7 +1349,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1372,7 +1372,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1394,7 +1394,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1416,7 +1416,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1439,7 +1439,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 3b11df03bbfa..afb397d6d156 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1198,7 +1198,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1220,7 +1220,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1242,7 +1242,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1265,7 +1265,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1288,7 +1288,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1310,7 +1310,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1332,7 +1332,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1355,7 +1355,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index b91e230bb66f..ad8066e2da3c 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1264,7 +1264,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1286,7 +1286,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1308,7 +1308,7 @@ jobs: distro-slug: photonos-4 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1331,7 +1331,7 @@ jobs: distro-slug: photonos-4-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1354,7 +1354,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1376,7 +1376,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1398,7 +1398,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: x86_64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" @@ -1421,7 +1421,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0 + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 arch: arm64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 07835b723f74..f1e58176d486 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -106,53 +106,53 @@ slug="photonos-4", display_name="Photon OS 4", arch="x86_64", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), Linux( slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), Linux( slug="photonos-4", display_name="Photon OS 4", arch="x86_64", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), Linux( slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), Linux( slug="photonos-5", display_name="Photon OS 5", arch="x86_64", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), Linux( slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), Linux( slug="photonos-5", display_name="Photon OS 5", arch="x86_64", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), Linux( slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5.0", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), Linux( slug="ubuntu-20.04", From ba0daa16d5c247795a116cf58e0a16955a63407a Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 6 Nov 2024 02:20:59 -0700 Subject: [PATCH 063/225] Enable more containers for pkg tests --- .github/workflows/ci.yml | 510 ++++++++++++++++++++++++++++++++ .github/workflows/nightly.yml | 510 ++++++++++++++++++++++++++++++++ .github/workflows/scheduled.yml | 510 ++++++++++++++++++++++++++++++++ .github/workflows/staging.yml | 510 ++++++++++++++++++++++++++++++++ tools/precommit/workflows.py | 306 ++++++++++--------- 5 files changed, 2198 insertions(+), 148 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eb211dabcfeb..3f99533fb5a8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -604,6 +604,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-8-pkg-tests: + name: Rocky Linux 8 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-8-arm64-pkg-tests: + name: Rocky Linux 8 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -648,6 +692,406 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + amazonlinux-2-pkg-tests: + name: Amazon Linux 2 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2-arm64-pkg-tests: + name: Amazon Linux 2 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-pkg-tests: + name: Amazon Linux 2023 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-arm64-pkg-tests: + name: Amazon Linux 2023 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-pkg-tests: + name: Debian 11 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-arm64-pkg-tests: + name: Debian 11 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-pkg-tests: + name: Debian 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-arm64-pkg-tests: + name: Debian 12 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests: + name: Photon OS 4 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-arm64-pkg-tests: + name: Photon OS 4 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests-fips: + name: Photon OS 4 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-4-arm64-pkg-tests-fips: + name: Photon OS 4 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-pkg-tests: + name: Photon OS 5 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-arm64-pkg-tests: + name: Photon OS 5 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-pkg-tests-fips: + name: Photon OS 5 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-arm64-pkg-tests-fips: + name: Photon OS 5 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + ubuntu-2004-pkg-tests: + name: Ubuntu 20.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2004-arm64-pkg-tests: + name: Ubuntu 20.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} @@ -692,6 +1136,50 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2404-pkg-tests: + name: Ubuntu 24.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2404-arm64-pkg-tests: + name: Ubuntu 24.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} @@ -1673,10 +2161,32 @@ jobs: - ubuntu-2204-arm64 - ubuntu-2404 - ubuntu-2404-arm64 + - rockylinux-8-pkg-tests + - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests + - amazonlinux-2-pkg-tests + - amazonlinux-2-arm64-pkg-tests + - amazonlinux-2023-pkg-tests + - amazonlinux-2023-arm64-pkg-tests + - debian-11-pkg-tests + - debian-11-arm64-pkg-tests + - debian-12-pkg-tests + - debian-12-arm64-pkg-tests + - photonos-4-pkg-tests + - photonos-4-arm64-pkg-tests + - photonos-4-pkg-tests-fips + - photonos-4-arm64-pkg-tests-fips + - photonos-5-pkg-tests + - photonos-5-arm64-pkg-tests + - photonos-5-pkg-tests-fips + - photonos-5-arm64-pkg-tests-fips + - ubuntu-2004-pkg-tests + - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests + - ubuntu-2404-pkg-tests + - ubuntu-2404-arm64-pkg-tests - macos-12-pkg-tests - windows-2019-nsis-pkg-tests - windows-2019-msi-pkg-tests diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 60bf6e290e3b..f2a22e960101 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -727,6 +727,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-8-pkg-tests: + name: Rocky Linux 8 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-8-arm64-pkg-tests: + name: Rocky Linux 8 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -771,6 +815,406 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + amazonlinux-2-pkg-tests: + name: Amazon Linux 2 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2-arm64-pkg-tests: + name: Amazon Linux 2 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-pkg-tests: + name: Amazon Linux 2023 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-arm64-pkg-tests: + name: Amazon Linux 2023 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-pkg-tests: + name: Debian 11 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-arm64-pkg-tests: + name: Debian 11 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-pkg-tests: + name: Debian 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-arm64-pkg-tests: + name: Debian 12 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests: + name: Photon OS 4 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-arm64-pkg-tests: + name: Photon OS 4 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests-fips: + name: Photon OS 4 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-4-arm64-pkg-tests-fips: + name: Photon OS 4 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-pkg-tests: + name: Photon OS 5 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-arm64-pkg-tests: + name: Photon OS 5 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-pkg-tests-fips: + name: Photon OS 5 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-arm64-pkg-tests-fips: + name: Photon OS 5 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + ubuntu-2004-pkg-tests: + name: Ubuntu 20.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2004-arm64-pkg-tests: + name: Ubuntu 20.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -815,6 +1259,50 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2404-pkg-tests: + name: Ubuntu 24.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2404-arm64-pkg-tests: + name: Ubuntu 24.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} @@ -2425,10 +2913,32 @@ jobs: - build-pkgs-src-macos - build-pkgs-src-windows - publish-repositories + - rockylinux-8-pkg-tests + - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests + - amazonlinux-2-pkg-tests + - amazonlinux-2-arm64-pkg-tests + - amazonlinux-2023-pkg-tests + - amazonlinux-2023-arm64-pkg-tests + - debian-11-pkg-tests + - debian-11-arm64-pkg-tests + - debian-12-pkg-tests + - debian-12-arm64-pkg-tests + - photonos-4-pkg-tests + - photonos-4-arm64-pkg-tests + - photonos-4-pkg-tests-fips + - photonos-4-arm64-pkg-tests-fips + - photonos-5-pkg-tests + - photonos-5-arm64-pkg-tests + - photonos-5-pkg-tests-fips + - photonos-5-arm64-pkg-tests-fips + - ubuntu-2004-pkg-tests + - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests + - ubuntu-2404-pkg-tests + - ubuntu-2404-arm64-pkg-tests - macos-12-pkg-tests - windows-2019-nsis-pkg-tests - windows-2019-msi-pkg-tests diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index afb397d6d156..90934a8fdd76 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -643,6 +643,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-8-pkg-tests: + name: Rocky Linux 8 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-8-arm64-pkg-tests: + name: Rocky Linux 8 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -687,6 +731,406 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + amazonlinux-2-pkg-tests: + name: Amazon Linux 2 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2-arm64-pkg-tests: + name: Amazon Linux 2 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-pkg-tests: + name: Amazon Linux 2023 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-arm64-pkg-tests: + name: Amazon Linux 2023 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-pkg-tests: + name: Debian 11 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-arm64-pkg-tests: + name: Debian 11 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-pkg-tests: + name: Debian 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-arm64-pkg-tests: + name: Debian 12 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests: + name: Photon OS 4 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-arm64-pkg-tests: + name: Photon OS 4 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests-fips: + name: Photon OS 4 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-4-arm64-pkg-tests-fips: + name: Photon OS 4 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-pkg-tests: + name: Photon OS 5 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-arm64-pkg-tests: + name: Photon OS 5 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-pkg-tests-fips: + name: Photon OS 5 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-arm64-pkg-tests-fips: + name: Photon OS 5 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + ubuntu-2004-pkg-tests: + name: Ubuntu 20.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2004-arm64-pkg-tests: + name: Ubuntu 20.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -731,6 +1175,50 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2404-pkg-tests: + name: Ubuntu 24.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2404-arm64-pkg-tests: + name: Ubuntu 24.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} @@ -1552,10 +2040,32 @@ jobs: - ubuntu-2204-arm64 - ubuntu-2404 - ubuntu-2404-arm64 + - rockylinux-8-pkg-tests + - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests + - amazonlinux-2-pkg-tests + - amazonlinux-2-arm64-pkg-tests + - amazonlinux-2023-pkg-tests + - amazonlinux-2023-arm64-pkg-tests + - debian-11-pkg-tests + - debian-11-arm64-pkg-tests + - debian-12-pkg-tests + - debian-12-arm64-pkg-tests + - photonos-4-pkg-tests + - photonos-4-arm64-pkg-tests + - photonos-4-pkg-tests-fips + - photonos-4-arm64-pkg-tests-fips + - photonos-5-pkg-tests + - photonos-5-arm64-pkg-tests + - photonos-5-pkg-tests-fips + - photonos-5-arm64-pkg-tests-fips + - ubuntu-2004-pkg-tests + - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests + - ubuntu-2404-pkg-tests + - ubuntu-2404-arm64-pkg-tests - macos-12-pkg-tests - windows-2019-nsis-pkg-tests - windows-2019-msi-pkg-tests diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index ad8066e2da3c..ad8569722c8f 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -709,6 +709,50 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows + rockylinux-8-pkg-tests: + name: Rocky Linux 8 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + rockylinux-8-arm64-pkg-tests: + name: Rocky Linux 8 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: rockylinux-8-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -753,6 +797,406 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + amazonlinux-2-pkg-tests: + name: Amazon Linux 2 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2-arm64-pkg-tests: + name: Amazon Linux 2 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-pkg-tests: + name: Amazon Linux 2023 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + amazonlinux-2023-arm64-pkg-tests: + name: Amazon Linux 2023 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: amazonlinux-2023-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-pkg-tests: + name: Debian 11 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-11-arm64-pkg-tests: + name: Debian 11 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-11-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-pkg-tests: + name: Debian 12 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + debian-12-arm64-pkg-tests: + name: Debian 12 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: debian-12-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests: + name: Photon OS 4 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-arm64-pkg-tests: + name: Photon OS 4 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-4-pkg-tests-fips: + name: Photon OS 4 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-4-arm64-pkg-tests-fips: + name: Photon OS 4 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-4-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-pkg-tests: + name: Photon OS 5 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-arm64-pkg-tests: + name: Photon OS 5 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + photonos-5-pkg-tests-fips: + name: Photon OS 5 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + photonos-5-arm64-pkg-tests-fips: + name: Photon OS 5 Arm64 Package Test (fips) + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: photonos-5-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: rpm + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + fips: true + + ubuntu-2004-pkg-tests: + name: Ubuntu 20.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2004-arm64-pkg-tests: + name: Ubuntu 20.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-20.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} @@ -797,6 +1241,50 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + ubuntu-2404-pkg-tests: + name: Ubuntu 24.04 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + ubuntu-2404-arm64-pkg-tests: + name: Ubuntu 24.04 Arm64 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-linux + - build-ci-deps-linux + uses: ./.github/workflows/test-packages-action-linux.yml + with: + distro-slug: ubuntu-24.04-arm64 + nox-session: ci-test-onedir + platform: linux + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: deb + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + macos-12-pkg-tests: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} @@ -2473,10 +2961,32 @@ jobs: - ubuntu-2204-arm64 - ubuntu-2404 - ubuntu-2404-arm64 + - rockylinux-8-pkg-tests + - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests - rockylinux-9-arm64-pkg-tests + - amazonlinux-2-pkg-tests + - amazonlinux-2-arm64-pkg-tests + - amazonlinux-2023-pkg-tests + - amazonlinux-2023-arm64-pkg-tests + - debian-11-pkg-tests + - debian-11-arm64-pkg-tests + - debian-12-pkg-tests + - debian-12-arm64-pkg-tests + - photonos-4-pkg-tests + - photonos-4-arm64-pkg-tests + - photonos-4-pkg-tests-fips + - photonos-4-arm64-pkg-tests-fips + - photonos-5-pkg-tests + - photonos-5-arm64-pkg-tests + - photonos-5-pkg-tests-fips + - photonos-5-arm64-pkg-tests-fips + - ubuntu-2004-pkg-tests + - ubuntu-2004-arm64-pkg-tests - ubuntu-2204-pkg-tests - ubuntu-2204-arm64-pkg-tests + - ubuntu-2404-pkg-tests + - ubuntu-2404-arm64-pkg-tests - macos-12-pkg-tests - windows-2019-nsis-pkg-tests - windows-2019-msi-pkg-tests diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index f1e58176d486..1bb2d40a7b07 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -278,18 +278,20 @@ def generate_workflows(ctx: Context): test_salt_pkg_listing = PlatformDefinitions( { "linux": [ - # Linux( - # slug="rockylinux-8", - # display_name="Rocky Linux 8", - # arch="x86_64", - # pkg_type="rpm", - # ), - # Linux( - # slug="rockylinux-8-arm64", - # display_name="Rocky Linux 8 Arm64", - # arch="arm64", - # pkg_type="rpm", - # ), + Linux( + slug="rockylinux-8", + display_name="Rocky Linux 8", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + ), + Linux( + slug="rockylinux-8-arm64", + display_name="Rocky Linux 8 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + ), Linux( slug="rockylinux-9", display_name="Rocky Linux 9", @@ -304,118 +306,136 @@ def generate_workflows(ctx: Context): pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", ), - # Linux( - # slug="amazonlinux-2", - # display_name="Amazon Linux 2", - # arch="x86_64", - # pkg_type="rpm", - # ), - # Linux( - # slug="amazonlinux-2-arm64", - # display_name="Amazon Linux 2 Arm64", - # arch="arm64", - # pkg_type="rpm", - # ), - # Linux( - # slug="amazonlinux-2023", - # display_name="Amazon Linux 2023", - # arch="x86_64", - # pkg_type="rpm", - # ), - # Linux( - # slug="amazonlinux-2023-arm64", - # display_name="Amazon Linux 2023 Arm64", - # arch="arm64", - # pkg_type="rpm", - # ), - # Linux( - # slug="debian-11", - # display_name="Debian 11", - # arch="x86_64", - # pkg_type="deb", - # ), - # Linux( - # slug="debian-11-arm64", - # display_name="Debian 11 Arm64", - # arch="arm64", - # pkg_type="deb", - # ), - # Linux( - # slug="debian-12", - # display_name="Debian 12", - # arch="x86_64", - # pkg_type="deb", - # ), - # Linux( - # slug="debian-12-arm64", - # display_name="Debian 12 Arm64", - # arch="arm64", - # pkg_type="deb", - # ), - # Linux( - # slug="photonos-4", - # display_name="Photon OS 4", - # arch="x86_64", - # pkg_type="rpm", - # ), - # Linux( - # slug="photonos-4-arm64", - # display_name="Photon OS 4 Arm64", - # arch="arm64", - # pkg_type="rpm", - # ), - # Linux( - # slug="photonos-4", - # display_name="Photon OS 4", - # arch="x86_64", - # pkg_type="rpm", - # fips=True, - # ), - # Linux( - # slug="photonos-4-arm64", - # display_name="Photon OS 4 Arm64", - # arch="arm64", - # pkg_type="rpm", - # fips=True, - # ), - # Linux( - # slug="photonos-5", - # display_name="Photon OS 5", - # arch="x86_64", - # pkg_type="rpm", - # ), - # Linux( - # slug="photonos-5-arm64", - # display_name="Photon OS 5 Arm64", - # arch="arm64", - # pkg_type="rpm", - # ), - # Linux( - # slug="photonos-5", - # display_name="Photon OS 5", - # arch="x86_64", - # pkg_type="rpm", - # fips=True, - # ), - # Linux( - # slug="photonos-5-arm64", - # display_name="Photon OS 5 Arm64", - # arch="arm64", - # pkg_type="rpm", - # fips=True, - # ), - # Linux( - # slug="ubuntu-20.04", - # display_name="Ubuntu 20.04", - # arch="x86_64", - # pkg_type="deb", - # ), - # Linux( - # slug="ubuntu-20.04-arm64", - # display_name="Ubuntu 20.04 Arm64", - # arch="arm64", - # pkg_type="deb", - # ), + Linux( + slug="amazonlinux-2", + display_name="Amazon Linux 2", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", + ), + Linux( + slug="amazonlinux-2-arm64", + display_name="Amazon Linux 2 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", + ), + Linux( + slug="amazonlinux-2023", + display_name="Amazon Linux 2023", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", + ), + Linux( + slug="amazonlinux-2023-arm64", + display_name="Amazon Linux 2023 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", + ), + Linux( + slug="debian-11", + display_name="Debian 11", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", + ), + Linux( + slug="debian-11-arm64", + display_name="Debian 11 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", + ), + Linux( + slug="debian-12", + display_name="Debian 12", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", + ), + Linux( + slug="debian-12-arm64", + display_name="Debian 12 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", + ), + Linux( + slug="photonos-4", + display_name="Photon OS 4", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-4-arm64", + display_name="Photon OS 4 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-4", + display_name="Photon OS 4", + arch="x86_64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-4-arm64", + display_name="Photon OS 4 Arm64", + arch="arm64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-5", + display_name="Photon OS 5", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="photonos-5-arm64", + display_name="Photon OS 5 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="photonos-5", + display_name="Photon OS 5", + arch="x86_64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="photonos-5-arm64", + display_name="Photon OS 5 Arm64", + arch="arm64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="ubuntu-20.04", + display_name="Ubuntu 20.04", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", + ), + Linux( + slug="ubuntu-20.04-arm64", + display_name="Ubuntu 20.04 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", + ), Linux( slug="ubuntu-22.04", display_name="Ubuntu 22.04", @@ -430,18 +450,20 @@ def generate_workflows(ctx: Context): pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), - # Linux( - # slug="ubuntu-24.04", - # display_name="Ubuntu 24.04", - # arch="x86_64", - # pkg_type="deb", - # ), - # Linux( - # slug="ubuntu-24.04-arm64", - # display_name="Ubuntu 24.04 Arm64", - # arch="arm64", - # pkg_type="deb", - # ), + Linux( + slug="ubuntu-24.04", + display_name="Ubuntu 24.04", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", + ), + Linux( + slug="ubuntu-24.04-arm64", + display_name="Ubuntu 24.04 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", + ), ], "macos": [ MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), @@ -454,18 +476,6 @@ def generate_workflows(ctx: Context): # ), ], "windows": [ - # Windows( - # slug="windows-2016", - # display_name="Windows 2016", - # arch="amd64", - # pkg_type="NSIS", - # ), - # Windows( - # slug="windows-2016", - # display_name="Windows 2016", - # arch="amd64", - # pkg_type="MSI", - # ), Windows( slug="windows-2019", display_name="Windows 2019", From d4d2d87a89091cef984f780c0555af70b535f52b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 6 Nov 2024 14:02:06 -0700 Subject: [PATCH 064/225] Test systemctl --- .github/workflows/test-packages-action-linux.yml | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 446bec2dd202..199f43de1df8 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -112,6 +112,10 @@ jobs: - linux-${{ inputs.arch }} container: image: ${{ inputs.container }} + options: --privileged + volumes: + - /run/systemd/system:/run/systemd/system + - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: @@ -188,11 +192,13 @@ jobs: run: | tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - name: Mock systemd - run: | - wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py - cp systemctl3.py /usr/bin/systemctl - chmod +x /usr/bin/systemctl + - name: check systemd + run: systemctl + #- name: Mock systemd + # run: | + # wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py + # cp systemctl3.py /usr/bin/systemctl + # chmod +x /usr/bin/systemctl - name: Show System Info env: From b7e156900770378386a0eac1240d9f5a73289294 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 6 Nov 2024 15:05:16 -0700 Subject: [PATCH 065/225] Fix typo --- .github/workflows/build-deps-ci-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 2ebd8b77cacf..6d16d012f3e0 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -27,7 +27,7 @@ on: kind: required: true type: string - description: Kine of dependencies to build; linux, macos, windows + description: Kind of dependencies to build; linux, macos, windows python-version: required: false type: string From 503e3012cb0d1ef22e9d3803765102c0f09f3856 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 6 Nov 2024 16:11:19 -0700 Subject: [PATCH 066/225] Stop using deprecated save-always --- .github/actions/cache/action.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/.github/actions/cache/action.yml b/.github/actions/cache/action.yml index 020b9d1e6b85..b8bea242cf06 100644 --- a/.github/actions/cache/action.yml +++ b/.github/actions/cache/action.yml @@ -26,10 +26,6 @@ inputs: description: 'Check if a cache entry exists for the given input(s) (key, restore-keys) without downloading the cache' default: 'false' required: false - save-always: - description: 'Run the post step to save the cache even if another step before fails' - default: 'false' - required: false outputs: cache-hit: @@ -49,7 +45,6 @@ runs: echo "GHA_CACHE_ENABLE_CROSS_OS_ARCHIVE=${{ inputs.enableCrossOsArchive }}" | tee -a "${GITHUB_ENV}" echo "GHA_CACHE_FAIL_ON_CACHE_MISS=${{ inputs.fail-on-cache-miss }}" | tee -a "${GITHUB_ENV}" echo "GHA_CACHE_LOOKUP_ONLY=${{ inputs.lookup-only }}" | tee -a "${GITHUB_ENV}" - echo "GHA_CACHE_SAVE_ALWAYS=${{ inputs.save-always }}" | tee -a "${GITHUB_ENV}" echo "GHA_CACHE_RESTORE_KEYS=${{ inputs.restore-keys }}" | tee -a "${GITHUB_ENV}" echo "GHA_CACHE_UPLOAD_CHUNK_SIZE=${{ inputs.upload-chunk-size }}" | tee -a "${GITHUB_ENV}" @@ -63,7 +58,6 @@ runs: enableCrossOsArchive: ${{ env.GHA_CACHE_ENABLE_CROSS_OS_ARCHIVE }} fail-on-cache-miss: ${{ env.GHA_CACHE_FAIL_ON_CACHE_MISS }} lookup-only: ${{ env.GHA_CACHE_LOOKUP_ONLY }} - save-always: ${{ env.GHA_CACHE_SAVE_ALWAYS }} restore-keys: ${{ env.GHA_CACHE_RESTORE_KEYS }} upload-chunk-size: ${{ env.GHA_CACHE_UPLOAD_CHUNK_SIZE }} @@ -97,7 +91,6 @@ runs: enableCrossOsArchive: ${{ env.GHA_CACHE_ENABLE_CROSS_OS_ARCHIVE }} fail-on-cache-miss: ${{ env.GHA_CACHE_FAIL_ON_CACHE_MISS }} lookup-only: ${{ env.GHA_CACHE_LOOKUP_ONLY }} - save-always: ${{ env.GHA_CACHE_SAVE_ALWAYS }} restore-keys: ${{ env.GHA_CACHE_RESTORE_KEYS }} upload-chunk-size: ${{ env.GHA_CACHE_UPLOAD_CHUNK_SIZE }} From bea3455c16465bc59bd7a1a7c75989c991315195 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 7 Nov 2024 17:09:08 -0700 Subject: [PATCH 067/225] Try systemd containers --- .github/workflows/ci.yml | 4 ++-- .github/workflows/nightly.yml | 4 ++-- .github/workflows/scheduled.yml | 4 ++-- .github/workflows/staging.yml | 4 ++-- tools/precommit/workflows.py | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3f99533fb5a8..829e7d74bb1b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1104,7 +1104,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1126,7 +1126,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index f2a22e960101..112b23f92e91 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1227,7 +1227,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1249,7 +1249,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 90934a8fdd76..fd8dccab88d6 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1143,7 +1143,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1165,7 +1165,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index ad8569722c8f..84c07e1bd379 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1209,7 +1209,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1231,7 +1231,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 + container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 1bb2d40a7b07..b2643cb50e5b 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -441,14 +441,14 @@ def generate_workflows(ctx: Context): display_name="Ubuntu 22.04", arch="x86_64", pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd", ), Linux( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd", ), Linux( slug="ubuntu-24.04", From b34f273e9526490e5c23c3652fb3cf1304f89c19 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 7 Nov 2024 18:43:38 -0700 Subject: [PATCH 068/225] More package tests --- tools/ci.py | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 944f11dddc7f..8454680a1031 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -858,6 +858,7 @@ def pkg_matrix( ] for version, backend in adjusted_versions: + print(f"WTF {version} {backend}") prefix = prefixes[backend] # TODO: Remove this after 3009.0 if backend == "relenv" and version >= tools.utils.Version("3006.5"): @@ -868,16 +869,16 @@ def pkg_matrix( # Prefix=prefix, # ) # Uses a jmespath expression to test if the wanted version is in any of the filenames - key_filter = f"Contents[?contains(Key, '{version}')][]" - if pkg_type == "MSI": - # TODO: Add this back when we add MSI upgrade and downgrade tests - # key_filter = f"Contents[?contains(Key, '{version}')] | [?ends_with(Key, '.msi')]" - continue - elif pkg_type == "NSIS": - key_filter = ( - f"Contents[?contains(Key, '{version}')] | [?ends_with(Key, '.exe')]" - ) - continue + # key_filter = f"Contents[?contains(Key, '{version}')][]" + # if pkg_type == "MSI": + # # TODO: Add this back when we add MSI upgrade and downgrade tests + # # key_filter = f"Contents[?contains(Key, '{version}')] | [?ends_with(Key, '.msi')]" + # continue + # elif pkg_type == "NSIS": + # key_filter = ( + # f"Contents[?contains(Key, '{version}')] | [?ends_with(Key, '.exe')]" + # ) + # continue # objects = list(page_iterator.search(key_filter)) # Testing using `any` because sometimes the paginator returns `[None]` # if any(objects): @@ -895,6 +896,13 @@ def pkg_matrix( # ) # else: # ctx.info(f"No {version} ({backend}) for {distro_slug} at {prefix}") + for session in ("upgrade", "downgrade"): + _matrix.append( + { + "tests-chunk": session, + "version": str(version), + } + ) ctx.info("Generated matrix:") if not _matrix: From 670aa70eb985f3e7c57b4083b0f76fd16225167e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 00:00:57 -0700 Subject: [PATCH 069/225] Skip downgrade tests on windows --- tools/ci.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index 8454680a1031..598c73b34f10 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -896,7 +896,11 @@ def pkg_matrix( # ) # else: # ctx.info(f"No {version} ({backend}) for {distro_slug} at {prefix}") - for session in ("upgrade", "downgrade"): + if name == "windows": + sessions = ("upgrade",) + else: + sessions = ("upgrade", "downgrade") + for session in sessions: _matrix.append( { "tests-chunk": session, From 899e9d8249ad7c4c00c00658d04a730da1e11415 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 01:43:41 -0700 Subject: [PATCH 070/225] Do not mount volumes --- .github/workflows/test-packages-action-linux.yml | 3 --- tools/ci.py | 6 ++++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 199f43de1df8..87801aa2b967 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -113,9 +113,6 @@ jobs: container: image: ${{ inputs.container }} options: --privileged - volumes: - - /run/systemd/system:/run/systemd/system - - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: diff --git a/tools/ci.py b/tools/ci.py index 598c73b34f10..0d2d6526dd25 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -897,9 +897,11 @@ def pkg_matrix( # else: # ctx.info(f"No {version} ({backend}) for {distro_slug} at {prefix}") if name == "windows": - sessions = ("upgrade",) + sessions = [ + "upgrade", + ] else: - sessions = ("upgrade", "downgrade") + sessions = ["upgrade", "downgrade"] for session in sessions: _matrix.append( { From 2947ac1ffbb6862f5176fd9f3e009b86d9e457aa Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 10:30:27 -0700 Subject: [PATCH 071/225] debug pkg install --- .github/workflows/test-packages-action-linux.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 87801aa2b967..e48f7fdfce9a 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -113,7 +113,9 @@ jobs: container: image: ${{ inputs.container }} options: --privileged - + volumes: + - /run/systemd/system:/run/systemd/system + - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: - generate-matrix @@ -196,6 +198,9 @@ jobs: # wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py # cp systemctl3.py /usr/bin/systemctl # chmod +x /usr/bin/systemctl + - name: install pkg test + run: | + dpkg -i ./artifacts/pkg/salt-common-${{ inputs.salt-version}}_${{ inputs.arch }}.deb ./artifacts/pkg/salt-master-${{ inputs.salt-version}}_${{ inputs.arch }}.deb - name: Show System Info env: From 36fe98cfee3237375d54aa41c07954945f80c769 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 15:20:36 -0700 Subject: [PATCH 072/225] Systemd container rename --- .github/workflows/ci.yml | 4 ++-- .github/workflows/nightly.yml | 4 ++-- .github/workflows/scheduled.yml | 4 ++-- .github/workflows/staging.yml | 4 ++-- .github/workflows/test-packages-action-linux.yml | 2 +- tools/precommit/workflows.py | 4 ++-- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 829e7d74bb1b..3b9c021eb9f3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1104,7 +1104,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1126,7 +1126,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 112b23f92e91..ea6aba4a319e 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1227,7 +1227,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1249,7 +1249,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index fd8dccab88d6..725546f3d5ce 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1143,7 +1143,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1165,7 +1165,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 84c07e1bd379..a775bfc03011 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1209,7 +1209,7 @@ jobs: distro-slug: ubuntu-22.04 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb @@ -1231,7 +1231,7 @@ jobs: distro-slug: ubuntu-22.04-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: deb diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index e48f7fdfce9a..c28e859e28bb 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -200,7 +200,7 @@ jobs: # chmod +x /usr/bin/systemctl - name: install pkg test run: | - dpkg -i ./artifacts/pkg/salt-common-${{ inputs.salt-version}}_${{ inputs.arch }}.deb ./artifacts/pkg/salt-master-${{ inputs.salt-version}}_${{ inputs.arch }}.deb + dpkg -i ./artifacts/pkg/salt-common_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb ./artifacts/pkg/salt-master_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb - name: Show System Info env: diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index b2643cb50e5b..2f4b02e5f002 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -441,14 +441,14 @@ def generate_workflows(ctx: Context): display_name="Ubuntu 22.04", arch="x86_64", pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", ), Linux( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04-systemd", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", ), Linux( slug="ubuntu-24.04", From 9b9ad5035a31a21a377729cf59befba29414b5a6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 19:38:04 -0700 Subject: [PATCH 073/225] Wean off linux-x86_64 runner --- .github/workflows/build-deps-ci-action.yml | 2 +- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-packages.yml | 2 +- .github/workflows/build-salt-onedir.yml | 2 +- .github/workflows/staging.yml | 2 +- .github/workflows/templates/ci.yml.jinja | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 6d16d012f3e0..2c3b42b71b65 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -89,7 +89,7 @@ jobs: needs: - generate-matrix runs-on: - - linux-${{ matrix.arch }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} if: ${{ inputs.kind == 'linux' }} env: USE_S3_CACHE: 'false' diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index d2accc2eb503..1f75ecae509a 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -53,7 +53,7 @@ jobs: - x86_64 - arm64 runs-on: - - linux-${{ matrix.arch }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} env: USE_S3_CACHE: 'false' steps: diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index f8d2bb418022..cef59ec1fe5e 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -53,7 +53,7 @@ jobs: build-deb-packages: name: DEB runs-on: - - linux-${{ matrix.arch }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} if: ${{ inputs.kind == 'linux' }} strategy: fail-fast: false diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 59c22a96423b..ced7b0491caa 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -55,7 +55,7 @@ jobs: - x86_64 - arm64 runs-on: - - linux-${{ matrix.arch }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} steps: - name: "Throttle Builds" diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index a775bfc03011..0aedf6124c78 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -309,7 +309,7 @@ jobs: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} runs-on: - - linux-x86_64 + - ubuntu-latest needs: - prepare-workflow steps: diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 0e41c6480ce3..d59ac6c91192 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -61,7 +61,7 @@ <%- if prepare_actual_release %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} runs-on: - - linux-x86_64 + - ubuntu-latest <%- else %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} runs-on: ubuntu-latest From e6deffb687fbd552c1bd48254e020bca3f141385 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 19:59:11 -0700 Subject: [PATCH 074/225] Fix self hosted vs github hosted --- tools/ci.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 0d2d6526dd25..1a9cf19be534 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -192,7 +192,9 @@ def runner_types(ctx: Context, event_name: str): time.sleep(1) ctx.info("Selecting which type of runners(self hosted runners or not) to run") - runners = {"github-hosted": False, "self-hosted": False} + runners = {"github-hosted": False, "self-hosted": False, "linux-arm64": False} + if "LINUX_ARM_RUNNER" in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0": + runners["linux-arm64"] = True if event_name == "pull_request": ctx.info("Running from a pull request event") pr_event_data = gh_event["pull_request"] @@ -224,12 +226,13 @@ def runner_types(ctx: Context, event_name: str): ): # This is running on a forked repository, don't run tests ctx.info("The push event is on a forked repository") - runners["github-hosted"] = True - ctx.info("Writing 'runners' to the github outputs file:\n", runners) - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"runners={json.dumps(runners)}\n") - ctx.exit(0) - + if os.environ.get("FORK_HAS_SELF_HOSTED_RUNNERS", "0") == "1": + # This is running on a forked repository, don't run tests + runners["github-hosted"] = runners["self-hosted"] = True + ctx.info("Writing 'runners' to the github outputs file:\n", runners) + with open(github_output, "a", encoding="utf-8") as wfh: + wfh.write(f"runners={json.dumps(runners)}\n") + ctx.exit(0) # Not running on a fork, or the fork has self hosted runners, run everything ctx.info(f"The {event_name!r} event is from the main repository") runners["github-hosted"] = runners["self-hosted"] = True From 7d654ddfc3029b50782e8337649dc44b22a9f93e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 8 Nov 2024 21:10:29 -0700 Subject: [PATCH 075/225] Add build-matrix --- .github/workflows/build-deps-onedir.yml | 56 ++++-- .github/workflows/build-packages.yml | 53 +++++- .github/workflows/build-salt-onedir.yml | 52 ++++-- .github/workflows/ci.yml | 168 ++++++++--------- .github/workflows/nightly.yml | 174 ++++++++--------- .github/workflows/scheduled.yml | 168 ++++++++--------- .github/workflows/staging.yml | 176 ++++++++---------- .../templates/build-ci-deps.yml.jinja | 6 +- .../templates/build-packages.yml.jinja | 6 +- .github/workflows/templates/ci.yml.jinja | 30 +-- .github/workflows/templates/layout.yml.jinja | 6 - .../test-salt-pkg-repo-downloads.yml.jinja | 2 +- .../templates/test-salt-pkg.yml.jinja | 12 +- .../workflows/templates/test-salt.yml.jinja | 12 +- tools/ci.py | 39 +++- 15 files changed, 491 insertions(+), 469 deletions(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 1f75ecae509a..03eba539c17c 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -8,12 +8,6 @@ on: type: string required: true description: The Salt version to set prior to building packages. - github-hosted-runners: - type: boolean - required: true - self-hosted-runners: - type: boolean - required: true cache-seed: required: true type: string @@ -43,17 +37,47 @@ env: jobs: + generate-matrix: + name: Test Matrix + runs-on: ubuntu-latest + outputs: + matrix-include: ${{ steps.generate-matrix.outputs.matrix }} + steps: + - uses: actions/setup-python@v5 + with: + python-version: "3.10.14" + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Generate Test Matrix + id: generate-matrix + run: tools ci build-matrix ${{ inputs.kind }} + + build-deps-linux: name: Linux - if: ${{ inputs.self-hosted-runners && inputs.kind == 'linux' }} + if: ${{ inputs.kind == 'linux' }} + runs-on: + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + needs: + - generate-matrix strategy: fail-fast: false matrix: - arch: - - x86_64 - - arm64 - runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} env: USE_S3_CACHE: 'false' steps: @@ -90,12 +114,14 @@ jobs: build-deps-macos: name: macOS - if: ${{ inputs.github-hosted-runners && inputs.kind == 'macOS' }} + if: ${{ inputs.kind == 'macOS' }} strategy: fail-fast: false max-parallel: 2 matrix: arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} + needs: + - generate-matrix runs-on: - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} env: @@ -144,7 +170,7 @@ jobs: build-deps-windows: name: Windows - if: ${{ inputs.github-hosted-runners && inputs.kind == 'windows' }} + if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 @@ -152,6 +178,8 @@ jobs: arch: - x86 - amd64 + needs: + - generate-matrix runs-on: windows-latest env: USE_S3_CACHE: 'false' diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index cef59ec1fe5e..5b16b4c224ac 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -50,19 +50,50 @@ env: jobs: + generate-matrix: + name: Test Matrix + runs-on: ubuntu-latest + outputs: + matrix-include: ${{ steps.generate-matrix.outputs.matrix }} + steps: + - uses: actions/setup-python@v5 + with: + python-version: "3.10.14" + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Generate Test Matrix + id: generate-matrix + run: tools ci build-matrix ${{ inputs.kind }} + + + build-deb-packages: name: DEB + if: ${{ inputs.kind == 'linux' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} - if: ${{ inputs.kind == 'linux' }} + needs: + - generate-matrix strategy: fail-fast: false matrix: - arch: - - x86_64 - - arm64 source: - ${{ inputs.source }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} container: image: ghcr.io/saltstack/salt-ci-containers/packaging:debian-12 @@ -149,17 +180,17 @@ jobs: build-rpm-packages: name: RPM - runs-on: - - linux-${{ matrix.arch }} if: ${{ inputs.kind == 'linux' }} + runs-on: + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + needs: + - generate-matrix strategy: fail-fast: false matrix: - arch: - - x86_64 - - arm64 source: - ${{ inputs.source }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} container: image: ghcr.io/saltstack/salt-ci-containers/packaging:rockylinux-9 @@ -228,6 +259,8 @@ jobs: build-macos-pkgs: name: macOS + needs: + - generate-matrix environment: ${{ inputs.environment }} if: ${{ inputs.kind == 'macos' }} strategy: @@ -346,6 +379,8 @@ jobs: build-windows-pkgs: name: Windows environment: ${{ inputs.environment }} + needs: + - generate-matrix if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index ced7b0491caa..a4cb0afb4bc7 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -8,12 +8,6 @@ on: type: string required: true description: The Salt version to set prior to building packages. - github-hosted-runners: - type: boolean - required: true - self-hosted-runners: - type: boolean - required: true cache-seed: required: true type: string @@ -43,19 +37,49 @@ env: jobs: + generate-matrix: + name: Test Matrix + runs-on: ubuntu-latest + outputs: + matrix-include: ${{ steps.generate-matrix.outputs.matrix }} + steps: + - uses: actions/setup-python@v5 + with: + python-version: "3.10.14" + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Generate Test Matrix + id: generate-matrix + run: tools ci build-matrix ${{ inputs.kind }} + + build-salt-linux: name: Linux - if: ${{ inputs.self-hosted-runners && inputs.kind == 'linux' }} + if: ${{ inputs.kind == 'linux' }} env: USE_S3_CACHE: 'false' + runs-on: + - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + needs: + - generate-matrix strategy: fail-fast: false matrix: - arch: - - x86_64 - - arm64 - runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} steps: - name: "Throttle Builds" @@ -97,7 +121,7 @@ jobs: build-salt-macos: name: macOS - if: ${{ inputs.self-hosted-runners && inputs.kind == 'macos' }} + if: ${{ inputs.kind == 'macos' }} strategy: fail-fast: false max-parallel: 2 @@ -156,7 +180,7 @@ jobs: build-salt-windows: name: Windows - if: ${{ inputs.self-hosted-runners && inputs.kind == 'windows' }} + if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3b9c021eb9f3..1600862418f4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,6 @@ jobs: runs-on: ubuntu-latest outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} - runners: ${{ steps.runner-types.outputs.runners }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} @@ -196,11 +195,6 @@ jobs: run: | echo '${{ steps.process-changed-files.outputs.changed-files }}' | jq -C '.' - - name: Define Runner Types - id: runner-types - run: | - tools ci runner-types ${{ github.event_name }} - - name: Define Jobs To Run id: define-jobs run: | @@ -240,7 +234,6 @@ jobs: pre-commit: name: Pre-Commit - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/pre-commit-action.yml needs: - prepare-workflow @@ -251,7 +244,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -259,7 +252,6 @@ jobs: changed-files: ${{ needs.prepare-workflow.outputs.changed-files }} nsis-tests: name: NSIS Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/nsis-tests.yml needs: - prepare-workflow @@ -268,7 +260,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} runs-on: ubuntu-latest needs: - prepare-workflow @@ -376,7 +368,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -387,7 +379,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} needs: - prepare-workflow - prepare-release @@ -418,45 +410,39 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows @@ -472,8 +458,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux @@ -489,8 +473,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos @@ -506,15 +488,13 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows build-pkgs-onedir-linux: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -529,7 +509,7 @@ jobs: build-pkgs-onedir-macos: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -544,7 +524,7 @@ jobs: build-pkgs-onedir-windows: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -558,7 +538,7 @@ jobs: kind: windows build-ci-deps-linux: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -574,7 +554,7 @@ jobs: build-ci-deps-macos: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -590,7 +570,7 @@ jobs: build-ci-deps-windows: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -606,7 +586,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -628,7 +608,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -650,7 +630,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -672,7 +652,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -694,7 +674,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -716,7 +696,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -738,7 +718,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -760,7 +740,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -782,7 +762,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -804,7 +784,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -826,7 +806,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -848,7 +828,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -870,7 +850,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -892,7 +872,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -914,7 +894,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -937,7 +917,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -960,7 +940,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -982,7 +962,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1004,7 +984,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1027,7 +1007,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1050,7 +1030,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1072,7 +1052,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1094,7 +1074,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1116,7 +1096,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1138,7 +1118,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1160,7 +1140,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1182,7 +1162,7 @@ jobs: macos-12-pkg-tests: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1204,7 +1184,7 @@ jobs: windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1225,7 +1205,7 @@ jobs: windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1246,7 +1226,7 @@ jobs: windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1267,7 +1247,7 @@ jobs: windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1288,7 +1268,7 @@ jobs: windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1309,7 +1289,7 @@ jobs: windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1330,7 +1310,7 @@ jobs: macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} needs: - prepare-workflow - build-ci-deps-macos @@ -1352,7 +1332,7 @@ jobs: rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1374,7 +1354,7 @@ jobs: rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1396,7 +1376,7 @@ jobs: rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1418,7 +1398,7 @@ jobs: rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1440,7 +1420,7 @@ jobs: amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1462,7 +1442,7 @@ jobs: amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1484,7 +1464,7 @@ jobs: amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1506,7 +1486,7 @@ jobs: amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1528,7 +1508,7 @@ jobs: debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1550,7 +1530,7 @@ jobs: debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1572,7 +1552,7 @@ jobs: debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1594,7 +1574,7 @@ jobs: debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1616,7 +1596,7 @@ jobs: fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1638,7 +1618,7 @@ jobs: photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1660,7 +1640,7 @@ jobs: photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1682,7 +1662,7 @@ jobs: photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1705,7 +1685,7 @@ jobs: photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1728,7 +1708,7 @@ jobs: photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1750,7 +1730,7 @@ jobs: photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1772,7 +1752,7 @@ jobs: photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1795,7 +1775,7 @@ jobs: photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1818,7 +1798,7 @@ jobs: ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1840,7 +1820,7 @@ jobs: ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1862,7 +1842,7 @@ jobs: ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1884,7 +1864,7 @@ jobs: ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1906,7 +1886,7 @@ jobs: ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1928,7 +1908,7 @@ jobs: ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index ea6aba4a319e..b61e28afa324 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -90,7 +90,6 @@ jobs: - workflow-requirements outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} - runners: ${{ steps.runner-types.outputs.runners }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} @@ -245,11 +244,6 @@ jobs: run: | echo '${{ steps.process-changed-files.outputs.changed-files }}' | jq -C '.' - - name: Define Runner Types - id: runner-types - run: | - tools ci runner-types ${{ github.event_name }} - - name: Define Jobs To Run id: define-jobs run: | @@ -289,7 +283,6 @@ jobs: pre-commit: name: Pre-Commit - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/pre-commit-action.yml needs: - prepare-workflow @@ -300,7 +293,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -308,7 +301,6 @@ jobs: changed-files: ${{ needs.prepare-workflow.outputs.changed-files }} nsis-tests: name: NSIS Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/nsis-tests.yml needs: - prepare-workflow @@ -317,7 +309,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} runs-on: ubuntu-latest needs: - prepare-workflow @@ -430,7 +422,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -441,7 +433,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} needs: - prepare-workflow - prepare-release @@ -472,45 +464,39 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows @@ -526,8 +512,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux @@ -543,8 +527,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos @@ -560,15 +542,13 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows build-pkgs-onedir-linux: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -587,7 +567,7 @@ jobs: build-pkgs-src-linux: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -606,7 +586,7 @@ jobs: build-pkgs-onedir-macos: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -625,7 +605,7 @@ jobs: build-pkgs-src-macos: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -644,7 +624,7 @@ jobs: build-pkgs-onedir-windows: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -663,7 +643,7 @@ jobs: build-pkgs-src-windows: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -681,7 +661,7 @@ jobs: secrets: inherit build-ci-deps-linux: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -697,7 +677,7 @@ jobs: build-ci-deps-macos: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -713,7 +693,7 @@ jobs: build-ci-deps-windows: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -729,7 +709,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -751,7 +731,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -773,7 +753,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -795,7 +775,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -817,7 +797,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -839,7 +819,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -861,7 +841,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -883,7 +863,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -905,7 +885,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -927,7 +907,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -949,7 +929,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -971,7 +951,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -993,7 +973,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1015,7 +995,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1037,7 +1017,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1060,7 +1040,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1083,7 +1063,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1105,7 +1085,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1127,7 +1107,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1150,7 +1130,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1173,7 +1153,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1195,7 +1175,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1217,7 +1197,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1239,7 +1219,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1261,7 +1241,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1283,7 +1263,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1305,7 +1285,7 @@ jobs: macos-12-pkg-tests: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1327,7 +1307,7 @@ jobs: windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1348,7 +1328,7 @@ jobs: windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1369,7 +1349,7 @@ jobs: windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1390,7 +1370,7 @@ jobs: windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1411,7 +1391,7 @@ jobs: windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1432,7 +1412,7 @@ jobs: windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1453,7 +1433,7 @@ jobs: macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1475,7 +1455,7 @@ jobs: rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1497,7 +1477,7 @@ jobs: rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1519,7 +1499,7 @@ jobs: rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1541,7 +1521,7 @@ jobs: rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1563,7 +1543,7 @@ jobs: amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1585,7 +1565,7 @@ jobs: amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1607,7 +1587,7 @@ jobs: amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1629,7 +1609,7 @@ jobs: amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1651,7 +1631,7 @@ jobs: debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1673,7 +1653,7 @@ jobs: debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1695,7 +1675,7 @@ jobs: debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1717,7 +1697,7 @@ jobs: debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1739,7 +1719,7 @@ jobs: fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1761,7 +1741,7 @@ jobs: photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1783,7 +1763,7 @@ jobs: photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1805,7 +1785,7 @@ jobs: photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1828,7 +1808,7 @@ jobs: photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1851,7 +1831,7 @@ jobs: photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1873,7 +1853,7 @@ jobs: photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1895,7 +1875,7 @@ jobs: photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1918,7 +1898,7 @@ jobs: photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1941,7 +1921,7 @@ jobs: ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1963,7 +1943,7 @@ jobs: ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1985,7 +1965,7 @@ jobs: ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2007,7 +1987,7 @@ jobs: ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2029,7 +2009,7 @@ jobs: ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2051,7 +2031,7 @@ jobs: ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 725546f3d5ce..6544de98f6fa 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -80,7 +80,6 @@ jobs: - workflow-requirements outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} - runners: ${{ steps.runner-types.outputs.runners }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} @@ -235,11 +234,6 @@ jobs: run: | echo '${{ steps.process-changed-files.outputs.changed-files }}' | jq -C '.' - - name: Define Runner Types - id: runner-types - run: | - tools ci runner-types ${{ github.event_name }} - - name: Define Jobs To Run id: define-jobs run: | @@ -279,7 +273,6 @@ jobs: pre-commit: name: Pre-Commit - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/pre-commit-action.yml needs: - prepare-workflow @@ -290,7 +283,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -298,7 +291,6 @@ jobs: changed-files: ${{ needs.prepare-workflow.outputs.changed-files }} nsis-tests: name: NSIS Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/nsis-tests.yml needs: - prepare-workflow @@ -307,7 +299,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} runs-on: ubuntu-latest needs: - prepare-workflow @@ -415,7 +407,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -426,7 +418,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} needs: - prepare-workflow - prepare-release @@ -457,45 +449,39 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows @@ -511,8 +497,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux @@ -528,8 +512,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos @@ -545,15 +527,13 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows build-pkgs-onedir-linux: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -568,7 +548,7 @@ jobs: build-pkgs-onedir-macos: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -583,7 +563,7 @@ jobs: build-pkgs-onedir-windows: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -597,7 +577,7 @@ jobs: kind: windows build-ci-deps-linux: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -613,7 +593,7 @@ jobs: build-ci-deps-macos: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -629,7 +609,7 @@ jobs: build-ci-deps-windows: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -645,7 +625,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -667,7 +647,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -689,7 +669,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -711,7 +691,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -733,7 +713,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -755,7 +735,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -777,7 +757,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -799,7 +779,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -821,7 +801,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -843,7 +823,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -865,7 +845,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -887,7 +867,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -909,7 +889,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -931,7 +911,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -953,7 +933,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -976,7 +956,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -999,7 +979,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1021,7 +1001,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1043,7 +1023,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1066,7 +1046,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1089,7 +1069,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1111,7 +1091,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1133,7 +1113,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1155,7 +1135,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1177,7 +1157,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1199,7 +1179,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1221,7 +1201,7 @@ jobs: macos-12-pkg-tests: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1243,7 +1223,7 @@ jobs: windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1264,7 +1244,7 @@ jobs: windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1285,7 +1265,7 @@ jobs: windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1306,7 +1286,7 @@ jobs: windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1327,7 +1307,7 @@ jobs: windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1348,7 +1328,7 @@ jobs: windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1369,7 +1349,7 @@ jobs: macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1391,7 +1371,7 @@ jobs: rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1413,7 +1393,7 @@ jobs: rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1435,7 +1415,7 @@ jobs: rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1457,7 +1437,7 @@ jobs: rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1479,7 +1459,7 @@ jobs: amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1501,7 +1481,7 @@ jobs: amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1523,7 +1503,7 @@ jobs: amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1545,7 +1525,7 @@ jobs: amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1567,7 +1547,7 @@ jobs: debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1589,7 +1569,7 @@ jobs: debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1611,7 +1591,7 @@ jobs: debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1633,7 +1613,7 @@ jobs: debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1655,7 +1635,7 @@ jobs: fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1677,7 +1657,7 @@ jobs: photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1699,7 +1679,7 @@ jobs: photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1721,7 +1701,7 @@ jobs: photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1744,7 +1724,7 @@ jobs: photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1767,7 +1747,7 @@ jobs: photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1789,7 +1769,7 @@ jobs: photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1811,7 +1791,7 @@ jobs: photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1834,7 +1814,7 @@ jobs: photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1857,7 +1837,7 @@ jobs: ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1879,7 +1859,7 @@ jobs: ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1901,7 +1881,7 @@ jobs: ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1923,7 +1903,7 @@ jobs: ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1945,7 +1925,7 @@ jobs: ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1967,7 +1947,7 @@ jobs: ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 0aedf6124c78..1b80b4fbd0b5 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -71,7 +71,6 @@ jobs: - check-requirements outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} - runners: ${{ steps.runner-types.outputs.runners }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} @@ -235,11 +234,6 @@ jobs: run: | echo '${{ steps.process-changed-files.outputs.changed-files }}' | jq -C '.' - - name: Define Runner Types - id: runner-types - run: | - tools ci runner-types ${{ github.event_name }} - - name: Define Jobs To Run id: define-jobs run: | @@ -279,7 +273,6 @@ jobs: pre-commit: name: Pre-Commit - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/pre-commit-action.yml needs: - prepare-workflow @@ -290,7 +283,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -298,7 +291,6 @@ jobs: changed-files: ${{ needs.prepare-workflow.outputs.changed-files }} nsis-tests: name: NSIS Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/nsis-tests.yml needs: - prepare-workflow @@ -307,7 +299,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} runs-on: - ubuntu-latest needs: @@ -412,7 +404,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -423,7 +415,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} needs: - prepare-workflow - prepare-release @@ -454,45 +446,39 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows @@ -508,8 +494,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: linux @@ -525,8 +509,6 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: macos @@ -542,15 +524,13 @@ jobs: with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "0.18.0" python-version: "3.10.15" kind: windows build-pkgs-onedir-linux: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -569,7 +549,7 @@ jobs: build-pkgs-src-linux: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -588,7 +568,7 @@ jobs: build-pkgs-onedir-macos: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -607,7 +587,7 @@ jobs: build-pkgs-src-macos: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -626,7 +606,7 @@ jobs: build-pkgs-onedir-windows: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -645,7 +625,7 @@ jobs: build-pkgs-src-windows: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -663,7 +643,7 @@ jobs: secrets: inherit build-ci-deps-linux: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -679,7 +659,7 @@ jobs: build-ci-deps-macos: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -695,7 +675,7 @@ jobs: build-ci-deps-windows: name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - build-salt-onedir-windows @@ -711,7 +691,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -733,7 +713,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -755,7 +735,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -777,7 +757,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -799,7 +779,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -821,7 +801,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -843,7 +823,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -865,7 +845,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -887,7 +867,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -909,7 +889,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -931,7 +911,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -953,7 +933,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -975,7 +955,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -997,7 +977,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1019,7 +999,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1042,7 +1022,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1065,7 +1045,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1087,7 +1067,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1109,7 +1089,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1132,7 +1112,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1155,7 +1135,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1177,7 +1157,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1199,7 +1179,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1221,7 +1201,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1243,7 +1223,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1265,7 +1245,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1287,7 +1267,7 @@ jobs: macos-12-pkg-tests: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1309,7 +1289,7 @@ jobs: windows-2019-nsis-pkg-tests: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1330,7 +1310,7 @@ jobs: windows-2019-msi-pkg-tests: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1351,7 +1331,7 @@ jobs: windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1372,7 +1352,7 @@ jobs: windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1393,7 +1373,7 @@ jobs: windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1414,7 +1394,7 @@ jobs: windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1435,7 +1415,7 @@ jobs: macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1457,7 +1437,7 @@ jobs: rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1479,7 +1459,7 @@ jobs: rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1501,7 +1481,7 @@ jobs: rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1523,7 +1503,7 @@ jobs: rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1545,7 +1525,7 @@ jobs: amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1567,7 +1547,7 @@ jobs: amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1589,7 +1569,7 @@ jobs: amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1611,7 +1591,7 @@ jobs: amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1633,7 +1613,7 @@ jobs: debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1655,7 +1635,7 @@ jobs: debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1677,7 +1657,7 @@ jobs: debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1699,7 +1679,7 @@ jobs: debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1721,7 +1701,7 @@ jobs: fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1743,7 +1723,7 @@ jobs: photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1765,7 +1745,7 @@ jobs: photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1787,7 +1767,7 @@ jobs: photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1810,7 +1790,7 @@ jobs: photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1833,7 +1813,7 @@ jobs: photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1855,7 +1835,7 @@ jobs: photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1877,7 +1857,7 @@ jobs: photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1900,7 +1880,7 @@ jobs: photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1923,7 +1903,7 @@ jobs: ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1945,7 +1925,7 @@ jobs: ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1967,7 +1947,7 @@ jobs: ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1989,7 +1969,7 @@ jobs: ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2011,7 +1991,7 @@ jobs: ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2033,7 +2013,7 @@ jobs: ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2900,7 +2880,7 @@ jobs: pkg-download-tests: name: Package Downloads - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] }} needs: - prepare-workflow - publish-repositories diff --git a/.github/workflows/templates/build-ci-deps.yml.jinja b/.github/workflows/templates/build-ci-deps.yml.jinja index 28d01b517eeb..f67919a9cee5 100644 --- a/.github/workflows/templates/build-ci-deps.yml.jinja +++ b/.github/workflows/templates/build-ci-deps.yml.jinja @@ -4,7 +4,7 @@ <%- do test_salt_linux_needs.append("build-ci-deps-linux") %> name: CI Deps <%- if workflow_slug != 'release' %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} <%- endif %> needs: - prepare-workflow @@ -28,7 +28,7 @@ <%- do test_salt_macos_needs.append("build-ci-deps-macos") %> name: CI Deps <%- if workflow_slug != 'release' %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} <%- endif %> needs: - prepare-workflow @@ -52,7 +52,7 @@ <%- do test_salt_windows_needs.append("build-ci-deps-windows") %> name: CI Deps <%- if workflow_slug != 'release' %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} <%- endif %> needs: - prepare-workflow diff --git a/.github/workflows/templates/build-packages.yml.jinja b/.github/workflows/templates/build-packages.yml.jinja index cc627ec4bce7..59bfea2c7965 100644 --- a/.github/workflows/templates/build-packages.yml.jinja +++ b/.github/workflows/templates/build-packages.yml.jinja @@ -11,7 +11,7 @@ <{ job_name }>: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-linux @@ -39,7 +39,7 @@ <{ job_name }>: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-macos @@ -67,7 +67,7 @@ <{ job_name }>: name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - build-salt-onedir-windows diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index d59ac6c91192..579c15055b97 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -12,7 +12,6 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Pre-Commit - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/pre-commit-action.yml needs: - prepare-workflow @@ -30,7 +29,7 @@ lint: <%- do conclusion_needs.append('lint') %> name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -44,7 +43,6 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: NSIS Tests - if: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} uses: ./.github/workflows/nsis-tests.yml needs: - prepare-workflow @@ -59,11 +57,11 @@ <{ job_name }>: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" <%- if prepare_actual_release %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} runs-on: - ubuntu-latest <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} runs-on: ubuntu-latest <%- endif %> needs: @@ -196,7 +194,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow - build-source-tarball @@ -213,7 +211,7 @@ <{ job_name }>: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow - prepare-release @@ -251,15 +249,13 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" kind: linux @@ -272,15 +268,13 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" kind: macos @@ -293,15 +287,13 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" kind: windows @@ -324,8 +316,6 @@ with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" kind: linux @@ -346,8 +336,6 @@ with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" kind: macos @@ -368,8 +356,6 @@ with: cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - self-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} - github-hosted-runners: ${{ fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" kind: windows diff --git a/.github/workflows/templates/layout.yml.jinja b/.github/workflows/templates/layout.yml.jinja index b37f4d40a987..ed3b700220bb 100644 --- a/.github/workflows/templates/layout.yml.jinja +++ b/.github/workflows/templates/layout.yml.jinja @@ -89,7 +89,6 @@ jobs: <%- endif %> outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} - runners: ${{ steps.runner-types.outputs.runners }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} @@ -258,11 +257,6 @@ jobs: run: | echo '${{ steps.process-changed-files.outputs.changed-files }}' | jq -C '.' - - name: Define Runner Types - id: runner-types - run: | - tools ci runner-types ${{ github.event_name }} - - name: Define Jobs To Run id: define-jobs run: | diff --git a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja index 3619e8c10bad..c5c2daf69e44 100644 --- a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja @@ -6,7 +6,7 @@ <%- do conclusion_needs.append(job_name) %> name: Package Downloads <%- if gh_environment == "staging" %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] }} <%- else %> if: ${{ inputs.skip-salt-pkg-download-test-suite == false }} <%- endif %> diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 362c74cfa02d..4764848e8563 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -5,9 +5,9 @@ <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> Package Test<%- if os.fips %> (fips)<%- endif %> <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow @@ -42,9 +42,9 @@ <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> Package Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow @@ -75,9 +75,9 @@ <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> <{ os.pkg_type }> Package Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 5699337ef2ec..753062bb97ff 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -10,9 +10,9 @@ <%- do test_salt_needs.append(os.slug.replace(".", "")) %> name: <{ os.display_name }> Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} <%- endif %> needs: - prepare-workflow @@ -41,9 +41,9 @@ <%- do test_salt_needs.append(os.slug.replace(".", "")) %> name: <{ os.display_name }> Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['github-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow @@ -73,9 +73,9 @@ <%- do test_salt_needs.append(job_name) %> name: <{ os.display_name }> Test<%- if os.fips %> (fips)<%- endif %> <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && fromJSON(needs.prepare-workflow.outputs.runners)['self-hosted'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow diff --git a/tools/ci.py b/tools/ci.py index 1a9cf19be534..1935a8b650cf 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -646,6 +646,39 @@ def define_testrun(ctx: Context, event_name: str, changed_files: pathlib.Path): wfh.write(f"testrun={json.dumps(testrun)}\n") +@ci.command( + name="build-matrix", + arguments={ + "kind": { + "help": "kind of build; linux, windows, mac", + }, + }, +) +def build_matrix( + ctx: Context, + kind: str, +): + """ + Generate the test matrix. + """ + github_output = os.environ.get("GITHUB_OUTPUT") + if github_output is None: + ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") + _matrix = [{"arch": "x86_64"}] + if ( + kind == "linux" + and "LINUX_ARM_RUNNER" in os.environ + and os.environ["LINUX_ARM_RUNNER"] != "0" + ): + _matrix.append({"arch": "arm64"}) + if github_output is not None: + with open(github_output, "a", encoding="utf-8") as wfh: + wfh.write(f"matrix={json.dumps(_matrix)}\n") + else: + ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") + ctx.exit(0) + + @ci.command( arguments={ "distro_slug": { @@ -971,8 +1004,7 @@ def get_ci_deps_matrix(ctx: Context): _matrix = { "linux": [ - {"distro-slug": "amazonlinux-2", "arch": "x86_64"}, - {"distro-slug": "amazonlinux-2-arm64", "arch": "arm64"}, + {"arch": "x86_64"}, ], "macos": [ {"distro-slug": "macos-12", "arch": "x86_64"}, @@ -981,6 +1013,9 @@ def get_ci_deps_matrix(ctx: Context): {"distro-slug": "windows-2022", "arch": "amd64"}, ], } + if "LINUX_ARM_RUNNER" in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0": + _matrix["linux"].append({"arch": "arm64"}) + if gh_event["repository"]["fork"] is not True: _matrix["macos"].append( { From 7a90b8367dc9ee1ad99b8e61500b8611202e304c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 00:12:52 -0700 Subject: [PATCH 076/225] reduce mandatory --- .github/workflows/ci.yml | 60 +++++++++---------- .../templates/test-salt-pkg.yml.jinja | 2 +- .../workflows/test-packages-action-linux.yml | 2 +- cicd/shared-gh-workflows-context.yml | 7 +-- tools/ci.py | 1 - 5 files changed, 34 insertions(+), 38 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1600862418f4..fca7d51df538 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -586,7 +586,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -608,7 +608,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -652,7 +652,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -674,7 +674,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -696,7 +696,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -718,7 +718,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -762,7 +762,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -784,7 +784,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -806,7 +806,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -828,7 +828,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -850,7 +850,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -872,7 +872,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -894,7 +894,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -917,7 +917,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -940,7 +940,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -984,7 +984,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1030,7 +1030,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1052,7 +1052,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1074,7 +1074,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1096,7 +1096,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1118,7 +1118,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1226,7 +1226,7 @@ jobs: windows-2022-nsis-pkg-tests: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1247,7 +1247,7 @@ jobs: windows-2022-msi-pkg-tests: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1376,7 +1376,7 @@ jobs: rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1486,7 +1486,7 @@ jobs: amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1730,7 +1730,7 @@ jobs: photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1775,7 +1775,7 @@ jobs: photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1842,7 +1842,7 @@ jobs: ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1864,7 +1864,7 @@ jobs: ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-22.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1908,7 +1908,7 @@ jobs: ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04-arm64') }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 4764848e8563..984357e71ad9 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -4,7 +4,7 @@ <{ job_name }>: <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> Package Test<%- if os.fips %> (fips)<%- endif %> - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> + <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} <%- else %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index c28e859e28bb..f91b48780bf3 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -109,7 +109,7 @@ jobs: test: name: Test runs-on: - - linux-${{ inputs.arch }} + - ${{ inputs.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} container: image: ${{ inputs.container }} options: --privileged diff --git a/cicd/shared-gh-workflows-context.yml b/cicd/shared-gh-workflows-context.yml index a5a5f55e4828..33c01baa8df6 100644 --- a/cicd/shared-gh-workflows-context.yml +++ b/cicd/shared-gh-workflows-context.yml @@ -2,8 +2,5 @@ nox_version: "2022.8.7" python_version: "3.10.15" relenv_version: "0.18.0" mandatory_os_slugs: - - rockylinux-9 - - amazonlinux-2023-arm64 - - photonos-5-arm64 - - ubuntu-24.04-arm64 - - windows-2022 + - ubuntu-22.04 + - ubuntu-22.04-arm64 diff --git a/tools/ci.py b/tools/ci.py index 1935a8b650cf..49f322f46e63 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -894,7 +894,6 @@ def pkg_matrix( ] for version, backend in adjusted_versions: - print(f"WTF {version} {backend}") prefix = prefixes[backend] # TODO: Remove this after 3009.0 if backend == "relenv" and version >= tools.utils.Version("3006.5"): From f36e56f1e1db9067cc28a7d15f1072e86af00bf6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 01:52:31 -0700 Subject: [PATCH 077/225] remove some debugging --- .github/workflows/build-deps-onedir.yml | 4 +- .github/workflows/build-packages.yml | 2 +- .github/workflows/build-salt-onedir.yml | 4 +- .../workflows/test-packages-action-linux.yml | 12 ++- tools/ci.py | 96 +------------------ 5 files changed, 17 insertions(+), 101 deletions(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 03eba539c17c..faf82eb47e05 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -38,7 +38,7 @@ env: jobs: generate-matrix: - name: Test Matrix + name: Test Matrix (${{ inputs.kind }}) runs-on: ubuntu-latest outputs: matrix-include: ${{ steps.generate-matrix.outputs.matrix }} @@ -58,7 +58,7 @@ jobs: - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts with: - cache-prefix: ${{ inputs.cache-prefix }} + cache-prefix: ${{ inputs.cache-seed }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 5b16b4c224ac..f04478b2a00e 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -51,7 +51,7 @@ env: jobs: generate-matrix: - name: Test Matrix + name: Test Matrix ${{ inputs.kind }} runs-on: ubuntu-latest outputs: matrix-include: ${{ steps.generate-matrix.outputs.matrix }} diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index a4cb0afb4bc7..19e427dcd28f 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -38,7 +38,7 @@ env: jobs: generate-matrix: - name: Test Matrix + name: Test Matrix (${{ inputs.kind }}) runs-on: ubuntu-latest outputs: matrix-include: ${{ steps.generate-matrix.outputs.matrix }} @@ -58,7 +58,7 @@ jobs: - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts with: - cache-prefix: ${{ inputs.cache-prefix }} + cache-prefix: ${{ inputs.cache-seed }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index f91b48780bf3..cb2cb9f0769a 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -191,16 +191,18 @@ jobs: run: | tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - - name: check systemd - run: systemctl +# - name: check systemd +# run: systemctl +# #- name: Mock systemd # run: | # wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py # cp systemctl3.py /usr/bin/systemctl # chmod +x /usr/bin/systemctl - - name: install pkg test - run: | - dpkg -i ./artifacts/pkg/salt-common_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb ./artifacts/pkg/salt-master_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb + # + #- name: install pkg test + # run: | + # dpkg -i ./artifacts/pkg/salt-common_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb ./artifacts/pkg/salt-master_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb - name: Show System Info env: diff --git a/tools/ci.py b/tools/ci.py index 49f322f46e63..a649277b337a 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -152,96 +152,6 @@ def process_changed_files(ctx: Context, event_name: str, changed_files: pathlib. ctx.exit(0) -@ci.command( - name="runner-types", - arguments={ - "event_name": { - "help": "The name of the GitHub event being processed.", - }, - }, -) -def runner_types(ctx: Context, event_name: str): - """ - Set GH Actions 'runners' output to know what can run where. - """ - gh_event_path = os.environ.get("GITHUB_EVENT_PATH") or None - if gh_event_path is None: - ctx.warn("The 'GITHUB_EVENT_PATH' variable is not set.") - ctx.exit(1) - - if TYPE_CHECKING: - assert gh_event_path is not None - - github_output = os.environ.get("GITHUB_OUTPUT") - if github_output is None: - ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") - ctx.exit(1) - - if TYPE_CHECKING: - assert github_output is not None - - try: - gh_event = json.loads(open(gh_event_path, encoding="utf-8").read()) - except Exception as exc: - ctx.error(f"Could not load the GH Event payload from {gh_event_path!r}:\n", exc) - ctx.exit(1) - - ctx.info("GH Event Payload:") - ctx.print(gh_event, soft_wrap=True) - # Let's it print until the end - time.sleep(1) - - ctx.info("Selecting which type of runners(self hosted runners or not) to run") - runners = {"github-hosted": False, "self-hosted": False, "linux-arm64": False} - if "LINUX_ARM_RUNNER" in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0": - runners["linux-arm64"] = True - if event_name == "pull_request": - ctx.info("Running from a pull request event") - pr_event_data = gh_event["pull_request"] - if ( - pr_event_data["head"]["repo"]["full_name"] - == pr_event_data["base"]["repo"]["full_name"] - ): - # If this is a pull request coming from the same repository, don't run anything - ctx.info("Pull request is coming from the same repository.") - ctx.info("Not running any jobs since they will run against the branch") - ctx.info("Writing 'runners' to the github outputs file:\n", runners) - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"runners={json.dumps(runners)}\n") - ctx.exit(0) - - # This is a PR from a forked repository - ctx.info("Pull request is not comming from the same repository") - runners["github-hosted"] = runners["self-hosted"] = True - ctx.info("Writing 'runners' to the github outputs file:\n", runners) - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"runners={json.dumps(runners)}\n") - ctx.exit(0) - - # This is a push or a scheduled event - ctx.info(f"Running from a {event_name!r} event") - if ( - gh_event["repository"]["fork"] is True - and os.environ.get("FORK_HAS_SELF_HOSTED_RUNNERS", "0") == "1" - ): - # This is running on a forked repository, don't run tests - ctx.info("The push event is on a forked repository") - if os.environ.get("FORK_HAS_SELF_HOSTED_RUNNERS", "0") == "1": - # This is running on a forked repository, don't run tests - runners["github-hosted"] = runners["self-hosted"] = True - ctx.info("Writing 'runners' to the github outputs file:\n", runners) - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"runners={json.dumps(runners)}\n") - ctx.exit(0) - # Not running on a fork, or the fork has self hosted runners, run everything - ctx.info(f"The {event_name!r} event is from the main repository") - runners["github-hosted"] = runners["self-hosted"] = True - ctx.info("Writing 'runners' to the github outputs file:\n", runners) - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"runners={json.dumps(runners)}") - ctx.exit(0) - - @ci.command( name="define-jobs", arguments={ @@ -659,7 +569,9 @@ def build_matrix( kind: str, ): """ - Generate the test matrix. + Generate matrix for onedir workflows. + + The build-onedir-deps and build-salt-onedir workflows call this method. """ github_output = os.environ.get("GITHUB_OUTPUT") if github_output is None: @@ -863,6 +775,8 @@ def pkg_matrix( else: arch = "x86_64" + ctx.info(f"Parsed linux slug parts {name} {version} {arch}") + if name == "amazonlinux": name = "amazon" elif name == "rockylinux": From 8213a2d508e262a15538d0eb3de982930b4f3820 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 10:06:08 -0700 Subject: [PATCH 078/225] Run ubunut pkg tests on 22.04 --- .github/workflows/test-packages-action-linux.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index cb2cb9f0769a..2323ac778c08 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -109,13 +109,13 @@ jobs: test: name: Test runs-on: - - ${{ inputs.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: image: ${{ inputs.container }} options: --privileged - volumes: - - /run/systemd/system:/run/systemd/system - - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket + #volumes: + # - /run/systemd/system:/run/systemd/system + # - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: - generate-matrix From 498f243832161e4bff788dced9789974da232c9d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 10:37:23 -0700 Subject: [PATCH 079/225] meh --- .github/workflows/test-packages-action-linux.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 2323ac778c08..59b6e3785d07 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -158,10 +158,10 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - name: Set up Python ${{ inputs.python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.python-version }}" + #- name: Set up Python ${{ inputs.python-version }} + # uses: actions/setup-python@v5 + # with: + # python-version: "${{ inputs.python-version }}" - name: Install Nox run: | From 545e752d5de76eed1af82197a59ed3dd09740a0b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 10:41:14 -0700 Subject: [PATCH 080/225] use testing container for pre-commit --- .github/workflows/pre-commit-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pre-commit-action.yml b/.github/workflows/pre-commit-action.yml index 2b1e492dc88f..d662c5335cdd 100644 --- a/.github/workflows/pre-commit-action.yml +++ b/.github/workflows/pre-commit-action.yml @@ -24,7 +24,7 @@ jobs: runs-on: ubuntu-latest container: - image: ghcr.io/saltstack/salt-ci-containers/python:3.10 + image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 env: PRE_COMMIT_COLOR: always From c5ea8e6bfefdcd4601fa56399a8c90e155be03d1 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 15:47:59 -0700 Subject: [PATCH 081/225] Skip arm64 packages tests when no arm runner configured --- tools/ci.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tools/ci.py b/tools/ci.py index a649277b337a..b7622459760f 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -796,6 +796,7 @@ def pkg_matrix( "tiamat": f"salt/py3/{name}/{version}/{arch}/minor/", "relenv": f"salt/py3/{name}/{version}/{arch}/minor/", } + _matrix = [] # XXX: fetch versions # s3 = boto3.client("s3") @@ -871,9 +872,18 @@ def pkg_matrix( and "macos" in distro_slug and "arm64" in distro_slug ): + # XXX: This should work now ctx.warn("Forks don't have access to MacOS 13 Arm64. Clearning the matrix.") _matrix.clear() + if ( + name not in ["windows", "macos"] + and "LINUX_ARM_RUNNER" not in os.environ + or os.environ["LINUX_ARM_RUNNER"] != 0 + ): + ctx.warn("This fork does not have a linux arm64 runner configured.") + _matrix.clear() + if not _matrix: build_reports = False ctx.info("Not building reports because the matrix is empty") From 71a98443a570caeb09040f4b78b1b4f16ba1f0af Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 18:15:13 -0700 Subject: [PATCH 082/225] Do not run arm but run x86 always --- tools/ci.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index b7622459760f..ec6a51491afa 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -877,7 +877,7 @@ def pkg_matrix( _matrix.clear() if ( - name not in ["windows", "macos"] + arch == "arm64" and name not in ["windows", "macos"] and "LINUX_ARM_RUNNER" not in os.environ or os.environ["LINUX_ARM_RUNNER"] != 0 ): From b4f336e3a811ea18e6881ebc761886368e88a0c3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 18:46:10 -0700 Subject: [PATCH 083/225] Fix runner check --- tools/ci.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index ec6a51491afa..442aa5bab0d3 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -879,7 +879,7 @@ def pkg_matrix( if ( arch == "arm64" and name not in ["windows", "macos"] and "LINUX_ARM_RUNNER" not in os.environ - or os.environ["LINUX_ARM_RUNNER"] != 0 + and os.environ["LINUX_ARM_RUNNER"] != "0" ): ctx.warn("This fork does not have a linux arm64 runner configured.") _matrix.clear() From bd82c559d7d56c5d98cabe08b477a652fc09d6b9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 19:45:20 -0700 Subject: [PATCH 084/225] Add config workflow step --- tools/ci.py | 75 +++++- tools/precommit/workflows.py | 473 ++++++++++++++++++----------------- 2 files changed, 311 insertions(+), 237 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 442aa5bab0d3..2e17d9873e29 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -877,7 +877,8 @@ def pkg_matrix( _matrix.clear() if ( - arch == "arm64" and name not in ["windows", "macos"] + arch == "arm64" + and name not in ["windows", "macos"] and "LINUX_ARM_RUNNER" not in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0" ): @@ -1510,3 +1511,75 @@ def upload_coverage(ctx: Context, reports_path: pathlib.Path, commit_sha: str = time.sleep(sleep_time) ctx.exit(0) + + +@ci.command( + name="workflow-config", + arguments={ + "event_name": { + "help": "The name of the GitHub event being processed.", + }, + "skip_tests": { + "help": "Skip running the Salt tests", + }, + "skip_pkg_tests": { + "help": "Skip running the Salt Package tests", + }, + "skip_pkg_download_tests": { + "help": "Skip running the Salt Package download tests", + }, + "changed_files": { + "help": ( + "Path to '.json' file containing the payload of changed files " + "from the 'dorny/paths-filter' GitHub action." + ), + }, + }, +) +def workflow_config( + ctx: Context, + event_name: str, + changed_files: pathlib.Path, + skip_tests: bool = False, + skip_pkg_tests: bool = False, + skip_pkg_download_tests: bool = False, +): + config = {} + jobs = { + "lint": True, + "test": True, + "test-pkg": True, + "test-pkg-download": True, + "prepare-release": True, + "build-docs": True, + "build-source-tarball": True, + "build-deps-onedir": True, + "build-deps-onedir-linux": True, + "build-deps-onedir-macos": False, + "build-deps-onedir-windows": True, + "build-salt-onedir": True, + "build-salt-onedir-linux": True, + "build-salt-onedir-macos": False, + "build-salt-onedir-windows": True, + "build-pkgs": True, + "build-deps-ci": True, + } + from tools.precommit.workflows import TEST_SALT_PKG_LISTING + + test_salt_pkg_listing = list(TEST_SALT_PKG_LISTING) + jobs.update({_.slug: True for _ in test_salt_pkg_listing}) + config["jobs"] = jobs + ctx.info("Jobs selected are") + for x, y in jobs.items(): + ctx.info(f"{x} = {y}") + github_step_summary = os.environ.get("GITHUB_STEP_SUMMARY") + if github_step_summary is not None: + with open(github_step_summary, "a", encoding="utf-8") as wfh: + wfh.write("Selected Jobs:\n") + for name, value in sorted(jobs.items()): + wfh.write(f" - `{name}`: {value}\n") + github_output = os.environ.get("GITHUB_OUTPUT") + if github_output is not None: + with open(github_output, "a", encoding="utf-8") as wfh: + wfh.write(f"config={json.dumps(config)}\n") + ctx.exit(0) diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 2f4b02e5f002..2cce25f005a3 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -20,6 +20,15 @@ WORKFLOWS = tools.utils.REPO_ROOT / ".github" / "workflows" TEMPLATES = WORKFLOWS / "templates" +# Define the command group +cgroup = command_group( + name="workflows", + help="Pre-Commit GH Actions Workflows Related Commands", + description=__doc__, + parent="pre-commit", +) + + TEST_SALT_LISTING = PlatformDefinitions( { "linux": [ @@ -208,13 +217,233 @@ ], } ) - -# Define the command group -cgroup = command_group( - name="workflows", - help="Pre-Commit GH Actions Workflows Related Commands", - description=__doc__, - parent="pre-commit", +TEST_SALT_PKG_LISTING = PlatformDefinitions( + { + "linux": [ + Linux( + slug="rockylinux-8", + display_name="Rocky Linux 8", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + ), + Linux( + slug="rockylinux-8-arm64", + display_name="Rocky Linux 8 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + ), + Linux( + slug="rockylinux-9", + display_name="Rocky Linux 9", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + ), + Linux( + slug="rockylinux-9-arm64", + display_name="Rocky Linux 9 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + ), + Linux( + slug="amazonlinux-2", + display_name="Amazon Linux 2", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", + ), + Linux( + slug="amazonlinux-2-arm64", + display_name="Amazon Linux 2 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", + ), + Linux( + slug="amazonlinux-2023", + display_name="Amazon Linux 2023", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", + ), + Linux( + slug="amazonlinux-2023-arm64", + display_name="Amazon Linux 2023 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", + ), + Linux( + slug="debian-11", + display_name="Debian 11", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", + ), + Linux( + slug="debian-11-arm64", + display_name="Debian 11 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", + ), + Linux( + slug="debian-12", + display_name="Debian 12", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", + ), + Linux( + slug="debian-12-arm64", + display_name="Debian 12 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", + ), + Linux( + slug="photonos-4", + display_name="Photon OS 4", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-4-arm64", + display_name="Photon OS 4 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-4", + display_name="Photon OS 4", + arch="x86_64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-4-arm64", + display_name="Photon OS 4 Arm64", + arch="arm64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", + ), + Linux( + slug="photonos-5", + display_name="Photon OS 5", + arch="x86_64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="photonos-5-arm64", + display_name="Photon OS 5 Arm64", + arch="arm64", + pkg_type="rpm", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="photonos-5", + display_name="Photon OS 5", + arch="x86_64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="photonos-5-arm64", + display_name="Photon OS 5 Arm64", + arch="arm64", + pkg_type="rpm", + fips=True, + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + ), + Linux( + slug="ubuntu-20.04", + display_name="Ubuntu 20.04", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", + ), + Linux( + slug="ubuntu-20.04-arm64", + display_name="Ubuntu 20.04 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", + ), + Linux( + slug="ubuntu-22.04", + display_name="Ubuntu 22.04", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", + ), + Linux( + slug="ubuntu-22.04-arm64", + display_name="Ubuntu 22.04 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", + ), + Linux( + slug="ubuntu-24.04", + display_name="Ubuntu 24.04", + arch="x86_64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", + ), + Linux( + slug="ubuntu-24.04-arm64", + display_name="Ubuntu 24.04 Arm64", + arch="arm64", + pkg_type="deb", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", + ), + ], + "macos": [ + MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), + # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), + # MacOS( + # slug="macos-13-arm64", + # display_name="macOS 13 Arm64", + # arch="arm64", + # runner="macos-13-xlarge", + # ), + ], + "windows": [ + Windows( + slug="windows-2019", + display_name="Windows 2019", + arch="amd64", + pkg_type="NSIS", + ), + Windows( + slug="windows-2019", + display_name="Windows 2019", + arch="amd64", + pkg_type="MSI", + ), + Windows( + slug="windows-2022", + display_name="Windows 2022", + arch="amd64", + pkg_type="NSIS", + ), + Windows( + slug="windows-2022", + display_name="Windows 2022", + arch="amd64", + pkg_type="MSI", + ), + ], + } ) @@ -274,235 +503,7 @@ def generate_workflows(ctx: Context): }, }, } - - test_salt_pkg_listing = PlatformDefinitions( - { - "linux": [ - Linux( - slug="rockylinux-8", - display_name="Rocky Linux 8", - arch="x86_64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", - ), - Linux( - slug="rockylinux-8-arm64", - display_name="Rocky Linux 8 Arm64", - arch="arm64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", - ), - Linux( - slug="rockylinux-9", - display_name="Rocky Linux 9", - arch="x86_64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", - ), - Linux( - slug="rockylinux-9-arm64", - display_name="Rocky Linux 9 Arm64", - arch="arm64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", - ), - Linux( - slug="amazonlinux-2", - display_name="Amazon Linux 2", - arch="x86_64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", - ), - Linux( - slug="amazonlinux-2-arm64", - display_name="Amazon Linux 2 Arm64", - arch="arm64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", - ), - Linux( - slug="amazonlinux-2023", - display_name="Amazon Linux 2023", - arch="x86_64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", - ), - Linux( - slug="amazonlinux-2023-arm64", - display_name="Amazon Linux 2023 Arm64", - arch="arm64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", - ), - Linux( - slug="debian-11", - display_name="Debian 11", - arch="x86_64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", - ), - Linux( - slug="debian-11-arm64", - display_name="Debian 11 Arm64", - arch="arm64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", - ), - Linux( - slug="debian-12", - display_name="Debian 12", - arch="x86_64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", - ), - Linux( - slug="debian-12-arm64", - display_name="Debian 12 Arm64", - arch="arm64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", - ), - Linux( - slug="photonos-4", - display_name="Photon OS 4", - arch="x86_64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", - ), - Linux( - slug="photonos-4-arm64", - display_name="Photon OS 4 Arm64", - arch="arm64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", - ), - Linux( - slug="photonos-4", - display_name="Photon OS 4", - arch="x86_64", - pkg_type="rpm", - fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", - ), - Linux( - slug="photonos-4-arm64", - display_name="Photon OS 4 Arm64", - arch="arm64", - pkg_type="rpm", - fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", - ), - Linux( - slug="photonos-5", - display_name="Photon OS 5", - arch="x86_64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", - ), - Linux( - slug="photonos-5-arm64", - display_name="Photon OS 5 Arm64", - arch="arm64", - pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", - ), - Linux( - slug="photonos-5", - display_name="Photon OS 5", - arch="x86_64", - pkg_type="rpm", - fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", - ), - Linux( - slug="photonos-5-arm64", - display_name="Photon OS 5 Arm64", - arch="arm64", - pkg_type="rpm", - fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", - ), - Linux( - slug="ubuntu-20.04", - display_name="Ubuntu 20.04", - arch="x86_64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", - ), - Linux( - slug="ubuntu-20.04-arm64", - display_name="Ubuntu 20.04 Arm64", - arch="arm64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", - ), - Linux( - slug="ubuntu-22.04", - display_name="Ubuntu 22.04", - arch="x86_64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", - ), - Linux( - slug="ubuntu-22.04-arm64", - display_name="Ubuntu 22.04 Arm64", - arch="arm64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", - ), - Linux( - slug="ubuntu-24.04", - display_name="Ubuntu 24.04", - arch="x86_64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", - ), - Linux( - slug="ubuntu-24.04-arm64", - display_name="Ubuntu 24.04 Arm64", - arch="arm64", - pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", - ), - ], - "macos": [ - MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), - # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), - # MacOS( - # slug="macos-13-arm64", - # display_name="macOS 13 Arm64", - # arch="arm64", - # runner="macos-13-xlarge", - # ), - ], - "windows": [ - Windows( - slug="windows-2019", - display_name="Windows 2019", - arch="amd64", - pkg_type="NSIS", - ), - Windows( - slug="windows-2019", - display_name="Windows 2019", - arch="amd64", - pkg_type="MSI", - ), - Windows( - slug="windows-2022", - display_name="Windows 2022", - arch="amd64", - pkg_type="NSIS", - ), - Windows( - slug="windows-2022", - display_name="Windows 2022", - arch="amd64", - pkg_type="MSI", - ), - ], - } - ) + test_salt_pkg_listing = TEST_SALT_PKG_LISTING build_rpms_listing = [] rpm_os_versions: dict[str, list[str]] = { From fcc07638641f097a301544d7fc110b16bab2fc49 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 19:46:42 -0700 Subject: [PATCH 085/225] allow break system packges --- .github/workflows/ci.yml | 7 +++++++ .github/workflows/test-packages-action-linux.yml | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fca7d51df538..71e1a0241929 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,6 +51,7 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -231,6 +232,12 @@ jobs: name: testrun-changed-files.txt path: testrun-changed-files.txt + - name: Generate Workflow Config + id: workflow-config + run: | + tools ci workflow-config ${{ github.event_name }} changed-files.json + + pre-commit: name: Pre-Commit diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 59b6e3785d07..59a2f63599da 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -165,7 +165,7 @@ jobs: - name: Install Nox run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' + python3 -m pip install --break-system-packages 'nox==${{ inputs.nox-version }}' env: PIP_INDEX_URL: https://pypi.org/simple From ad06b5f59488686037dc16613af30550a161f321 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 19:50:32 -0700 Subject: [PATCH 086/225] meh --- tools/ci.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index 2e17d9873e29..c1a45fc451e0 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1567,7 +1567,7 @@ def workflow_config( from tools.precommit.workflows import TEST_SALT_PKG_LISTING test_salt_pkg_listing = list(TEST_SALT_PKG_LISTING) - jobs.update({_.slug: True for _ in test_salt_pkg_listing}) + jobs.update({_.slug: True for _ in test_salt_pkg_listing["linux"]}) config["jobs"] = jobs ctx.info("Jobs selected are") for x, y in jobs.items(): From 597242b442eb25d786920e21dba3620f67ad98f1 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 19:54:07 -0700 Subject: [PATCH 087/225] meh --- tools/ci.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index c1a45fc451e0..b8c4365534c5 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1566,8 +1566,7 @@ def workflow_config( } from tools.precommit.workflows import TEST_SALT_PKG_LISTING - test_salt_pkg_listing = list(TEST_SALT_PKG_LISTING) - jobs.update({_.slug: True for _ in test_salt_pkg_listing["linux"]}) + jobs.update({_.slug: True for _ in TEST_SALT_PKG_LISTING["linux"]}) config["jobs"] = jobs ctx.info("Jobs selected are") for x, y in jobs.items(): From 26986a528d3e5ae754f6e509fb992556ba52d9fe Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 21:38:11 -0700 Subject: [PATCH 088/225] expand on job names --- .github/workflows/ci.yml | 207 +++++++++--------- .github/workflows/nightly.yml | 140 ++++++------ .github/workflows/scheduled.yml | 140 ++++++------ .github/workflows/staging.yml | 140 ++++++------ .../templates/test-salt-pkg.yml.jinja | 6 +- .../workflows/templates/test-salt.yml.jinja | 10 +- tools/ci.py | 10 +- tools/precommit/workflows.py | 78 ++++--- tools/utils/__init__.py | 38 ++++ 9 files changed, 407 insertions(+), 362 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 71e1a0241929..2132a9770147 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,7 +51,6 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} - config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -232,12 +231,6 @@ jobs: name: testrun-changed-files.txt path: testrun-changed-files.txt - - name: Generate Workflow Config - id: workflow-config - run: | - tools ci workflow-config ${{ github.event_name }} changed-files.json - - pre-commit: name: Pre-Commit @@ -1167,7 +1160,7 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - macos-12-pkg-tests: + test-pkg-macos-12: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} needs: @@ -1189,7 +1182,7 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: @@ -1210,7 +1203,7 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-msi-pkg-tests: + test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: @@ -1231,7 +1224,7 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-nsis-pkg-tests: + test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} needs: @@ -1252,7 +1245,7 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-msi-pkg-tests: + test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} needs: @@ -1273,7 +1266,7 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019: + test-windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1294,7 +1287,7 @@ jobs: workflow-slug: ci default-timeout: 180 - windows-2022: + test-windows-2022: name: Windows 2022 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1315,7 +1308,7 @@ jobs: workflow-slug: ci default-timeout: 180 - macos-12: + test-macos-12: name: macOS 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} needs: @@ -1337,7 +1330,7 @@ jobs: workflow-slug: ci default-timeout: 180 - rockylinux-8: + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} needs: @@ -1359,7 +1352,7 @@ jobs: workflow-slug: ci default-timeout: 180 - rockylinux-8-arm64: + test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} needs: @@ -1381,7 +1374,7 @@ jobs: workflow-slug: ci default-timeout: 180 - rockylinux-9: + test-rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9') }} needs: @@ -1403,7 +1396,7 @@ jobs: workflow-slug: ci default-timeout: 180 - rockylinux-9-arm64: + test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} needs: @@ -1425,7 +1418,7 @@ jobs: workflow-slug: ci default-timeout: 180 - amazonlinux-2: + test-amazonlinux-2: name: Amazon Linux 2 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} needs: @@ -1447,7 +1440,7 @@ jobs: workflow-slug: ci default-timeout: 180 - amazonlinux-2-arm64: + test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} needs: @@ -1469,7 +1462,7 @@ jobs: workflow-slug: ci default-timeout: 180 - amazonlinux-2023: + test-amazonlinux-2023: name: Amazon Linux 2023 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} needs: @@ -1491,7 +1484,7 @@ jobs: workflow-slug: ci default-timeout: 180 - amazonlinux-2023-arm64: + test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023-arm64') }} needs: @@ -1513,7 +1506,7 @@ jobs: workflow-slug: ci default-timeout: 180 - debian-11: + test-debian-11: name: Debian 11 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} needs: @@ -1535,7 +1528,7 @@ jobs: workflow-slug: ci default-timeout: 180 - debian-11-arm64: + test-debian-11-arm64: name: Debian 11 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} needs: @@ -1557,7 +1550,7 @@ jobs: workflow-slug: ci default-timeout: 180 - debian-12: + test-debian-12: name: Debian 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} needs: @@ -1579,7 +1572,7 @@ jobs: workflow-slug: ci default-timeout: 180 - debian-12-arm64: + test-debian-12-arm64: name: Debian 12 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} needs: @@ -1601,7 +1594,7 @@ jobs: workflow-slug: ci default-timeout: 180 - fedora-40: + test-fedora-40: name: Fedora 40 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} needs: @@ -1623,7 +1616,7 @@ jobs: workflow-slug: ci default-timeout: 180 - photonos-4: + test-photonos-4: name: Photon OS 4 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: @@ -1645,7 +1638,7 @@ jobs: workflow-slug: ci default-timeout: 180 - photonos-4-arm64: + test-photonos-4-arm64: name: Photon OS 4 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: @@ -1667,7 +1660,7 @@ jobs: workflow-slug: ci default-timeout: 180 - photonos-4-fips: + test-photonos-4-fips: name: Photon OS 4 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: @@ -1690,7 +1683,7 @@ jobs: default-timeout: 180 fips: true - photonos-4-arm64-fips: + test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: @@ -1713,7 +1706,7 @@ jobs: default-timeout: 180 fips: true - photonos-5: + test-photonos-5: name: Photon OS 5 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: @@ -1735,7 +1728,7 @@ jobs: workflow-slug: ci default-timeout: 180 - photonos-5-arm64: + test-photonos-5-arm64: name: Photon OS 5 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} needs: @@ -1757,7 +1750,7 @@ jobs: workflow-slug: ci default-timeout: 180 - photonos-5-fips: + test-photonos-5-fips: name: Photon OS 5 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: @@ -1780,7 +1773,7 @@ jobs: default-timeout: 180 fips: true - photonos-5-arm64-fips: + test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} needs: @@ -1803,7 +1796,7 @@ jobs: default-timeout: 180 fips: true - ubuntu-2004: + test-ubuntu-2004: name: Ubuntu 20.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} needs: @@ -1825,7 +1818,7 @@ jobs: workflow-slug: ci default-timeout: 180 - ubuntu-2004-arm64: + test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} needs: @@ -1847,7 +1840,7 @@ jobs: workflow-slug: ci default-timeout: 180 - ubuntu-2204: + test-ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1869,7 +1862,7 @@ jobs: workflow-slug: ci default-timeout: 180 - ubuntu-2204-arm64: + test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1891,7 +1884,7 @@ jobs: workflow-slug: ci default-timeout: 180 - ubuntu-2404: + test-ubuntu-2404: name: Ubuntu 24.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} needs: @@ -1913,7 +1906,7 @@ jobs: workflow-slug: ci default-timeout: 180 - ubuntu-2404-arm64: + test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04-arm64') }} needs: @@ -1946,36 +1939,36 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2019 - - windows-2022 - - macos-12 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - - ubuntu-2204 - - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 + - test-windows-2019 + - test-windows-2022 + - test-macos-12 + - test-rockylinux-8 + - test-rockylinux-8-arm64 + - test-rockylinux-9 + - test-rockylinux-9-arm64 + - test-amazonlinux-2 + - test-amazonlinux-2-arm64 + - test-amazonlinux-2023 + - test-amazonlinux-2023-arm64 + - test-debian-11 + - test-debian-11-arm64 + - test-debian-12 + - test-debian-12-arm64 + - test-fedora-40 + - test-photonos-4 + - test-photonos-4-arm64 + - test-photonos-4-fips + - test-photonos-4-arm64-fips + - test-photonos-5 + - test-photonos-5-arm64 + - test-photonos-5-fips + - test-photonos-5-arm64-fips + - test-ubuntu-2004 + - test-ubuntu-2004-arm64 + - test-ubuntu-2204 + - test-ubuntu-2204-arm64 + - test-ubuntu-2404 + - test-ubuntu-2404-arm64 steps: - uses: actions/checkout@v4 @@ -2118,36 +2111,36 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2019 - - windows-2022 - - macos-12 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - - ubuntu-2204 - - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 + - test-windows-2019 + - test-windows-2022 + - test-macos-12 + - test-rockylinux-8 + - test-rockylinux-8-arm64 + - test-rockylinux-9 + - test-rockylinux-9-arm64 + - test-amazonlinux-2 + - test-amazonlinux-2-arm64 + - test-amazonlinux-2023 + - test-amazonlinux-2023-arm64 + - test-debian-11 + - test-debian-11-arm64 + - test-debian-12 + - test-debian-12-arm64 + - test-fedora-40 + - test-photonos-4 + - test-photonos-4-arm64 + - test-photonos-4-fips + - test-photonos-4-arm64-fips + - test-photonos-5 + - test-photonos-5-arm64 + - test-photonos-5-fips + - test-photonos-5-arm64-fips + - test-ubuntu-2004 + - test-ubuntu-2004-arm64 + - test-ubuntu-2204 + - test-ubuntu-2204-arm64 + - test-ubuntu-2404 + - test-ubuntu-2404-arm64 - rockylinux-8-pkg-tests - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests @@ -2174,11 +2167,11 @@ jobs: - ubuntu-2204-arm64-pkg-tests - ubuntu-2404-pkg-tests - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - windows-2019-nsis-pkg-tests - - windows-2019-msi-pkg-tests - - windows-2022-nsis-pkg-tests - - windows-2022-msi-pkg-tests + - test-pkg-macos-12 + - test-pkg-windows-2019-nsis + - test-pkg-windows-2019-msi + - test-pkg-windows-2022-nsis + - test-pkg-windows-2022-msi steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index b61e28afa324..bec1935e6f0f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1283,7 +1283,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - macos-12-pkg-tests: + test-pkg-macos-12: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1305,7 +1305,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1326,7 +1326,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-msi-pkg-tests: + test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1347,7 +1347,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-nsis-pkg-tests: + test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1368,7 +1368,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-msi-pkg-tests: + test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1389,7 +1389,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019: + test-windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1410,7 +1410,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - windows-2022: + test-windows-2022: name: Windows 2022 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1431,7 +1431,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - macos-12: + test-macos-12: name: macOS 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1453,7 +1453,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - rockylinux-8: + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1475,7 +1475,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - rockylinux-8-arm64: + test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1497,7 +1497,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - rockylinux-9: + test-rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1519,7 +1519,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - rockylinux-9-arm64: + test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1541,7 +1541,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - amazonlinux-2: + test-amazonlinux-2: name: Amazon Linux 2 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1563,7 +1563,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - amazonlinux-2-arm64: + test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1585,7 +1585,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - amazonlinux-2023: + test-amazonlinux-2023: name: Amazon Linux 2023 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1607,7 +1607,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - amazonlinux-2023-arm64: + test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1629,7 +1629,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - debian-11: + test-debian-11: name: Debian 11 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1651,7 +1651,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - debian-11-arm64: + test-debian-11-arm64: name: Debian 11 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1673,7 +1673,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - debian-12: + test-debian-12: name: Debian 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1695,7 +1695,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - debian-12-arm64: + test-debian-12-arm64: name: Debian 12 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1717,7 +1717,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - fedora-40: + test-fedora-40: name: Fedora 40 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1739,7 +1739,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - photonos-4: + test-photonos-4: name: Photon OS 4 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1761,7 +1761,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - photonos-4-arm64: + test-photonos-4-arm64: name: Photon OS 4 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1783,7 +1783,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - photonos-4-fips: + test-photonos-4-fips: name: Photon OS 4 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1806,7 +1806,7 @@ jobs: default-timeout: 360 fips: true - photonos-4-arm64-fips: + test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1829,7 +1829,7 @@ jobs: default-timeout: 360 fips: true - photonos-5: + test-photonos-5: name: Photon OS 5 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1851,7 +1851,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - photonos-5-arm64: + test-photonos-5-arm64: name: Photon OS 5 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1873,7 +1873,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - photonos-5-fips: + test-photonos-5-fips: name: Photon OS 5 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1896,7 +1896,7 @@ jobs: default-timeout: 360 fips: true - photonos-5-arm64-fips: + test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1919,7 +1919,7 @@ jobs: default-timeout: 360 fips: true - ubuntu-2004: + test-ubuntu-2004: name: Ubuntu 20.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1941,7 +1941,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - ubuntu-2004-arm64: + test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1963,7 +1963,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - ubuntu-2204: + test-ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1985,7 +1985,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - ubuntu-2204-arm64: + test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -2007,7 +2007,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - ubuntu-2404: + test-ubuntu-2404: name: Ubuntu 24.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -2029,7 +2029,7 @@ jobs: workflow-slug: nightly default-timeout: 360 - ubuntu-2404-arm64: + test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -2799,36 +2799,36 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2019 - - windows-2022 - - macos-12 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - - ubuntu-2204 - - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 + - test-windows-2019 + - test-windows-2022 + - test-macos-12 + - test-rockylinux-8 + - test-rockylinux-8-arm64 + - test-rockylinux-9 + - test-rockylinux-9-arm64 + - test-amazonlinux-2 + - test-amazonlinux-2-arm64 + - test-amazonlinux-2023 + - test-amazonlinux-2023-arm64 + - test-debian-11 + - test-debian-11-arm64 + - test-debian-12 + - test-debian-12-arm64 + - test-fedora-40 + - test-photonos-4 + - test-photonos-4-arm64 + - test-photonos-4-fips + - test-photonos-4-arm64-fips + - test-photonos-5 + - test-photonos-5-arm64 + - test-photonos-5-fips + - test-photonos-5-arm64-fips + - test-ubuntu-2004 + - test-ubuntu-2004-arm64 + - test-ubuntu-2204 + - test-ubuntu-2204-arm64 + - test-ubuntu-2404 + - test-ubuntu-2404-arm64 steps: @@ -2919,11 +2919,11 @@ jobs: - ubuntu-2204-arm64-pkg-tests - ubuntu-2404-pkg-tests - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - windows-2019-nsis-pkg-tests - - windows-2019-msi-pkg-tests - - windows-2022-nsis-pkg-tests - - windows-2022-msi-pkg-tests + - test-pkg-macos-12 + - test-pkg-windows-2019-nsis + - test-pkg-windows-2019-msi + - test-pkg-windows-2022-nsis + - test-pkg-windows-2022-msi steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 6544de98f6fa..cce46f7114a2 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1199,7 +1199,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - macos-12-pkg-tests: + test-pkg-macos-12: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1221,7 +1221,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1242,7 +1242,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-msi-pkg-tests: + test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1263,7 +1263,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-nsis-pkg-tests: + test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1284,7 +1284,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-msi-pkg-tests: + test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1305,7 +1305,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019: + test-windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1326,7 +1326,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - windows-2022: + test-windows-2022: name: Windows 2022 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1347,7 +1347,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - macos-12: + test-macos-12: name: macOS 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1369,7 +1369,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - rockylinux-8: + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1391,7 +1391,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - rockylinux-8-arm64: + test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1413,7 +1413,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - rockylinux-9: + test-rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1435,7 +1435,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - rockylinux-9-arm64: + test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1457,7 +1457,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - amazonlinux-2: + test-amazonlinux-2: name: Amazon Linux 2 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1479,7 +1479,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - amazonlinux-2-arm64: + test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1501,7 +1501,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - amazonlinux-2023: + test-amazonlinux-2023: name: Amazon Linux 2023 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1523,7 +1523,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - amazonlinux-2023-arm64: + test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1545,7 +1545,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - debian-11: + test-debian-11: name: Debian 11 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1567,7 +1567,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - debian-11-arm64: + test-debian-11-arm64: name: Debian 11 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1589,7 +1589,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - debian-12: + test-debian-12: name: Debian 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1611,7 +1611,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - debian-12-arm64: + test-debian-12-arm64: name: Debian 12 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1633,7 +1633,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - fedora-40: + test-fedora-40: name: Fedora 40 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1655,7 +1655,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - photonos-4: + test-photonos-4: name: Photon OS 4 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1677,7 +1677,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - photonos-4-arm64: + test-photonos-4-arm64: name: Photon OS 4 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1699,7 +1699,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - photonos-4-fips: + test-photonos-4-fips: name: Photon OS 4 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1722,7 +1722,7 @@ jobs: default-timeout: 360 fips: true - photonos-4-arm64-fips: + test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1745,7 +1745,7 @@ jobs: default-timeout: 360 fips: true - photonos-5: + test-photonos-5: name: Photon OS 5 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1767,7 +1767,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - photonos-5-arm64: + test-photonos-5-arm64: name: Photon OS 5 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1789,7 +1789,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - photonos-5-fips: + test-photonos-5-fips: name: Photon OS 5 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1812,7 +1812,7 @@ jobs: default-timeout: 360 fips: true - photonos-5-arm64-fips: + test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1835,7 +1835,7 @@ jobs: default-timeout: 360 fips: true - ubuntu-2004: + test-ubuntu-2004: name: Ubuntu 20.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1857,7 +1857,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - ubuntu-2004-arm64: + test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1879,7 +1879,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - ubuntu-2204: + test-ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1901,7 +1901,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - ubuntu-2204-arm64: + test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1923,7 +1923,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - ubuntu-2404: + test-ubuntu-2404: name: Ubuntu 24.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1945,7 +1945,7 @@ jobs: workflow-slug: scheduled default-timeout: 360 - ubuntu-2404-arm64: + test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1990,36 +1990,36 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2019 - - windows-2022 - - macos-12 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - - ubuntu-2204 - - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 + - test-windows-2019 + - test-windows-2022 + - test-macos-12 + - test-rockylinux-8 + - test-rockylinux-8-arm64 + - test-rockylinux-9 + - test-rockylinux-9-arm64 + - test-amazonlinux-2 + - test-amazonlinux-2-arm64 + - test-amazonlinux-2023 + - test-amazonlinux-2023-arm64 + - test-debian-11 + - test-debian-11-arm64 + - test-debian-12 + - test-debian-12-arm64 + - test-fedora-40 + - test-photonos-4 + - test-photonos-4-arm64 + - test-photonos-4-fips + - test-photonos-4-arm64-fips + - test-photonos-5 + - test-photonos-5-arm64 + - test-photonos-5-fips + - test-photonos-5-arm64-fips + - test-ubuntu-2004 + - test-ubuntu-2004-arm64 + - test-ubuntu-2204 + - test-ubuntu-2204-arm64 + - test-ubuntu-2404 + - test-ubuntu-2404-arm64 - rockylinux-8-pkg-tests - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests @@ -2046,11 +2046,11 @@ jobs: - ubuntu-2204-arm64-pkg-tests - ubuntu-2404-pkg-tests - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - windows-2019-nsis-pkg-tests - - windows-2019-msi-pkg-tests - - windows-2022-nsis-pkg-tests - - windows-2022-msi-pkg-tests + - test-pkg-macos-12 + - test-pkg-windows-2019-nsis + - test-pkg-windows-2019-msi + - test-pkg-windows-2022-nsis + - test-pkg-windows-2022-msi steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 1b80b4fbd0b5..bd155a0ef2d3 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1265,7 +1265,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - macos-12-pkg-tests: + test-pkg-macos-12: name: macOS 12 Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1287,7 +1287,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-nsis-pkg-tests: + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1308,7 +1308,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019-msi-pkg-tests: + test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1329,7 +1329,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-nsis-pkg-tests: + test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1350,7 +1350,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2022-msi-pkg-tests: + test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} needs: @@ -1371,7 +1371,7 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - windows-2019: + test-windows-2019: name: Windows 2019 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1392,7 +1392,7 @@ jobs: workflow-slug: staging default-timeout: 180 - windows-2022: + test-windows-2022: name: Windows 2022 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1413,7 +1413,7 @@ jobs: workflow-slug: staging default-timeout: 180 - macos-12: + test-macos-12: name: macOS 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1435,7 +1435,7 @@ jobs: workflow-slug: staging default-timeout: 180 - rockylinux-8: + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1457,7 +1457,7 @@ jobs: workflow-slug: staging default-timeout: 180 - rockylinux-8-arm64: + test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1479,7 +1479,7 @@ jobs: workflow-slug: staging default-timeout: 180 - rockylinux-9: + test-rockylinux-9: name: Rocky Linux 9 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1501,7 +1501,7 @@ jobs: workflow-slug: staging default-timeout: 180 - rockylinux-9-arm64: + test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1523,7 +1523,7 @@ jobs: workflow-slug: staging default-timeout: 180 - amazonlinux-2: + test-amazonlinux-2: name: Amazon Linux 2 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1545,7 +1545,7 @@ jobs: workflow-slug: staging default-timeout: 180 - amazonlinux-2-arm64: + test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1567,7 +1567,7 @@ jobs: workflow-slug: staging default-timeout: 180 - amazonlinux-2023: + test-amazonlinux-2023: name: Amazon Linux 2023 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1589,7 +1589,7 @@ jobs: workflow-slug: staging default-timeout: 180 - amazonlinux-2023-arm64: + test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1611,7 +1611,7 @@ jobs: workflow-slug: staging default-timeout: 180 - debian-11: + test-debian-11: name: Debian 11 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1633,7 +1633,7 @@ jobs: workflow-slug: staging default-timeout: 180 - debian-11-arm64: + test-debian-11-arm64: name: Debian 11 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1655,7 +1655,7 @@ jobs: workflow-slug: staging default-timeout: 180 - debian-12: + test-debian-12: name: Debian 12 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1677,7 +1677,7 @@ jobs: workflow-slug: staging default-timeout: 180 - debian-12-arm64: + test-debian-12-arm64: name: Debian 12 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1699,7 +1699,7 @@ jobs: workflow-slug: staging default-timeout: 180 - fedora-40: + test-fedora-40: name: Fedora 40 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1721,7 +1721,7 @@ jobs: workflow-slug: staging default-timeout: 180 - photonos-4: + test-photonos-4: name: Photon OS 4 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1743,7 +1743,7 @@ jobs: workflow-slug: staging default-timeout: 180 - photonos-4-arm64: + test-photonos-4-arm64: name: Photon OS 4 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1765,7 +1765,7 @@ jobs: workflow-slug: staging default-timeout: 180 - photonos-4-fips: + test-photonos-4-fips: name: Photon OS 4 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1788,7 +1788,7 @@ jobs: default-timeout: 180 fips: true - photonos-4-arm64-fips: + test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1811,7 +1811,7 @@ jobs: default-timeout: 180 fips: true - photonos-5: + test-photonos-5: name: Photon OS 5 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1833,7 +1833,7 @@ jobs: workflow-slug: staging default-timeout: 180 - photonos-5-arm64: + test-photonos-5-arm64: name: Photon OS 5 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1855,7 +1855,7 @@ jobs: workflow-slug: staging default-timeout: 180 - photonos-5-fips: + test-photonos-5-fips: name: Photon OS 5 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1878,7 +1878,7 @@ jobs: default-timeout: 180 fips: true - photonos-5-arm64-fips: + test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1901,7 +1901,7 @@ jobs: default-timeout: 180 fips: true - ubuntu-2004: + test-ubuntu-2004: name: Ubuntu 20.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1923,7 +1923,7 @@ jobs: workflow-slug: staging default-timeout: 180 - ubuntu-2004-arm64: + test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1945,7 +1945,7 @@ jobs: workflow-slug: staging default-timeout: 180 - ubuntu-2204: + test-ubuntu-2204: name: Ubuntu 22.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1967,7 +1967,7 @@ jobs: workflow-slug: staging default-timeout: 180 - ubuntu-2204-arm64: + test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -1989,7 +1989,7 @@ jobs: workflow-slug: staging default-timeout: 180 - ubuntu-2404: + test-ubuntu-2404: name: Ubuntu 24.04 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -2011,7 +2011,7 @@ jobs: workflow-slug: staging default-timeout: 180 - ubuntu-2404-arm64: + test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} needs: @@ -2911,36 +2911,36 @@ jobs: - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows - - windows-2019 - - windows-2022 - - macos-12 - - rockylinux-8 - - rockylinux-8-arm64 - - rockylinux-9 - - rockylinux-9-arm64 - - amazonlinux-2 - - amazonlinux-2-arm64 - - amazonlinux-2023 - - amazonlinux-2023-arm64 - - debian-11 - - debian-11-arm64 - - debian-12 - - debian-12-arm64 - - fedora-40 - - photonos-4 - - photonos-4-arm64 - - photonos-4-fips - - photonos-4-arm64-fips - - photonos-5 - - photonos-5-arm64 - - photonos-5-fips - - photonos-5-arm64-fips - - ubuntu-2004 - - ubuntu-2004-arm64 - - ubuntu-2204 - - ubuntu-2204-arm64 - - ubuntu-2404 - - ubuntu-2404-arm64 + - test-windows-2019 + - test-windows-2022 + - test-macos-12 + - test-rockylinux-8 + - test-rockylinux-8-arm64 + - test-rockylinux-9 + - test-rockylinux-9-arm64 + - test-amazonlinux-2 + - test-amazonlinux-2-arm64 + - test-amazonlinux-2023 + - test-amazonlinux-2023-arm64 + - test-debian-11 + - test-debian-11-arm64 + - test-debian-12 + - test-debian-12-arm64 + - test-fedora-40 + - test-photonos-4 + - test-photonos-4-arm64 + - test-photonos-4-fips + - test-photonos-4-arm64-fips + - test-photonos-5 + - test-photonos-5-arm64 + - test-photonos-5-fips + - test-photonos-5-arm64-fips + - test-ubuntu-2004 + - test-ubuntu-2004-arm64 + - test-ubuntu-2204 + - test-ubuntu-2204-arm64 + - test-ubuntu-2404 + - test-ubuntu-2404-arm64 - rockylinux-8-pkg-tests - rockylinux-8-arm64-pkg-tests - rockylinux-9-pkg-tests @@ -2967,11 +2967,11 @@ jobs: - ubuntu-2204-arm64-pkg-tests - ubuntu-2404-pkg-tests - ubuntu-2404-arm64-pkg-tests - - macos-12-pkg-tests - - windows-2019-nsis-pkg-tests - - windows-2019-msi-pkg-tests - - windows-2022-nsis-pkg-tests - - windows-2022-msi-pkg-tests + - test-pkg-macos-12 + - test-pkg-windows-2019-nsis + - test-pkg-windows-2019-msi + - test-pkg-windows-2022-nsis + - test-pkg-windows-2022-msi - pkg-download-tests environment: staging runs-on: diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 984357e71ad9..1052c6962798 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -1,5 +1,5 @@ <%- for os in test_salt_pkg_listing["linux"] %> - <%- set job_name = "{}-pkg-tests{}".format(os.slug.replace(".", ""), os.fips and '-fips' or '') %> + <%- set job_name = os.job_name %> <{ job_name }>: <%- do test_salt_pkg_needs.append(job_name) %> @@ -36,7 +36,7 @@ <%- for os in test_salt_pkg_listing["macos"] %> - <%- set job_name = "{}-pkg-tests".format(os.slug.replace(".", "")) %> + <%- set job_name = os.job_name %> <{ job_name }>: <%- do test_salt_pkg_needs.append(job_name) %> @@ -69,7 +69,7 @@ <%- for os in test_salt_pkg_listing["windows"] %> - <%- set job_name = "{}-{}-pkg-tests".format(os.slug.replace(".", ""), os.pkg_type.lower()) %> + <%- set job_name = os.job_name %> <{ job_name }>: <%- do test_salt_pkg_needs.append(job_name) %> diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 753062bb97ff..961fdb386c18 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -6,8 +6,8 @@ <%- for os in test_salt_listing["windows"] %> - <{ os.slug.replace(".", "") }>: - <%- do test_salt_needs.append(os.slug.replace(".", "")) %> + <{ os.job_name }>: + <%- do test_salt_needs.append(os.job_name) %> name: <{ os.display_name }> Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} @@ -37,8 +37,8 @@ <%- for os in test_salt_listing["macos"] %> - <{ os.slug.replace(".", "") }>: - <%- do test_salt_needs.append(os.slug.replace(".", "")) %> + <{ os.job_name }>: + <%- do test_salt_needs.append(os.job_name) %> name: <{ os.display_name }> Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} @@ -67,7 +67,7 @@ <%- endfor %> <%- for os in test_salt_listing["linux"] %> - <%- set job_name = "{}{}".format(os.slug.replace(".", ""), os.fips and '-fips' or '') %> + <%- set job_name = os.job_name %> <{ job_name }>: <%- do test_salt_needs.append(job_name) %> diff --git a/tools/ci.py b/tools/ci.py index b8c4365534c5..e02ced417fe9 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1564,9 +1564,15 @@ def workflow_config( "build-pkgs": True, "build-deps-ci": True, } - from tools.precommit.workflows import TEST_SALT_PKG_LISTING + from tools.precommit.workflows import TEST_SALT_LISTING, TEST_SALT_PKG_LISTING - jobs.update({_.slug: True for _ in TEST_SALT_PKG_LISTING["linux"]}) + jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["linux"]}) + jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["windows"]}) + jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["macos"]}) + + jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING["linux"]}) + jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING["windows"]}) + jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING["macos"]}) config["jobs"] = jobs ctx.info("Jobs selected are") for x, y in jobs.items(): diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 2cce25f005a3..d5fe152d5820 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -13,7 +13,15 @@ from ptscripts import Context, command_group import tools.utils -from tools.utils import Linux, MacOS, PlatformDefinitions, Windows +from tools.utils import ( + Linux, + LinuxPkg, + MacOS, + MacOSPkg, + PlatformDefinitions, + Windows, + WindowsPkg, +) log = logging.getLogger(__name__) @@ -28,7 +36,7 @@ parent="pre-commit", ) - +# Testing platforms TEST_SALT_LISTING = PlatformDefinitions( { "linux": [ @@ -220,105 +228,105 @@ TEST_SALT_PKG_LISTING = PlatformDefinitions( { "linux": [ - Linux( + LinuxPkg( slug="rockylinux-8", display_name="Rocky Linux 8", arch="x86_64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", ), - Linux( + LinuxPkg( slug="rockylinux-8-arm64", display_name="Rocky Linux 8 Arm64", arch="arm64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", ), - Linux( + LinuxPkg( slug="rockylinux-9", display_name="Rocky Linux 9", arch="x86_64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", ), - Linux( + LinuxPkg( slug="rockylinux-9-arm64", display_name="Rocky Linux 9 Arm64", arch="arm64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", ), - Linux( + LinuxPkg( slug="amazonlinux-2", display_name="Amazon Linux 2", arch="x86_64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", ), - Linux( + LinuxPkg( slug="amazonlinux-2-arm64", display_name="Amazon Linux 2 Arm64", arch="arm64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2", ), - Linux( + LinuxPkg( slug="amazonlinux-2023", display_name="Amazon Linux 2023", arch="x86_64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", ), - Linux( + LinuxPkg( slug="amazonlinux-2023-arm64", display_name="Amazon Linux 2023 Arm64", arch="arm64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023", ), - Linux( + LinuxPkg( slug="debian-11", display_name="Debian 11", arch="x86_64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", ), - Linux( + LinuxPkg( slug="debian-11-arm64", display_name="Debian 11 Arm64", arch="arm64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:debian-11", ), - Linux( + LinuxPkg( slug="debian-12", display_name="Debian 12", arch="x86_64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", ), - Linux( + LinuxPkg( slug="debian-12-arm64", display_name="Debian 12 Arm64", arch="arm64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:debian-12", ), - Linux( + LinuxPkg( slug="photonos-4", display_name="Photon OS 4", arch="x86_64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), - Linux( + LinuxPkg( slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), - Linux( + LinuxPkg( slug="photonos-4", display_name="Photon OS 4", arch="x86_64", @@ -326,7 +334,7 @@ fips=True, container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), - Linux( + LinuxPkg( slug="photonos-4-arm64", display_name="Photon OS 4 Arm64", arch="arm64", @@ -334,21 +342,21 @@ fips=True, container="ghcr.io/saltstack/salt-ci-containers/testing:photon-4", ), - Linux( + LinuxPkg( slug="photonos-5", display_name="Photon OS 5", arch="x86_64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), - Linux( + LinuxPkg( slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64", pkg_type="rpm", container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), - Linux( + LinuxPkg( slug="photonos-5", display_name="Photon OS 5", arch="x86_64", @@ -356,7 +364,7 @@ fips=True, container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), - Linux( + LinuxPkg( slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64", @@ -364,42 +372,42 @@ fips=True, container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), - Linux( + LinuxPkg( slug="ubuntu-20.04", display_name="Ubuntu 20.04", arch="x86_64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", ), - Linux( + LinuxPkg( slug="ubuntu-20.04-arm64", display_name="Ubuntu 20.04 Arm64", arch="arm64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04", ), - Linux( + LinuxPkg( slug="ubuntu-22.04", display_name="Ubuntu 22.04", arch="x86_64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", ), - Linux( + LinuxPkg( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", ), - Linux( + LinuxPkg( slug="ubuntu-24.04", display_name="Ubuntu 24.04", arch="x86_64", pkg_type="deb", container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04", ), - Linux( + LinuxPkg( slug="ubuntu-24.04-arm64", display_name="Ubuntu 24.04 Arm64", arch="arm64", @@ -408,9 +416,9 @@ ), ], "macos": [ - MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), - # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), - # MacOS( + MacOSPkg(slug="macos-12", display_name="macOS 12", arch="x86_64"), + # MacOSPkg(slug="macos-13", display_name="macOS 13", arch="x86_64"), + # MacOSPkg( # slug="macos-13-arm64", # display_name="macOS 13 Arm64", # arch="arm64", @@ -418,25 +426,25 @@ # ), ], "windows": [ - Windows( + WindowsPkg( slug="windows-2019", display_name="Windows 2019", arch="amd64", pkg_type="NSIS", ), - Windows( + WindowsPkg( slug="windows-2019", display_name="Windows 2019", arch="amd64", pkg_type="MSI", ), - Windows( + WindowsPkg( slug="windows-2022", display_name="Windows 2022", arch="amd64", pkg_type="NSIS", ), - Windows( + WindowsPkg( slug="windows-2022", display_name="Windows 2022", arch="amd64", diff --git a/tools/utils/__init__.py b/tools/utils/__init__.py index 3b3d22323e65..e44147d0a593 100644 --- a/tools/utils/__init__.py +++ b/tools/utils/__init__.py @@ -69,6 +69,20 @@ class Linux(OS): fips: bool = attr.ib(default=False) container: str = attr.ib(default=None) + @property + def job_name(self): + return f"test-{ self.slug.replace('.', '') }{'-fips' if self.fips else ''}" + + +@attr.s(frozen=True, slots=True) +class LinuxPkg(Linux): + + @property + def job_name(self): + return ( + f"{ self.slug.replace('.', '') }-pkg-tests{ '-fips' if self.fips else ''}" + ) + @attr.s(frozen=True, slots=True) class MacOS(OS): @@ -79,6 +93,18 @@ class MacOS(OS): def _default_runner(self): return self.slug + @property + def job_name(self): + return f"test-{ self.slug.replace('.', '') }" + + +@attr.s(frozen=True, slots=True) +class MacOSPkg(MacOS): + + @property + def job_name(self): + return f"test-pkg-{ self.slug.replace('.', '') }" + @attr.s(frozen=True, slots=True) class Windows(OS): @@ -87,6 +113,18 @@ class Windows(OS): def _get_default_arch(self): return "amd64" + @property + def job_name(self): + return f"test-{ self.slug.replace('.', '') }" + + +@attr.s(frozen=True, slots=True) +class WindowsPkg(Windows): + + @property + def job_name(self): + return f"test-pkg-{ self.slug.replace('.', '') }-{ self.pkg_type.lower() }" + class PlatformDefinitions(TypedDict): linux: list[Linux] From 96de7c949d8234de799e40668e0c6f1956a4f4eb Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 22:13:05 -0700 Subject: [PATCH 089/225] Fix windows test action tests --- .github/workflows/test-action-windows.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test-action-windows.yml b/.github/workflows/test-action-windows.yml index 71ddd1b3f090..ca2cbdde8f5c 100644 --- a/.github/workflows/test-action-windows.yml +++ b/.github/workflows/test-action-windows.yml @@ -1,5 +1,5 @@ --- -name: Test Artifact(macOS) +name: Test Artifact(Windows) on: workflow_call: @@ -215,7 +215,7 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: > nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code + -k "win" --core-tests --slow-tests --suppress-no-test-exit-code "--from-filenames=testrun-changed-files.txt" - name: Run Fast Tests @@ -233,7 +233,7 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: > nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "mac or darwin" --suppress-no-test-exit-code + -k "win" --suppress-no-test-exit-code - name: Run Slow Tests id: run-slow-tests @@ -250,7 +250,7 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: > nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + -k "win" --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests id: run-core-tests @@ -267,7 +267,7 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: > nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + -k "win" --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests id: run-flaky-tests @@ -284,7 +284,7 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: > nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + -k "win" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests id: run-full-tests @@ -301,7 +301,7 @@ jobs: COVERAGE_CONTEXT: ${{ inputs.distro-slug }} run: > nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - --slow-tests --core-tests -k "mac or darwin" + --slow-tests --core-tests -k "win" - name: Combine Coverage Reports if: always() && inputs.skip-code-coverage == false From b01fc352a91a607f2b71e40d03a9d246be0ee558 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 22:18:49 -0700 Subject: [PATCH 090/225] meh --- .github/workflows/test-packages-action-linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 59a2f63599da..59b6e3785d07 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -165,7 +165,7 @@ jobs: - name: Install Nox run: | - python3 -m pip install --break-system-packages 'nox==${{ inputs.nox-version }}' + python3 -m pip install 'nox==${{ inputs.nox-version }}' env: PIP_INDEX_URL: https://pypi.org/simple From 2007e3cb13192df5b8c318d482e91895c76579c6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 22:49:42 -0700 Subject: [PATCH 091/225] pkg matrix fix for arm --- tools/ci.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index e02ced417fe9..608654476dd6 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -19,7 +19,7 @@ import tools.utils import tools.utils.gh -from tools.precommit.workflows import TEST_SALT_LISTING +from tools.precommit.workflows import TEST_SALT_LISTING, TEST_SALT_PKG_LISTING if sys.version_info < (3, 11): from typing_extensions import NotRequired, TypedDict @@ -880,7 +880,7 @@ def pkg_matrix( arch == "arm64" and name not in ["windows", "macos"] and "LINUX_ARM_RUNNER" not in os.environ - and os.environ["LINUX_ARM_RUNNER"] != "0" + or os.environ["LINUX_ARM_RUNNER"] != "0" ): ctx.warn("This fork does not have a linux arm64 runner configured.") _matrix.clear() @@ -1564,7 +1564,12 @@ def workflow_config( "build-pkgs": True, "build-deps-ci": True, } - from tools.precommit.workflows import TEST_SALT_LISTING, TEST_SALT_PKG_LISTING + if skip_tests: + jobs["test"] = False + if skip_pkg_tests: + jobs["test-pkg"] = False + if skip_pkg_download_tests: + jobs["test-pkg-download"] = False jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["linux"]}) jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["windows"]}) From c41f9d0a478f3c7463122ed78537afff1303ea04 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 22:55:23 -0700 Subject: [PATCH 092/225] Try overriding entrypoint --- .github/workflows/test-packages-action-linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 59b6e3785d07..0d0bdcea8a28 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -112,7 +112,7 @@ jobs: - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: image: ${{ inputs.container }} - options: --privileged + options: --privileged --entrypoing="/usr/bin/python3 /entrypoint.py" #volumes: # - /run/systemd/system:/run/systemd/system # - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket From c92547904d8ca17ff658d9bc0e4f69440052fe0e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 9 Nov 2024 22:58:38 -0700 Subject: [PATCH 093/225] Fix matrix again --- tools/ci.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 608654476dd6..969ba16e2961 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -879,8 +879,7 @@ def pkg_matrix( if ( arch == "arm64" and name not in ["windows", "macos"] - and "LINUX_ARM_RUNNER" not in os.environ - or os.environ["LINUX_ARM_RUNNER"] != "0" + and os.environ.get("LINUX_ARM_RUNNER", "0") != "0" ): ctx.warn("This fork does not have a linux arm64 runner configured.") _matrix.clear() From 4b8640026e474eccce6c0ede6fd56e741c9c3694 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 00:27:08 -0700 Subject: [PATCH 094/225] Fix parameter name --- .github/workflows/test-packages-action-linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 0d0bdcea8a28..9a1758b035b0 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -112,7 +112,7 @@ jobs: - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: image: ${{ inputs.container }} - options: --privileged --entrypoing="/usr/bin/python3 /entrypoint.py" + options: --privileged --entrypoint="/usr/bin/python3 /entrypoint.py" #volumes: # - /run/systemd/system:/run/systemd/system # - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket From 8a9c63fe41d2b1b90140666bb195e7a8cd36d798 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 01:56:57 -0700 Subject: [PATCH 095/225] disable jobs --- .github/workflows/ci.yml | 122 +++++++++--------- .github/workflows/nightly.yml | 122 +++++++++--------- .github/workflows/scheduled.yml | 122 +++++++++--------- .github/workflows/staging.yml | 122 +++++++++--------- .../templates/test-salt-pkg.yml.jinja | 12 +- .../workflows/templates/test-salt.yml.jinja | 12 +- .github/workflows/test-action-linux.yml | 2 +- tools/ci.py | 38 +++++- 8 files changed, 288 insertions(+), 264 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2132a9770147..9aee6da30896 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -586,7 +586,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -608,7 +608,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -630,7 +630,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -652,7 +652,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -674,7 +674,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -696,7 +696,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -718,7 +718,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -740,7 +740,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -762,7 +762,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -784,7 +784,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -806,7 +806,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -828,7 +828,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -850,7 +850,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -872,7 +872,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -894,7 +894,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -917,7 +917,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -940,7 +940,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -962,7 +962,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -984,7 +984,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1007,7 +1007,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1030,7 +1030,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1052,7 +1052,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1074,7 +1074,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1096,7 +1096,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1118,7 +1118,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1140,7 +1140,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1162,7 +1162,7 @@ jobs: test-pkg-macos-12: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1184,7 +1184,7 @@ jobs: test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1205,7 +1205,7 @@ jobs: test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1226,7 +1226,7 @@ jobs: test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1247,7 +1247,7 @@ jobs: test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1268,7 +1268,7 @@ jobs: test-windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1289,7 +1289,7 @@ jobs: test-windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1310,7 +1310,7 @@ jobs: test-macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} needs: - prepare-workflow - build-ci-deps-macos @@ -1332,7 +1332,7 @@ jobs: test-rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1354,7 +1354,7 @@ jobs: test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1376,7 +1376,7 @@ jobs: test-rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1398,7 +1398,7 @@ jobs: test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1420,7 +1420,7 @@ jobs: test-amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1442,7 +1442,7 @@ jobs: test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1464,7 +1464,7 @@ jobs: test-amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1486,7 +1486,7 @@ jobs: test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1508,7 +1508,7 @@ jobs: test-debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1530,7 +1530,7 @@ jobs: test-debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1552,7 +1552,7 @@ jobs: test-debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1574,7 +1574,7 @@ jobs: test-debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1596,7 +1596,7 @@ jobs: test-fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1618,7 +1618,7 @@ jobs: test-photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1640,7 +1640,7 @@ jobs: test-photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1662,7 +1662,7 @@ jobs: test-photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1685,7 +1685,7 @@ jobs: test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1708,7 +1708,7 @@ jobs: test-photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1730,7 +1730,7 @@ jobs: test-photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1752,7 +1752,7 @@ jobs: test-photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1775,7 +1775,7 @@ jobs: test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1798,7 +1798,7 @@ jobs: test-ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1820,7 +1820,7 @@ jobs: test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1842,7 +1842,7 @@ jobs: test-ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1864,7 +1864,7 @@ jobs: test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1886,7 +1886,7 @@ jobs: test-ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} needs: - prepare-workflow - build-ci-deps-linux @@ -1908,7 +1908,7 @@ jobs: test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04-arm64') }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index bec1935e6f0f..78fa79c6135b 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -709,7 +709,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -731,7 +731,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -753,7 +753,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -775,7 +775,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -797,7 +797,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -819,7 +819,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -841,7 +841,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -863,7 +863,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -885,7 +885,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -907,7 +907,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -929,7 +929,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -951,7 +951,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -973,7 +973,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -995,7 +995,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1017,7 +1017,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1040,7 +1040,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1063,7 +1063,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1085,7 +1085,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1107,7 +1107,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1130,7 +1130,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1153,7 +1153,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1175,7 +1175,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1197,7 +1197,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1219,7 +1219,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1241,7 +1241,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1263,7 +1263,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1285,7 +1285,7 @@ jobs: test-pkg-macos-12: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1307,7 +1307,7 @@ jobs: test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1328,7 +1328,7 @@ jobs: test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1349,7 +1349,7 @@ jobs: test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1370,7 +1370,7 @@ jobs: test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1391,7 +1391,7 @@ jobs: test-windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1412,7 +1412,7 @@ jobs: test-windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1433,7 +1433,7 @@ jobs: test-macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1455,7 +1455,7 @@ jobs: test-rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1477,7 +1477,7 @@ jobs: test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1499,7 +1499,7 @@ jobs: test-rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1521,7 +1521,7 @@ jobs: test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1543,7 +1543,7 @@ jobs: test-amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1565,7 +1565,7 @@ jobs: test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1587,7 +1587,7 @@ jobs: test-amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1609,7 +1609,7 @@ jobs: test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1631,7 +1631,7 @@ jobs: test-debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1653,7 +1653,7 @@ jobs: test-debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1675,7 +1675,7 @@ jobs: test-debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1697,7 +1697,7 @@ jobs: test-debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1719,7 +1719,7 @@ jobs: test-fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1741,7 +1741,7 @@ jobs: test-photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1763,7 +1763,7 @@ jobs: test-photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1785,7 +1785,7 @@ jobs: test-photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1808,7 +1808,7 @@ jobs: test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1831,7 +1831,7 @@ jobs: test-photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1853,7 +1853,7 @@ jobs: test-photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1875,7 +1875,7 @@ jobs: test-photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1898,7 +1898,7 @@ jobs: test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1921,7 +1921,7 @@ jobs: test-ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1943,7 +1943,7 @@ jobs: test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1965,7 +1965,7 @@ jobs: test-ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1987,7 +1987,7 @@ jobs: test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2009,7 +2009,7 @@ jobs: test-ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2031,7 +2031,7 @@ jobs: test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index cce46f7114a2..b10d65c66001 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -625,7 +625,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -647,7 +647,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -669,7 +669,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -691,7 +691,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -713,7 +713,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -735,7 +735,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -757,7 +757,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -779,7 +779,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -801,7 +801,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -823,7 +823,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -845,7 +845,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -867,7 +867,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -889,7 +889,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -911,7 +911,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -933,7 +933,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -956,7 +956,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -979,7 +979,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1001,7 +1001,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1023,7 +1023,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1046,7 +1046,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1069,7 +1069,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1091,7 +1091,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1113,7 +1113,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1135,7 +1135,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1157,7 +1157,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1179,7 +1179,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1201,7 +1201,7 @@ jobs: test-pkg-macos-12: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1223,7 +1223,7 @@ jobs: test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1244,7 +1244,7 @@ jobs: test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1265,7 +1265,7 @@ jobs: test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1286,7 +1286,7 @@ jobs: test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1307,7 +1307,7 @@ jobs: test-windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1328,7 +1328,7 @@ jobs: test-windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1349,7 +1349,7 @@ jobs: test-macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1371,7 +1371,7 @@ jobs: test-rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1393,7 +1393,7 @@ jobs: test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1415,7 +1415,7 @@ jobs: test-rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1437,7 +1437,7 @@ jobs: test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1459,7 +1459,7 @@ jobs: test-amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1481,7 +1481,7 @@ jobs: test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1503,7 +1503,7 @@ jobs: test-amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1525,7 +1525,7 @@ jobs: test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1547,7 +1547,7 @@ jobs: test-debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1569,7 +1569,7 @@ jobs: test-debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1591,7 +1591,7 @@ jobs: test-debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1613,7 +1613,7 @@ jobs: test-debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1635,7 +1635,7 @@ jobs: test-fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1657,7 +1657,7 @@ jobs: test-photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1679,7 +1679,7 @@ jobs: test-photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1701,7 +1701,7 @@ jobs: test-photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1724,7 +1724,7 @@ jobs: test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1747,7 +1747,7 @@ jobs: test-photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1769,7 +1769,7 @@ jobs: test-photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1791,7 +1791,7 @@ jobs: test-photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1814,7 +1814,7 @@ jobs: test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1837,7 +1837,7 @@ jobs: test-ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1859,7 +1859,7 @@ jobs: test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1881,7 +1881,7 @@ jobs: test-ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1903,7 +1903,7 @@ jobs: test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1925,7 +1925,7 @@ jobs: test-ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1947,7 +1947,7 @@ jobs: test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index bd155a0ef2d3..0e68cf3f0dae 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -691,7 +691,7 @@ jobs: rockylinux-8-pkg-tests: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -713,7 +713,7 @@ jobs: rockylinux-8-arm64-pkg-tests: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -735,7 +735,7 @@ jobs: rockylinux-9-pkg-tests: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -757,7 +757,7 @@ jobs: rockylinux-9-arm64-pkg-tests: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -779,7 +779,7 @@ jobs: amazonlinux-2-pkg-tests: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -801,7 +801,7 @@ jobs: amazonlinux-2-arm64-pkg-tests: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -823,7 +823,7 @@ jobs: amazonlinux-2023-pkg-tests: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -845,7 +845,7 @@ jobs: amazonlinux-2023-arm64-pkg-tests: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -867,7 +867,7 @@ jobs: debian-11-pkg-tests: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -889,7 +889,7 @@ jobs: debian-11-arm64-pkg-tests: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -911,7 +911,7 @@ jobs: debian-12-pkg-tests: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -933,7 +933,7 @@ jobs: debian-12-arm64-pkg-tests: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -955,7 +955,7 @@ jobs: photonos-4-pkg-tests: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -977,7 +977,7 @@ jobs: photonos-4-arm64-pkg-tests: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -999,7 +999,7 @@ jobs: photonos-4-pkg-tests-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1022,7 +1022,7 @@ jobs: photonos-4-arm64-pkg-tests-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1045,7 +1045,7 @@ jobs: photonos-5-pkg-tests: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1067,7 +1067,7 @@ jobs: photonos-5-arm64-pkg-tests: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1089,7 +1089,7 @@ jobs: photonos-5-pkg-tests-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1112,7 +1112,7 @@ jobs: photonos-5-arm64-pkg-tests-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1135,7 +1135,7 @@ jobs: ubuntu-2004-pkg-tests: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1157,7 +1157,7 @@ jobs: ubuntu-2004-arm64-pkg-tests: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1179,7 +1179,7 @@ jobs: ubuntu-2204-pkg-tests: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1201,7 +1201,7 @@ jobs: ubuntu-2204-arm64-pkg-tests: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1223,7 +1223,7 @@ jobs: ubuntu-2404-pkg-tests: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1245,7 +1245,7 @@ jobs: ubuntu-2404-arm64-pkg-tests: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1267,7 +1267,7 @@ jobs: test-pkg-macos-12: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1289,7 +1289,7 @@ jobs: test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1310,7 +1310,7 @@ jobs: test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1331,7 +1331,7 @@ jobs: test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1352,7 +1352,7 @@ jobs: test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1373,7 +1373,7 @@ jobs: test-windows-2019: name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1394,7 +1394,7 @@ jobs: test-windows-2022: name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - build-ci-deps-windows @@ -1415,7 +1415,7 @@ jobs: test-macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1437,7 +1437,7 @@ jobs: test-rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1459,7 +1459,7 @@ jobs: test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1481,7 +1481,7 @@ jobs: test-rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1503,7 +1503,7 @@ jobs: test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1525,7 +1525,7 @@ jobs: test-amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1547,7 +1547,7 @@ jobs: test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1569,7 +1569,7 @@ jobs: test-amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1591,7 +1591,7 @@ jobs: test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1613,7 +1613,7 @@ jobs: test-debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1635,7 +1635,7 @@ jobs: test-debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1657,7 +1657,7 @@ jobs: test-debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1679,7 +1679,7 @@ jobs: test-debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1701,7 +1701,7 @@ jobs: test-fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1723,7 +1723,7 @@ jobs: test-photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1745,7 +1745,7 @@ jobs: test-photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1767,7 +1767,7 @@ jobs: test-photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1790,7 +1790,7 @@ jobs: test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1813,7 +1813,7 @@ jobs: test-photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1835,7 +1835,7 @@ jobs: test-photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1857,7 +1857,7 @@ jobs: test-photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1880,7 +1880,7 @@ jobs: test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1903,7 +1903,7 @@ jobs: test-ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1925,7 +1925,7 @@ jobs: test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1947,7 +1947,7 @@ jobs: test-ubuntu-2204: name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1969,7 +1969,7 @@ jobs: test-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1991,7 +1991,7 @@ jobs: test-ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -2013,7 +2013,7 @@ jobs: test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 1052c6962798..eb9b816e4792 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -5,9 +5,9 @@ <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> Package Test<%- if os.fips %> (fips)<%- endif %> <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow @@ -42,9 +42,9 @@ <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> Package Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow @@ -75,9 +75,9 @@ <%- do test_salt_pkg_needs.append(job_name) %> name: <{ os.display_name }> <{ os.pkg_type }> Package Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 961fdb386c18..fce30ea0645b 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -10,9 +10,9 @@ <%- do test_salt_needs.append(os.job_name) %> name: <{ os.display_name }> Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} <%- endif %> needs: - prepare-workflow @@ -41,9 +41,9 @@ <%- do test_salt_needs.append(os.job_name) %> name: <{ os.display_name }> Test <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow @@ -73,9 +73,9 @@ <%- do test_salt_needs.append(job_name) %> name: <{ os.display_name }> Test<%- if os.fips %> (fips)<%- endif %> <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} <%- endif %> needs: - prepare-workflow diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index b29c0191ff47..f964f73ab465 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -1,5 +1,5 @@ --- -name: Test Artifact(macOS) +name: Test Artifact (Linux) on: workflow_call: diff --git a/tools/ci.py b/tools/ci.py index 969ba16e2961..4bbd37ef8113 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1563,20 +1563,44 @@ def workflow_config( "build-pkgs": True, "build-deps-ci": True, } + + kinds = ["linux", "windows", "macos"] + + for kind in kinds: + jobs.update({_.job_name: True for _ in TEST_SALT_LISTING[kind]}) # type: ignore + if skip_tests: jobs["test"] = False + for kind in kinds: + jobs.update({_.job_name: False for _ in TEST_SALT_LISTING[kind]}) # type: ignore + + for kind in kinds: + jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore + if skip_pkg_tests: jobs["test-pkg"] = False + for kind in kinds: + jobs.update({_.job_name: False for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore + + # If there is no arm runner disable arm64 + if os.environ.get("LINUX_ARM_RUNNER", "0") != "0": + for kind in kinds: + jobs.update( + { + _.job_name: True if _.arch != "arm64" else False + for _ in TEST_SALT_LISTING[kind] # type: ignore + } + ) + jobs.update( + { + _.job_name: True if _.arch != "arm64" else False + for _ in TEST_SALT_PKG_LISTING[kind] # type: ignore + } + ) + if skip_pkg_download_tests: jobs["test-pkg-download"] = False - jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["linux"]}) - jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["windows"]}) - jobs.update({_.job_name: True for _ in TEST_SALT_LISTING["macos"]}) - - jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING["linux"]}) - jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING["windows"]}) - jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING["macos"]}) config["jobs"] = jobs ctx.info("Jobs selected are") for x, y in jobs.items(): From 4e7469aacebdf63ae5f0bc2ab1ade3850fd95eb7 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 02:29:53 -0700 Subject: [PATCH 096/225] Add config step to prepare workflow --- .github/workflows/ci.yml | 6 ++++++ .github/workflows/nightly.yml | 6 ++++++ .github/workflows/scheduled.yml | 6 ++++++ .github/workflows/staging.yml | 6 ++++++ .github/workflows/templates/layout.yml.jinja | 8 ++++++++ 5 files changed, 32 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9aee6da30896..cad064ad2a86 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -51,6 +51,7 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -219,6 +220,11 @@ jobs: run: | tools ci define-testrun ${{ github.event_name }} changed-files.json + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config ${{ github.event_name }} changed-files.json + - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} run: | diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 78fa79c6135b..96fd94d1b283 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -100,6 +100,7 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -268,6 +269,11 @@ jobs: run: | tools ci define-testrun ${{ github.event_name }} changed-files.json + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }} ${{ github.event_name }} changed-files.json + - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} run: | diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index b10d65c66001..544db448ecce 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -90,6 +90,7 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -258,6 +259,11 @@ jobs: run: | tools ci define-testrun ${{ github.event_name }} changed-files.json + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config ${{ github.event_name }} changed-files.json + - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} run: | diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 0e68cf3f0dae..8e4404e621d9 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -81,6 +81,7 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -258,6 +259,11 @@ jobs: run: | tools ci define-testrun ${{ github.event_name }} changed-files.json + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }}${{ inputs.skip-salt-pkg-download-test-suite && ' --skip-pkg-download-tests' || '' }} ${{ github.event_name }} changed-files.json + - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} run: | diff --git a/.github/workflows/templates/layout.yml.jinja b/.github/workflows/templates/layout.yml.jinja index ed3b700220bb..8de8dcf878f2 100644 --- a/.github/workflows/templates/layout.yml.jinja +++ b/.github/workflows/templates/layout.yml.jinja @@ -99,6 +99,7 @@ jobs: releases: ${{ steps.get-salt-releases.outputs.releases }} testing-releases: ${{ steps.get-testing-releases.outputs.testing-releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -283,6 +284,13 @@ jobs: run: | tools ci define-testrun ${{ github.event_name }} changed-files.json + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config<{ prepare_workflow_skip_test_suite }><{ + prepare_workflow_skip_pkg_test_suite }><{ prepare_workflow_skip_pkg_download_test_suite + }> ${{ github.event_name }} changed-files.json + - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} run: | From de5d0bf7a7aed1b5b6cb4d4e91835e3e89fd02e4 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 03:07:51 -0700 Subject: [PATCH 097/225] meh --- tools/ci.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index 4bbd37ef8113..04da0b5b909d 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1583,7 +1583,7 @@ def workflow_config( jobs.update({_.job_name: False for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore # If there is no arm runner disable arm64 - if os.environ.get("LINUX_ARM_RUNNER", "0") != "0": + if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": for kind in kinds: jobs.update( { From 84276249dbabc13a021586148d2430b29973c99d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 14:55:33 -0700 Subject: [PATCH 098/225] fix linux test runner name --- .github/workflows/test-action-linux.yml | 3 ++- .github/workflows/test-packages-action-linux.yml | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index f964f73ab465..03df21a6362c 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -114,7 +114,8 @@ jobs: test: name: Test - runs-on: linux-${{ inputs.arch }} + runs-on: + - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: image: ${{ inputs.container }} # Full test runs. Each chunk should never take more than 2 hours. diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 9a1758b035b0..59b6e3785d07 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -112,7 +112,7 @@ jobs: - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: image: ${{ inputs.container }} - options: --privileged --entrypoint="/usr/bin/python3 /entrypoint.py" + options: --privileged #volumes: # - /run/systemd/system:/run/systemd/system # - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket From aebf78f091437abe0c256e86e0585fd11b2ea9ac Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 15:42:12 -0700 Subject: [PATCH 099/225] Do not use setup-python action on containres --- .github/workflows/test-action-linux.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index 03df21a6362c..761bcf6bb00f 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -131,9 +131,9 @@ jobs: SALT_TRANSPORT: ${{ matrix.transport }} steps: - - uses: actions/setup-python@v5 - with: - python-version: '3.10' + # - uses: actions/setup-python@v5 + # with: + # python-version: '3.10' - name: Check python run: | From 4749d11f9b978b5b3081c870aeedd9d948e4dbd9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 16:49:32 -0700 Subject: [PATCH 100/225] Migrate tests to use packages.broadcom.com instead of repo.saltproject.io --- tests/support/pkg.py | 37 ++++++++++++++++++++-------------- tests/support/win_installer.py | 2 +- 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/tests/support/pkg.py b/tests/support/pkg.py index 066db28921e2..6b11aaf74632 100644 --- a/tests/support/pkg.py +++ b/tests/support/pkg.py @@ -667,11 +667,11 @@ def install_previous(self, downgrade=False): ret = self.proc.run( "rpm", "--import", - f"https://repo.saltproject.io/{root_url}{distro_name}/{self.distro_version}/{arch}/{major_ver}/{gpg_key}", + "https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public", ) self._check_retcode(ret) download_file( - f"https://repo.saltproject.io/{root_url}{distro_name}/{self.distro_version}/{arch}/{major_ver}.repo", + "https://github.com/saltstack/salt-install-guide/releases/latest/download/salt.repo", f"/etc/yum.repos.d/salt-{distro_name}.repo", ) if self.distro_name == "photon": @@ -724,16 +724,13 @@ def install_previous(self, downgrade=False): if relenv: gpg_key = "SALT-PROJECT-GPG-PUBKEY-2023.gpg" download_file( - f"https://repo.saltproject.io/{root_url}{distro_name}/{self.distro_version}/{arch}/{major_ver}/{gpg_key}", + "https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public", f"/etc/apt/keyrings/{gpg_dest}", ) - with salt.utils.files.fopen( - pathlib.Path("/etc", "apt", "sources.list.d", "salt.list"), "w" - ) as fp: - fp.write( - f"deb [signed-by=/etc/apt/keyrings/{gpg_dest} arch={arch}] " - f"https://repo.saltproject.io/{root_url}{distro_name}/{self.distro_version}/{arch}/{major_ver} {self.distro_codename} main" - ) + download_file( + "https://github.com/saltstack/salt-install-guide/releases/latest/download/salt.sources", + "/etc/apt/sources.list.d/salt.sources", + ) self._check_retcode(ret) cmd = [ @@ -750,7 +747,7 @@ def install_previous(self, downgrade=False): textwrap.dedent( """\ Package: salt* - Pin: origin "repo.saltproject.io" + Pin: origin "packages.broadcom.com" Pin-Priority: 1001 """ ), @@ -801,7 +798,10 @@ def install_previous(self, downgrade=False): ) elif self.file_ext == "exe": win_pkg = f"Salt-Minion-{self.prev_version}-Py3-AMD64-Setup.{self.file_ext}" - win_pkg_url = f"https://repo.saltproject.io/salt/py3/windows/{major_ver}/{win_pkg}" + win_pkg_url = ( + f"https://packages.broadcom.com/artifactory/saltproject-generic/" + f"windows/{self.prev_version}/{win_pkg}" + ) else: if self.file_ext == "msi": win_pkg = ( @@ -809,7 +809,10 @@ def install_previous(self, downgrade=False): ) elif self.file_ext == "exe": win_pkg = f"Salt-Minion-{self.prev_version}-Py3-AMD64-Setup.{self.file_ext}" - win_pkg_url = f"https://repo.saltproject.io/windows/{win_pkg}" + win_pkg_url = ( + f"https://packages.broadcom.com/artifactory/saltproject-generic/" + f"windows/{self.prev_version}/{win_pkg}" + ) pkg_path = pathlib.Path(r"C:\TEMP", win_pkg) pkg_path.parent.mkdir(exist_ok=True) download_file(win_pkg_url, pkg_path) @@ -846,14 +849,18 @@ def install_previous(self, downgrade=False): if self.classic: mac_pkg = f"salt-{self.prev_version}-py3-{arch}.pkg" - mac_pkg_url = f"https://repo.saltproject.io/osx/{mac_pkg}" + mac_pkg_url = ( + f"https://packages.broadcom.com/artifactory/saltproject-generic/" + f"macos/{self.prev_version}/{mac_pkg}" + ) else: if not relenv: mac_pkg = f"salt-{self.prev_version}-1-macos-{arch}.pkg" else: mac_pkg = f"salt-{self.prev_version}-py3-{arch}.pkg" mac_pkg_url = ( - f"https://repo.saltproject.io/salt/py3/macos/{major_ver}/{mac_pkg}" + f"https://packages.broadcom.com/artifactory/saltproject-generic/" + f"macos/{self.prev_version}/{mac_pkg}" ) mac_pkg_path = f"/tmp/{mac_pkg}" diff --git a/tests/support/win_installer.py b/tests/support/win_installer.py index b41586a6806a..a55e42d54699 100644 --- a/tests/support/win_installer.py +++ b/tests/support/win_installer.py @@ -14,7 +14,7 @@ import requests PREFIX = "Salt-Minion-" -REPO = "https://repo.saltproject.io/windows" +REPO = "https://packages.broadcom.com/artifactory/saltproject-generic/windows/" def latest_installer_name(arch="AMD64", **kwargs): From 56f0a492056b96f16c60f6e697950755846d1fdf Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 10 Nov 2024 17:24:20 -0700 Subject: [PATCH 101/225] Do not use setup-python action in container --- .github/workflows/test-action-linux.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index 761bcf6bb00f..a6823b052f87 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -179,11 +179,6 @@ jobs: with: name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - name: Install Nox run: | python3 -m pip install 'nox==${{ inputs.nox-version }}' From 33f82c98c0d055d26de67e8a5233a2c8ca9ecc06 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 11 Nov 2024 01:32:56 -0700 Subject: [PATCH 102/225] Fix pkg step name for linux --- .github/workflows/ci.yml | 156 ++++++++++++++++---------------- .github/workflows/nightly.yml | 156 ++++++++++++++++---------------- .github/workflows/scheduled.yml | 156 ++++++++++++++++---------------- .github/workflows/staging.yml | 156 ++++++++++++++++---------------- .pre-commit-config.yaml | 2 +- tools/utils/__init__.py | 4 +- 6 files changed, 314 insertions(+), 316 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cad064ad2a86..12fd528aa8f0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -590,9 +590,9 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows - rockylinux-8-pkg-tests: + test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -612,9 +612,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-8-arm64-pkg-tests: + test-pkg-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -634,9 +634,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-pkg-tests: + test-pkg-rockylinux-9: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -656,9 +656,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-arm64-pkg-tests: + test-pkg-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -678,9 +678,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-pkg-tests: + test-pkg-amazonlinux-2: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -700,9 +700,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-arm64-pkg-tests: + test-pkg-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -722,9 +722,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-pkg-tests: + test-pkg-amazonlinux-2023: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -744,9 +744,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-arm64-pkg-tests: + test-pkg-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -766,9 +766,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-pkg-tests: + test-pkg-debian-11: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -788,9 +788,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-arm64-pkg-tests: + test-pkg-debian-11-arm64: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -810,9 +810,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-pkg-tests: + test-pkg-debian-12: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -832,9 +832,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-arm64-pkg-tests: + test-pkg-debian-12-arm64: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -854,9 +854,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests: + test-pkg-photonos-4: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -876,9 +876,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-arm64-pkg-tests: + test-pkg-photonos-4-arm64: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -898,9 +898,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests-fips: + test-pkg-photonos-4-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -921,9 +921,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-4-arm64-pkg-tests-fips: + test-pkg-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -944,9 +944,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-pkg-tests: + test-pkg-photonos-5: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -966,9 +966,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-arm64-pkg-tests: + test-pkg-photonos-5-arm64: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -988,9 +988,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-pkg-tests-fips: + test-pkg-photonos-5-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1011,9 +1011,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-arm64-pkg-tests-fips: + test-pkg-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1034,9 +1034,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - ubuntu-2004-pkg-tests: + test-pkg-ubuntu-2004: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1056,9 +1056,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2004-arm64-pkg-tests: + test-pkg-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1078,9 +1078,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: + test-pkg-ubuntu-2204: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1100,9 +1100,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-arm64-pkg-tests: + test-pkg-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1122,9 +1122,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: + test-pkg-ubuntu-2404: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1144,9 +1144,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-arm64-pkg-tests: + test-pkg-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -2147,32 +2147,32 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - - ubuntu-2204-pkg-tests - - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests + - test-pkg-rockylinux-8 + - test-pkg-rockylinux-8-arm64 + - test-pkg-rockylinux-9 + - test-pkg-rockylinux-9-arm64 + - test-pkg-amazonlinux-2 + - test-pkg-amazonlinux-2-arm64 + - test-pkg-amazonlinux-2023 + - test-pkg-amazonlinux-2023-arm64 + - test-pkg-debian-11 + - test-pkg-debian-11-arm64 + - test-pkg-debian-12 + - test-pkg-debian-12-arm64 + - test-pkg-photonos-4 + - test-pkg-photonos-4-arm64 + - test-pkg-photonos-4-fips + - test-pkg-photonos-4-arm64-fips + - test-pkg-photonos-5 + - test-pkg-photonos-5-arm64 + - test-pkg-photonos-5-fips + - test-pkg-photonos-5-arm64-fips + - test-pkg-ubuntu-2004 + - test-pkg-ubuntu-2004-arm64 + - test-pkg-ubuntu-2204 + - test-pkg-ubuntu-2204-arm64 + - test-pkg-ubuntu-2404 + - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 96fd94d1b283..96385b90bbf5 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -713,9 +713,9 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows - rockylinux-8-pkg-tests: + test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -735,9 +735,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-8-arm64-pkg-tests: + test-pkg-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -757,9 +757,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-pkg-tests: + test-pkg-rockylinux-9: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -779,9 +779,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-arm64-pkg-tests: + test-pkg-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -801,9 +801,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-pkg-tests: + test-pkg-amazonlinux-2: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -823,9 +823,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-arm64-pkg-tests: + test-pkg-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -845,9 +845,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-pkg-tests: + test-pkg-amazonlinux-2023: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -867,9 +867,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-arm64-pkg-tests: + test-pkg-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -889,9 +889,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-pkg-tests: + test-pkg-debian-11: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -911,9 +911,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-arm64-pkg-tests: + test-pkg-debian-11-arm64: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -933,9 +933,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-pkg-tests: + test-pkg-debian-12: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -955,9 +955,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-arm64-pkg-tests: + test-pkg-debian-12-arm64: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -977,9 +977,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests: + test-pkg-photonos-4: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -999,9 +999,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-arm64-pkg-tests: + test-pkg-photonos-4-arm64: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1021,9 +1021,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests-fips: + test-pkg-photonos-4-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1044,9 +1044,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-4-arm64-pkg-tests-fips: + test-pkg-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1067,9 +1067,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-pkg-tests: + test-pkg-photonos-5: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1089,9 +1089,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-arm64-pkg-tests: + test-pkg-photonos-5-arm64: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1111,9 +1111,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-pkg-tests-fips: + test-pkg-photonos-5-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1134,9 +1134,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-arm64-pkg-tests-fips: + test-pkg-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1157,9 +1157,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - ubuntu-2004-pkg-tests: + test-pkg-ubuntu-2004: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1179,9 +1179,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2004-arm64-pkg-tests: + test-pkg-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1201,9 +1201,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: + test-pkg-ubuntu-2204: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1223,9 +1223,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-arm64-pkg-tests: + test-pkg-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1245,9 +1245,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: + test-pkg-ubuntu-2404: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1267,9 +1267,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-arm64-pkg-tests: + test-pkg-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -2899,32 +2899,32 @@ jobs: - build-pkgs-src-macos - build-pkgs-src-windows - publish-repositories - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - - ubuntu-2204-pkg-tests - - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests + - test-pkg-rockylinux-8 + - test-pkg-rockylinux-8-arm64 + - test-pkg-rockylinux-9 + - test-pkg-rockylinux-9-arm64 + - test-pkg-amazonlinux-2 + - test-pkg-amazonlinux-2-arm64 + - test-pkg-amazonlinux-2023 + - test-pkg-amazonlinux-2023-arm64 + - test-pkg-debian-11 + - test-pkg-debian-11-arm64 + - test-pkg-debian-12 + - test-pkg-debian-12-arm64 + - test-pkg-photonos-4 + - test-pkg-photonos-4-arm64 + - test-pkg-photonos-4-fips + - test-pkg-photonos-4-arm64-fips + - test-pkg-photonos-5 + - test-pkg-photonos-5-arm64 + - test-pkg-photonos-5-fips + - test-pkg-photonos-5-arm64-fips + - test-pkg-ubuntu-2004 + - test-pkg-ubuntu-2004-arm64 + - test-pkg-ubuntu-2204 + - test-pkg-ubuntu-2204-arm64 + - test-pkg-ubuntu-2404 + - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 544db448ecce..141e3c60806f 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -629,9 +629,9 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows - rockylinux-8-pkg-tests: + test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -651,9 +651,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-8-arm64-pkg-tests: + test-pkg-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -673,9 +673,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-pkg-tests: + test-pkg-rockylinux-9: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -695,9 +695,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-arm64-pkg-tests: + test-pkg-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -717,9 +717,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-pkg-tests: + test-pkg-amazonlinux-2: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -739,9 +739,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-arm64-pkg-tests: + test-pkg-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -761,9 +761,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-pkg-tests: + test-pkg-amazonlinux-2023: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -783,9 +783,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-arm64-pkg-tests: + test-pkg-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -805,9 +805,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-pkg-tests: + test-pkg-debian-11: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -827,9 +827,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-arm64-pkg-tests: + test-pkg-debian-11-arm64: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -849,9 +849,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-pkg-tests: + test-pkg-debian-12: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -871,9 +871,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-arm64-pkg-tests: + test-pkg-debian-12-arm64: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -893,9 +893,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests: + test-pkg-photonos-4: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -915,9 +915,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-arm64-pkg-tests: + test-pkg-photonos-4-arm64: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -937,9 +937,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests-fips: + test-pkg-photonos-4-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -960,9 +960,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-4-arm64-pkg-tests-fips: + test-pkg-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -983,9 +983,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-pkg-tests: + test-pkg-photonos-5: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1005,9 +1005,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-arm64-pkg-tests: + test-pkg-photonos-5-arm64: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1027,9 +1027,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-pkg-tests-fips: + test-pkg-photonos-5-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1050,9 +1050,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-arm64-pkg-tests-fips: + test-pkg-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1073,9 +1073,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - ubuntu-2004-pkg-tests: + test-pkg-ubuntu-2004: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1095,9 +1095,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2004-arm64-pkg-tests: + test-pkg-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1117,9 +1117,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: + test-pkg-ubuntu-2204: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1139,9 +1139,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-arm64-pkg-tests: + test-pkg-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1161,9 +1161,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: + test-pkg-ubuntu-2404: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1183,9 +1183,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-arm64-pkg-tests: + test-pkg-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -2026,32 +2026,32 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - - ubuntu-2204-pkg-tests - - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests + - test-pkg-rockylinux-8 + - test-pkg-rockylinux-8-arm64 + - test-pkg-rockylinux-9 + - test-pkg-rockylinux-9-arm64 + - test-pkg-amazonlinux-2 + - test-pkg-amazonlinux-2-arm64 + - test-pkg-amazonlinux-2023 + - test-pkg-amazonlinux-2023-arm64 + - test-pkg-debian-11 + - test-pkg-debian-11-arm64 + - test-pkg-debian-12 + - test-pkg-debian-12-arm64 + - test-pkg-photonos-4 + - test-pkg-photonos-4-arm64 + - test-pkg-photonos-4-fips + - test-pkg-photonos-4-arm64-fips + - test-pkg-photonos-5 + - test-pkg-photonos-5-arm64 + - test-pkg-photonos-5-fips + - test-pkg-photonos-5-arm64-fips + - test-pkg-ubuntu-2004 + - test-pkg-ubuntu-2004-arm64 + - test-pkg-ubuntu-2204 + - test-pkg-ubuntu-2204-arm64 + - test-pkg-ubuntu-2404 + - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 8e4404e621d9..18f65034f2ff 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -695,9 +695,9 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" kind: windows - rockylinux-8-pkg-tests: + test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -717,9 +717,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-8-arm64-pkg-tests: + test-pkg-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-8-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -739,9 +739,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-pkg-tests: + test-pkg-rockylinux-9: name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -761,9 +761,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - rockylinux-9-arm64-pkg-tests: + test-pkg-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['rockylinux-9-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -783,9 +783,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-pkg-tests: + test-pkg-amazonlinux-2: name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -805,9 +805,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2-arm64-pkg-tests: + test-pkg-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -827,9 +827,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-pkg-tests: + test-pkg-amazonlinux-2023: name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -849,9 +849,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - amazonlinux-2023-arm64-pkg-tests: + test-pkg-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['amazonlinux-2023-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -871,9 +871,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-pkg-tests: + test-pkg-debian-11: name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -893,9 +893,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-11-arm64-pkg-tests: + test-pkg-debian-11-arm64: name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-11-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -915,9 +915,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-pkg-tests: + test-pkg-debian-12: name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -937,9 +937,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - debian-12-arm64-pkg-tests: + test-pkg-debian-12-arm64: name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['debian-12-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -959,9 +959,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests: + test-pkg-photonos-4: name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -981,9 +981,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-arm64-pkg-tests: + test-pkg-photonos-4-arm64: name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1003,9 +1003,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-4-pkg-tests-fips: + test-pkg-photonos-4-fips: name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1026,9 +1026,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-4-arm64-pkg-tests-fips: + test-pkg-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-4-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1049,9 +1049,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-pkg-tests: + test-pkg-photonos-5: name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1071,9 +1071,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-arm64-pkg-tests: + test-pkg-photonos-5-arm64: name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1093,9 +1093,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - photonos-5-pkg-tests-fips: + test-pkg-photonos-5-fips: name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1116,9 +1116,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - photonos-5-arm64-pkg-tests-fips: + test-pkg-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['photonos-5-arm64-pkg-tests-fips'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1139,9 +1139,9 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} fips: true - ubuntu-2004-pkg-tests: + test-pkg-ubuntu-2004: name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1161,9 +1161,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2004-arm64-pkg-tests: + test-pkg-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2004-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1183,9 +1183,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-pkg-tests: + test-pkg-ubuntu-2204: name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1205,9 +1205,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2204-arm64-pkg-tests: + test-pkg-ubuntu-2204-arm64: name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2204-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1227,9 +1227,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-pkg-tests: + test-pkg-ubuntu-2404: name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -1249,9 +1249,9 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - ubuntu-2404-arm64-pkg-tests: + test-pkg-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['ubuntu-2404-arm64-pkg-tests'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-pkgs-onedir-linux @@ -2947,32 +2947,32 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - rockylinux-8-pkg-tests - - rockylinux-8-arm64-pkg-tests - - rockylinux-9-pkg-tests - - rockylinux-9-arm64-pkg-tests - - amazonlinux-2-pkg-tests - - amazonlinux-2-arm64-pkg-tests - - amazonlinux-2023-pkg-tests - - amazonlinux-2023-arm64-pkg-tests - - debian-11-pkg-tests - - debian-11-arm64-pkg-tests - - debian-12-pkg-tests - - debian-12-arm64-pkg-tests - - photonos-4-pkg-tests - - photonos-4-arm64-pkg-tests - - photonos-4-pkg-tests-fips - - photonos-4-arm64-pkg-tests-fips - - photonos-5-pkg-tests - - photonos-5-arm64-pkg-tests - - photonos-5-pkg-tests-fips - - photonos-5-arm64-pkg-tests-fips - - ubuntu-2004-pkg-tests - - ubuntu-2004-arm64-pkg-tests - - ubuntu-2204-pkg-tests - - ubuntu-2204-arm64-pkg-tests - - ubuntu-2404-pkg-tests - - ubuntu-2404-arm64-pkg-tests + - test-pkg-rockylinux-8 + - test-pkg-rockylinux-8-arm64 + - test-pkg-rockylinux-9 + - test-pkg-rockylinux-9-arm64 + - test-pkg-amazonlinux-2 + - test-pkg-amazonlinux-2-arm64 + - test-pkg-amazonlinux-2023 + - test-pkg-amazonlinux-2023-arm64 + - test-pkg-debian-11 + - test-pkg-debian-11-arm64 + - test-pkg-debian-12 + - test-pkg-debian-12-arm64 + - test-pkg-photonos-4 + - test-pkg-photonos-4-arm64 + - test-pkg-photonos-4-fips + - test-pkg-photonos-4-arm64-fips + - test-pkg-photonos-5 + - test-pkg-photonos-5-arm64 + - test-pkg-photonos-5-fips + - test-pkg-photonos-5-arm64-fips + - test-pkg-ubuntu-2004 + - test-pkg-ubuntu-2004-arm64 + - test-pkg-ubuntu-2204 + - test-pkg-ubuntu-2204-arm64 + - test-pkg-ubuntu-2404 + - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 68821fd8ba5d..dff763df412f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -59,7 +59,7 @@ repos: - id: tools alias: generate-workflows name: Generate GitHub Workflow Templates - files: ^(cicd/shared-gh-workflows-context\.yml|tools/precommit/workflows\.py|.github/workflows/.*)$ + files: ^(cicd/shared-gh-workflows-context\.yml|tools/utils/__init__.py|tools/precommit/workflows\.py|.github/workflows/.*)$ pass_filenames: false args: - pre-commit diff --git a/tools/utils/__init__.py b/tools/utils/__init__.py index e44147d0a593..be3954b72e5a 100644 --- a/tools/utils/__init__.py +++ b/tools/utils/__init__.py @@ -79,9 +79,7 @@ class LinuxPkg(Linux): @property def job_name(self): - return ( - f"{ self.slug.replace('.', '') }-pkg-tests{ '-fips' if self.fips else ''}" - ) + return f"test-pkg-{ self.slug.replace('.', '') }{ '-fips' if self.fips else ''}" @attr.s(frozen=True, slots=True) From faa0b5dbf40772c4fab466d081261c5ede821414 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 11 Nov 2024 03:18:23 -0700 Subject: [PATCH 103/225] Need to work out mandatory OSes and defined jobs --- .github/workflows/ci.yml | 50 +++++++++---------- .../workflows/templates/test-salt.yml.jinja | 2 +- tools/ci.py | 2 + 3 files changed, 28 insertions(+), 26 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 12fd528aa8f0..f92f6c0218b9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1338,7 +1338,7 @@ jobs: test-rockylinux-8: name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1360,7 +1360,7 @@ jobs: test-rockylinux-8-arm64: name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-8-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1382,7 +1382,7 @@ jobs: test-rockylinux-9: name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1404,7 +1404,7 @@ jobs: test-rockylinux-9-arm64: name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'rockylinux-9-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1426,7 +1426,7 @@ jobs: test-amazonlinux-2: name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1448,7 +1448,7 @@ jobs: test-amazonlinux-2-arm64: name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1470,7 +1470,7 @@ jobs: test-amazonlinux-2023: name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1492,7 +1492,7 @@ jobs: test-amazonlinux-2023-arm64: name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'amazonlinux-2023-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1514,7 +1514,7 @@ jobs: test-debian-11: name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1536,7 +1536,7 @@ jobs: test-debian-11-arm64: name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-11-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1558,7 +1558,7 @@ jobs: test-debian-12: name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1580,7 +1580,7 @@ jobs: test-debian-12-arm64: name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'debian-12-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1602,7 +1602,7 @@ jobs: test-fedora-40: name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'fedora-40') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1624,7 +1624,7 @@ jobs: test-photonos-4: name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1646,7 +1646,7 @@ jobs: test-photonos-4-arm64: name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1668,7 +1668,7 @@ jobs: test-photonos-4-fips: name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1691,7 +1691,7 @@ jobs: test-photonos-4-arm64-fips: name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-4-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1714,7 +1714,7 @@ jobs: test-photonos-5: name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1736,7 +1736,7 @@ jobs: test-photonos-5-arm64: name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1758,7 +1758,7 @@ jobs: test-photonos-5-fips: name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1781,7 +1781,7 @@ jobs: test-photonos-5-arm64-fips: name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'photonos-5-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1804,7 +1804,7 @@ jobs: test-ubuntu-2004: name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1826,7 +1826,7 @@ jobs: test-ubuntu-2004-arm64: name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-20.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1892,7 +1892,7 @@ jobs: test-ubuntu-2404: name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - build-ci-deps-linux @@ -1914,7 +1914,7 @@ jobs: test-ubuntu-2404-arm64: name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'ubuntu-24.04-arm64') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - build-ci-deps-linux diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index fce30ea0645b..9a1068935123 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -72,7 +72,7 @@ <{ job_name }>: <%- do test_salt_needs.append(job_name) %> name: <{ os.display_name }> Test<%- if os.fips %> (fips)<%- endif %> - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> + <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True%> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} diff --git a/tools/ci.py b/tools/ci.py index 04da0b5b909d..3cd94eaffa36 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1570,6 +1570,7 @@ def workflow_config( jobs.update({_.job_name: True for _ in TEST_SALT_LISTING[kind]}) # type: ignore if skip_tests: + ctx.print("Skipping test jobs") jobs["test"] = False for kind in kinds: jobs.update({_.job_name: False for _ in TEST_SALT_LISTING[kind]}) # type: ignore @@ -1578,6 +1579,7 @@ def workflow_config( jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore if skip_pkg_tests: + ctx.print("Skipping package test jobs") jobs["test-pkg"] = False for kind in kinds: jobs.update({_.job_name: False for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore From a36644f0a1fefb24fafa81a8e46edcc2c001ee7f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 11 Nov 2024 15:57:01 -0700 Subject: [PATCH 104/225] Only use free mac runners --- .github/workflows/ci.yml | 141 ++++++++++++++++++++++++++++++++ .github/workflows/nightly.yml | 138 +++++++++++++++++++++++++++++++ .github/workflows/scheduled.yml | 138 +++++++++++++++++++++++++++++++ .github/workflows/staging.yml | 138 +++++++++++++++++++++++++++++++ tools/precommit/workflows.py | 20 ++--- 5 files changed, 561 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f92f6c0218b9..8db1d717e458 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1188,6 +1188,72 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-macos-13: + name: macOS 13 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13') }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-14: + name: macOS 14 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-14') }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-15: + name: macOS 15 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-15') }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} @@ -1336,6 +1402,72 @@ jobs: workflow-slug: ci default-timeout: 180 + test-macos-13: + name: macOS 13 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13') }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + test-macos-14: + name: macOS 14 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-14') }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + + test-macos-15: + name: macOS 15 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-15') }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + workflow-slug: ci + default-timeout: 180 + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} @@ -1948,6 +2080,9 @@ jobs: - test-windows-2019 - test-windows-2022 - test-macos-12 + - test-macos-13 + - test-macos-14 + - test-macos-15 - test-rockylinux-8 - test-rockylinux-8-arm64 - test-rockylinux-9 @@ -2120,6 +2255,9 @@ jobs: - test-windows-2019 - test-windows-2022 - test-macos-12 + - test-macos-13 + - test-macos-14 + - test-macos-15 - test-rockylinux-8 - test-rockylinux-8-arm64 - test-rockylinux-9 @@ -2174,6 +2312,9 @@ jobs: - test-pkg-ubuntu-2404 - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 + - test-pkg-macos-13 + - test-pkg-macos-14 + - test-pkg-macos-15 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi - test-pkg-windows-2022-nsis diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 96385b90bbf5..21ecd0d0a090 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1311,6 +1311,72 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-macos-13: + name: macOS 13 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-14: + name: macOS 14 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-15: + name: macOS 15 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} @@ -1459,6 +1525,72 @@ jobs: workflow-slug: nightly default-timeout: 360 + test-macos-13: + name: macOS 13 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + test-macos-14: + name: macOS 14 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + + test-macos-15: + name: macOS 15 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: nightly + default-timeout: 360 + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} @@ -2808,6 +2940,9 @@ jobs: - test-windows-2019 - test-windows-2022 - test-macos-12 + - test-macos-13 + - test-macos-14 + - test-macos-15 - test-rockylinux-8 - test-rockylinux-8-arm64 - test-rockylinux-9 @@ -2926,6 +3061,9 @@ jobs: - test-pkg-ubuntu-2404 - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 + - test-pkg-macos-13 + - test-pkg-macos-14 + - test-pkg-macos-15 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi - test-pkg-windows-2022-nsis diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 141e3c60806f..f543cd362e6d 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1227,6 +1227,72 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-macos-13: + name: macOS 13 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-14: + name: macOS 14 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-15: + name: macOS 15 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} @@ -1375,6 +1441,72 @@ jobs: workflow-slug: scheduled default-timeout: 360 + test-macos-13: + name: macOS 13 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + test-macos-14: + name: macOS 14 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + + test-macos-15: + name: macOS 15 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: scheduled + default-timeout: 360 + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} @@ -1999,6 +2131,9 @@ jobs: - test-windows-2019 - test-windows-2022 - test-macos-12 + - test-macos-13 + - test-macos-14 + - test-macos-15 - test-rockylinux-8 - test-rockylinux-8-arm64 - test-rockylinux-9 @@ -2053,6 +2188,9 @@ jobs: - test-pkg-ubuntu-2404 - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 + - test-pkg-macos-13 + - test-pkg-macos-14 + - test-pkg-macos-15 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi - test-pkg-windows-2022-nsis diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 18f65034f2ff..f4444d1340ad 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1293,6 +1293,72 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-macos-13: + name: macOS 13 Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-14: + name: macOS 14 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + + test-pkg-macos-15: + name: macOS 15 (M1) Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} + needs: + - prepare-workflow + - build-pkgs-onedir-macos + - build-ci-deps-macos + uses: ./.github/workflows/test-packages-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + pkg-type: macos + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} @@ -1441,6 +1507,72 @@ jobs: workflow-slug: staging default-timeout: 180 + test-macos-13: + name: macOS 13 Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-13 + runner: macos-13 + nox-session: ci-test-onedir + platform: macos + arch: x86_64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + test-macos-14: + name: macOS 14 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-14 + runner: macos-14 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + + test-macos-15: + name: macOS 15 (M1) Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} + needs: + - prepare-workflow + - build-ci-deps-macos + uses: ./.github/workflows/test-action-macos.yml + with: + distro-slug: macos-15 + runner: macos-15 + nox-session: ci-test-onedir + platform: macos + arch: arm64 + nox-version: 2022.8.7 + gh-actions-python-version: "3.10" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + workflow-slug: staging + default-timeout: 180 + test-rockylinux-8: name: Rocky Linux 8 Test if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} @@ -2920,6 +3052,9 @@ jobs: - test-windows-2019 - test-windows-2022 - test-macos-12 + - test-macos-13 + - test-macos-14 + - test-macos-15 - test-rockylinux-8 - test-rockylinux-8-arm64 - test-rockylinux-9 @@ -2974,6 +3109,9 @@ jobs: - test-pkg-ubuntu-2404 - test-pkg-ubuntu-2404-arm64 - test-pkg-macos-12 + - test-pkg-macos-13 + - test-pkg-macos-14 + - test-pkg-macos-15 - test-pkg-windows-2019-nsis - test-pkg-windows-2019-msi - test-pkg-windows-2022-nsis diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index d5fe152d5820..65d27cfdf0af 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -210,13 +210,9 @@ ], "macos": [ MacOS(slug="macos-12", display_name="macOS 12", arch="x86_64"), - # MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), - # MacOS( - # slug="macos-13-arm64", - # display_name="macOS 13 Arm64", - # arch="arm64", - # runner="macos-13-xlarge", - # ), + MacOS(slug="macos-13", display_name="macOS 13", arch="x86_64"), + MacOS(slug="macos-14", display_name="macOS 14 (M1)", arch="arm64"), + MacOS(slug="macos-15", display_name="macOS 15 (M1)", arch="arm64"), ], "windows": [ # Windows(slug="windows-2016", display_name="Windows 2016", arch="amd64"), @@ -417,13 +413,9 @@ ], "macos": [ MacOSPkg(slug="macos-12", display_name="macOS 12", arch="x86_64"), - # MacOSPkg(slug="macos-13", display_name="macOS 13", arch="x86_64"), - # MacOSPkg( - # slug="macos-13-arm64", - # display_name="macOS 13 Arm64", - # arch="arm64", - # runner="macos-13-xlarge", - # ), + MacOSPkg(slug="macos-13", display_name="macOS 13", arch="x86_64"), + MacOSPkg(slug="macos-14", display_name="macOS 14 (M1)", arch="arm64"), + MacOSPkg(slug="macos-15", display_name="macOS 15 (M1)", arch="arm64"), ], "windows": [ WindowsPkg( From fea3937355feba3d70053f628666663e4fe6ae50 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 12 Nov 2024 01:21:49 -0700 Subject: [PATCH 105/225] Test debug --- tests/pytests/pkg/conftest.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/pytests/pkg/conftest.py b/tests/pytests/pkg/conftest.py index 258d794c89fe..53eebb95bcfd 100644 --- a/tests/pytests/pkg/conftest.py +++ b/tests/pytests/pkg/conftest.py @@ -34,6 +34,16 @@ def _system_up_to_date( grains, shell, ): + gpg_dest = "/etc/apt/keyrings/salt-archive-keyring.gpg" + if os.path.exists(gpg_dest): + with salt.utils.files.fopen(gpg_dest, "r") as fp: + log.error("Salt gpg key is %s", fp.read()) + else: + log.error("Salt gpg not present") + #download_file( + # "https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public", + # gpg_dest, + #) if grains["os_family"] == "Debian": ret = shell.run("apt", "update") assert ret.returncode == 0 From 3be3ce486b8560d09eb4d911db00bcf10c6693a5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 12 Nov 2024 01:40:52 -0700 Subject: [PATCH 106/225] Migrate more jobs to config --- .github/workflows/ci.yml | 12 ++++++------ .github/workflows/nightly.yml | 12 ++++++------ .github/workflows/scheduled.yml | 12 ++++++------ .github/workflows/staging.yml | 12 ++++++------ .github/workflows/templates/ci.yml.jinja | 12 ++++++------ 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8db1d717e458..671848510062 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -416,7 +416,7 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -429,7 +429,7 @@ jobs: build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -442,7 +442,7 @@ jobs: build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -455,7 +455,7 @@ jobs: build-salt-onedir-linux: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - build-deps-onedir-linux @@ -470,7 +470,7 @@ jobs: build-salt-onedir-macos: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - build-deps-onedir-macos @@ -485,7 +485,7 @@ jobs: build-salt-onedir-windows: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - build-deps-onedir-windows diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 21ecd0d0a090..6434acfc176f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -470,7 +470,7 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -483,7 +483,7 @@ jobs: build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -496,7 +496,7 @@ jobs: build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -509,7 +509,7 @@ jobs: build-salt-onedir-linux: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - build-deps-onedir-linux @@ -524,7 +524,7 @@ jobs: build-salt-onedir-macos: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - build-deps-onedir-macos @@ -539,7 +539,7 @@ jobs: build-salt-onedir-windows: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - build-deps-onedir-windows diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index f543cd362e6d..bb353b0e2bc9 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -455,7 +455,7 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -468,7 +468,7 @@ jobs: build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -481,7 +481,7 @@ jobs: build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -494,7 +494,7 @@ jobs: build-salt-onedir-linux: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - build-deps-onedir-linux @@ -509,7 +509,7 @@ jobs: build-salt-onedir-macos: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - build-deps-onedir-macos @@ -524,7 +524,7 @@ jobs: build-salt-onedir-windows: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - build-deps-onedir-windows diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index f4444d1340ad..d835e463237f 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -452,7 +452,7 @@ jobs: build-deps-onedir-linux: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -465,7 +465,7 @@ jobs: build-deps-onedir-macos: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -478,7 +478,7 @@ jobs: build-deps-onedir-windows: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -491,7 +491,7 @@ jobs: build-salt-onedir-linux: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - build-deps-onedir-linux @@ -506,7 +506,7 @@ jobs: build-salt-onedir-macos: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-macos'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - build-deps-onedir-macos @@ -521,7 +521,7 @@ jobs: build-salt-onedir-windows: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-salt-onedir-windows'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - build-deps-onedir-windows diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 579c15055b97..b573d56e32d1 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -249,7 +249,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -268,7 +268,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -287,7 +287,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -307,7 +307,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - build-deps-onedir-linux @@ -327,7 +327,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - build-deps-onedir-macos @@ -347,7 +347,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - build-deps-onedir-windows From b5e7b0d08529b2e15f91f52c2037359e948b2fc4 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 12 Nov 2024 02:13:53 -0700 Subject: [PATCH 107/225] re-enable mac --- tools/ci.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 3cd94eaffa36..5988a08a9534 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1554,11 +1554,11 @@ def workflow_config( "build-source-tarball": True, "build-deps-onedir": True, "build-deps-onedir-linux": True, - "build-deps-onedir-macos": False, + "build-deps-onedir-macos": True, "build-deps-onedir-windows": True, "build-salt-onedir": True, "build-salt-onedir-linux": True, - "build-salt-onedir-macos": False, + "build-salt-onedir-macos": True, "build-salt-onedir-windows": True, "build-pkgs": True, "build-deps-ci": True, From 8d631fccab3046051b6b8235a564e34dc7d6ef57 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 12:46:21 -0700 Subject: [PATCH 108/225] Fix pre-commit --- tests/pytests/pkg/conftest.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/pytests/pkg/conftest.py b/tests/pytests/pkg/conftest.py index 53eebb95bcfd..f26c4a08065e 100644 --- a/tests/pytests/pkg/conftest.py +++ b/tests/pytests/pkg/conftest.py @@ -40,10 +40,10 @@ def _system_up_to_date( log.error("Salt gpg key is %s", fp.read()) else: log.error("Salt gpg not present") - #download_file( + # download_file( # "https://packages.broadcom.com/artifactory/api/security/keypair/SaltProjectKey/public", # gpg_dest, - #) + # ) if grains["os_family"] == "Debian": ret = shell.run("apt", "update") assert ret.returncode == 0 From 03bf713a12869f207cc60f860e34dff51f8063ad Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 13:41:02 -0700 Subject: [PATCH 109/225] More systemd --- .github/workflows/build-deps-ci-action.yml | 2 +- .github/workflows/ci.yml | 16 ++++++++-------- .github/workflows/nightly.yml | 16 ++++++++-------- .github/workflows/scheduled.yml | 16 ++++++++-------- .github/workflows/staging.yml | 16 ++++++++-------- tools/ci.py | 11 ++--------- tools/precommit/workflows.py | 16 ++++++++-------- 7 files changed, 43 insertions(+), 50 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 2c3b42b71b65..bb841b8e5339 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -182,7 +182,7 @@ jobs: name: MacOS needs: - generate-matrix - runs-on: ${{ matrix.distro-slug == 'macos-13-arm64' && 'macos-14' || matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug }} if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 671848510062..8ed42ab7bf9f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -602,7 +602,7 @@ jobs: distro-slug: rockylinux-8 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -624,7 +624,7 @@ jobs: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -646,7 +646,7 @@ jobs: distro-slug: rockylinux-9 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -668,7 +668,7 @@ jobs: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -956,7 +956,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -978,7 +978,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1000,7 +1000,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1023,7 +1023,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 6434acfc176f..a41675841872 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -725,7 +725,7 @@ jobs: distro-slug: rockylinux-8 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -747,7 +747,7 @@ jobs: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -769,7 +769,7 @@ jobs: distro-slug: rockylinux-9 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -791,7 +791,7 @@ jobs: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1079,7 +1079,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1101,7 +1101,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1123,7 +1123,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1146,7 +1146,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index bb353b0e2bc9..66dd93f63a2d 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -641,7 +641,7 @@ jobs: distro-slug: rockylinux-8 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -663,7 +663,7 @@ jobs: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -685,7 +685,7 @@ jobs: distro-slug: rockylinux-9 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -707,7 +707,7 @@ jobs: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -995,7 +995,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1017,7 +1017,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1039,7 +1039,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1062,7 +1062,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index d835e463237f..12038b549676 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -707,7 +707,7 @@ jobs: distro-slug: rockylinux-8 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -729,7 +729,7 @@ jobs: distro-slug: rockylinux-8-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -751,7 +751,7 @@ jobs: distro-slug: rockylinux-9 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -773,7 +773,7 @@ jobs: distro-slug: rockylinux-9-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1061,7 +1061,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1083,7 +1083,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1105,7 +1105,7 @@ jobs: distro-slug: photonos-5 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: x86_64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm @@ -1128,7 +1128,7 @@ jobs: distro-slug: photonos-5-arm64 nox-session: ci-test-onedir platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 + container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 arch: arm64 salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" pkg-type: rpm diff --git a/tools/ci.py b/tools/ci.py index 5988a08a9534..687a3b0cff97 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -930,7 +930,8 @@ def get_ci_deps_matrix(ctx: Context): {"arch": "x86_64"}, ], "macos": [ - {"distro-slug": "macos-12", "arch": "x86_64"}, + {"distro-slug": "macos-13", "arch": "x86_64"}, + {"distro-slug": "macos-14", "arch": "arm64"}, ], "windows": [ {"distro-slug": "windows-2022", "arch": "amd64"}, @@ -939,14 +940,6 @@ def get_ci_deps_matrix(ctx: Context): if "LINUX_ARM_RUNNER" in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0": _matrix["linux"].append({"arch": "arm64"}) - if gh_event["repository"]["fork"] is not True: - _matrix["macos"].append( - { - "distro-slug": "macos-13-arm64", - "arch": "arm64", - } - ) - ctx.info("Generated matrix:") ctx.print(_matrix, soft_wrap=True) diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index 65d27cfdf0af..cf9845184d6a 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -229,28 +229,28 @@ display_name="Rocky Linux 8", arch="x86_64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8", ), LinuxPkg( slug="rockylinux-8-arm64", display_name="Rocky Linux 8 Arm64", arch="arm64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8", ), LinuxPkg( slug="rockylinux-9", display_name="Rocky Linux 9", arch="x86_64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9", ), LinuxPkg( slug="rockylinux-9-arm64", display_name="Rocky Linux 9 Arm64", arch="arm64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9", ), LinuxPkg( slug="amazonlinux-2", @@ -343,14 +343,14 @@ display_name="Photon OS 5", arch="x86_64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", ), LinuxPkg( slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", ), LinuxPkg( slug="photonos-5", @@ -358,7 +358,7 @@ arch="x86_64", pkg_type="rpm", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", ), LinuxPkg( slug="photonos-5-arm64", @@ -366,7 +366,7 @@ arch="arm64", pkg_type="rpm", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", ), LinuxPkg( slug="ubuntu-20.04", From 8c44ab157b517e4ef0dc7dd7fd547dc48bda1c04 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 16:04:20 -0700 Subject: [PATCH 110/225] Add macos arm onedir deps --- tools/ci.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index 687a3b0cff97..33d32cfe84f5 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -577,7 +577,9 @@ def build_matrix( if github_output is None: ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") _matrix = [{"arch": "x86_64"}] - if ( + if kind == "macos": + _matrix.append({"arch": "arm64"}) + elif ( kind == "linux" and "LINUX_ARM_RUNNER" in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0" From 02213478d1190b2ee64887d5af5a0edc5c3abe93 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 16:49:22 -0700 Subject: [PATCH 111/225] Drop os-labels and pull-labels --- .github/workflows/ci.yml | 34 +++++++------------ .github/workflows/nightly.yml | 10 ------ .github/workflows/scheduled.yml | 10 ------ .github/workflows/staging.yml | 10 ------ .github/workflows/templates/layout.yml.jinja | 10 ------ .../templates/test-salt-pkg.yml.jinja | 6 ++-- .../workflows/templates/test-salt.yml.jinja | 4 +-- 7 files changed, 17 insertions(+), 67 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8ed42ab7bf9f..27003632f3f3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -42,8 +42,6 @@ jobs: outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} - os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} - pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} testrun: ${{ steps.define-testrun.outputs.testrun }} salt-version: ${{ steps.setup-salt-version.outputs.salt-version }} cache-seed: ${{ steps.set-cache-seed.outputs.cache-seed }} @@ -164,14 +162,6 @@ jobs: salt-version: "" validate-version: true - - name: Get Pull Request Test Labels - id: get-pull-labels - if: ${{ github.event_name == 'pull_request'}} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - tools ci get-pr-test-labels --repository ${{ github.repository }} - - name: Get Hash For Nox Tarball Cache id: nox-archive-hash run: | @@ -1168,7 +1158,7 @@ jobs: test-pkg-macos-12: name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1190,7 +1180,7 @@ jobs: test-pkg-macos-13: name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1212,7 +1202,7 @@ jobs: test-pkg-macos-14: name: macOS 14 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-14') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1234,7 +1224,7 @@ jobs: test-pkg-macos-15: name: macOS 15 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-15') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} needs: - prepare-workflow - build-pkgs-onedir-macos @@ -1256,7 +1246,7 @@ jobs: test-pkg-windows-2019-nsis: name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1277,7 +1267,7 @@ jobs: test-pkg-windows-2019-msi: name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2019') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1298,7 +1288,7 @@ jobs: test-pkg-windows-2022-nsis: name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1319,7 +1309,7 @@ jobs: test-pkg-windows-2022-msi: name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'windows-2022') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - build-pkgs-onedir-windows @@ -1382,7 +1372,7 @@ jobs: test-macos-12: name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-12') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1404,7 +1394,7 @@ jobs: test-macos-13: name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-13') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1426,7 +1416,7 @@ jobs: test-macos-14: name: macOS 14 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-14') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} needs: - prepare-workflow - build-ci-deps-macos @@ -1448,7 +1438,7 @@ jobs: test-macos-15: name: macOS 15 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), 'macos-15') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} needs: - prepare-workflow - build-ci-deps-macos diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a41675841872..a0d675121597 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -91,8 +91,6 @@ jobs: outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} - os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} - pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} testrun: ${{ steps.define-testrun.outputs.testrun }} salt-version: ${{ steps.setup-salt-version.outputs.salt-version }} cache-seed: ${{ steps.set-cache-seed.outputs.cache-seed }} @@ -213,14 +211,6 @@ jobs: salt-version: "" validate-version: true - - name: Get Pull Request Test Labels - id: get-pull-labels - if: ${{ github.event_name == 'pull_request'}} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - tools ci get-pr-test-labels --repository ${{ github.repository }} - - name: Get Hash For Nox Tarball Cache id: nox-archive-hash run: | diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 66dd93f63a2d..69cfd7c07bcc 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -81,8 +81,6 @@ jobs: outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} - os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} - pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} testrun: ${{ steps.define-testrun.outputs.testrun }} salt-version: ${{ steps.setup-salt-version.outputs.salt-version }} cache-seed: ${{ steps.set-cache-seed.outputs.cache-seed }} @@ -203,14 +201,6 @@ jobs: salt-version: "" validate-version: true - - name: Get Pull Request Test Labels - id: get-pull-labels - if: ${{ github.event_name == 'pull_request'}} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - tools ci get-pr-test-labels --repository ${{ github.repository }} - - name: Get Hash For Nox Tarball Cache id: nox-archive-hash run: | diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 12038b549676..cae3779a27ea 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -72,8 +72,6 @@ jobs: outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} - os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} - pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} testrun: ${{ steps.define-testrun.outputs.testrun }} salt-version: ${{ steps.setup-salt-version.outputs.salt-version }} cache-seed: ${{ steps.set-cache-seed.outputs.cache-seed }} @@ -194,14 +192,6 @@ jobs: salt-version: "${{ inputs.salt-version }}" validate-version: true - - name: Get Pull Request Test Labels - id: get-pull-labels - if: ${{ github.event_name == 'pull_request'}} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - tools ci get-pr-test-labels --repository ${{ github.repository }} - - name: Get Hash For Nox Tarball Cache id: nox-archive-hash run: | diff --git a/.github/workflows/templates/layout.yml.jinja b/.github/workflows/templates/layout.yml.jinja index 8de8dcf878f2..d18d41ffcf28 100644 --- a/.github/workflows/templates/layout.yml.jinja +++ b/.github/workflows/templates/layout.yml.jinja @@ -90,8 +90,6 @@ jobs: outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} - os-labels: ${{ steps.get-pull-labels.outputs.os-labels }} - pull-labels: ${{ steps.get-pull-labels.outputs.test-labels }} testrun: ${{ steps.define-testrun.outputs.testrun }} salt-version: ${{ steps.setup-salt-version.outputs.salt-version }} cache-seed: ${{ steps.set-cache-seed.outputs.cache-seed }} @@ -212,14 +210,6 @@ jobs: salt-version: "<{ prepare_workflow_salt_version_input }>" validate-version: true - - name: Get Pull Request Test Labels - id: get-pull-labels - if: ${{ github.event_name == 'pull_request'}} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - tools ci get-pr-test-labels --repository ${{ github.repository }} - - name: Get Hash For Nox Tarball Cache id: nox-archive-hash run: | diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index eb9b816e4792..a50ba2cc2877 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -7,7 +7,7 @@ <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True %> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- endif %> needs: - prepare-workflow @@ -44,7 +44,7 @@ <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- endif %> needs: - prepare-workflow @@ -77,7 +77,7 @@ <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- endif %> needs: - prepare-workflow diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 9a1068935123..f5fdefa096d4 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -43,7 +43,7 @@ <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} <%- endif %> needs: - prepare-workflow @@ -75,7 +75,7 @@ <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True%> if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] && contains(fromJSON(needs.prepare-workflow.outputs.os-labels), '<{ os.slug }>') }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} <%- endif %> needs: - prepare-workflow From ad879920211b3e04e0c59f9ca6896b9eae1ec4d4 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 17:15:00 -0700 Subject: [PATCH 112/225] Fix up mac build logic --- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-packages.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index faf82eb47e05..7a587900e116 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -119,7 +119,7 @@ jobs: fail-fast: false max-parallel: 2 matrix: - arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} needs: - generate-matrix runs-on: diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index f04478b2a00e..15314c09805b 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -266,9 +266,9 @@ jobs: strategy: fail-fast: false matrix: - arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} source: - ${{ inputs.source }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} env: PIP_INDEX_URL: https://pypi.org/simple runs-on: From 05a70fd9db96dee0a883c09df2319adb29e5cb08 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 18:12:30 -0700 Subject: [PATCH 113/225] Fix build salt logic for mac --- .github/workflows/build-salt-onedir.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 19e427dcd28f..9096cda30ce4 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -126,7 +126,7 @@ jobs: fail-fast: false max-parallel: 2 matrix: - arch: ${{ github.event.repository.fork && fromJSON('["x86_64"]') || fromJSON('["x86_64", "arm64"]') }} + include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} runs-on: - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} env: From b2983c150e3829674f7a0c6ea6dc604c897ba47e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 18 Nov 2024 19:17:36 -0700 Subject: [PATCH 114/225] Fix pre-commit --- .github/workflows/build-salt-onedir.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 9096cda30ce4..7b7adbd5f704 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -122,6 +122,8 @@ jobs: build-salt-macos: name: macOS if: ${{ inputs.kind == 'macos' }} + needs: + - generate-matrix strategy: fail-fast: false max-parallel: 2 From 9bdc295dcccd148b95e1ae1139f90f5384427b6b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 19 Nov 2024 01:33:13 -0700 Subject: [PATCH 115/225] Fix undefined variable on mac --- tools/ci.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/ci.py b/tools/ci.py index 33d32cfe84f5..dae4f03e5ac7 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -765,6 +765,7 @@ def pkg_matrix( "tiamat": "salt/py3/macos/minor/", "relenv": "salt/py3/macos/minor/", } + name = "macos" else: parts = distro_slug.split("-") name = parts[0] From c0d96f08336069630aa38fb333f13c075268ef04 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 19 Nov 2024 14:43:18 -0700 Subject: [PATCH 116/225] Do not clear macos matrix for pkg tests --- tools/ci.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index dae4f03e5ac7..bfc774045a00 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -870,14 +870,14 @@ def pkg_matrix( for entry in _matrix: ctx.print(" * ", entry, soft_wrap=True) - if ( - gh_event["repository"]["fork"] is True - and "macos" in distro_slug - and "arm64" in distro_slug - ): - # XXX: This should work now - ctx.warn("Forks don't have access to MacOS 13 Arm64. Clearning the matrix.") - _matrix.clear() + #if ( + # gh_event["repository"]["fork"] is True + # and "macos" in distro_slug + # and "arm64" in distro_slug + #): + # # XXX: This should work now + # ctx.warn("Forks don't have access to MacOS 13 Arm64. Clearning the matrix.") + # _matrix.clear() if ( arch == "arm64" From 61d2686abd54580e0cc72f7c39fb9cba5a7b4470 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 19 Nov 2024 17:15:06 -0700 Subject: [PATCH 117/225] Fix pre-commit --- tools/ci.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index bfc774045a00..8967495208b1 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -870,11 +870,11 @@ def pkg_matrix( for entry in _matrix: ctx.print(" * ", entry, soft_wrap=True) - #if ( + # if ( # gh_event["repository"]["fork"] is True # and "macos" in distro_slug # and "arm64" in distro_slug - #): + # ): # # XXX: This should work now # ctx.warn("Forks don't have access to MacOS 13 Arm64. Clearning the matrix.") # _matrix.clear() From 8bde678d8632daf71a8efc19e06212361e43b0cb Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 19 Nov 2024 17:22:06 -0700 Subject: [PATCH 118/225] More places disabling mac --- tools/ci.py | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 8967495208b1..7e4f5067e5e4 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1582,19 +1582,18 @@ def workflow_config( # If there is no arm runner disable arm64 if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": - for kind in kinds: - jobs.update( - { - _.job_name: True if _.arch != "arm64" else False - for _ in TEST_SALT_LISTING[kind] # type: ignore - } - ) - jobs.update( - { - _.job_name: True if _.arch != "arm64" else False - for _ in TEST_SALT_PKG_LISTING[kind] # type: ignore - } - ) + jobs.update( + { + _.job_name: (True if _.arch != "arm64" else False) + for _ in TEST_SALT_LISTING["linux"] # type: ignore + } + ) + jobs.update( + { + _.job_name: (True if _.arch != "arm64" else False) + for _ in TEST_SALT_PKG_LISTING["linux"] # type: ignore + } + ) if skip_pkg_download_tests: jobs["test-pkg-download"] = False From bef8ead1d87d778297d7f98c54e2efa1f9e67cfb Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 19 Nov 2024 22:47:09 -0700 Subject: [PATCH 119/225] use build deps matrix from config --- .github/workflows/build-deps-onedir.yml | 53 +++--------------------- .github/workflows/ci.yml | 42 ++++--------------- .github/workflows/nightly.yml | 42 ++++--------------- .github/workflows/scheduled.yml | 42 ++++--------------- .github/workflows/staging.yml | 42 ++++--------------- .github/workflows/templates/ci.yml.jinja | 49 +++------------------- tools/ci.py | 27 ++++++++---- 7 files changed, 59 insertions(+), 238 deletions(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 7a587900e116..8bb6ba00b13b 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -20,10 +20,10 @@ on: required: true type: string description: The version of python to use with relenv - kind: - type: string + matrix: required: true - description: The kind of tests to run windows, macos, or linux + type: string + description: Json job matrix config env: RELENV_DATA: "${{ github.workspace }}/.relenv" @@ -37,47 +37,14 @@ env: jobs: - generate-matrix: - name: Test Matrix (${{ inputs.kind }}) - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: "3.10.14" - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-seed }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: tools ci build-matrix ${{ inputs.kind }} - - build-deps-linux: name: Linux - if: ${{ inputs.kind == 'linux' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} - needs: - - generate-matrix strategy: fail-fast: false matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + include: ${{ fromJSON(inputs.matrix)['linux'] }} env: USE_S3_CACHE: 'false' steps: @@ -114,14 +81,11 @@ jobs: build-deps-macos: name: macOS - if: ${{ inputs.kind == 'macOS' }} strategy: fail-fast: false max-parallel: 2 matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} - needs: - - generate-matrix + include: ${{ fromJSON(inputs.matrix)['macos'] }} runs-on: - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} env: @@ -170,16 +134,11 @@ jobs: build-deps-windows: name: Windows - if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 matrix: - arch: - - x86 - - amd64 - needs: - - generate-matrix + include: ${{ fromJSON(inputs.matrix)['windows'] }} runs-on: windows-latest env: USE_S3_CACHE: 'false' diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 27003632f3f3..f4b3cb51536b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -404,9 +404,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir-linux: + build-deps-onedir: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -415,40 +415,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-deps-onedir-macos: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-deps-onedir-windows: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-salt-onedir-linux: name: Build Salt Onedir if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - - build-deps-onedir-linux + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -463,7 +437,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - - build-deps-onedir-macos + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -478,7 +452,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - - build-deps-onedir-windows + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -2232,9 +2206,7 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir-linux - - build-deps-onedir-macos - - build-deps-onedir-windows + - build-deps-onedir - build-salt-onedir-linux - build-salt-onedir-macos - build-salt-onedir-windows diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a0d675121597..e78d1205a790 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -458,9 +458,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir-linux: + build-deps-onedir: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -469,40 +469,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-deps-onedir-macos: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-deps-onedir-windows: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-salt-onedir-linux: name: Build Salt Onedir if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - - build-deps-onedir-linux + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -517,7 +491,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - - build-deps-onedir-macos + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -532,7 +506,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - - build-deps-onedir-windows + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -3014,9 +2988,7 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir-linux - - build-deps-onedir-macos - - build-deps-onedir-windows + - build-deps-onedir - build-salt-onedir-linux - build-salt-onedir-macos - build-salt-onedir-windows diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 69cfd7c07bcc..bc538b573108 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -443,9 +443,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir-linux: + build-deps-onedir: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -454,40 +454,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-deps-onedir-macos: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-deps-onedir-windows: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-salt-onedir-linux: name: Build Salt Onedir if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - - build-deps-onedir-linux + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -502,7 +476,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - - build-deps-onedir-macos + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -517,7 +491,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - - build-deps-onedir-windows + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -2109,9 +2083,7 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir-linux - - build-deps-onedir-macos - - build-deps-onedir-windows + - build-deps-onedir - build-salt-onedir-linux - build-salt-onedir-macos - build-salt-onedir-windows diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index cae3779a27ea..4526cc282428 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -440,9 +440,9 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - build-deps-onedir-linux: + build-deps-onedir: name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir'] }} needs: - prepare-workflow uses: ./.github/workflows/build-deps-onedir.yml @@ -451,40 +451,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-deps-onedir-macos: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-macos'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-deps-onedir-windows: - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-deps-onedir-windows'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-salt-onedir-linux: name: Build Salt Onedir if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} needs: - prepare-workflow - - build-deps-onedir-linux + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -499,7 +473,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} needs: - prepare-workflow - - build-deps-onedir-macos + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -514,7 +488,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} needs: - prepare-workflow - - build-deps-onedir-windows + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -3167,9 +3141,7 @@ jobs: - lint - nsis-tests - build-docs - - build-deps-onedir-linux - - build-deps-onedir-macos - - build-deps-onedir-windows + - build-deps-onedir - build-salt-onedir-linux - build-salt-onedir-macos - build-salt-onedir-windows diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index b573d56e32d1..79e9bdbf5ab4 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -243,7 +243,7 @@ <%- endif %> - <%- set job_name = "build-deps-onedir-linux" %> + <%- set job_name = "build-deps-onedir" %> <%- if includes.get(job_name, True) %> <{ job_name }>: @@ -258,49 +258,10 @@ salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" - kind: linux - - <%- endif %> - - <%- set job_name = "build-deps-onedir-macos" %> - <%- if includes.get(job_name, True) %> - - <{ job_name }>: - <%- do conclusion_needs.append(job_name) %> - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "<{ relenv_version }>" - python-version: "<{ python_version }>" - kind: macos + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} <%- endif %> - <%- set job_name = "build-deps-onedir-windows" %> - <%- if includes.get(job_name, True) %> - - <{ job_name }>: - <%- do conclusion_needs.append(job_name) %> - name: Build Onedir Dependencies - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - needs: - - prepare-workflow - uses: ./.github/workflows/build-deps-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "<{ relenv_version }>" - python-version: "<{ python_version }>" - kind: windows - - <%- endif %> - - <%- set job_name = "build-salt-onedir-linux" %> <%- if includes.get(job_name, True) %> @@ -310,7 +271,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - - build-deps-onedir-linux + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -330,7 +291,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - - build-deps-onedir-macos + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: @@ -350,7 +311,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - - build-deps-onedir-windows + - build-deps-onedir - build-source-tarball uses: ./.github/workflows/build-salt-onedir.yml with: diff --git a/tools/ci.py b/tools/ci.py index 7e4f5067e5e4..a8cceeafbaad 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -576,8 +576,23 @@ def build_matrix( github_output = os.environ.get("GITHUB_OUTPUT") if github_output is None: ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") + _matrix = _build_matrix(kind) + if github_output is not None: + with open(github_output, "a", encoding="utf-8") as wfh: + wfh.write(f"matrix={json.dumps(_matrix)}\n") + else: + ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") + ctx.exit(0) + + +def _build_matrix(kind): _matrix = [{"arch": "x86_64"}] - if kind == "macos": + if kind == "windows": + _matrix = [ + {"arch": "amd64"}, + {"arch": "x86"}, + ] + elif kind == "macos": _matrix.append({"arch": "arm64"}) elif ( kind == "linux" @@ -585,12 +600,7 @@ def build_matrix( and os.environ["LINUX_ARM_RUNNER"] != "0" ): _matrix.append({"arch": "arm64"}) - if github_output is not None: - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"matrix={json.dumps(_matrix)}\n") - else: - ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") - ctx.exit(0) + return _matrix @ci.command( @@ -1599,6 +1609,9 @@ def workflow_config( jobs["test-pkg-download"] = False config["jobs"] = jobs + config["build-matrix"] = { + kind: _build_matrix(kind) for kind in ["linux", "macos", "windows"] # type: ignore + } ctx.info("Jobs selected are") for x, y in jobs.items(): ctx.info(f"{x} = {y}") From d2f082defcfefcc86dca64e44da0085744cb2a68 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 00:03:51 -0700 Subject: [PATCH 120/225] Use build-matrix for salt onedir --- .github/workflows/build-salt-onedir.yml | 48 ++------------ .github/workflows/ci.yml | 52 +++------------ .github/workflows/nightly.yml | 64 +++++-------------- .github/workflows/scheduled.yml | 52 +++------------ .github/workflows/staging.yml | 64 +++++-------------- .../templates/build-ci-deps.yml.jinja | 6 +- .../templates/build-packages.yml.jinja | 6 +- .../workflows/templates/build-repos.yml.jinja | 6 +- .github/workflows/templates/ci.yml.jinja | 45 +------------ 9 files changed, 68 insertions(+), 275 deletions(-) diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 7b7adbd5f704..79a34e93469b 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -20,10 +20,10 @@ on: required: true type: string description: The version of python to use with relenv - kind: + matrix: type: string required: true - description: The kind of tests to run windows, macos, or linux + description: Json config for build matrix env: RELENV_DATA: "${{ github.workspace }}/.relenv" @@ -37,49 +37,17 @@ env: jobs: - generate-matrix: - name: Test Matrix (${{ inputs.kind }}) - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: "3.10.14" - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-seed }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: tools ci build-matrix ${{ inputs.kind }} - build-salt-linux: name: Linux - if: ${{ inputs.kind == 'linux' }} env: USE_S3_CACHE: 'false' runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} - needs: - - generate-matrix strategy: fail-fast: false matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + include: ${{ fromJSON(inputs.matrix)['linux'] }} steps: - name: "Throttle Builds" @@ -121,14 +89,11 @@ jobs: build-salt-macos: name: macOS - if: ${{ inputs.kind == 'macos' }} - needs: - - generate-matrix strategy: fail-fast: false max-parallel: 2 matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + include: ${{ fromJSON(inputs.matrix)['macos'] }} runs-on: - ${{ matrix.arch == 'arm64' && 'macos-14' || 'macos-13' }} env: @@ -182,14 +147,11 @@ jobs: build-salt-windows: name: Windows - if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 matrix: - arch: - - x86 - - amd64 + include: ${{ fromJSON(inputs.matrix)['windows'] }} runs-on: windows-latest env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f4b3cb51536b..90b308310d26 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -417,9 +417,9 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-salt-onedir-linux: + build-salt-onedir: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir'] }} needs: - prepare-workflow - build-deps-onedir @@ -430,44 +430,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-salt-onedir-macos: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-salt-onedir-windows: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-pkgs-onedir-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -482,7 +452,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -497,7 +467,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -511,7 +481,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -527,7 +497,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -543,7 +513,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -2207,9 +2177,7 @@ jobs: - nsis-tests - build-docs - build-deps-onedir - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir - combine-all-code-coverage - build-ci-deps-linux - build-ci-deps-macos diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index e78d1205a790..5a8b4bd4e611 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -471,9 +471,9 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-salt-onedir-linux: + build-salt-onedir: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir'] }} needs: - prepare-workflow - build-deps-onedir @@ -484,44 +484,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-salt-onedir-macos: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-salt-onedir-windows: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-pkgs-onedir-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -540,7 +510,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -559,7 +529,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -578,7 +548,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -597,7 +567,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -616,7 +586,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -634,7 +604,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -650,7 +620,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -666,7 +636,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -2763,9 +2733,9 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir + - build-salt-onedir + - build-salt-onedir strategy: fail-fast: false matrix: @@ -2989,9 +2959,7 @@ jobs: - nsis-tests - build-docs - build-deps-onedir - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir - build-pkgs-src-linux - build-pkgs-src-macos - build-pkgs-src-windows diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index bc538b573108..d7347e2aae1a 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -456,9 +456,9 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-salt-onedir-linux: + build-salt-onedir: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir'] }} needs: - prepare-workflow - build-deps-onedir @@ -469,44 +469,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-salt-onedir-macos: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-salt-onedir-windows: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-pkgs-onedir-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -521,7 +491,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -536,7 +506,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -550,7 +520,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -566,7 +536,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -582,7 +552,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -2084,9 +2054,7 @@ jobs: - nsis-tests - build-docs - build-deps-onedir - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir - build-ci-deps-linux - build-ci-deps-macos - build-ci-deps-windows diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 4526cc282428..545d7a2bcd9a 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -453,9 +453,9 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-salt-onedir-linux: + build-salt-onedir: name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-linux'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir'] }} needs: - prepare-workflow - build-deps-onedir @@ -466,44 +466,14 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "0.18.0" python-version: "3.10.15" - kind: linux - - build-salt-onedir-macos: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-macos'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: macos - - build-salt-onedir-windows: - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-salt-onedir-windows'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-pkgs-onedir-linux: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -522,7 +492,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -541,7 +511,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -560,7 +530,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -579,7 +549,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -598,7 +568,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -616,7 +586,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -632,7 +602,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -648,7 +618,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-deps-ci-action.yml with: nox-session: ci-test-onedir @@ -2747,9 +2717,9 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir + - build-salt-onedir + - build-salt-onedir strategy: fail-fast: false matrix: @@ -3142,9 +3112,7 @@ jobs: - nsis-tests - build-docs - build-deps-onedir - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir - build-pkgs-src-linux - build-pkgs-src-macos - build-pkgs-src-windows diff --git a/.github/workflows/templates/build-ci-deps.yml.jinja b/.github/workflows/templates/build-ci-deps.yml.jinja index f67919a9cee5..b0c6d21a5e3d 100644 --- a/.github/workflows/templates/build-ci-deps.yml.jinja +++ b/.github/workflows/templates/build-ci-deps.yml.jinja @@ -9,7 +9,7 @@ needs: - prepare-workflow <%- if workflow_slug != 'release' %> - - build-salt-onedir-linux + - build-salt-onedir <%- else %> - download-onedir-artifact <%- endif %> @@ -33,7 +33,7 @@ needs: - prepare-workflow <%- if workflow_slug != 'release' %> - - build-salt-onedir-macos + - build-salt-onedir <%- else %> - download-onedir-artifact <%- endif %> @@ -57,7 +57,7 @@ needs: - prepare-workflow <%- if workflow_slug != 'release' %> - - build-salt-onedir-windows + - build-salt-onedir <%- else %> - download-onedir-artifact <%- endif %> diff --git a/.github/workflows/templates/build-packages.yml.jinja b/.github/workflows/templates/build-packages.yml.jinja index 59bfea2c7965..b7facef39dfd 100644 --- a/.github/workflows/templates/build-packages.yml.jinja +++ b/.github/workflows/templates/build-packages.yml.jinja @@ -14,7 +14,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-linux + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -42,7 +42,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-macos + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" @@ -70,7 +70,7 @@ if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: - prepare-workflow - - build-salt-onedir-windows + - build-salt-onedir uses: ./.github/workflows/build-packages.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index a01a09d728c9..4cbe7f2a707d 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -26,9 +26,9 @@ - build-pkgs-onedir-<{ type }> <%- endif %> <%- elif type == 'onedir' %> - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir + - build-salt-onedir + - build-salt-onedir <%- elif type == 'src' %> - build-source-tarball - build-pkgs-src-linux diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 79e9bdbf5ab4..dd43bd05368e 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -262,7 +262,7 @@ <%- endif %> - <%- set job_name = "build-salt-onedir-linux" %> + <%- set job_name = "build-salt-onedir" %> <%- if includes.get(job_name, True) %> <{ job_name }>: @@ -279,51 +279,10 @@ salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" - kind: linux - - <%- endif %> - <%- set job_name = "build-salt-onedir-macos" %> - <%- if includes.get(job_name, True) %> - - <{ job_name }>: - <%- do conclusion_needs.append(job_name) %> - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "<{ relenv_version }>" - python-version: "<{ python_version }>" - kind: macos - - <%- endif %> - <%- set job_name = "build-salt-onedir-windows" %> - <%- if includes.get(job_name, True) %> - - <{ job_name }>: - <%- do conclusion_needs.append(job_name) %> - name: Build Salt Onedir - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - needs: - - prepare-workflow - - build-deps-onedir - - build-source-tarball - uses: ./.github/workflows/build-salt-onedir.yml - with: - cache-seed: ${{ needs.prepare-workflow.outputs.cache-seed }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - relenv-version: "<{ relenv_version }>" - python-version: "<{ python_version }>" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} <%- endif %> - <%- set job_name = "build-pkgs" %> <%- if includes.get(job_name, True) %> <%- include "build-packages.yml.jinja" %> From 8dead11674db5ad44838a9d2652f48884d877157 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 00:35:13 -0700 Subject: [PATCH 121/225] Use build matrix for packages --- .github/workflows/build-packages.yml | 62 +------ .github/workflows/ci.yml | 102 ++++------- .github/workflows/nightly.yml | 165 +++++------------- .github/workflows/scheduled.yml | 102 ++++------- .github/workflows/staging.yml | 165 +++++------------- .../templates/build-packages.yml.jinja | 54 +----- .../workflows/templates/build-repos.yml.jinja | 8 +- .../templates/test-salt-pkg.yml.jinja | 6 +- 8 files changed, 172 insertions(+), 492 deletions(-) diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 15314c09805b..0c4b432c4f3c 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -16,10 +16,6 @@ on: required: true type: string description: The version of python to use with relenv - kind: - type: string - required: true - description: The kind of tests to run windows, macos, or linux sign-macos-packages: type: boolean default: false @@ -40,6 +36,10 @@ on: required: true type: string description: Seed used to invalidate caches + matrix: + required: true + type: string + description: Json job matrix config env: COLUMNS: 190 @@ -50,50 +50,16 @@ env: jobs: - generate-matrix: - name: Test Matrix ${{ inputs.kind }} - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: "3.10.14" - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: tools ci build-matrix ${{ inputs.kind }} - - - build-deb-packages: name: DEB - if: ${{ inputs.kind == 'linux' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} - needs: - - generate-matrix strategy: fail-fast: false matrix: source: - ${{ inputs.source }} - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + include: ${{ fromJSON(inputs.matrix)['linux'] }} container: image: ghcr.io/saltstack/salt-ci-containers/packaging:debian-12 @@ -180,17 +146,14 @@ jobs: build-rpm-packages: name: RPM - if: ${{ inputs.kind == 'linux' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} - needs: - - generate-matrix strategy: fail-fast: false matrix: source: - ${{ inputs.source }} - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + include: ${{ fromJSON(inputs.matrix)['linux'] }} container: image: ghcr.io/saltstack/salt-ci-containers/packaging:rockylinux-9 @@ -259,16 +222,13 @@ jobs: build-macos-pkgs: name: macOS - needs: - - generate-matrix environment: ${{ inputs.environment }} - if: ${{ inputs.kind == 'macos' }} strategy: fail-fast: false matrix: source: - ${{ inputs.source }} - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} + include: ${{ fromJSON(inputs.matrix)['macos'] }} env: PIP_INDEX_URL: https://pypi.org/simple runs-on: @@ -379,19 +339,13 @@ jobs: build-windows-pkgs: name: Windows environment: ${{ inputs.environment }} - needs: - - generate-matrix - if: ${{ inputs.kind == 'windows' }} strategy: fail-fast: false max-parallel: 2 matrix: - arch: - - x86 - - amd64 source: - ${{ inputs.source }} - + include: ${{ fromJSON(inputs.matrix)['windows'] }} runs-on: - windows-latest env: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 90b308310d26..c346a16dd029 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -432,37 +432,7 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-pkgs-onedir-linux: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: linux - source: "onedir" - - build-pkgs-onedir-macos: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - source: "onedir" - kind: macos - - build-pkgs-onedir-windows: + build-pkgs-onedir: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: @@ -475,7 +445,7 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-ci-deps-linux: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} @@ -529,7 +499,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -551,7 +521,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -573,7 +543,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -595,7 +565,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -617,7 +587,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -639,7 +609,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -661,7 +631,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -683,7 +653,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -705,7 +675,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -727,7 +697,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -749,7 +719,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -771,7 +741,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -793,7 +763,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -815,7 +785,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -837,7 +807,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -860,7 +830,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -883,7 +853,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -905,7 +875,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -927,7 +897,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -950,7 +920,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -973,7 +943,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -995,7 +965,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1017,7 +987,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1039,7 +1009,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1061,7 +1031,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1083,7 +1053,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1105,7 +1075,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1127,7 +1097,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1149,7 +1119,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1171,7 +1141,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1193,7 +1163,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1214,7 +1184,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1235,7 +1205,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1256,7 +1226,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 5a8b4bd4e611..311e12e9cba4 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -486,45 +486,7 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-pkgs-onedir-linux: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: linux - source: "onedir" - environment: nightly - sign-macos-packages: false - sign-windows-packages: false - secrets: inherit - - build-pkgs-src-linux: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: linux - source: "src" - environment: nightly - sign-macos-packages: false - sign-windows-packages: false - secrets: inherit - - build-pkgs-onedir-macos: + build-pkgs-onedir: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: @@ -537,51 +499,13 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" - kind: macos - environment: nightly - sign-macos-packages: false - sign-windows-packages: false - secrets: inherit - - build-pkgs-src-macos: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - source: "src" - kind: macos - environment: nightly - sign-macos-packages: false - sign-windows-packages: false - secrets: inherit - - build-pkgs-onedir-windows: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - source: "onedir" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} environment: nightly sign-macos-packages: false sign-windows-packages: false secrets: inherit - build-pkgs-src-windows: + build-pkgs-src: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: @@ -594,7 +518,7 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "src" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} environment: nightly sign-macos-packages: false sign-windows-packages: false @@ -652,7 +576,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -674,7 +598,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -696,7 +620,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -718,7 +642,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -740,7 +664,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -762,7 +686,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -784,7 +708,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -806,7 +730,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -828,7 +752,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -850,7 +774,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -872,7 +796,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -894,7 +818,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -916,7 +840,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -938,7 +862,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -960,7 +884,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -983,7 +907,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1006,7 +930,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1028,7 +952,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1050,7 +974,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1073,7 +997,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1096,7 +1020,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1118,7 +1042,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1140,7 +1064,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1162,7 +1086,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1184,7 +1108,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1206,7 +1130,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1228,7 +1152,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1250,7 +1174,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1272,7 +1196,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1294,7 +1218,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1316,7 +1240,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1337,7 +1261,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1358,7 +1282,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1379,7 +1303,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -2133,9 +2057,7 @@ jobs: needs: - prepare-workflow - build-source-tarball - - build-pkgs-src-linux - - build-pkgs-src-macos - - build-pkgs-src-windows + - build-pkgs-src strategy: fail-fast: false matrix: @@ -2235,7 +2157,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir strategy: fail-fast: false matrix: @@ -2364,7 +2286,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir strategy: fail-fast: false matrix: @@ -2734,8 +2656,6 @@ jobs: needs: - prepare-workflow - build-salt-onedir - - build-salt-onedir - - build-salt-onedir strategy: fail-fast: false matrix: @@ -2960,9 +2880,8 @@ jobs: - build-docs - build-deps-onedir - build-salt-onedir - - build-pkgs-src-linux + - build-pkgs-src - build-pkgs-src-macos - - build-pkgs-src-windows - publish-repositories - test-pkg-rockylinux-8 - test-pkg-rockylinux-8-arm64 diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index d7347e2aae1a..7cd70a44315c 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -471,37 +471,7 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-pkgs-onedir-linux: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: linux - source: "onedir" - - build-pkgs-onedir-macos: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - source: "onedir" - kind: macos - - build-pkgs-onedir-windows: + build-pkgs-onedir: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: @@ -514,7 +484,7 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} build-ci-deps-linux: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} @@ -568,7 +538,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -590,7 +560,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -612,7 +582,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -634,7 +604,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -656,7 +626,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -678,7 +648,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -700,7 +670,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -722,7 +692,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -744,7 +714,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -766,7 +736,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -788,7 +758,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -810,7 +780,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -832,7 +802,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -854,7 +824,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -876,7 +846,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -899,7 +869,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -922,7 +892,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -944,7 +914,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -966,7 +936,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -989,7 +959,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1012,7 +982,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1034,7 +1004,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1056,7 +1026,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1078,7 +1048,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1100,7 +1070,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1122,7 +1092,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1144,7 +1114,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1166,7 +1136,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1188,7 +1158,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1210,7 +1180,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1232,7 +1202,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1253,7 +1223,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1274,7 +1244,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1295,7 +1265,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 545d7a2bcd9a..1dd9248a3cb1 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -468,45 +468,7 @@ jobs: python-version: "3.10.15" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-pkgs-onedir-linux: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: linux - source: "onedir" - environment: staging - sign-macos-packages: false - sign-windows-packages: ${{ inputs.sign-windows-packages }} - secrets: inherit - - build-pkgs-src-linux: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - kind: linux - source: "src" - environment: staging - sign-macos-packages: false - sign-windows-packages: ${{ inputs.sign-windows-packages }} - secrets: inherit - - build-pkgs-onedir-macos: + build-pkgs-onedir: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: @@ -519,51 +481,13 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "onedir" - kind: macos - environment: staging - sign-macos-packages: false - sign-windows-packages: ${{ inputs.sign-windows-packages }} - secrets: inherit - - build-pkgs-src-macos: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - source: "src" - kind: macos - environment: staging - sign-macos-packages: false - sign-windows-packages: ${{ inputs.sign-windows-packages }} - secrets: inherit - - build-pkgs-onedir-windows: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "0.18.0" - python-version: "3.10.15" - source: "onedir" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} environment: staging sign-macos-packages: false sign-windows-packages: ${{ inputs.sign-windows-packages }} secrets: inherit - build-pkgs-src-windows: + build-pkgs-src: name: Build Packages if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} needs: @@ -576,7 +500,7 @@ jobs: relenv-version: "0.18.0" python-version: "3.10.15" source: "src" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} environment: staging sign-macos-packages: false sign-windows-packages: ${{ inputs.sign-windows-packages }} @@ -634,7 +558,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -656,7 +580,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -678,7 +602,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -700,7 +624,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -722,7 +646,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -744,7 +668,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -766,7 +690,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -788,7 +712,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -810,7 +734,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -832,7 +756,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -854,7 +778,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -876,7 +800,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -898,7 +822,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -920,7 +844,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -942,7 +866,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -965,7 +889,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -988,7 +912,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1010,7 +934,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1032,7 +956,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1055,7 +979,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1078,7 +1002,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1100,7 +1024,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1122,7 +1046,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1144,7 +1068,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1166,7 +1090,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1188,7 +1112,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -1210,7 +1134,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1232,7 +1156,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1254,7 +1178,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1276,7 +1200,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -1298,7 +1222,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1319,7 +1243,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1340,7 +1264,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -1361,7 +1285,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: @@ -2115,9 +2039,7 @@ jobs: needs: - prepare-workflow - build-source-tarball - - build-pkgs-src-linux - - build-pkgs-src-macos - - build-pkgs-src-windows + - build-pkgs-src strategy: fail-fast: false matrix: @@ -2217,7 +2139,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir strategy: fail-fast: false matrix: @@ -2346,7 +2268,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir strategy: fail-fast: false matrix: @@ -2718,8 +2640,6 @@ jobs: needs: - prepare-workflow - build-salt-onedir - - build-salt-onedir - - build-salt-onedir strategy: fail-fast: false matrix: @@ -3113,9 +3033,8 @@ jobs: - build-docs - build-deps-onedir - build-salt-onedir - - build-pkgs-src-linux + - build-pkgs-src - build-pkgs-src-macos - - build-pkgs-src-windows - publish-repositories - upload-release-artifacts - pkg-download-tests diff --git a/.github/workflows/templates/build-packages.yml.jinja b/.github/workflows/templates/build-packages.yml.jinja index b7facef39dfd..ebc8d86179ea 100644 --- a/.github/workflows/templates/build-packages.yml.jinja +++ b/.github/workflows/templates/build-packages.yml.jinja @@ -4,7 +4,7 @@ <%- set pkg_types = ("onedir",) %> <%- endif -%> <%- for backend in pkg_types %> - <%- set job_name = "build-pkgs-{}-linux".format(backend) %> + <%- set job_name = "build-pkgs-{}".format(backend) %> <%- if backend == "src" %> <%- do conclusion_needs.append(job_name) %> <%- endif %> @@ -21,69 +21,21 @@ cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} relenv-version: "<{ relenv_version }>" python-version: "<{ python_version }>" - kind: linux source: "<{ backend }>" + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} <%- if gh_environment != "ci" %> environment: <{ gh_environment }> sign-macos-packages: false sign-windows-packages: <% if gh_environment == 'nightly' -%> false <%- else -%> ${{ inputs.sign-windows-packages }} <%- endif %> secrets: inherit - <%- endif %> - - <%- endfor %> - <%- for backend in pkg_types %> - <%- set job_name = "build-pkgs-{}-macos".format(backend) %> - <%- if backend == "src" %> - <%- do conclusion_needs.append(job_name) %> - <%- endif %> - <{ job_name }>: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "<{ relenv_version }>" - python-version: "<{ python_version }>" - source: "<{ backend }>" - kind: macos - <%- if gh_environment != "ci" %> - environment: <{ gh_environment }> - sign-macos-packages: false - sign-windows-packages: <% if gh_environment == 'nightly' -%> false <%- else -%> ${{ inputs.sign-windows-packages }} <%- endif %> - secrets: inherit <%- endif %> <%- endfor %> <%- for backend in pkg_types %> - <%- set job_name = "build-pkgs-{}-windows".format(backend) %> + <%- set job_name = "build-pkgs-{}-macos".format(backend) %> <%- if backend == "src" %> <%- do conclusion_needs.append(job_name) %> <%- endif %> - <{ job_name }>: - name: Build Packages - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-pkgs'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-packages.yml - with: - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - relenv-version: "<{ relenv_version }>" - python-version: "<{ python_version }>" - source: "<{ backend }>" - kind: windows - <%- if gh_environment != "ci" %> - environment: <{ gh_environment }> - sign-macos-packages: false - sign-windows-packages: <% if gh_environment == 'nightly' -%> false <%- else -%> ${{ inputs.sign-windows-packages }} <%- endif %> - secrets: inherit - <%- endif %> - <%- endfor %> diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index 4cbe7f2a707d..912e7421eb48 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -21,19 +21,15 @@ - prepare-workflow <%- if type not in ("src", "onedir") %> <%- if type in ("deb", "rpm") %> - - build-pkgs-onedir-linux + - build-pkgs-onedir <%- else %> - build-pkgs-onedir-<{ type }> <%- endif %> <%- elif type == 'onedir' %> - build-salt-onedir - - build-salt-onedir - - build-salt-onedir <%- elif type == 'src' %> - build-source-tarball - - build-pkgs-src-linux - - build-pkgs-src-macos - - build-pkgs-src-windows + - build-pkgs-src <%- endif %> <%- include "build-{}-repo.yml.jinja".format(type) %> diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index a50ba2cc2877..a8407cf03a07 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -11,7 +11,7 @@ <%- endif %> needs: - prepare-workflow - - build-pkgs-onedir-linux + - build-pkgs-onedir - build-ci-deps-linux uses: ./.github/workflows/test-packages-action-linux.yml with: @@ -48,7 +48,7 @@ <%- endif %> needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir - build-ci-deps-macos uses: ./.github/workflows/test-packages-action-macos.yml with: @@ -81,7 +81,7 @@ <%- endif %> needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir - build-ci-deps-windows uses: ./.github/workflows/test-packages-action-windows.yml with: From d23fde80624c542127acb5bc8c772078932b398f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 01:02:25 -0700 Subject: [PATCH 122/225] Remove un-needed build-matrix command --- tools/ci.py | 36 +++++------------------------------- 1 file changed, 5 insertions(+), 31 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index a8cceeafbaad..d89167cd1029 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -556,46 +556,20 @@ def define_testrun(ctx: Context, event_name: str, changed_files: pathlib.Path): wfh.write(f"testrun={json.dumps(testrun)}\n") -@ci.command( - name="build-matrix", - arguments={ - "kind": { - "help": "kind of build; linux, windows, mac", - }, - }, -) -def build_matrix( - ctx: Context, - kind: str, -): +def _build_matrix(os_kind): """ - Generate matrix for onedir workflows. - - The build-onedir-deps and build-salt-onedir workflows call this method. + Generate matrix for build ci/cd steps. """ - github_output = os.environ.get("GITHUB_OUTPUT") - if github_output is None: - ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") - _matrix = _build_matrix(kind) - if github_output is not None: - with open(github_output, "a", encoding="utf-8") as wfh: - wfh.write(f"matrix={json.dumps(_matrix)}\n") - else: - ctx.warn("The 'GITHUB_OUTPUT' variable is not set.") - ctx.exit(0) - - -def _build_matrix(kind): _matrix = [{"arch": "x86_64"}] - if kind == "windows": + if os_kind == "windows": _matrix = [ {"arch": "amd64"}, {"arch": "x86"}, ] - elif kind == "macos": + elif os_kind == "macos": _matrix.append({"arch": "arm64"}) elif ( - kind == "linux" + os_kind == "linux" and "LINUX_ARM_RUNNER" in os.environ and os.environ["LINUX_ARM_RUNNER"] != "0" ): From 6ebed6ddeaefdb5a99dae612a92dd31f2ea01687 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 01:16:16 -0700 Subject: [PATCH 123/225] Use build deps matrix for ci deps --- .github/workflows/build-deps-ci-action.yml | 55 +----- .github/workflows/ci.yml | 178 +++++++---------- .github/workflows/nightly.yml | 174 +++++++---------- .github/workflows/release.yml | 42 +--- .github/workflows/scheduled.yml | 174 +++++++---------- .github/workflows/staging.yml | 182 +++++++----------- .../templates/build-ci-deps.yml.jinja | 56 +----- .../test-salt-pkg-repo-downloads.yml.jinja | 8 +- .../templates/test-salt-pkg.yml.jinja | 6 +- .../workflows/templates/test-salt.yml.jinja | 6 +- 10 files changed, 306 insertions(+), 575 deletions(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index bb841b8e5339..2588976910e0 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -24,10 +24,6 @@ on: required: true type: string description: Nox Tarball Cache Hash - kind: - required: true - type: string - description: Kind of dependencies to build; linux, macos, windows python-version: required: false type: string @@ -38,6 +34,10 @@ on: type: string description: The onedir package name to use default: salt + matrix: + required: true + type: string + description: Json job matrix config env: @@ -52,52 +52,17 @@ env: jobs: - generate-matrix: - name: Generate Matrix - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - steps: - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: | - tools ci deps-matrix - - linux-dependencies: name: Linux - needs: - - generate-matrix runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} - if: ${{ inputs.kind == 'linux' }} env: USE_S3_CACHE: 'false' timeout-minutes: 90 strategy: fail-fast: false matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include)['linux'] }} + include: ${{ fromJSON(inputs.matrix)['linux'] }} steps: - uses: actions/setup-python@v5 with: @@ -180,15 +145,12 @@ jobs: macos-dependencies: name: MacOS - needs: - - generate-matrix runs-on: ${{ matrix.distro-slug }} - if: ${{ inputs.kind == 'macos' }} timeout-minutes: 90 strategy: fail-fast: false matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include)['macos'] }} + include: ${{ fromJSON(inputs.matrix)['macos'] }} env: PIP_INDEX_URL: https://pypi.org/simple steps: @@ -269,11 +231,8 @@ jobs: windows-dependencies: - needs: - - generate-matrix name: Windows runs-on: windows-latest - if: ${{ inputs.kind == 'windows' }} env: USE_S3_CACHE: 'false' GITHUB_WORKSPACE: 'C:\Windows\Temp\testing' @@ -281,7 +240,7 @@ jobs: strategy: fail-fast: false matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include)['windows'] }} + include: ${{ fromJSON(inputs.matrix)['windows'] }} steps: - name: "Throttle Builds" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c346a16dd029..1d28a78428ef 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -446,7 +446,7 @@ jobs: python-version: "3.10.15" source: "onedir" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-ci-deps-linux: + build-ci-deps: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: @@ -460,39 +460,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: linux - - build-ci-deps-macos: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: macos - - build-ci-deps-windows: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test @@ -500,7 +468,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8 @@ -522,7 +490,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -544,7 +512,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9 @@ -566,7 +534,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -588,7 +556,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2 @@ -610,7 +578,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -632,7 +600,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -654,7 +622,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -676,7 +644,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11 @@ -698,7 +666,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11-arm64 @@ -720,7 +688,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12 @@ -742,7 +710,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12-arm64 @@ -764,7 +732,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -786,7 +754,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -808,7 +776,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -831,7 +799,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -854,7 +822,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -876,7 +844,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -898,7 +866,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -921,7 +889,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -944,7 +912,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -966,7 +934,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -988,7 +956,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1010,7 +978,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1032,7 +1000,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -1054,7 +1022,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -1076,7 +1044,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-12 @@ -1098,7 +1066,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-13 @@ -1120,7 +1088,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-14 @@ -1142,7 +1110,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-15 @@ -1164,7 +1132,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1185,7 +1153,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1206,7 +1174,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1227,7 +1195,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1247,7 +1215,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 @@ -1268,7 +1236,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 @@ -1289,7 +1257,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-12 @@ -1311,7 +1279,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-13 @@ -1333,7 +1301,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-14 @@ -1355,7 +1323,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-15 @@ -1377,7 +1345,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8 @@ -1399,7 +1367,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -1421,7 +1389,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9 @@ -1443,7 +1411,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -1465,7 +1433,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2 @@ -1487,7 +1455,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -1509,7 +1477,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -1531,7 +1499,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -1553,7 +1521,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11 @@ -1575,7 +1543,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11-arm64 @@ -1597,7 +1565,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12 @@ -1619,7 +1587,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12-arm64 @@ -1641,7 +1609,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: fedora-40 @@ -1663,7 +1631,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1685,7 +1653,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1707,7 +1675,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1730,7 +1698,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1753,7 +1721,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1775,7 +1743,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1797,7 +1765,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1820,7 +1788,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1843,7 +1811,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1865,7 +1833,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1887,7 +1855,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1909,7 +1877,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1931,7 +1899,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -1953,7 +1921,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -1978,9 +1946,7 @@ jobs: PIP_INDEX_URL: https://pypi.org/simple needs: - prepare-workflow - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps - test-windows-2019 - test-windows-2022 - test-macos-12 @@ -2149,9 +2115,7 @@ jobs: - build-deps-onedir - build-salt-onedir - combine-all-code-coverage - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps - test-windows-2019 - test-windows-2022 - test-macos-12 diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 311e12e9cba4..4cfe252c6b6c 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -523,7 +523,7 @@ jobs: sign-macos-packages: false sign-windows-packages: false secrets: inherit - build-ci-deps-linux: + build-ci-deps: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: @@ -537,39 +537,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: linux - - build-ci-deps-macos: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: macos - - build-ci-deps-windows: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test @@ -577,7 +545,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8 @@ -599,7 +567,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -621,7 +589,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9 @@ -643,7 +611,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -665,7 +633,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2 @@ -687,7 +655,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -709,7 +677,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -731,7 +699,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -753,7 +721,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11 @@ -775,7 +743,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11-arm64 @@ -797,7 +765,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12 @@ -819,7 +787,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12-arm64 @@ -841,7 +809,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -863,7 +831,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -885,7 +853,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -908,7 +876,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -931,7 +899,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -953,7 +921,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -975,7 +943,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -998,7 +966,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1021,7 +989,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1043,7 +1011,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1065,7 +1033,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1087,7 +1055,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1109,7 +1077,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -1131,7 +1099,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -1153,7 +1121,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-12 @@ -1175,7 +1143,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-13 @@ -1197,7 +1165,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-14 @@ -1219,7 +1187,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-15 @@ -1241,7 +1209,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1262,7 +1230,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1283,7 +1251,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1304,7 +1272,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1324,7 +1292,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 @@ -1345,7 +1313,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 @@ -1366,7 +1334,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-12 @@ -1388,7 +1356,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-13 @@ -1410,7 +1378,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-14 @@ -1432,7 +1400,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-15 @@ -1454,7 +1422,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8 @@ -1476,7 +1444,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -1498,7 +1466,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9 @@ -1520,7 +1488,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -1542,7 +1510,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2 @@ -1564,7 +1532,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -1586,7 +1554,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -1608,7 +1576,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -1630,7 +1598,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11 @@ -1652,7 +1620,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11-arm64 @@ -1674,7 +1642,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12 @@ -1696,7 +1664,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12-arm64 @@ -1718,7 +1686,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: fedora-40 @@ -1740,7 +1708,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1762,7 +1730,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1784,7 +1752,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1807,7 +1775,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1830,7 +1798,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1852,7 +1820,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1874,7 +1842,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1897,7 +1865,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1920,7 +1888,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1942,7 +1910,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1964,7 +1932,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1986,7 +1954,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -2008,7 +1976,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -2030,7 +1998,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -2788,9 +2756,7 @@ jobs: - build-windows-repo - build-macos-repo - build-onedir-repo - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps - test-windows-2019 - test-windows-2022 - test-macos-12 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7ca9d7ecf0d7..3b62315142b6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -169,7 +169,7 @@ jobs: path: artifacts/salt-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz* retention-days: 7 if-no-files-found: error - build-ci-deps-linux: + build-ci-deps: name: CI Deps needs: - prepare-workflow @@ -182,37 +182,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: linux - - build-ci-deps-macos: - name: CI Deps - needs: - - prepare-workflow - - download-onedir-artifact - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: macos - - build-ci-deps-windows: - name: CI Deps - needs: - - prepare-workflow - - download-onedir-artifact - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} backup: name: Backup @@ -284,9 +254,7 @@ jobs: needs: - prepare-workflow - publish-repositories - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps - download-onedir-artifact uses: ./.github/workflows/test-package-downloads-action.yml with: @@ -478,9 +446,7 @@ jobs: - pkg-download-tests - release - publish-pypi - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 7cd70a44315c..5bfbc96a00f8 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -485,7 +485,7 @@ jobs: python-version: "3.10.15" source: "onedir" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} - build-ci-deps-linux: + build-ci-deps: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: @@ -499,39 +499,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: linux - - build-ci-deps-macos: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: macos - - build-ci-deps-windows: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test @@ -539,7 +507,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8 @@ -561,7 +529,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -583,7 +551,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9 @@ -605,7 +573,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -627,7 +595,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2 @@ -649,7 +617,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -671,7 +639,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -693,7 +661,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -715,7 +683,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11 @@ -737,7 +705,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11-arm64 @@ -759,7 +727,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12 @@ -781,7 +749,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12-arm64 @@ -803,7 +771,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -825,7 +793,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -847,7 +815,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -870,7 +838,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -893,7 +861,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -915,7 +883,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -937,7 +905,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -960,7 +928,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -983,7 +951,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1005,7 +973,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1027,7 +995,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1049,7 +1017,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1071,7 +1039,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -1093,7 +1061,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -1115,7 +1083,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-12 @@ -1137,7 +1105,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-13 @@ -1159,7 +1127,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-14 @@ -1181,7 +1149,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-15 @@ -1203,7 +1171,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1224,7 +1192,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1245,7 +1213,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1266,7 +1234,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1286,7 +1254,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 @@ -1307,7 +1275,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 @@ -1328,7 +1296,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-12 @@ -1350,7 +1318,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-13 @@ -1372,7 +1340,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-14 @@ -1394,7 +1362,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-15 @@ -1416,7 +1384,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8 @@ -1438,7 +1406,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -1460,7 +1428,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9 @@ -1482,7 +1450,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -1504,7 +1472,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2 @@ -1526,7 +1494,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -1548,7 +1516,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -1570,7 +1538,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -1592,7 +1560,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11 @@ -1614,7 +1582,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11-arm64 @@ -1636,7 +1604,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12 @@ -1658,7 +1626,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12-arm64 @@ -1680,7 +1648,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: fedora-40 @@ -1702,7 +1670,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1724,7 +1692,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1746,7 +1714,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1769,7 +1737,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1792,7 +1760,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1814,7 +1782,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1836,7 +1804,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1859,7 +1827,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1882,7 +1850,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1904,7 +1872,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1926,7 +1894,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1948,7 +1916,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1970,7 +1938,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -1992,7 +1960,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -2025,9 +1993,7 @@ jobs: - build-docs - build-deps-onedir - build-salt-onedir - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps - test-windows-2019 - test-windows-2022 - test-macos-12 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 1dd9248a3cb1..e1ea653ac2e1 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -505,7 +505,7 @@ jobs: sign-macos-packages: false sign-windows-packages: ${{ inputs.sign-windows-packages }} secrets: inherit - build-ci-deps-linux: + build-ci-deps: name: CI Deps if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} needs: @@ -519,39 +519,7 @@ jobs: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: linux - - build-ci-deps-macos: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: macos - - build-ci-deps-windows: - name: CI Deps - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - needs: - - prepare-workflow - - build-salt-onedir - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: 2022.8.7 - python-version: "3.10" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test @@ -559,7 +527,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8 @@ -581,7 +549,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -603,7 +571,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9 @@ -625,7 +593,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -647,7 +615,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2 @@ -669,7 +637,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -691,7 +659,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -713,7 +681,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -735,7 +703,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11 @@ -757,7 +725,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-11-arm64 @@ -779,7 +747,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12 @@ -801,7 +769,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: debian-12-arm64 @@ -823,7 +791,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -845,7 +813,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -867,7 +835,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4 @@ -890,7 +858,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -913,7 +881,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -935,7 +903,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -957,7 +925,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5 @@ -980,7 +948,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1003,7 +971,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1025,7 +993,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1047,7 +1015,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1069,7 +1037,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1091,7 +1059,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -1113,7 +1081,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -1135,7 +1103,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-12 @@ -1157,7 +1125,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-13 @@ -1179,7 +1147,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-14 @@ -1201,7 +1169,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: macos-15 @@ -1223,7 +1191,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1244,7 +1212,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2019 @@ -1265,7 +1233,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1286,7 +1254,7 @@ jobs: needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: windows-2022 @@ -1306,7 +1274,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2019 @@ -1327,7 +1295,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: windows-2022 @@ -1348,7 +1316,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-12 @@ -1370,7 +1338,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-13 @@ -1392,7 +1360,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-14 @@ -1414,7 +1382,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: macos-15 @@ -1436,7 +1404,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8 @@ -1458,7 +1426,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-8-arm64 @@ -1480,7 +1448,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9 @@ -1502,7 +1470,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: rockylinux-9-arm64 @@ -1524,7 +1492,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2 @@ -1546,7 +1514,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2-arm64 @@ -1568,7 +1536,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023 @@ -1590,7 +1558,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: amazonlinux-2023-arm64 @@ -1612,7 +1580,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11 @@ -1634,7 +1602,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-11-arm64 @@ -1656,7 +1624,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12 @@ -1678,7 +1646,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: debian-12-arm64 @@ -1700,7 +1668,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: fedora-40 @@ -1722,7 +1690,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1744,7 +1712,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1766,7 +1734,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4 @@ -1789,7 +1757,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-4-arm64 @@ -1812,7 +1780,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1834,7 +1802,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1856,7 +1824,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5 @@ -1879,7 +1847,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: photonos-5-arm64 @@ -1902,7 +1870,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04 @@ -1924,7 +1892,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-20.04-arm64 @@ -1946,7 +1914,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04 @@ -1968,7 +1936,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-22.04-arm64 @@ -1990,7 +1958,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04 @@ -2012,7 +1980,7 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: ubuntu-24.04-arm64 @@ -2876,12 +2844,8 @@ jobs: needs: - prepare-workflow - publish-repositories - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-ci-deps + - build-salt-onedir uses: ./.github/workflows/test-package-downloads-action.yml with: nox-session: ci-test-onedir @@ -2900,9 +2864,7 @@ jobs: needs: - prepare-workflow - upload-release-artifacts - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps - test-windows-2019 - test-windows-2022 - test-macos-12 diff --git a/.github/workflows/templates/build-ci-deps.yml.jinja b/.github/workflows/templates/build-ci-deps.yml.jinja index b0c6d21a5e3d..6f97249fd43b 100644 --- a/.github/workflows/templates/build-ci-deps.yml.jinja +++ b/.github/workflows/templates/build-ci-deps.yml.jinja @@ -1,7 +1,7 @@ - build-ci-deps-linux: - <%- do test_salt_needs.append("build-ci-deps-linux") %> - <%- do test_salt_linux_needs.append("build-ci-deps-linux") %> + build-ci-deps: + <%- do test_salt_needs.append("build-ci-deps") %> + <%- do test_salt_linux_needs.append("build-ci-deps") %> name: CI Deps <%- if workflow_slug != 'release' %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} @@ -21,52 +21,4 @@ salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: linux - - build-ci-deps-macos: - <%- do test_salt_needs.append("build-ci-deps-macos") %> - <%- do test_salt_macos_needs.append("build-ci-deps-macos") %> - name: CI Deps - <%- if workflow_slug != 'release' %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - <%- endif %> - needs: - - prepare-workflow - <%- if workflow_slug != 'release' %> - - build-salt-onedir - <%- else %> - - download-onedir-artifact - <%- endif %> - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: <{ nox_version }> - python-version: "<{ gh_actions_workflows_python_version }>" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: macos - - build-ci-deps-windows: - <%- do test_salt_needs.append("build-ci-deps-windows") %> - <%- do test_salt_windows_needs.append("build-ci-deps-windows") %> - name: CI Deps - <%- if workflow_slug != 'release' %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-deps-ci'] }} - <%- endif %> - needs: - - prepare-workflow - <%- if workflow_slug != 'release' %> - - build-salt-onedir - <%- else %> - - download-onedir-artifact - <%- endif %> - uses: ./.github/workflows/build-deps-ci-action.yml - with: - nox-session: ci-test-onedir - nox-version: <{ nox_version }> - python-version: "<{ gh_actions_workflows_python_version }>" - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" - kind: windows + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} diff --git a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja index c5c2daf69e44..81403eeb2b2b 100644 --- a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja @@ -13,15 +13,11 @@ needs: - prepare-workflow - publish-repositories - - build-ci-deps-linux - - build-ci-deps-macos - - build-ci-deps-windows + - build-ci-deps <%- if gh_environment == "release" %> - download-onedir-artifact <%- else %> - - build-salt-onedir-linux - - build-salt-onedir-macos - - build-salt-onedir-windows + - build-salt-onedir <%- endif %> uses: ./.github/workflows/test-package-downloads-action.yml with: diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index a8407cf03a07..e92e7ba84412 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -12,7 +12,7 @@ needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-packages-action-linux.yml with: distro-slug: <{ os.slug }> @@ -49,7 +49,7 @@ needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-packages-action-macos.yml with: distro-slug: <{ os.slug }> @@ -82,7 +82,7 @@ needs: - prepare-workflow - build-pkgs-onedir - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-packages-action-windows.yml with: distro-slug: <{ os.slug }> diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index f5fdefa096d4..76c1a7173fcc 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -16,7 +16,7 @@ <%- endif %> needs: - prepare-workflow - - build-ci-deps-windows + - build-ci-deps uses: ./.github/workflows/test-action-windows.yml with: distro-slug: <{ os.slug }> @@ -47,7 +47,7 @@ <%- endif %> needs: - prepare-workflow - - build-ci-deps-macos + - build-ci-deps uses: ./.github/workflows/test-action-macos.yml with: distro-slug: <{ os.slug }> @@ -79,7 +79,7 @@ <%- endif %> needs: - prepare-workflow - - build-ci-deps-linux + - build-ci-deps uses: ./.github/workflows/test-action-linux.yml with: distro-slug: <{ os.slug }> From 0217b69ccbad851a8f430dadc673f73a51828c95 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 01:29:26 -0700 Subject: [PATCH 124/225] Remove unused job names --- tools/ci.py | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index d89167cd1029..686379b3a4a4 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -211,13 +211,7 @@ def define_jobs( "build-docs": True, "build-source-tarball": True, "build-deps-onedir": True, - "build-deps-onedir-linux": True, - "build-deps-onedir-macos": False, - "build-deps-onedir-windows": True, "build-salt-onedir": True, - "build-salt-onedir-linux": True, - "build-salt-onedir-macos": False, - "build-salt-onedir-windows": True, "build-pkgs": True, "build-deps-ci": True, } @@ -1533,13 +1527,7 @@ def workflow_config( "build-docs": True, "build-source-tarball": True, "build-deps-onedir": True, - "build-deps-onedir-linux": True, - "build-deps-onedir-macos": True, - "build-deps-onedir-windows": True, "build-salt-onedir": True, - "build-salt-onedir-linux": True, - "build-salt-onedir-macos": True, - "build-salt-onedir-windows": True, "build-pkgs": True, "build-deps-ci": True, } From cda795a3b47770a73162d7bdbbfb3489364926aa Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 01:56:24 -0700 Subject: [PATCH 125/225] Remove source from build package matrix --- .github/workflows/build-packages.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 0c4b432c4f3c..e3b5fa1487db 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -57,8 +57,6 @@ jobs: strategy: fail-fast: false matrix: - source: - - ${{ inputs.source }} include: ${{ fromJSON(inputs.matrix)['linux'] }} container: @@ -226,8 +224,6 @@ jobs: strategy: fail-fast: false matrix: - source: - - ${{ inputs.source }} include: ${{ fromJSON(inputs.matrix)['macos'] }} env: PIP_INDEX_URL: https://pypi.org/simple @@ -343,8 +339,6 @@ jobs: fail-fast: false max-parallel: 2 matrix: - source: - - ${{ inputs.source }} include: ${{ fromJSON(inputs.matrix)['windows'] }} runs-on: - windows-latest From 5646183316b5bd6cf791af1b3c98d8fcd47a79b9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 02:11:04 -0700 Subject: [PATCH 126/225] Fix ci deps for macos arches --- .github/workflows/build-deps-ci-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-deps-ci-action.yml b/.github/workflows/build-deps-ci-action.yml index 2588976910e0..b3663e8350eb 100644 --- a/.github/workflows/build-deps-ci-action.yml +++ b/.github/workflows/build-deps-ci-action.yml @@ -145,7 +145,7 @@ jobs: macos-dependencies: name: MacOS - runs-on: ${{ matrix.distro-slug }} + runs-on: ${{ matrix.arch == 'x86_64' && 'macos-13' || 'macos-14' }} timeout-minutes: 90 strategy: fail-fast: false From 2fdc340a1859ce981fd33074275885468849caac Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 03:27:05 -0700 Subject: [PATCH 127/225] fix linter --- .github/workflows/nightly.yml | 4 ++-- .github/workflows/staging.yml | 4 ++-- .github/workflows/templates/build-repos.yml.jinja | 4 ---- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 4cfe252c6b6c..48e1db942110 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2430,7 +2430,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir strategy: fail-fast: false matrix: @@ -2532,7 +2532,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir strategy: fail-fast: false matrix: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index e1ea653ac2e1..aedd25bc54ec 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -2414,7 +2414,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-windows + - build-pkgs-onedir strategy: fail-fast: false matrix: @@ -2516,7 +2516,7 @@ jobs: USE_S3_CACHE: 'false' needs: - prepare-workflow - - build-pkgs-onedir-macos + - build-pkgs-onedir strategy: fail-fast: false matrix: diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index 912e7421eb48..77c45623d2cd 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -20,11 +20,7 @@ needs: - prepare-workflow <%- if type not in ("src", "onedir") %> - <%- if type in ("deb", "rpm") %> - build-pkgs-onedir - <%- else %> - - build-pkgs-onedir-<{ type }> - <%- endif %> <%- elif type == 'onedir' %> - build-salt-onedir <%- elif type == 'src' %> From 57936911c16fa218630b805152d3a9ef4941e791 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 14:47:11 -0700 Subject: [PATCH 128/225] Add arguments needed for pkg matrix on workflow config --- .github/workflows/ci.yml | 2 +- .github/workflows/nightly.yml | 2 +- .github/workflows/scheduled.yml | 2 +- .github/workflows/staging.yml | 2 +- .github/workflows/templates/layout.yml.jinja | 2 +- .../workflows/test-packages-action-linux.yml | 3 -- tools/ci.py | 34 +++++++++++++++++++ tools/utils/__init__.py | 4 ++- 8 files changed, 42 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1d28a78428ef..db2b540db972 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -213,7 +213,7 @@ jobs: - name: Define workflow config id: workflow-config run: | - tools ci workflow-config ${{ github.event_name }} changed-files.json + tools ci workflow-config ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 48e1db942110..a2e41f642e8f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -262,7 +262,7 @@ jobs: - name: Define workflow config id: workflow-config run: | - tools ci workflow-config${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }} ${{ github.event_name }} changed-files.json + tools ci workflow-config${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }} ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 5bfbc96a00f8..f775b4b03fc2 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -252,7 +252,7 @@ jobs: - name: Define workflow config id: workflow-config run: | - tools ci workflow-config ${{ github.event_name }} changed-files.json + tools ci workflow-config ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index aedd25bc54ec..f5a349e2bb1b 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -252,7 +252,7 @@ jobs: - name: Define workflow config id: workflow-config run: | - tools ci workflow-config${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }}${{ inputs.skip-salt-pkg-download-test-suite && ' --skip-pkg-download-tests' || '' }} ${{ github.event_name }} changed-files.json + tools ci workflow-config${{ inputs.skip-salt-test-suite && ' --skip-tests' || '' }}${{ inputs.skip-salt-pkg-test-suite && ' --skip-pkg-tests' || '' }}${{ inputs.skip-salt-pkg-download-test-suite && ' --skip-pkg-download-tests' || '' }} ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} diff --git a/.github/workflows/templates/layout.yml.jinja b/.github/workflows/templates/layout.yml.jinja index d18d41ffcf28..e5b429a3760f 100644 --- a/.github/workflows/templates/layout.yml.jinja +++ b/.github/workflows/templates/layout.yml.jinja @@ -279,7 +279,7 @@ jobs: run: | tools ci workflow-config<{ prepare_workflow_skip_test_suite }><{ prepare_workflow_skip_pkg_test_suite }><{ prepare_workflow_skip_pkg_download_test_suite - }> ${{ github.event_name }} changed-files.json + }> ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json - name: Check Contents of generated testrun-changed-files.txt if: ${{ fromJSON(steps.define-testrun.outputs.testrun)['type'] != 'full' }} diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index 59b6e3785d07..88a218867b50 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -113,9 +113,6 @@ jobs: container: image: ${{ inputs.container }} options: --privileged - #volumes: - # - /run/systemd/system:/run/systemd/system - # - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket timeout-minutes: 120 # 2 Hours - More than this and something is wrong needs: - generate-matrix diff --git a/tools/ci.py b/tools/ci.py index 686379b3a4a4..e0e9f9590ef2 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1489,6 +1489,9 @@ def upload_coverage(ctx: Context, reports_path: pathlib.Path, commit_sha: str = @ci.command( name="workflow-config", arguments={ + "salt_version": { + "help": "The version of salt being tested against", + }, "event_name": { "help": "The name of the GitHub event being processed.", }, @@ -1511,6 +1514,7 @@ def upload_coverage(ctx: Context, reports_path: pathlib.Path, commit_sha: str = ) def workflow_config( ctx: Context, + salt_version: str, event_name: str, changed_files: pathlib.Path, skip_tests: bool = False, @@ -1574,6 +1578,36 @@ def workflow_config( config["build-matrix"] = { kind: _build_matrix(kind) for kind in ["linux", "macos", "windows"] # type: ignore } + + # Get salt releases. + releases = tools.utils.get_salt_releases(ctx) + str_releases = [str(version) for version in releases] + latest = str_releases[-1] + + # Get testing releases. + parsed_salt_version = tools.utils.Version(salt_version) + # We want the latest 4 major versions, removing the oldest if this version is a new major + num_major_versions = 4 + if parsed_salt_version.minor == 0: + num_major_versions = 3 + majors = sorted( + list( + { + # We aren't testing upgrades from anything before 3006.0 + # and we don't want to test 3007.? on the 3006.x branch + version.major + for version in releases + if version.major > 3005 and version.major <= parsed_salt_version.major + } + ) + )[-num_major_versions:] + testing_releases = [] + # Append the latest minor for each major + for major in majors: + minors_of_major = [version for version in releases if version.major == major] + testing_releases.append(minors_of_major[-1]) + str_releases = [str(version) for version in testing_releases] + ctx.info("Jobs selected are") for x, y in jobs.items(): ctx.info(f"{x} = {y}") diff --git a/tools/utils/__init__.py b/tools/utils/__init__.py index be3954b72e5a..01ca07068ebb 100644 --- a/tools/utils/__init__.py +++ b/tools/utils/__init__.py @@ -220,7 +220,9 @@ def __hash__(self): return hash(str(self)) -def get_salt_releases(ctx: Context, repository: str) -> list[Version]: +def get_salt_releases( + ctx: Context, repository: str = "saltstack/salt" +) -> list[Version]: """ Return a list of salt versions """ From c515b47ea4d50bc113aca67ee9b9dcf7f1af6ae4 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 17:40:53 -0700 Subject: [PATCH 129/225] Fix pre-commit --- .github/workflows/nightly.yml | 1 - .github/workflows/staging.yml | 1 - .github/workflows/templates/build-packages.yml.jinja | 7 ------- 3 files changed, 9 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a2e41f642e8f..628ea0c20376 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2847,7 +2847,6 @@ jobs: - build-deps-onedir - build-salt-onedir - build-pkgs-src - - build-pkgs-src-macos - publish-repositories - test-pkg-rockylinux-8 - test-pkg-rockylinux-8-arm64 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index f5a349e2bb1b..7a5c59796569 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -2996,7 +2996,6 @@ jobs: - build-deps-onedir - build-salt-onedir - build-pkgs-src - - build-pkgs-src-macos - publish-repositories - upload-release-artifacts - pkg-download-tests diff --git a/.github/workflows/templates/build-packages.yml.jinja b/.github/workflows/templates/build-packages.yml.jinja index ebc8d86179ea..bd5a532910eb 100644 --- a/.github/workflows/templates/build-packages.yml.jinja +++ b/.github/workflows/templates/build-packages.yml.jinja @@ -32,10 +32,3 @@ <%- endif %> <%- endfor %> - <%- for backend in pkg_types %> - <%- set job_name = "build-pkgs-{}-macos".format(backend) %> - <%- if backend == "src" %> - <%- do conclusion_needs.append(job_name) %> - <%- endif %> - - <%- endfor %> From af167a9264ef4ac2accc84bb1417519709579100 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 20 Nov 2024 18:07:16 -0700 Subject: [PATCH 130/225] Fix up prepare release step --- .github/workflows/ci.yml | 3 ++- .github/workflows/nightly.yml | 3 ++- .github/workflows/scheduled.yml | 3 ++- .github/workflows/staging.yml | 7 ++++++- .github/workflows/templates/ci.yml.jinja | 9 --------- 5 files changed, 12 insertions(+), 13 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index db2b540db972..f8bac24a6604 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -256,8 +256,9 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" + runs-on: + - ubuntu-latest if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} - runs-on: ubuntu-latest needs: - prepare-workflow steps: diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 628ea0c20376..0b9fc5898ac9 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -305,8 +305,9 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" + runs-on: + - ubuntu-latest if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} - runs-on: ubuntu-latest needs: - prepare-workflow steps: diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index f775b4b03fc2..94182cd7a366 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -295,8 +295,9 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" + runs-on: + - ubuntu-latest if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} - runs-on: ubuntu-latest needs: - prepare-workflow steps: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 7a5c59796569..e1360846717a 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -295,14 +295,19 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} runs-on: - ubuntu-latest + if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} needs: - prepare-workflow steps: - uses: actions/checkout@v4 + - name: Set up Python 3.10 + uses: actions/setup-python@v5 + with: + python-version: "3.10" + - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts with: diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index dd43bd05368e..5b0632a8df0c 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -56,28 +56,19 @@ <{ job_name }>: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" - <%- if prepare_actual_release %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} runs-on: - ubuntu-latest - <%- else %> if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} - runs-on: ubuntu-latest - <%- endif %> needs: - prepare-workflow steps: - uses: actions/checkout@v4 - <%- if not prepare_actual_release %> - - name: Set up Python 3.10 uses: actions/setup-python@v5 with: python-version: "3.10" - <%- endif %> - - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts with: From e6e767642a09eecba9086688e12f44340b32c265 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 21 Nov 2024 14:52:17 -0700 Subject: [PATCH 131/225] Fix actionlint --- .github/workflows/release.yml | 6 ++++++ .github/workflows/templates/release.yml.jinja | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3b62315142b6..863a0d2898d2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -61,6 +61,7 @@ jobs: latest-release: ${{ steps.get-salt-releases.outputs.latest-release }} releases: ${{ steps.get-salt-releases.outputs.releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -119,6 +120,11 @@ jobs: run: | echo "nox-archive-hash=${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json', 'noxfile.py', 'pkg/common/env-cleanup-rules.yml', '.github/workflows/build-deps-ci-action.yml') }}" | tee -a "$GITHUB_OUTPUT" + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config${{ inputs.skip-salt-pkg-download-test-suite && ' --skip-pkg-download-tests' || '' }} ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json + download-onedir-artifact: name: Download Staging Onedir Artifact runs-on: diff --git a/.github/workflows/templates/release.yml.jinja b/.github/workflows/templates/release.yml.jinja index 1943fe2fe849..9e6e098c80ea 100644 --- a/.github/workflows/templates/release.yml.jinja +++ b/.github/workflows/templates/release.yml.jinja @@ -87,6 +87,7 @@ permissions: latest-release: ${{ steps.get-salt-releases.outputs.latest-release }} releases: ${{ steps.get-salt-releases.outputs.releases }} nox-archive-hash: ${{ steps.nox-archive-hash.outputs.nox-archive-hash }} + config: ${{ steps.workflow-config.outputs.config }} steps: - uses: actions/checkout@v4 with: @@ -145,6 +146,14 @@ permissions: run: | echo "nox-archive-hash=<{ nox_archive_hashfiles }>" | tee -a "$GITHUB_OUTPUT" + - name: Define workflow config + id: workflow-config + run: | + tools ci workflow-config<{ prepare_workflow_skip_test_suite }><{ + prepare_workflow_skip_pkg_test_suite }><{ prepare_workflow_skip_pkg_download_test_suite + }> ${{ steps.setup-salt-version.outputs.salt-version }} ${{ github.event_name }} changed-files.json + + <%- endblock prepare_workflow_job %> <%- endif %> From 65cf9864598601b8b8557f291f0401164a0f29d2 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 21 Nov 2024 15:08:43 -0700 Subject: [PATCH 132/225] Warn about range library --- salt/roster/range.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/salt/roster/range.py b/salt/roster/range.py index 3f039dcef427..0633d56e389e 100644 --- a/salt/roster/range.py +++ b/salt/roster/range.py @@ -24,7 +24,7 @@ HAS_RANGE = True except ImportError: - log.error("Unable to load range library") + log.warning("Unable to load range library") # pylint: enable=import-error From e5af36346ca2bedfb849b6c6f37456c395f0a9df Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 21 Nov 2024 16:39:23 -0700 Subject: [PATCH 133/225] log string versions --- tools/ci.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tools/ci.py b/tools/ci.py index e0e9f9590ef2..6e85e1edbaab 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1607,6 +1607,18 @@ def workflow_config( minors_of_major = [version for version in releases if version.major == major] testing_releases.append(minors_of_major[-1]) str_releases = [str(version) for version in testing_releases] + ctx.info(f"str_releases {str_releases}") + + pkg_matrix = [ + dict( + { + "tests-chunk": "install", + "version": None, + }, + **_, + ) + for _ in TEST_SALT_PKG_LISTING["linux"] # type: ignore + ] ctx.info("Jobs selected are") for x, y in jobs.items(): From 0a990cd4538c3b6b1ca4fcc4f121b54bfeb85c36 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 21 Nov 2024 16:50:27 -0700 Subject: [PATCH 134/225] Log pkg matrix --- tools/ci.py | 5 ++++- tools/utils/__init__.py | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/tools/ci.py b/tools/ci.py index 6e85e1edbaab..f9d17cd302c0 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1615,10 +1615,13 @@ def workflow_config( "tests-chunk": "install", "version": None, }, - **_, + **_.as_dict(), ) for _ in TEST_SALT_PKG_LISTING["linux"] # type: ignore ] + import pprint + + ctx.info(f"{pprint.pformat(pkg_matrix)}") ctx.info("Jobs selected are") for x, y in jobs.items(): diff --git a/tools/utils/__init__.py b/tools/utils/__init__.py index 01ca07068ebb..32877519bc64 100644 --- a/tools/utils/__init__.py +++ b/tools/utils/__init__.py @@ -73,6 +73,18 @@ class Linux(OS): def job_name(self): return f"test-{ self.slug.replace('.', '') }{'-fips' if self.fips else ''}" + def as_dict(self): + return { + "platform": self.platform, + "slug": self.slug, + "arch": self.arch, + "display_name": self.display_name, + "pkg_type": self.pkg_type, + "fips": self.fips, + "container": self.container, + "job_name": self.job_name, + } + @attr.s(frozen=True, slots=True) class LinuxPkg(Linux): @@ -95,6 +107,16 @@ def _default_runner(self): def job_name(self): return f"test-{ self.slug.replace('.', '') }" + def as_dict(self): + return { + "platform": self.platform, + "slug": self.slug, + "arch": self.arch, + "display_name": self.display_name, + "pkg_type": self.pkg_type, + "runner": self.runner, + "job_name": self.job_name, + } @attr.s(frozen=True, slots=True) class MacOSPkg(MacOS): @@ -115,6 +137,16 @@ def _get_default_arch(self): def job_name(self): return f"test-{ self.slug.replace('.', '') }" + def as_dict(self): + return { + "platform": self.platform, + "slug": self.slug, + "arch": self.arch, + "display_name": self.display_name, + "pkg_type": self.pkg_type, + "job_name": self.job_name, + } + @attr.s(frozen=True, slots=True) class WindowsPkg(Windows): From 94cc6bf6b8626c0b30ffccd12fd089e1929fcefa Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 21 Nov 2024 17:39:41 -0700 Subject: [PATCH 135/225] package build matrix wip --- .github/actionlint.yaml | 12 - .github/workflows/ci.yml | 16 ++ .github/workflows/nightly.yml | 16 ++ .github/workflows/scheduled.yml | 16 ++ .github/workflows/staging.yml | 16 ++ .../templates/test-salt-pkg.yml.jinja | 18 ++ .github/workflows/test-packages-action.yml | 239 ++++++++++++++++++ tools/ci.py | 53 +++- tools/utils/__init__.py | 1 + 9 files changed, 363 insertions(+), 24 deletions(-) create mode 100644 .github/workflows/test-packages-action.yml diff --git a/.github/actionlint.yaml b/.github/actionlint.yaml index 717cd80f435f..b651ab58f18a 100644 --- a/.github/actionlint.yaml +++ b/.github/actionlint.yaml @@ -1,17 +1,5 @@ self-hosted-runner: # Labels of self-hosted runner in array of string labels: - - bastion - - x86_64 - - arm64 - - aarch64 - - amd64 - - repo-nightly - - repo-staging - - repo-release - - medium - - large - - macos-13-arm64 - - macos-13-xlarge - linux-x86_64 - linux-arm64 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f8bac24a6604..3dde28c91fa2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -462,6 +462,22 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + test-packages: + name: Package Test + needs: + - prepare-workflow + - build-pkgs-onedir + - build-ci-deps + uses: ./.github/workflows/test-packages-action.yml + with: + nox-session: ci-test-onedir + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 0b9fc5898ac9..704c9604dba2 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -539,6 +539,22 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + test-packages: + name: Package Test + needs: + - prepare-workflow + - build-pkgs-onedir + - build-ci-deps + uses: ./.github/workflows/test-packages-action.yml + with: + nox-session: ci-test-onedir + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 94182cd7a366..54be44679335 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -501,6 +501,22 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + test-packages: + name: Package Test + needs: + - prepare-workflow + - build-pkgs-onedir + - build-ci-deps + uses: ./.github/workflows/test-packages-action.yml + with: + nox-session: ci-test-onedir + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index e1360846717a..a5b5ba2931fd 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -525,6 +525,22 @@ jobs: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + test-packages: + name: Package Test + needs: + - prepare-workflow + - build-pkgs-onedir + - build-ci-deps + uses: ./.github/workflows/test-packages-action.yml + with: + nox-session: ci-test-onedir + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + nox-version: 2022.8.7 + python-version: "3.10" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 + skip-code-coverage: true + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test-pkg-rockylinux-8: name: Rocky Linux 8 Package Test diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index e92e7ba84412..2465e7e9aff8 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -1,3 +1,21 @@ + <%- set job_name = "test-packages" %> + <{ job_name }>: + name: Package Test + needs: + - prepare-workflow + - build-pkgs-onedir + - build-ci-deps + uses: ./.github/workflows/test-packages-action.yml + with: + nox-session: ci-test-onedir + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + nox-version: <{ nox_version }> + python-version: "<{ gh_actions_workflows_python_version }>" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> + skip-code-coverage: <{ skip_test_coverage_check }> + testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} + <%- for os in test_salt_pkg_listing["linux"] %> <%- set job_name = os.job_name %> diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml new file mode 100644 index 000000000000..a7d61556bd7f --- /dev/null +++ b/.github/workflows/test-packages-action.yml @@ -0,0 +1,239 @@ +name: Test Artifact + +on: + workflow_call: + inputs: + salt-version: + type: string + required: true + description: The Salt version of the packages to install and test + cache-prefix: + required: true + type: string + description: Seed used to invalidate caches + testing-releases: + required: true + type: string + description: A JSON list of releases to test upgrades against + nox-version: + required: true + type: string + description: The nox version to install + python-version: + required: false + type: string + description: The python version to run tests with + default: "3.10" + nox-session: + required: false + type: string + description: The nox session to run + default: ci-test-onedir + skip-code-coverage: + required: false + type: boolean + description: Skip code coverage + default: false + package-name: + required: false + type: string + description: The onedir package name to use + default: salt + matrix: + required: true + type: string + description: Json job matrix config + +env: + COLUMNS: 190 + AWS_MAX_ATTEMPTS: "10" + AWS_RETRY_MODE: "adaptive" + PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} + PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} + PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} + PIP_DISABLE_PIP_VERSION_CHECK: "1" + RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" + USE_S3_CACHE: 'false' + +jobs: + + test: + name: Test + runs-on: + - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} + container: + image: ${{ matrix.container }} + options: --privileged + timeout-minutes: 120 # 2 Hours - More than this and something is wrong + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + + steps: + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Download Packages + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ matrix.arch }}-${{ matrix.pkg_type }} + path: artifacts/pkg/ + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + + #- name: Set up Python ${{ inputs.python-version }} + # uses: actions/setup-python@v5 + # with: + # python-version: "${{ inputs.python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: List Packages + run: | + tree artifacts/pkg/ + + - name: Download nox.linux.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-linux-${{ matrix.arch }}-${{ inputs.nox-session }} + + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + + - name: List Free Space + run: | + df -h || true + +# - name: check systemd +# run: systemctl +# + #- name: Mock systemd + # run: | + # wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py + # cp systemctl3.py /usr/bin/systemctl + # chmod +x /usr/bin/systemctl + # + #- name: install pkg test + # run: | + # dpkg -i ./artifacts/pkg/salt-common_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb ./artifacts/pkg/salt-master_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + + - name: Run Package Tests + env: + SKIP_REQUIREMENTS_INSTALL: "1" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + COVERAGE_CONTEXT: ${{ matrix.distro-slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} + + - name: Upload Test Run Log Artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-log-artifacts-${{ matrix.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + - name: Upload Test Run Artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} + path: | + artifacts/ + !artifacts/pkg/* + !artifacts/salt/* + !artifacts/salt-*.tar.* + include-hidden-files: true + + report: + name: Report + runs-on: ubuntu-latest + if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + needs: + - test + strategy: + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + + steps: + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Wait For Artifacts + run: | + sleep 60 + + - name: Merge Test Run Artifacts + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }} + pattern: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}-* + separate-directories: true + delete-merged: true + + - name: Wait For Artifacts 2 + run: | + sleep 60 + + - name: Download Test Run Artifacts + id: download-test-run-artifacts + uses: actions/download-artifact@v4 + with: + path: artifacts/ + pattern: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}* + merge-multiple: true + + - name: Show Test Run Artifacts + if: always() + run: | + tree -a artifacts diff --git a/tools/ci.py b/tools/ci.py index f9d17cd302c0..7e8875055b23 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -9,6 +9,7 @@ import logging import os import pathlib +import pprint import random import shutil import sys @@ -1609,19 +1610,47 @@ def workflow_config( str_releases = [str(version) for version in testing_releases] ctx.info(f"str_releases {str_releases}") - pkg_matrix = [ - dict( - { - "tests-chunk": "install", - "version": None, - }, - **_.as_dict(), - ) - for _ in TEST_SALT_PKG_LISTING["linux"] # type: ignore - ] - import pprint + platforms = ["linux", "macos", "windows"] + pkg_test_matrix = {} + for platform in platforms: + pkg_test_matrix[platform] = [ + dict( + { + "tests-chunk": "install", + "version": None, + }, + **_.as_dict(), + ) + for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + ] + for version in str_releases: + for platform in platforms: + pkg_test_matrix[platform] += [ + dict( + { + "tests-chunk": "upgrade", + "version": version, + }, + **_.as_dict(), + ) + for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + ] + pkg_test_matrix[platform] += [ + dict( + { + "tests-chunk": "downgrade", + "version": version, + }, + **_.as_dict(), + ) + for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + ] + + ctx.info(f"{'==== pkg test matrix ====':^80s}") + ctx.info(f"{pprint.pformat(pkg_test_matrix)}") + ctx.info(f"{'==== end pkg test matrix ====':^80s}") - ctx.info(f"{pprint.pformat(pkg_matrix)}") + config["pkg-test-matrix"] = pkg_test_matrix # type: ignore ctx.info("Jobs selected are") for x, y in jobs.items(): diff --git a/tools/utils/__init__.py b/tools/utils/__init__.py index 32877519bc64..89edf57dbe41 100644 --- a/tools/utils/__init__.py +++ b/tools/utils/__init__.py @@ -118,6 +118,7 @@ def as_dict(self): "job_name": self.job_name, } + @attr.s(frozen=True, slots=True) class MacOSPkg(MacOS): From 17ddf3986d6f8650ab61b32446116a6085a087d9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 14:13:15 -0700 Subject: [PATCH 136/225] Add mac and windows --- .github/workflows/test-packages-action.yml | 269 ++++++++++++++++++++- 1 file changed, 266 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index a7d61556bd7f..b97cd49f15e8 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -57,8 +57,8 @@ env: jobs: - test: - name: Test + test-linux: + name: ${{ matrix.distro-slug }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: @@ -189,12 +189,275 @@ jobs: !artifacts/salt-*.tar.* include-hidden-files: true + test-macos: + name: ${{ matrix.distro-slug }} + runs-on: ${{ matrix.runner }} + timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['macos'] }} + + steps: + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Download Packages + uses: actions/download-artifact@v4 + with: + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-${{ matrix.pkg_type }} + path: artifacts/pkg/ + + - name: Install System Dependencies + run: | + brew install tree + + - name: List Packages + run: | + tree artifacts/pkg/ + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Download nox.macos.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-macos-${{ matrix.arch }}-${{ inputs.nox-session }} + + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- macos ${{ matrix.arch }} + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + + - name: Run Package Tests + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + COVERAGE_CONTEXT: ${{ matrix.distro-slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} + + - name: Fix file ownership + run: | + sudo chown -R "$(id -un)" . + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + tree -a artifacts + + - name: Upload Test Run Artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} + path: | + artifacts/ + !artifacts/pkg/* + !artifacts/salt/* + !artifacts/salt-*.tar.* + include-hidden-files: true + + + test-windows: + name: ${{ matrix.distro-slug }} + runs-on: ${{ matrix.distro-slug }} + timeout-minutes: 120 # 2 Hours - More than this and something is wrong + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + + steps: + + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Download Packages + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ matrix.arch }}-${{ matrix.pkg_type }} + path: ./artifacts/pkg/ + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + path: ./artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - run: python3 --version + + - name: Download nox.windows.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-windows-${{ matrix.arch }}-${{ inputs.nox-session }} + + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- windows ${{ matrix.arch }} + + - name: List Important Directories + run: | + dir d:/ + dir . + dir artifacts/ + dir artifacts/pkg + dir .nox/ci-test-onedir/Scripts + + - name: Check onedir python + continue-on-error: true + run: | + artifacts/salt/Scripts/python.exe --version + + - name: Check nox python + continue-on-error: true + run: | + .nox/ci-test-onedir/Scripts/python.exe --version + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + SKIP_CODE_COVERAGE: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + PYTHONUTF8: "1" + run: | + nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' --log-cli-level=debug + + - name: Run Package Tests + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_ONEDIR_FAILURES: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + COVERAGE_CONTEXT: ${{ matrix.distro-slug }} + OUTPUT_COLUMNS: "190" + PYTHONUTF8: "1" + run: > + nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + shell: bash + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi + + - name: Upload Test Run Log Artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-log-artifacts-${{ matrix.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + - name: Upload Test Run Artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} + path: | + artifacts/ + !artifacts/pkg/* + !artifacts/salt/* + !artifacts/salt-*.tar.* + include-hidden-files: true + report: name: Report runs-on: ubuntu-latest if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' needs: - - test + - test-linux + - test-macos + - test-windows strategy: matrix: include: ${{ fromJSON(inputs.matrix)['linux'] }} From 3bbffc8cb24253c6059f606622becc22216962ce Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 14:19:35 -0700 Subject: [PATCH 137/225] Run build repo on ubuntu-latest --- .github/workflows/nightly.yml | 12 ++++++------ .github/workflows/staging.yml | 12 ++++++------ .github/workflows/templates/build-repos.yml.jinja | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 704c9604dba2..293508b17f2c 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2036,7 +2036,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2137,7 +2137,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2266,7 +2266,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2442,7 +2442,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2544,7 +2544,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2635,7 +2635,7 @@ jobs: name: Build Repository environment: nightly runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index a5b5ba2931fd..00f6f4ece309 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -2022,7 +2022,7 @@ jobs: name: Build Repository environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2123,7 +2123,7 @@ jobs: name: Build Repository environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2252,7 +2252,7 @@ jobs: name: Build Repository environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2430,7 +2430,7 @@ jobs: name: Build Repository environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2532,7 +2532,7 @@ jobs: name: Build Repository environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: @@ -2623,7 +2623,7 @@ jobs: name: Build Repository environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja index 77c45623d2cd..862ae1e95749 100644 --- a/.github/workflows/templates/build-repos.yml.jinja +++ b/.github/workflows/templates/build-repos.yml.jinja @@ -14,7 +14,7 @@ name: Build Repository environment: <{ gh_environment }> runs-on: - - linux-x86_64 + - ubuntu-latest env: USE_S3_CACHE: 'false' needs: From 4c1bd417535c4429d8beddf3a6a11384beb34704 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 14:22:38 -0700 Subject: [PATCH 138/225] Comment out package test enumeration --- .github/workflows/ci.yml | 781 ------------------ .github/workflows/nightly.yml | 781 ------------------ .github/workflows/scheduled.yml | 781 ------------------ .github/workflows/staging.yml | 781 ------------------ .../templates/test-salt-pkg.yml.jinja | 3 +- 5 files changed, 2 insertions(+), 3125 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3dde28c91fa2..a365f72c6268 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -479,753 +479,6 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-pkg-rockylinux-8: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11-arm64: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12-arm64: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-arm64: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-arm64: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-ubuntu-2004: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204: - name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-12: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-13: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-14: - name: macOS 14 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-15: - name: macOS 15 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-nsis: - name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-msi: - name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-nsis: - name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-msi: - name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} test-windows-2019: name: Windows 2019 Test @@ -2166,40 +1419,6 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - test-pkg-rockylinux-8 - - test-pkg-rockylinux-8-arm64 - - test-pkg-rockylinux-9 - - test-pkg-rockylinux-9-arm64 - - test-pkg-amazonlinux-2 - - test-pkg-amazonlinux-2-arm64 - - test-pkg-amazonlinux-2023 - - test-pkg-amazonlinux-2023-arm64 - - test-pkg-debian-11 - - test-pkg-debian-11-arm64 - - test-pkg-debian-12 - - test-pkg-debian-12-arm64 - - test-pkg-photonos-4 - - test-pkg-photonos-4-arm64 - - test-pkg-photonos-4-fips - - test-pkg-photonos-4-arm64-fips - - test-pkg-photonos-5 - - test-pkg-photonos-5-arm64 - - test-pkg-photonos-5-fips - - test-pkg-photonos-5-arm64-fips - - test-pkg-ubuntu-2004 - - test-pkg-ubuntu-2004-arm64 - - test-pkg-ubuntu-2204 - - test-pkg-ubuntu-2204-arm64 - - test-pkg-ubuntu-2404 - - test-pkg-ubuntu-2404-arm64 - - test-pkg-macos-12 - - test-pkg-macos-13 - - test-pkg-macos-14 - - test-pkg-macos-15 - - test-pkg-windows-2019-nsis - - test-pkg-windows-2019-msi - - test-pkg-windows-2022-nsis - - test-pkg-windows-2022-msi steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 293508b17f2c..5df0c0ffc9ed 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -556,753 +556,6 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-pkg-rockylinux-8: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11-arm64: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12-arm64: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-arm64: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-arm64: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-ubuntu-2004: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204: - name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-12: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-13: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-14: - name: macOS 14 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-15: - name: macOS 15 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-nsis: - name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-msi: - name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-nsis: - name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-msi: - name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} test-windows-2019: name: Windows 2019 Test @@ -2865,40 +2118,6 @@ jobs: - build-salt-onedir - build-pkgs-src - publish-repositories - - test-pkg-rockylinux-8 - - test-pkg-rockylinux-8-arm64 - - test-pkg-rockylinux-9 - - test-pkg-rockylinux-9-arm64 - - test-pkg-amazonlinux-2 - - test-pkg-amazonlinux-2-arm64 - - test-pkg-amazonlinux-2023 - - test-pkg-amazonlinux-2023-arm64 - - test-pkg-debian-11 - - test-pkg-debian-11-arm64 - - test-pkg-debian-12 - - test-pkg-debian-12-arm64 - - test-pkg-photonos-4 - - test-pkg-photonos-4-arm64 - - test-pkg-photonos-4-fips - - test-pkg-photonos-4-arm64-fips - - test-pkg-photonos-5 - - test-pkg-photonos-5-arm64 - - test-pkg-photonos-5-fips - - test-pkg-photonos-5-arm64-fips - - test-pkg-ubuntu-2004 - - test-pkg-ubuntu-2004-arm64 - - test-pkg-ubuntu-2204 - - test-pkg-ubuntu-2204-arm64 - - test-pkg-ubuntu-2404 - - test-pkg-ubuntu-2404-arm64 - - test-pkg-macos-12 - - test-pkg-macos-13 - - test-pkg-macos-14 - - test-pkg-macos-15 - - test-pkg-windows-2019-nsis - - test-pkg-windows-2019-msi - - test-pkg-windows-2022-nsis - - test-pkg-windows-2022-msi steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 54be44679335..196a4ab85c39 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -518,753 +518,6 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-pkg-rockylinux-8: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11-arm64: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12-arm64: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-arm64: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-arm64: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-ubuntu-2004: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204: - name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-12: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-13: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-14: - name: macOS 14 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-15: - name: macOS 15 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-nsis: - name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-msi: - name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-nsis: - name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-msi: - name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} test-windows-2019: name: Windows 2019 Test @@ -2044,40 +1297,6 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - test-pkg-rockylinux-8 - - test-pkg-rockylinux-8-arm64 - - test-pkg-rockylinux-9 - - test-pkg-rockylinux-9-arm64 - - test-pkg-amazonlinux-2 - - test-pkg-amazonlinux-2-arm64 - - test-pkg-amazonlinux-2023 - - test-pkg-amazonlinux-2023-arm64 - - test-pkg-debian-11 - - test-pkg-debian-11-arm64 - - test-pkg-debian-12 - - test-pkg-debian-12-arm64 - - test-pkg-photonos-4 - - test-pkg-photonos-4-arm64 - - test-pkg-photonos-4-fips - - test-pkg-photonos-4-arm64-fips - - test-pkg-photonos-5 - - test-pkg-photonos-5-arm64 - - test-pkg-photonos-5-fips - - test-pkg-photonos-5-arm64-fips - - test-pkg-ubuntu-2004 - - test-pkg-ubuntu-2004-arm64 - - test-pkg-ubuntu-2204 - - test-pkg-ubuntu-2204-arm64 - - test-pkg-ubuntu-2404 - - test-pkg-ubuntu-2404-arm64 - - test-pkg-macos-12 - - test-pkg-macos-13 - - test-pkg-macos-14 - - test-pkg-macos-15 - - test-pkg-windows-2019-nsis - - test-pkg-windows-2019-msi - - test-pkg-windows-2022-nsis - - test-pkg-windows-2022-msi steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 00f6f4ece309..567d5eb32cef 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -542,753 +542,6 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-pkg-rockylinux-8: - name: Rocky Linux 8 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9: - name: Rocky Linux 9 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2: - name: Amazon Linux 2 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023: - name: Amazon Linux 2023 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11: - name: Debian 11 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-11-arm64: - name: Debian 11 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12: - name: Debian 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-debian-12-arm64: - name: Debian 12 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4: - name: Photon OS 4 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-arm64: - name: Photon OS 4 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-4-fips: - name: Photon OS 4 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5: - name: Photon OS 5 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-arm64: - name: Photon OS 5 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-photonos-5-fips: - name: Photon OS 5 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Package Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: rpm - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - fips: true - - test-pkg-ubuntu-2004: - name: Ubuntu 20.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204: - name: Ubuntu 22.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404: - name: Ubuntu 24.04 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: deb - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-12: - name: macOS 12 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-12'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-13: - name: macOS 13 Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-13'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-14: - name: macOS 14 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-14'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-macos-15: - name: macOS 15 (M1) Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-macos-15'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-nsis: - name: Windows 2019 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2019-msi: - name: Windows 2019 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2019-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2019 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-nsis: - name: Windows 2022 NSIS Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-nsis'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: NSIS - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - test-pkg-windows-2022-msi: - name: Windows 2022 MSI Package Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg-windows-2022-msi'] }} - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: MSI - nox-version: 2022.8.7 - python-version: "3.10" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} test-windows-2019: name: Windows 2019 Test @@ -2919,40 +2172,6 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - test-pkg-rockylinux-8 - - test-pkg-rockylinux-8-arm64 - - test-pkg-rockylinux-9 - - test-pkg-rockylinux-9-arm64 - - test-pkg-amazonlinux-2 - - test-pkg-amazonlinux-2-arm64 - - test-pkg-amazonlinux-2023 - - test-pkg-amazonlinux-2023-arm64 - - test-pkg-debian-11 - - test-pkg-debian-11-arm64 - - test-pkg-debian-12 - - test-pkg-debian-12-arm64 - - test-pkg-photonos-4 - - test-pkg-photonos-4-arm64 - - test-pkg-photonos-4-fips - - test-pkg-photonos-4-arm64-fips - - test-pkg-photonos-5 - - test-pkg-photonos-5-arm64 - - test-pkg-photonos-5-fips - - test-pkg-photonos-5-arm64-fips - - test-pkg-ubuntu-2004 - - test-pkg-ubuntu-2004-arm64 - - test-pkg-ubuntu-2204 - - test-pkg-ubuntu-2204-arm64 - - test-pkg-ubuntu-2404 - - test-pkg-ubuntu-2404-arm64 - - test-pkg-macos-12 - - test-pkg-macos-13 - - test-pkg-macos-14 - - test-pkg-macos-15 - - test-pkg-windows-2019-nsis - - test-pkg-windows-2019-msi - - test-pkg-windows-2022-nsis - - test-pkg-windows-2022-msi - pkg-download-tests environment: staging runs-on: diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 2465e7e9aff8..4115a174cc67 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -15,7 +15,7 @@ skip-code-coverage: <{ skip_test_coverage_check }> testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - +{# <%- for os in test_salt_pkg_listing["linux"] %> <%- set job_name = os.job_name %> @@ -116,3 +116,4 @@ testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} <%- endfor %> +#} From 77fb0451073840825865042cd90e6e267e5f724c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 14:42:50 -0700 Subject: [PATCH 139/225] Log github event --- tools/ci.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tools/ci.py b/tools/ci.py index 7e8875055b23..4853446ed1af 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1522,6 +1522,22 @@ def workflow_config( skip_pkg_tests: bool = False, skip_pkg_download_tests: bool = False, ): + gh_event_path = os.environ.get("GITHUB_EVENT_PATH") or None + gh_event = None + if gh_event_path is not None: + try: + gh_event = json.loads(open(gh_event_path, encoding="utf-8").read()) + except Exception as exc: + ctx.error( + f"Could not load the GH Event payload from {gh_event_path!r}:\n", exc + ) + ctx.exit(1) + + ctx.info(f"{'==== github event ====':^80s}") + ctx.info(f"{pprint.pformat(gh_event)}") + ctx.info(f"{'==== end github event ====':^80s}") + + config = {} jobs = { "lint": True, From 7ec48525fd8bd3130e63d5ac0ccf3cb26e8a93de Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 14:54:47 -0700 Subject: [PATCH 140/225] Fix pkg step names --- .github/workflows/nightly.yml | 30 ------------------- .github/workflows/staging.yml | 30 ------------------- .../templates/build-deb-repo.yml.jinja | 6 ---- .../templates/build-macos-repo.yml.jinja | 6 ---- .../templates/build-onedir-repo.yml.jinja | 6 ---- .../templates/build-rpm-repo.yml.jinja | 6 ---- .../templates/build-src-repo.yml.jinja | 6 ---- .github/workflows/test-packages-action.yml | 6 ++-- 8 files changed, 3 insertions(+), 93 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 5df0c0ffc9ed..5df91aab685e 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1310,12 +1310,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download Source Tarball uses: actions/download-artifact@v4 with: @@ -1454,12 +1448,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download DEB Packages uses: actions/download-artifact@v4 with: @@ -1627,12 +1615,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download RPM Packages uses: actions/download-artifact@v4 with: @@ -1817,12 +1799,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download macOS x86_64 Packages uses: actions/download-artifact@v4 with: @@ -1908,12 +1884,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download Linux x86_64 Onedir Archive uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 567d5eb32cef..fe2f207013b4 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1296,12 +1296,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download Source Tarball uses: actions/download-artifact@v4 with: @@ -1440,12 +1434,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download DEB Packages uses: actions/download-artifact@v4 with: @@ -1613,12 +1601,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download RPM Packages uses: actions/download-artifact@v4 with: @@ -1805,12 +1787,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download macOS x86_64 Packages uses: actions/download-artifact@v4 with: @@ -1896,12 +1872,6 @@ jobs: with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download Linux x86_64 Onedir Archive uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/templates/build-deb-repo.yml.jinja b/.github/workflows/templates/build-deb-repo.yml.jinja index 91f8348385c3..0772375c76ed 100644 --- a/.github/workflows/templates/build-deb-repo.yml.jinja +++ b/.github/workflows/templates/build-deb-repo.yml.jinja @@ -23,12 +23,6 @@ with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download DEB Packages uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/templates/build-macos-repo.yml.jinja b/.github/workflows/templates/build-macos-repo.yml.jinja index 835e366bf525..6753d64133b8 100644 --- a/.github/workflows/templates/build-macos-repo.yml.jinja +++ b/.github/workflows/templates/build-macos-repo.yml.jinja @@ -13,12 +13,6 @@ with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download macOS x86_64 Packages uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/templates/build-onedir-repo.yml.jinja b/.github/workflows/templates/build-onedir-repo.yml.jinja index c6b51f07166e..bb7db53905e8 100644 --- a/.github/workflows/templates/build-onedir-repo.yml.jinja +++ b/.github/workflows/templates/build-onedir-repo.yml.jinja @@ -13,12 +13,6 @@ with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download Linux x86_64 Onedir Archive uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/templates/build-rpm-repo.yml.jinja b/.github/workflows/templates/build-rpm-repo.yml.jinja index 7039043d4bf0..836382bac429 100644 --- a/.github/workflows/templates/build-rpm-repo.yml.jinja +++ b/.github/workflows/templates/build-rpm-repo.yml.jinja @@ -23,12 +23,6 @@ with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download RPM Packages uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/templates/build-src-repo.yml.jinja b/.github/workflows/templates/build-src-repo.yml.jinja index 8409f05879b2..9127ba7aae67 100644 --- a/.github/workflows/templates/build-src-repo.yml.jinja +++ b/.github/workflows/templates/build-src-repo.yml.jinja @@ -13,12 +13,6 @@ with: cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Download Source Tarball uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index b97cd49f15e8..f29dcb6da94b 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -58,7 +58,7 @@ env: jobs: test-linux: - name: ${{ matrix.distro-slug }} + name: ${{ matrix.slug }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: @@ -190,7 +190,7 @@ jobs: include-hidden-files: true test-macos: - name: ${{ matrix.distro-slug }} + name: ${{ matrix.slug }} runs-on: ${{ matrix.runner }} timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: @@ -308,7 +308,7 @@ jobs: test-windows: - name: ${{ matrix.distro-slug }} + name: ${{ matrix.slug }} runs-on: ${{ matrix.distro-slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: From d2887483e82ee279e932a618f4cac379f026a1a6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 17:38:57 -0700 Subject: [PATCH 141/225] No longer build and publish repositories --- .github/workflows/nightly.yml | 779 +----------------- .github/workflows/staging.yml | 753 ----------------- .github/workflows/templates/nightly.yml.jinja | 60 -- .github/workflows/test-packages-action.yml | 6 +- tools/ci.py | 53 +- 5 files changed, 43 insertions(+), 1608 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 5df91aab685e..6a3f2b5d10fb 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1285,717 +1285,24 @@ jobs: workflow-slug: nightly default-timeout: 360 - build-src-repo: - name: Build Repository - environment: nightly - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-source-tarball - - build-pkgs-src - strategy: - fail-fast: false - matrix: - pkg-type: - - src - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Source Tarball - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create src --key-id=64CBBC8173D76B3F --nightly-build-from=${{ github.ref_name }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Copy Files For Source Only Artifact Uploads - run: | - mkdir artifacts/src - find artifacts/pkgs/repo -type f -print -exec cp {} artifacts/src \; - - - name: Upload Standalone Repository As An Artifact - uses: actions/upload-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-src-repo - path: | - artifacts/src/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz - artifacts/src/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz.* - artifacts/src/*-GPG-* - retention-days: 7 - if-no-files-found: error - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-src - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: src-repo - - build-deb-repo: - name: Build Repository - environment: nightly - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - include: - - pkg-type: deb - distro: debian - version: "11" - arch: x86_64 - - pkg-type: deb - distro: debian - version: "11" - arch: arm64 - - pkg-type: deb - distro: debian - version: "12" - arch: x86_64 - - pkg-type: deb - distro: debian - version: "12" - arch: arm64 - - pkg-type: deb - distro: ubuntu - version: "20.04" - arch: x86_64 - - pkg-type: deb - distro: ubuntu - version: "20.04" - arch: arm64 - - pkg-type: deb - distro: ubuntu - version: "22.04" - arch: x86_64 - - pkg-type: deb - distro: ubuntu - version: "22.04" - arch: arm64 - - pkg-type: deb - distro: ubuntu - version: "24.04" - arch: x86_64 - - pkg-type: deb - distro: ubuntu - version: "24.04" - arch: arm64 - - steps: - - uses: actions/checkout@v4 - - - name: Download System Dependencies - run: | - sudo apt update - sudo apt install -y devscripts apt-utils - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download DEB Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-${{ matrix.arch }}-deb - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create deb --key-id=64CBBC8173D76B3F --distro-arch=${{ matrix.arch }} --nightly-build-from=${{ github.ref_name }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --distro=${{ matrix.distro }} --distro-version=${{ matrix.version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-${{ matrix.pkg-type }}-${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }} - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: ${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }}-repo - - build-rpm-repo: - name: Build Repository - environment: nightly - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - include: - - pkg-type: rpm - distro: amazon - version: "2" - arch: x86_64 - - pkg-type: rpm - distro: amazon - version: "2" - arch: arm64 - - pkg-type: rpm - distro: amazon - version: "2" - arch: aarch64 - - pkg-type: rpm - distro: amazon - version: "2023" - arch: x86_64 - - pkg-type: rpm - distro: amazon - version: "2023" - arch: arm64 - - pkg-type: rpm - distro: amazon - version: "2023" - arch: aarch64 - - pkg-type: rpm - distro: fedora - version: "40" - arch: x86_64 - - pkg-type: rpm - distro: fedora - version: "40" - arch: arm64 - - pkg-type: rpm - distro: fedora - version: "40" - arch: aarch64 - - pkg-type: rpm - distro: photon - version: "4" - arch: x86_64 - - pkg-type: rpm - distro: photon - version: "4" - arch: arm64 - - pkg-type: rpm - distro: photon - version: "4" - arch: aarch64 - - pkg-type: rpm - distro: photon - version: "5" - arch: x86_64 - - pkg-type: rpm - distro: photon - version: "5" - arch: arm64 - - pkg-type: rpm - distro: photon - version: "5" - arch: aarch64 - - pkg-type: rpm - distro: redhat - version: "8" - arch: x86_64 - - pkg-type: rpm - distro: redhat - version: "8" - arch: arm64 - - pkg-type: rpm - distro: redhat - version: "8" - arch: aarch64 - - pkg-type: rpm - distro: redhat - version: "9" - arch: x86_64 - - pkg-type: rpm - distro: redhat - version: "9" - arch: arm64 - - pkg-type: rpm - distro: redhat - version: "9" - arch: aarch64 - - steps: - - uses: actions/checkout@v4 - - - name: Download System Dependencies - run: | - sudo apt update - sudo apt install -y rpm - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download RPM Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-${{ matrix.arch == 'aarch64' && 'arm64' || matrix.arch }}-rpm - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - env: - SALT_REPO_DOMAIN_RELEASE: ${{ vars.SALT_REPO_DOMAIN_RELEASE || 'repo.saltproject.io' }} - SALT_REPO_DOMAIN_STAGING: ${{ vars.SALT_REPO_DOMAIN_STAGING || 'staging.repo.saltproject.io' }} - run: | - tools pkg repo create rpm --key-id=64CBBC8173D76B3F --distro-arch=${{ matrix.arch }} --nightly-build-from=${{ github.ref_name }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --distro=${{ matrix.distro }} --distro-version=${{ matrix.version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-${{ matrix.pkg-type }}-${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }} - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: ${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }}-repo - - build-windows-repo: - name: Build Repository - environment: nightly - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - pkg-type: - - windows - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Download Windows NSIS x86 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-x86-NSIS - path: artifacts/pkgs/incoming - - - name: Download Windows MSI x86 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-x86-MSI - path: artifacts/pkgs/incoming - - - name: Download Windows NSIS amd64 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-amd64-NSIS - path: artifacts/pkgs/incoming - - - name: Download Windows MSI amd64 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-amd64-MSI - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create windows --key-id=64CBBC8173D76B3F --nightly-build-from=${{ github.ref_name }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-windows - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: windows-repo - - build-macos-repo: - name: Build Repository - environment: nightly - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - pkg-type: - - macos - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download macOS x86_64 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-x86_64-macos - path: artifacts/pkgs/incoming - - - name: Download macOS Arch64 Packages - if: ${{ ! github.event.repository.fork }} - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-arm64-macos - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create macos --key-id=64CBBC8173D76B3F --nightly-build-from=${{ github.ref_name }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-macos - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: macos-repo - - build-onedir-repo: - name: Build Repository - environment: nightly - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-salt-onedir - strategy: - fail-fast: false - matrix: - pkg-type: - - onedir - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Linux x86_64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-linux-x86_64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Linux arm64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-linux-arm64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download macOS x86_64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-macos-x86_64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download macOS arm64 Onedir Archive - if: ${{ ! github.event.repository.fork }} - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-macos-arm64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Windows amd64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-amd64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Windows amd64 Onedir Archive(zip) - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-amd64.zip - path: artifacts/pkgs/incoming - - - name: Download Windows x86 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-x86.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Windows amd64 Onedir Archive(zip) - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-x86.zip - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create onedir --key-id=64CBBC8173D76B3F --nightly-build-from=${{ github.ref_name }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-onedir - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: onedir-repo - - publish-repositories: - name: Publish Repositories - if: ${{ always() && ! failure() && ! cancelled() }} - runs-on: - - linux-x86_64 + set-pipeline-exit-status: + # This step is just so we can make github require this step, to pass checks + # on a pull request instead of requiring all + name: Set the ${{ github.workflow }} Pipeline Exit Status + if: always() + runs-on: ubuntu-latest environment: nightly needs: + - workflow-requirements + - trigger-branch-nightly-builds - prepare-workflow + - pre-commit + - lint + - nsis-tests - build-docs - - build-src-repo - - build-deb-repo - - build-rpm-repo - - build-windows-repo - - build-macos-repo - - build-onedir-repo + - build-deps-onedir + - build-salt-onedir + - build-pkgs-src - build-ci-deps - test-windows-2019 - test-windows-2022 @@ -2030,64 +1337,6 @@ jobs: - test-ubuntu-2204-arm64 - test-ubuntu-2404 - test-ubuntu-2404-arm64 - - steps: - - - uses: actions/checkout@v4 - - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Repository Artifact - uses: actions/download-artifact@v4 - with: - pattern: salt-${{ needs.prepare-workflow.outputs.salt-version }}-nightly-repo-* - merge-multiple: true - path: repo/ - - - name: Decompress Repository Artifacts - run: | - find repo/ -type f -name '*.tar.gz' -print -exec tar xvf {} \; - find repo/ -type f -name '*.tar.gz' -print -exec rm -f {} \; - - - name: Show Repository - run: | - tree -a artifacts/pkgs/repo/ - - - name: Upload Repository Contents (nightly) - env: - SALT_REPO_DOMAIN_RELEASE: ${{ vars.SALT_REPO_DOMAIN_RELEASE || 'repo.saltproject.io' }} - SALT_REPO_DOMAIN_STAGING: ${{ vars.SALT_REPO_DOMAIN_STAGING || 'staging.repo.saltproject.io' }} - run: | - tools pkg repo publish nightly --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} artifacts/pkgs/repo/ - - set-pipeline-exit-status: - # This step is just so we can make github require this step, to pass checks - # on a pull request instead of requiring all - name: Set the ${{ github.workflow }} Pipeline Exit Status - if: always() - runs-on: ubuntu-latest - environment: nightly - needs: - - workflow-requirements - - trigger-branch-nightly-builds - - prepare-workflow - - pre-commit - - lint - - nsis-tests - - build-docs - - build-deps-onedir - - build-salt-onedir - - build-pkgs-src - - publish-repositories steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index fe2f207013b4..2f3e29c23b22 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1271,758 +1271,6 @@ jobs: workflow-slug: staging default-timeout: 180 - build-src-repo: - name: Build Repository - environment: staging - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-source-tarball - - build-pkgs-src - strategy: - fail-fast: false - matrix: - pkg-type: - - src - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Source Tarball - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create src --key-id=64CBBC8173D76B3F \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Copy Files For Source Only Artifact Uploads - run: | - mkdir artifacts/src - find artifacts/pkgs/repo -type f -print -exec cp {} artifacts/src \; - - - name: Upload Standalone Repository As An Artifact - uses: actions/upload-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-src-repo - path: | - artifacts/src/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz - artifacts/src/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz.* - artifacts/src/*-GPG-* - retention-days: 7 - if-no-files-found: error - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-src - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: src-repo - - build-deb-repo: - name: Build Repository - environment: staging - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - include: - - pkg-type: deb - distro: debian - version: "11" - arch: x86_64 - - pkg-type: deb - distro: debian - version: "11" - arch: arm64 - - pkg-type: deb - distro: debian - version: "12" - arch: x86_64 - - pkg-type: deb - distro: debian - version: "12" - arch: arm64 - - pkg-type: deb - distro: ubuntu - version: "20.04" - arch: x86_64 - - pkg-type: deb - distro: ubuntu - version: "20.04" - arch: arm64 - - pkg-type: deb - distro: ubuntu - version: "22.04" - arch: x86_64 - - pkg-type: deb - distro: ubuntu - version: "22.04" - arch: arm64 - - pkg-type: deb - distro: ubuntu - version: "24.04" - arch: x86_64 - - pkg-type: deb - distro: ubuntu - version: "24.04" - arch: arm64 - - steps: - - uses: actions/checkout@v4 - - - name: Download System Dependencies - run: | - sudo apt update - sudo apt install -y devscripts apt-utils - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download DEB Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-${{ matrix.arch }}-deb - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create deb --key-id=64CBBC8173D76B3F --distro-arch=${{ matrix.arch }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --distro=${{ matrix.distro }} --distro-version=${{ matrix.version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-${{ matrix.pkg-type }}-${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }} - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: ${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }}-repo - - build-rpm-repo: - name: Build Repository - environment: staging - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - include: - - pkg-type: rpm - distro: amazon - version: "2" - arch: x86_64 - - pkg-type: rpm - distro: amazon - version: "2" - arch: arm64 - - pkg-type: rpm - distro: amazon - version: "2" - arch: aarch64 - - pkg-type: rpm - distro: amazon - version: "2023" - arch: x86_64 - - pkg-type: rpm - distro: amazon - version: "2023" - arch: arm64 - - pkg-type: rpm - distro: amazon - version: "2023" - arch: aarch64 - - pkg-type: rpm - distro: fedora - version: "40" - arch: x86_64 - - pkg-type: rpm - distro: fedora - version: "40" - arch: arm64 - - pkg-type: rpm - distro: fedora - version: "40" - arch: aarch64 - - pkg-type: rpm - distro: photon - version: "4" - arch: x86_64 - - pkg-type: rpm - distro: photon - version: "4" - arch: arm64 - - pkg-type: rpm - distro: photon - version: "4" - arch: aarch64 - - pkg-type: rpm - distro: photon - version: "5" - arch: x86_64 - - pkg-type: rpm - distro: photon - version: "5" - arch: arm64 - - pkg-type: rpm - distro: photon - version: "5" - arch: aarch64 - - pkg-type: rpm - distro: redhat - version: "8" - arch: x86_64 - - pkg-type: rpm - distro: redhat - version: "8" - arch: arm64 - - pkg-type: rpm - distro: redhat - version: "8" - arch: aarch64 - - pkg-type: rpm - distro: redhat - version: "9" - arch: x86_64 - - pkg-type: rpm - distro: redhat - version: "9" - arch: arm64 - - pkg-type: rpm - distro: redhat - version: "9" - arch: aarch64 - - steps: - - uses: actions/checkout@v4 - - - name: Download System Dependencies - run: | - sudo apt update - sudo apt install -y rpm - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download RPM Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-${{ matrix.arch == 'aarch64' && 'arm64' || matrix.arch }}-rpm - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - env: - SALT_REPO_USER: ${{ secrets.SALT_REPO_USER }} - SALT_REPO_PASS: ${{ secrets.SALT_REPO_PASS }} - SALT_REPO_DOMAIN_RELEASE: ${{ vars.SALT_REPO_DOMAIN_RELEASE || 'repo.saltproject.io' }} - SALT_REPO_DOMAIN_STAGING: ${{ vars.SALT_REPO_DOMAIN_STAGING || 'staging.repo.saltproject.io' }} - run: | - tools pkg repo create rpm --key-id=64CBBC8173D76B3F --distro-arch=${{ matrix.arch }} \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --distro=${{ matrix.distro }} --distro-version=${{ matrix.version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-${{ matrix.pkg-type }}-${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }} - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: ${{ matrix.distro }}-${{ matrix.version }}-${{ matrix.arch }}-repo - - build-windows-repo: - name: Build Repository - environment: staging - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - pkg-type: - - windows - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Download Windows NSIS x86 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-x86-NSIS - path: artifacts/pkgs/incoming - - - name: Download Windows MSI x86 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-x86-MSI - path: artifacts/pkgs/incoming - - - name: Download Windows NSIS amd64 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-amd64-NSIS - path: artifacts/pkgs/incoming - - - name: Download Windows MSI amd64 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-amd64-MSI - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create windows --key-id=64CBBC8173D76B3F \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-windows - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: windows-repo - - build-macos-repo: - name: Build Repository - environment: staging - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-pkgs-onedir - strategy: - fail-fast: false - matrix: - pkg-type: - - macos - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download macOS x86_64 Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-x86_64-macos - path: artifacts/pkgs/incoming - - - name: Download macOS Arch64 Packages - if: ${{ ! github.event.repository.fork }} - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-arm64-macos - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create macos --key-id=64CBBC8173D76B3F \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-macos - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: macos-repo - - build-onedir-repo: - name: Build Repository - environment: staging - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - - build-salt-onedir - strategy: - fail-fast: false - matrix: - pkg-type: - - onedir - - steps: - - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Linux x86_64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-linux-x86_64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Linux arm64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-linux-arm64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download macOS x86_64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-macos-x86_64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download macOS arm64 Onedir Archive - if: ${{ ! github.event.repository.fork }} - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-macos-arm64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Windows amd64 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-amd64.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Windows amd64 Onedir Archive(zip) - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-amd64.zip - path: artifacts/pkgs/incoming - - - name: Download Windows x86 Onedir Archive - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-x86.tar.xz - path: artifacts/pkgs/incoming - - - name: Download Windows amd64 Onedir Archive(zip) - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-onedir-windows-x86.zip - path: artifacts/pkgs/incoming - - - name: Setup GnuPG - run: | - sudo install -d -m 0700 -o "$(id -u)" -g "$(id -g)" /run/gpg - GNUPGHOME="$(mktemp -d -p /run/gpg)" - echo "GNUPGHOME=${GNUPGHOME}" >> "$GITHUB_ENV" - cat < "${GNUPGHOME}/gpg.conf" - batch - no-tty - pinentry-mode loopback - EOF - - - name: Get Secrets - env: - SECRETS_KEY: ${{ secrets.SECRETS_KEY }} - run: | - SECRETS_KEY_FILE=$(mktemp /tmp/output.XXXXXXXXXX) - echo "$SECRETS_KEY" > "$SECRETS_KEY_FILE" - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text | jq .default_key -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -d - \ - | gpg --import - - sync - aws --region us-west-2 secretsmanager get-secret-value --secret-id /cmbu-saltstack/signing/repo-signing-keys-sha256-2023 \ - --query SecretString --output text| jq .default_passphrase -r | base64 -d \ - | gpg --passphrase-file "${SECRETS_KEY_FILE}" -o "${GNUPGHOME}/passphrase" -d - - sync - rm "$SECRETS_KEY_FILE" - echo "passphrase-file ${GNUPGHOME}/passphrase" >> "${GNUPGHOME}/gpg.conf" - - - name: Create Repository Path - run: | - mkdir -p artifacts/pkgs/repo - - - name: Create Repository - run: | - tools pkg repo create onedir --key-id=64CBBC8173D76B3F \ - --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} \ - --incoming=artifacts/pkgs/incoming --repo-path=artifacts/pkgs/repo - - - name: Upload Repository As An Artifact - uses: ./.github/actions/upload-artifact - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-onedir - path: artifacts/pkgs/repo/* - retention-days: 7 - if-no-files-found: error - archive-name: onedir-repo - - publish-repositories: - name: Publish Repositories - if: ${{ always() && ! failure() && ! cancelled() }} - runs-on: - - linux-x86_64 - environment: staging - needs: - - prepare-workflow - - build-docs - - build-src-repo - - build-deb-repo - - build-rpm-repo - - build-windows-repo - - build-macos-repo - - build-onedir-repo - - steps: - - - uses: actions/checkout@v4 - - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Repository Artifact - uses: actions/download-artifact@v4 - with: - pattern: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-repo-* - merge-multiple: true - path: repo/ - - - name: Decompress Repository Artifacts - run: | - find repo/ -type f -name '*.tar.gz' -print -exec tar xvf {} \; - find repo/ -type f -name '*.tar.gz' -print -exec rm -f {} \; - - - name: Show Repository - run: | - tree -a artifacts/pkgs/repo/ - - - name: Upload Repository Contents (staging) - env: - SALT_REPO_DOMAIN_RELEASE: ${{ vars.SALT_REPO_DOMAIN_RELEASE || 'repo.saltproject.io' }} - SALT_REPO_DOMAIN_STAGING: ${{ vars.SALT_REPO_DOMAIN_STAGING || 'staging.repo.saltproject.io' }} - run: | - tools pkg repo publish staging --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} artifacts/pkgs/repo/ - upload-release-artifacts: name: Upload Release Artifacts needs: @@ -2206,7 +1454,6 @@ jobs: - build-deps-onedir - build-salt-onedir - build-pkgs-src - - publish-repositories - upload-release-artifacts - pkg-download-tests - publish-pypi diff --git a/.github/workflows/templates/nightly.yml.jinja b/.github/workflows/templates/nightly.yml.jinja index c2157ff523e4..3bf88c07a952 100644 --- a/.github/workflows/templates/nightly.yml.jinja +++ b/.github/workflows/templates/nightly.yml.jinja @@ -56,65 +56,5 @@ concurrency: <%- block jobs %> <{- super() }> - <%- if includes.get("build-repos", True) %> - <%- include "build-repos.yml.jinja" %> - <%- endif %> - - publish-repositories: - <%- do conclusion_needs.append('publish-repositories') %> - name: Publish Repositories - if: ${{ always() && ! failure() && ! cancelled() }} - runs-on: - - linux-x86_64 - environment: <{ gh_environment }> - needs: - - prepare-workflow - - build-docs - <%- for need in build_repo_needs.iter(consume=True) %> - - <{ need }> - <%- endfor %> - <%- if workflow_slug == "nightly" %> - <%- for need in test_salt_needs.iter(consume=True) %> - - <{ need }> - <%- endfor %> - <%- endif %> - - steps: - - - uses: actions/checkout@v4 - - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }} - - - name: Download Repository Artifact - uses: actions/download-artifact@v4 - with: - pattern: salt-${{ needs.prepare-workflow.outputs.salt-version }}-<{ gh_environment }>-repo-* - merge-multiple: true - path: repo/ - - - name: Decompress Repository Artifacts - run: | - find repo/ -type f -name '*.tar.gz' -print -exec tar xvf {} \; - find repo/ -type f -name '*.tar.gz' -print -exec rm -f {} \; - - - name: Show Repository - run: | - tree -a artifacts/pkgs/repo/ - - - name: Upload Repository Contents (<{ gh_environment }>) - env: - SALT_REPO_DOMAIN_RELEASE: ${{ vars.SALT_REPO_DOMAIN_RELEASE || 'repo.saltproject.io' }} - SALT_REPO_DOMAIN_STAGING: ${{ vars.SALT_REPO_DOMAIN_STAGING || 'staging.repo.saltproject.io' }} - run: | - tools pkg repo publish <{ gh_environment }> --salt-version=${{ needs.prepare-workflow.outputs.salt-version }} artifacts/pkgs/repo/ <%- endblock jobs %> diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index f29dcb6da94b..09fdb6083777 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -58,7 +58,7 @@ env: jobs: test-linux: - name: ${{ matrix.slug }} + name: ${{ matrix.test-chunk }} ${{ matrix.slug }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: @@ -190,7 +190,7 @@ jobs: include-hidden-files: true test-macos: - name: ${{ matrix.slug }} + name: ${{ matrix.test-chunk }} ${{ matrix.slug }} runs-on: ${{ matrix.runner }} timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: @@ -308,7 +308,7 @@ jobs: test-windows: - name: ${{ matrix.slug }} + name: ${{ matrix.test-chunk }} ${{ matrix.slug }} runs-on: ${{ matrix.distro-slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: diff --git a/tools/ci.py b/tools/ci.py index 4853446ed1af..c8b828587616 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1537,7 +1537,6 @@ def workflow_config( ctx.info(f"{pprint.pformat(gh_event)}") ctx.info(f"{'==== end github event ====':^80s}") - config = {} jobs = { "lint": True, @@ -1628,40 +1627,40 @@ def workflow_config( platforms = ["linux", "macos", "windows"] pkg_test_matrix = {} - for platform in platforms: - pkg_test_matrix[platform] = [ - dict( - { - "tests-chunk": "install", - "version": None, - }, - **_.as_dict(), - ) - for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore - ] - for version in str_releases: + if not skip_pkg_tests: for platform in platforms: - pkg_test_matrix[platform] += [ - dict( - { - "tests-chunk": "upgrade", - "version": version, - }, - **_.as_dict(), - ) - for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore - ] - pkg_test_matrix[platform] += [ + pkg_test_matrix[platform] = [ dict( { - "tests-chunk": "downgrade", - "version": version, + "tests-chunk": "install", + "version": None, }, **_.as_dict(), ) for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore ] - + for version in str_releases: + for platform in platforms: + pkg_test_matrix[platform] += [ + dict( + { + "tests-chunk": "upgrade", + "version": version, + }, + **_.as_dict(), + ) + for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + ] + pkg_test_matrix[platform] += [ + dict( + { + "tests-chunk": "downgrade", + "version": version, + }, + **_.as_dict(), + ) + for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + ] ctx.info(f"{'==== pkg test matrix ====':^80s}") ctx.info(f"{pprint.pformat(pkg_test_matrix)}") ctx.info(f"{'==== end pkg test matrix ====':^80s}") From 4dba0871e087c65daacd02a5ff21a2d0b7b95739 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 18:22:19 -0700 Subject: [PATCH 142/225] Fix staging workflow --- .github/workflows/release.yml | 1 - .github/workflows/staging.yml | 2 -- .github/workflows/templates/staging.yml.jinja | 1 - .../workflows/templates/test-salt-pkg-repo-downloads.yml.jinja | 1 - 4 files changed, 5 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 863a0d2898d2..7666188b61a6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -259,7 +259,6 @@ jobs: if: ${{ inputs.skip-salt-pkg-download-test-suite == false }} needs: - prepare-workflow - - publish-repositories - build-ci-deps - download-onedir-artifact uses: ./.github/workflows/test-package-downloads-action.yml diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 2f3e29c23b22..22f8276d075b 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1276,7 +1276,6 @@ jobs: needs: - prepare-workflow - build-docs - - build-src-repo environment: staging runs-on: - linux-x86_64 @@ -1335,7 +1334,6 @@ jobs: if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] }} needs: - prepare-workflow - - publish-repositories - build-ci-deps - build-salt-onedir uses: ./.github/workflows/test-package-downloads-action.yml diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index d3e1ab4e2a14..0bb7e744ed99 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -86,7 +86,6 @@ concurrency: needs: - prepare-workflow - build-docs - - build-src-repo environment: <{ gh_environment }> runs-on: - linux-x86_64 diff --git a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja index 81403eeb2b2b..82c8593c59c4 100644 --- a/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg-repo-downloads.yml.jinja @@ -12,7 +12,6 @@ <%- endif %> needs: - prepare-workflow - - publish-repositories - build-ci-deps <%- if gh_environment == "release" %> - download-onedir-artifact From f1830811930a6126137cb61224a1686344b9e273 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 22 Nov 2024 20:11:20 -0700 Subject: [PATCH 143/225] Filter arm when needed --- tools/ci.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/ci.py b/tools/ci.py index c8b828587616..3af0e5b1a28e 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1627,6 +1627,11 @@ def workflow_config( platforms = ["linux", "macos", "windows"] pkg_test_matrix = {} + + if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": + TEST_SALT_LISTING["linux"] = list( + filter(lambda x: x.arch != "arm64", TEST_SALT_LISTING["linux"]) + ) if not skip_pkg_tests: for platform in platforms: pkg_test_matrix[platform] = [ From 3c9c4d080b173fd016e81c840594f8ff7e3d532c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 23 Nov 2024 15:04:58 -0700 Subject: [PATCH 144/225] Fix issues in pre-commit --- .../workflows/release-upload-virustotal.yml | 1 - .../test-package-downloads-action.yml | 8 +-- tools/ci.py | 60 +++++++++++++++++++ 3 files changed, 62 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release-upload-virustotal.yml b/.github/workflows/release-upload-virustotal.yml index 431ea00039ab..dc760371bb21 100644 --- a/.github/workflows/release-upload-virustotal.yml +++ b/.github/workflows/release-upload-virustotal.yml @@ -31,7 +31,6 @@ jobs: runs-on: - self-hosted - linux - - repo-release steps: - name: Checkout Salt diff --git a/.github/workflows/test-package-downloads-action.yml b/.github/workflows/test-package-downloads-action.yml index 44dacc629142..bd2453acff5f 100644 --- a/.github/workflows/test-package-downloads-action.yml +++ b/.github/workflows/test-package-downloads-action.yml @@ -88,9 +88,7 @@ jobs: needs: - generate-matrix runs-on: - - self-hosted - - linux - - bastion + - ubuntu-latest env: USE_S3_CACHE: 'true' environment: ${{ inputs.environment }} @@ -497,9 +495,7 @@ jobs: env: USE_S3_CACHE: 'true' runs-on: - - self-hosted - - linux - - bastion + - ubuntu-latest environment: ${{ inputs.environment }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: diff --git a/tools/ci.py b/tools/ci.py index 3af0e5b1a28e..174b4ca59085 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1522,6 +1522,7 @@ def workflow_config( skip_pkg_tests: bool = False, skip_pkg_download_tests: bool = False, ): + full = False gh_event_path = os.environ.get("GITHUB_EVENT_PATH") or None gh_event = None if gh_event_path is not None: @@ -1632,6 +1633,9 @@ def workflow_config( TEST_SALT_LISTING["linux"] = list( filter(lambda x: x.arch != "arm64", TEST_SALT_LISTING["linux"]) ) + TEST_SALT_PKG_LISTING["linux"] = list( + filter(lambda x: x.arch != "arm64", TEST_SALT_PKG_LISTING["linux"]) + ) if not skip_pkg_tests: for platform in platforms: pkg_test_matrix[platform] = [ @@ -1670,7 +1674,63 @@ def workflow_config( ctx.info(f"{pprint.pformat(pkg_test_matrix)}") ctx.info(f"{'==== end pkg test matrix ====':^80s}") + _splits = { + "functional": 4, + "integration": 7, + "scenarios": 1, + "unit": 4, + } + + test_matrix: dict[str, list] = {_: [] for _ in platforms} + if not skip_tests: + for transport in ("zeromq", "tcp"): + # if transport == "tcp" and distro_slug not in ( + # "rockylinux-9", + # "rockylinux-9-arm64", + # "photonos-5", + # "photonos-5-arm64", + # "ubuntu-22.04", + # "ubuntu-22.04-arm64", + # ): + # # Only run TCP transport tests on these distributions + # continue + for chunk in ("unit", "functional", "integration", "scenarios"): + if transport == "tcp" and chunk in ("unit", "functional"): + # Only integration and scenarios shall be tested under TCP, + # the rest would be repeating tests + continue + # if "macos" in distro_slug and chunk == "scenarios": + # continue + splits = _splits.get(chunk) or 1 + if full and splits > 1: + for split in range(1, splits + 1): + for platform in platforms: + test_matrix[platform] += [ + dict( + { + "transport": transport, + "tests-chunk": chunk, + "test-group": split, + "test-group-count": splits, + }, + **_.as_dict(), + ) + for _ in TEST_SALT_LISTING[platform] # type: ignore + ] + else: + test_matrix[platform] += [ + dict( + {"transport": transport, "tests-chunk": chunk}, + **_.as_dict(), + ) + for _ in TEST_SALT_LISTING[platform] # type: ignore + ] + ctx.info(f"{'==== test matrix ====':^80s}") + ctx.info(f"{pprint.pformat(test_matrix)}") + ctx.info(f"{'==== end test matrix ====':^80s}") + config["pkg-test-matrix"] = pkg_test_matrix # type: ignore + config["test-matrix"] = test_matrix # type: ignore ctx.info("Jobs selected are") for x, y in jobs.items(): From 022620d877c15fa6079d82253cae50702c6c2f88 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 23 Nov 2024 15:16:35 -0700 Subject: [PATCH 145/225] Fix up packages action --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 09fdb6083777..2c1d365da095 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -453,7 +453,7 @@ jobs: report: name: Report runs-on: ubuntu-latest - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + if: always() needs: - test-linux - test-macos From 8d024a4bd003c49c789c4948709e4f42452dcb6f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 25 Nov 2024 14:13:38 -0700 Subject: [PATCH 146/225] Use test matrix --- .github/workflows/ci.yml | 783 +----------------- .github/workflows/nightly.yml | 750 +---------------- .github/workflows/scheduled.yml | 750 +---------------- .github/workflows/staging.yml | 750 +---------------- .../workflows/templates/test-salt.yml.jinja | 21 + .github/workflows/test-action.yml | 419 ++++++++++ 6 files changed, 460 insertions(+), 3013 deletions(-) create mode 100644 .github/workflows/test-action.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a365f72c6268..1e6695e88348 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -480,18 +480,15 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-windows-2019: - name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} + test: + name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action.yml with: - distro-slug: windows-2019 nox-session: ci-test-onedir - platform: windows - arch: amd64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} @@ -500,713 +497,9 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} workflow-slug: ci default-timeout: 180 + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - test-windows-2022: - name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-macos-14: - name: macOS 14 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-macos-15: - name: macOS 15 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - test-debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - test-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - test-photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - test-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - fips: true - - test-ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-ubuntu-2204: - name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 - - test-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} - workflow-slug: ci - default-timeout: 180 combine-all-code-coverage: name: Combine Code Coverage @@ -1217,39 +510,6 @@ jobs: needs: - prepare-workflow - build-ci-deps - - test-windows-2019 - - test-windows-2022 - - test-macos-12 - - test-macos-13 - - test-macos-14 - - test-macos-15 - - test-rockylinux-8 - - test-rockylinux-8-arm64 - - test-rockylinux-9 - - test-rockylinux-9-arm64 - - test-amazonlinux-2 - - test-amazonlinux-2-arm64 - - test-amazonlinux-2023 - - test-amazonlinux-2023-arm64 - - test-debian-11 - - test-debian-11-arm64 - - test-debian-12 - - test-debian-12-arm64 - - test-fedora-40 - - test-photonos-4 - - test-photonos-4-arm64 - - test-photonos-4-fips - - test-photonos-4-arm64-fips - - test-photonos-5 - - test-photonos-5-arm64 - - test-photonos-5-fips - - test-photonos-5-arm64-fips - - test-ubuntu-2004 - - test-ubuntu-2004-arm64 - - test-ubuntu-2204 - - test-ubuntu-2204-arm64 - - test-ubuntu-2404 - - test-ubuntu-2404-arm64 steps: - uses: actions/checkout@v4 @@ -1386,39 +646,6 @@ jobs: - build-salt-onedir - combine-all-code-coverage - build-ci-deps - - test-windows-2019 - - test-windows-2022 - - test-macos-12 - - test-macos-13 - - test-macos-14 - - test-macos-15 - - test-rockylinux-8 - - test-rockylinux-8-arm64 - - test-rockylinux-9 - - test-rockylinux-9-arm64 - - test-amazonlinux-2 - - test-amazonlinux-2-arm64 - - test-amazonlinux-2023 - - test-amazonlinux-2023-arm64 - - test-debian-11 - - test-debian-11-arm64 - - test-debian-12 - - test-debian-12-arm64 - - test-fedora-40 - - test-photonos-4 - - test-photonos-4-arm64 - - test-photonos-4-fips - - test-photonos-4-arm64-fips - - test-photonos-5 - - test-photonos-5-arm64 - - test-photonos-5-fips - - test-photonos-5-arm64-fips - - test-ubuntu-2004 - - test-ubuntu-2004-arm64 - - test-ubuntu-2204 - - test-ubuntu-2204-arm64 - - test-ubuntu-2404 - - test-ubuntu-2404-arm64 steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 6a3f2b5d10fb..d769c3e1d493 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -557,18 +557,15 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-windows-2019: - name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} + test: + name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action.yml with: - distro-slug: windows-2019 nox-session: ci-test-onedir - platform: windows - arch: amd64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} @@ -577,713 +574,9 @@ jobs: skip-code-coverage: true workflow-slug: nightly default-timeout: 360 + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - test-windows-2022: - name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-macos-14: - name: macOS 14 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-macos-15: - name: macOS 15 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - test-debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - test-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - test-photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - test-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - fips: true - - test-ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-ubuntu-2204: - name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 - - test-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: nightly - default-timeout: 360 set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks @@ -1304,39 +597,6 @@ jobs: - build-salt-onedir - build-pkgs-src - build-ci-deps - - test-windows-2019 - - test-windows-2022 - - test-macos-12 - - test-macos-13 - - test-macos-14 - - test-macos-15 - - test-rockylinux-8 - - test-rockylinux-8-arm64 - - test-rockylinux-9 - - test-rockylinux-9-arm64 - - test-amazonlinux-2 - - test-amazonlinux-2-arm64 - - test-amazonlinux-2023 - - test-amazonlinux-2023-arm64 - - test-debian-11 - - test-debian-11-arm64 - - test-debian-12 - - test-debian-12-arm64 - - test-fedora-40 - - test-photonos-4 - - test-photonos-4-arm64 - - test-photonos-4-fips - - test-photonos-4-arm64-fips - - test-photonos-5 - - test-photonos-5-arm64 - - test-photonos-5-fips - - test-photonos-5-arm64-fips - - test-ubuntu-2004 - - test-ubuntu-2004-arm64 - - test-ubuntu-2204 - - test-ubuntu-2204-arm64 - - test-ubuntu-2404 - - test-ubuntu-2404-arm64 steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 196a4ab85c39..ab659148836b 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -519,18 +519,15 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-windows-2019: - name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} + test: + name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action.yml with: - distro-slug: windows-2019 nox-session: ci-test-onedir - platform: windows - arch: amd64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} @@ -539,713 +536,9 @@ jobs: skip-code-coverage: true workflow-slug: scheduled default-timeout: 360 + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - test-windows-2022: - name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-macos-14: - name: macOS 14 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-macos-15: - name: macOS 15 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - test-debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - test-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - test-photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - test-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - fips: true - - test-ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-ubuntu-2204: - name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 - - test-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: scheduled - default-timeout: 360 set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks @@ -1264,39 +557,6 @@ jobs: - build-deps-onedir - build-salt-onedir - build-ci-deps - - test-windows-2019 - - test-windows-2022 - - test-macos-12 - - test-macos-13 - - test-macos-14 - - test-macos-15 - - test-rockylinux-8 - - test-rockylinux-8-arm64 - - test-rockylinux-9 - - test-rockylinux-9-arm64 - - test-amazonlinux-2 - - test-amazonlinux-2-arm64 - - test-amazonlinux-2023 - - test-amazonlinux-2023-arm64 - - test-debian-11 - - test-debian-11-arm64 - - test-debian-12 - - test-debian-12-arm64 - - test-fedora-40 - - test-photonos-4 - - test-photonos-4-arm64 - - test-photonos-4-fips - - test-photonos-4-arm64-fips - - test-photonos-5 - - test-photonos-5-arm64 - - test-photonos-5-fips - - test-photonos-5-arm64-fips - - test-ubuntu-2004 - - test-ubuntu-2004-arm64 - - test-ubuntu-2204 - - test-ubuntu-2204-arm64 - - test-ubuntu-2404 - - test-ubuntu-2404-arm64 steps: - name: Get workflow information id: get-workflow-info diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 22f8276d075b..dce9e927b08c 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -543,18 +543,15 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test-windows-2019: - name: Windows 2019 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2019'] }} + test: + name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml + uses: ./.github/workflows/test-action.yml with: - distro-slug: windows-2019 nox-session: ci-test-onedir - platform: windows - arch: amd64 nox-version: 2022.8.7 gh-actions-python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} @@ -563,713 +560,9 @@ jobs: skip-code-coverage: true workflow-slug: staging default-timeout: 180 + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - test-windows-2022: - name: Windows 2022 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-windows-2022'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml - with: - distro-slug: windows-2022 - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-macos-12: - name: macOS 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-12 - runner: macos-12 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-macos-13: - name: macOS 13 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-13'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-13 - runner: macos-13 - nox-session: ci-test-onedir - platform: macos - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-macos-14: - name: macOS 14 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-14'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-14 - runner: macos-14 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-macos-15: - name: macOS 15 (M1) Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-macos-15'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: macos-15 - runner: macos-15 - nox-session: ci-test-onedir - platform: macos - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-rockylinux-8: - name: Rocky Linux 8 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-rockylinux-8-arm64: - name: Rocky Linux 8 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-8-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-8-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-rockylinux-9: - name: Rocky Linux 9 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-rockylinux-9-arm64: - name: Rocky Linux 9 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-rockylinux-9-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: rockylinux-9-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-amazonlinux-2: - name: Amazon Linux 2 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-amazonlinux-2-arm64: - name: Amazon Linux 2 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-amazonlinux-2023: - name: Amazon Linux 2023 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-amazonlinux-2023-arm64: - name: Amazon Linux 2023 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-amazonlinux-2023-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: amazonlinux-2023-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:amazonlinux-2023 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-debian-11: - name: Debian 11 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-debian-11-arm64: - name: Debian 11 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-11-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-11-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-11 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-debian-12: - name: Debian 12 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - test-debian-12-arm64: - name: Debian 12 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-debian-12-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: debian-12-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:debian-12 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-fedora-40: - name: Fedora 40 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-fedora-40'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: fedora-40 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:fedora-40 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-photonos-4: - name: Photon OS 4 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-photonos-4-arm64: - name: Photon OS 4 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-photonos-4-fips: - name: Photon OS 4 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - test-photonos-4-arm64-fips: - name: Photon OS 4 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-4-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-4-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-4 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - test-photonos-5: - name: Photon OS 5 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-photonos-5-arm64: - name: Photon OS 5 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-photonos-5-fips: - name: Photon OS 5 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - test-photonos-5-arm64-fips: - name: Photon OS 5 Arm64 Test (fips) - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-photonos-5-arm64-fips'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: photonos-5-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:photon-5 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - fips: true - - test-ubuntu-2004: - name: Ubuntu 20.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-ubuntu-2004-arm64: - name: Ubuntu 20.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2004-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-20.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-20.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-ubuntu-2204: - name: Ubuntu 22.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-ubuntu-2204-arm64: - name: Ubuntu 22.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2204-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-22.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-ubuntu-2404: - name: Ubuntu 24.04 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: x86_64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 - - test-ubuntu-2404-arm64: - name: Ubuntu 24.04 Arm64 Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-ubuntu-2404-arm64'] }} - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: ubuntu-24.04-arm64 - nox-session: ci-test-onedir - platform: linux - container: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-24.04 - arch: arm64 - nox-version: 2022.8.7 - gh-actions-python-version: "3.10" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - skip-code-coverage: true - workflow-slug: staging - default-timeout: 180 upload-release-artifacts: name: Upload Release Artifacts @@ -1355,39 +648,6 @@ jobs: - prepare-workflow - upload-release-artifacts - build-ci-deps - - test-windows-2019 - - test-windows-2022 - - test-macos-12 - - test-macos-13 - - test-macos-14 - - test-macos-15 - - test-rockylinux-8 - - test-rockylinux-8-arm64 - - test-rockylinux-9 - - test-rockylinux-9-arm64 - - test-amazonlinux-2 - - test-amazonlinux-2-arm64 - - test-amazonlinux-2023 - - test-amazonlinux-2023-arm64 - - test-debian-11 - - test-debian-11-arm64 - - test-debian-12 - - test-debian-12-arm64 - - test-fedora-40 - - test-photonos-4 - - test-photonos-4-arm64 - - test-photonos-4-fips - - test-photonos-4-arm64-fips - - test-photonos-5 - - test-photonos-5-arm64 - - test-photonos-5-fips - - test-photonos-5-arm64-fips - - test-ubuntu-2004 - - test-ubuntu-2004-arm64 - - test-ubuntu-2204 - - test-ubuntu-2204-arm64 - - test-ubuntu-2404 - - test-ubuntu-2404-arm64 - pkg-download-tests environment: staging runs-on: diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 76c1a7173fcc..1224f60f4912 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -4,6 +4,26 @@ <%- set timeout_value = 180 %> <%- endif %> + test: + name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} + needs: + - prepare-workflow + - build-ci-deps + uses: ./.github/workflows/test-action.yml + with: + nox-session: ci-test-onedir + nox-version: <{ nox_version }> + gh-actions-python-version: "<{ gh_actions_workflows_python_version }>" + testrun: ${{ needs.prepare-workflow.outputs.testrun }} + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> + skip-code-coverage: <{ skip_test_coverage_check }> + workflow-slug: <{ workflow_slug }> + default-timeout: <{ timeout_value }> + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} + +{# <%- for os in test_salt_listing["windows"] %> <{ os.job_name }>: @@ -100,3 +120,4 @@ <%- endif %> <%- endfor %> +#} diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml new file mode 100644 index 000000000000..336fabbb2434 --- /dev/null +++ b/.github/workflows/test-action.yml @@ -0,0 +1,419 @@ +--- +name: Test Artifact (Linux) + +on: + workflow_call: + inputs: + nox-session: + required: true + type: string + description: The nox session to run + testrun: + required: true + type: string + description: JSON string containing information about what and how to run the test suite + gh-actions-python-version: + required: false + type: string + description: The python version to run tests with + default: "3.11" + salt-version: + type: string + required: true + description: The Salt version to set prior to running tests. + cache-prefix: + required: true + type: string + description: Seed used to invalidate caches + nox-version: + required: true + type: string + description: The nox version to install + package-name: + required: false + type: string + description: The onedir package name to use + default: salt + skip-code-coverage: + required: false + type: boolean + description: Skip code coverage + default: false + workflow-slug: + required: false + type: string + description: Which workflow is running. + default: ci + default-timeout: + required: false + type: number + description: Timeout, in minutes, for the test job(Default 360, 6 hours). + default: 360 + matrix: + required: true + type: string + description: Json job matrix config + + +env: + COLUMNS: 190 + PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} + PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} + PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} + PIP_DISABLE_PIP_VERSION_CHECK: "1" + RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" + +jobs: + + test-linux: + name: ${{ matrix.display_name }} + runs-on: + - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} + container: + image: ${{ inputs.container }} + # Full test runs. Each chunk should never take more than 2 hours. + # Partial test runs(no chunk parallelization), 6 Hours + timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} + needs: + - generate-matrix + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + env: + SALT_TRANSPORT: ${{ matrix.transport }} + + steps: + # - uses: actions/setup-python@v5 + # with: + # python-version: '3.10' + + - name: Check python + run: | + which python3 + + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Salt Version + run: | + echo "${{ inputs.salt-version }}" > salt/_version.txt + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + + - name: Install System Dependencies + run: | + echo true + + - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-linux-${{ matrix.arch }}-${{ inputs.nox-session }} + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} + + - name: Download testrun-changed-files.txt + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + uses: actions/download-artifact@v4 + with: + name: testrun-changed-files.txt + + - name: Current Directory + run: | + pwd + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + + - name: Run Changed Tests + id: run-fast-changed-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ + --from-filenames=testrun-changed-files.txt + + - name: Run Fast Tests + id: run-fast-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code + + - name: Run Slow Tests + id: run-slow-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + + - name: Run Core Tests + id: run-core-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + + - name: Run Flaky Tests + id: run-flaky-tests + if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + + - name: Run Full Tests + id: run-full-tests + if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --slow-tests --core-tests -k "mac or darwin" + + - name: Fix file ownership + run: | + sudo chown -R "$(id -un)" . + + - name: Combine Coverage Reports + if: always() && inputs.skip-code-coverage == false + run: | + nox --force-color -e combine-coverage + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + tree -a artifacts + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi + + - name: Upload Code Coverage Test Run Artifacts + if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' + uses: actions/upload-artifact@v4 + with: + name: testrun-coverage-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/coverage/ + include-hidden-files: true + + - name: Upload JUnit XML Test Run Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-junit-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/xml-unittests-output/ + include-hidden-files: true + + - name: Upload Test Run Log Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + report: + name: Test Reports + if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + runs-on: ubuntu-latest + needs: + - test-linux + env: + PIP_INDEX_URL: https://pypi.org/simple + + steps: + - name: Checkout Source Code + uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" + + - name: Merge JUnit XML Test Run Artifacts + if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-junit-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }} + pattern: testrun-junit-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Merge Log Test Run Artifacts + if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }} + pattern: testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Merge Code Coverage Test Run Artifacts + if: ${{ inputs.skip-code-coverage == false }} + continue-on-error: true + uses: actions/upload-artifact/merge@v4 + with: + name: testrun-coverage-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }} + pattern: testrun-coverage-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-* + separate-directories: false + delete-merged: true + + - name: Download Code Coverage Test Run Artifacts + uses: actions/download-artifact@v4 + if: ${{ inputs.skip-code-coverage == false }} + id: download-coverage-artifacts + with: + path: artifacts/coverage/ + pattern: testrun-coverage-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}* + merge-multiple: true + + - name: Show Downloaded Test Run Artifacts + if: ${{ inputs.skip-code-coverage == false }} + run: | + tree -a artifacts + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + + - name: Create XML Coverage Reports + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' + run: | + nox --force-color -e create-xml-coverage-reports + mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ matrix.slug }}..${{ inputs.nox-session }}.xml + mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ matrix.slug }}..${{ inputs.nox-session }}.xml + + - name: Report Salt Code Coverage + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + nox --force-color -e report-coverage -- salt + + - name: Report Combined Code Coverage + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + nox --force-color -e report-coverage + + - name: Rename Code Coverage DB + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + continue-on-error: true + run: | + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.slug }}.${{ inputs.nox-session }} + + - name: Upload Code Coverage DB + if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: all-testrun-coverage-artifacts-${{ matrix.slug }}.${{ inputs.nox-session }} + path: artifacts/coverage + include-hidden-files: true From b830a64ade68d93a749595a4f098ac0ba7133982 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 25 Nov 2024 14:16:58 -0700 Subject: [PATCH 147/225] Remove unwanted needs --- .github/workflows/test-action.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 336fabbb2434..499ff64a6f3a 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -74,8 +74,6 @@ jobs: # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix strategy: fail-fast: false matrix: From 845af349cc71c619b8c86afe67ddb3d2a016bf6b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 16:21:52 -0700 Subject: [PATCH 148/225] Workflow fix --- .github/workflows/ci.yml | 4 -- .github/workflows/nightly.yml | 4 -- .github/workflows/scheduled.yml | 4 -- .github/workflows/staging.yml | 4 -- .../workflows/templates/test-salt.yml.jinja | 6 +- .github/workflows/test-action.yml | 20 ++++--- .github/workflows/test-packages-action.yml | 2 +- tools/ci.py | 58 +++++++++---------- 8 files changed, 44 insertions(+), 58 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1e6695e88348..cb7f1b52f80d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -479,10 +479,8 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps @@ -499,8 +497,6 @@ jobs: default-timeout: 180 matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - - combine-all-code-coverage: name: Combine Code Coverage if: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] == false }} diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index d769c3e1d493..026e1c559d48 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -556,10 +556,8 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps @@ -576,8 +574,6 @@ jobs: default-timeout: 360 matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - - set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks # on a pull request instead of requiring all diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index ab659148836b..6a04de30f545 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -518,10 +518,8 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps @@ -538,8 +536,6 @@ jobs: default-timeout: 360 matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - - set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks # on a pull request instead of requiring all diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index dce9e927b08c..b285cfc958d4 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -542,10 +542,8 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps @@ -562,8 +560,6 @@ jobs: default-timeout: 180 matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - - upload-release-artifacts: name: Upload Release Artifacts needs: diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 1224f60f4912..957b0c65fdcf 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -3,10 +3,9 @@ <%- else %> <%- set timeout_value = 180 %> <%- endif %> - test: name: Test - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} + {#- if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} #} needs: - prepare-workflow - build-ci-deps @@ -22,8 +21,7 @@ workflow-slug: <{ workflow_slug }> default-timeout: <{ timeout_value }> matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} - -{# +{#- <%- for os in test_salt_listing["windows"] %> <{ os.job_name }>: diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 499ff64a6f3a..37960deeb49f 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -1,5 +1,5 @@ --- -name: Test Artifact (Linux) +name: Test Artifact on: workflow_call: @@ -66,11 +66,11 @@ env: jobs: test-linux: - name: ${{ matrix.display_name }} + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: - image: ${{ inputs.container }} + image: ${{ matrix.container }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} @@ -85,12 +85,15 @@ jobs: # - uses: actions/setup-python@v5 # with: # python-version: '3.10' + # + - name: Test Matrix + run: | + echo ${{ toJSON(matrix) }} - name: Check python run: | which python3 - - name: "Throttle Builds" shell: bash run: | @@ -125,7 +128,7 @@ jobs: run: | echo true - - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + - name: Download nox.linux.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 with: name: nox-linux-${{ matrix.arch }}-${{ inputs.nox-session }} @@ -310,10 +313,13 @@ jobs: report: name: Test Reports - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' runs-on: ubuntu-latest needs: - test-linux + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} env: PIP_INDEX_URL: https://pypi.org/simple @@ -331,7 +337,6 @@ jobs: t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - name: Merge JUnit XML Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' continue-on-error: true uses: actions/upload-artifact/merge@v4 with: @@ -341,7 +346,6 @@ jobs: delete-merged: true - name: Merge Log Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' continue-on-error: true uses: actions/upload-artifact/merge@v4 with: diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 2c1d365da095..a61f3242566c 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -58,7 +58,7 @@ env: jobs: test-linux: - name: ${{ matrix.test-chunk }} ${{ matrix.slug }} + name: ${{ matrix.display_name }} ${{ matrix.test-chunk }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: diff --git a/tools/ci.py b/tools/ci.py index 174b4ca59085..673f3dd7c7d6 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1683,28 +1683,28 @@ def workflow_config( test_matrix: dict[str, list] = {_: [] for _ in platforms} if not skip_tests: - for transport in ("zeromq", "tcp"): - # if transport == "tcp" and distro_slug not in ( - # "rockylinux-9", - # "rockylinux-9-arm64", - # "photonos-5", - # "photonos-5-arm64", - # "ubuntu-22.04", - # "ubuntu-22.04-arm64", - # ): - # # Only run TCP transport tests on these distributions - # continue - for chunk in ("unit", "functional", "integration", "scenarios"): - if transport == "tcp" and chunk in ("unit", "functional"): - # Only integration and scenarios shall be tested under TCP, - # the rest would be repeating tests - continue - # if "macos" in distro_slug and chunk == "scenarios": + for platform in platforms: + for transport in ("zeromq", "tcp"): + # if transport == "tcp" and distro_slug not in ( + # "rockylinux-9", + # "rockylinux-9-arm64", + # "photonos-5", + # "photonos-5-arm64", + # "ubuntu-22.04", + # "ubuntu-22.04-arm64", + # ): + # # Only run TCP transport tests on these distributions # continue - splits = _splits.get(chunk) or 1 - if full and splits > 1: - for split in range(1, splits + 1): - for platform in platforms: + for chunk in ("unit", "functional", "integration", "scenarios"): + if transport == "tcp" and chunk in ("unit", "functional"): + # Only integration and scenarios shall be tested under TCP, + # the rest would be repeating tests + continue + # if "macos" in distro_slug and chunk == "scenarios": + # continue + splits = _splits.get(chunk) or 1 + if full and splits > 1: + for split in range(1, splits + 1): test_matrix[platform] += [ dict( { @@ -1717,14 +1717,14 @@ def workflow_config( ) for _ in TEST_SALT_LISTING[platform] # type: ignore ] - else: - test_matrix[platform] += [ - dict( - {"transport": transport, "tests-chunk": chunk}, - **_.as_dict(), - ) - for _ in TEST_SALT_LISTING[platform] # type: ignore - ] + else: + test_matrix[platform] += [ + dict( + {"transport": transport, "tests-chunk": chunk}, + **_.as_dict(), + ) + for _ in TEST_SALT_LISTING[platform] # type: ignore + ] ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") ctx.info(f"{'==== end test matrix ====':^80s}") From 64db1c70b927d4dfb41988c88dfb6f1bb10ad497 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 16:23:11 -0700 Subject: [PATCH 149/225] Fix action name for package tests --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index a61f3242566c..a0bfe8a79b0b 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -58,7 +58,7 @@ env: jobs: test-linux: - name: ${{ matrix.display_name }} ${{ matrix.test-chunk }} + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} container: From d0be4eb81c908d592155ef2dd8636cd634b995d9 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 16:49:36 -0700 Subject: [PATCH 150/225] Fix matrix names --- .github/workflows/test-packages-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index a0bfe8a79b0b..496c2d887374 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -190,7 +190,7 @@ jobs: include-hidden-files: true test-macos: - name: ${{ matrix.test-chunk }} ${{ matrix.slug }} + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: ${{ matrix.runner }} timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: @@ -308,7 +308,7 @@ jobs: test-windows: - name: ${{ matrix.test-chunk }} ${{ matrix.slug }} + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: ${{ matrix.distro-slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: From 77940dab0cee22010be73c1668b40ac1546c1fec Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 17:04:27 -0700 Subject: [PATCH 151/225] Add mac and windows to tests action --- .github/workflows/test-action.yml | 476 ++++++++++++++++++++++++++++++ 1 file changed, 476 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 37960deeb49f..18d9e3ce4952 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -311,11 +311,487 @@ jobs: artifacts/logs include-hidden-files: true + test-macos: + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} + runs-on: ${{ matrix.runner }} + # Full test runs. Each chunk should never take more than 2 hours. + # Partial test runs(no chunk parallelization), 6 Hours + timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} + needs: + - generate-matrix + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + env: + SALT_TRANSPORT: ${{ matrix.transport }} + + steps: + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Salt Version + run: | + echo "${{ inputs.salt-version }}" > salt/_version.txt + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + + - name: Install System Dependencies + run: | + brew install tree + + - name: Download nox.macos.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-macos-${{ matrix.arch }}-${{ inputs.nox-session }} + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- macos ${{ matrix.arch }} + + - name: Download testrun-changed-files.txt + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + uses: actions/download-artifact@v4 + with: + name: testrun-changed-files.txt + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + + - name: Run Changed Tests + id: run-fast-changed-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ + --from-filenames=testrun-changed-files.txt + + - name: Run Fast Tests + id: run-fast-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code + + - name: Run Slow Tests + id: run-slow-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + + - name: Run Core Tests + id: run-core-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + + - name: Run Flaky Tests + id: run-flaky-tests + if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + + - name: Run Full Tests + id: run-full-tests + if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: | + sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --slow-tests --core-tests -k "mac or darwin" + + - name: Fix file ownership + run: | + sudo chown -R "$(id -un)" . + + - name: Combine Coverage Reports + if: always() && inputs.skip-code-coverage == false + run: | + nox --force-color -e combine-coverage + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + tree -a artifacts + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi + + - name: Upload Code Coverage Test Run Artifacts + if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' + uses: actions/upload-artifact@v4 + with: + name: testrun-coverage-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/coverage/ + include-hidden-files: true + + - name: Upload JUnit XML Test Run Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-junit-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/xml-unittests-output/ + include-hidden-files: true + + - name: Upload Test Run Log Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + test-windows: + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} + runs-on: ${{ matrix.slug }} + # Full test runs. Each chunk should never take more than 2 hours. + # Partial test runs(no chunk parallelization), 6 Hours + timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} + needs: + - generate-matrix + strategy: + fail-fast: false + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + env: + SALT_TRANSPORT: ${{ matrix.transport }} + + steps: + - uses: actions/setup-python@v5 + with: + python-version: '3.10' + + - name: "Throttle Builds" + shell: bash + run: | + t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" + + - name: "Set `TIMESTAMP` environment variable" + shell: bash + run: | + echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" + + - name: Checkout Source Code + uses: actions/checkout@v4 + + - name: Setup Salt Version + run: | + echo "${{ inputs.salt-version }}" > salt/_version.txt + + - name: Download Onedir Tarball as an Artifact + uses: actions/download-artifact@v4 + with: + name: ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + path: artifacts/ + + - name: Decompress Onedir Tarball + shell: bash + run: | + python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" + cd artifacts + tar xvf ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + + - name: Install System Dependencies + run: | + echo true + + - name: Set up Python ${{ inputs.gh-actions-python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.gh-actions-python-version }}" + + - name: Install Nox + run: | + python3 -m pip install 'nox==${{ inputs.nox-version }}' + env: + PIP_INDEX_URL: https://pypi.org/simple + + - name: Download nox.windows.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} + uses: actions/download-artifact@v4 + with: + name: nox-windows-${{ matrix.arch }}-${{ inputs.nox-session }} + + - name: Decompress .nox Directory + run: | + nox --force-color -e decompress-dependencies -- windows ${{ matrix.arch }} + + - name: Download testrun-changed-files.txt + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + uses: actions/download-artifact@v4 + with: + name: testrun-changed-files.txt + + - name: Check nox python + continue-on-error: true + run: | + .nox/ci-test-onedir/Scripts/python.exe --version + + - name: Show System Info + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_SYSTEM_INFO_ONLY: "1" + run: | + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + + - name: Run Changed Tests + id: run-fast-changed-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "win" --core-tests --slow-tests --suppress-no-test-exit-code + "--from-filenames=testrun-changed-files.txt" + + - name: Run Fast Tests + id: run-fast-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "win" --suppress-no-test-exit-code + + - name: Run Slow Tests + id: run-slow-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "win" --suppress-no-test-exit-code --no-fast-tests --slow-tests + + - name: Run Core Tests + id: run-core-tests + if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "win" --suppress-no-test-exit-code --no-fast-tests --core-tests + + - name: Run Flaky Tests + id: run-flaky-tests + if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + -k "win" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + + - name: Run Full Tests + id: run-full-tests + if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} + env: + SKIP_REQUIREMENTS_INSTALL: "1" + PRINT_TEST_SELECTION: "0" + PRINT_TEST_PLAN_ONLY: "0" + PRINT_SYSTEM_INFO: "0" + RERUN_FAILURES: "1" + GITHUB_ACTIONS_PIPELINE: "1" + SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" + SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" + COVERAGE_CONTEXT: ${{ matrix.slug }} + run: > + nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- + --slow-tests --core-tests -k "win" + + - name: Combine Coverage Reports + if: always() && inputs.skip-code-coverage == false + run: | + nox --force-color -e combine-coverage + + - name: Prepare Test Run Artifacts + id: download-artifacts-from-vm + if: always() + shell: bash + run: | + # Delete the salt onedir, we won't need it anymore and it will prevent + # from it showing in the tree command below + rm -rf artifacts/salt* + if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + fi + + - name: Upload Code Coverage Test Run Artifacts + if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' + uses: actions/upload-artifact@v4 + with: + name: testrun-coverage-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/coverage/ + include-hidden-files: true + + - name: Upload JUnit XML Test Run Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-junit-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/xml-unittests-output/ + include-hidden-files: true + + - name: Upload Test Run Log Artifacts + if: always() && steps.download-artifacts-from-vm.outcome == 'success' + uses: actions/upload-artifact@v4 + with: + name: testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + path: | + artifacts/logs + include-hidden-files: true + + report: name: Test Reports runs-on: ubuntu-latest needs: - test-linux + - test-macos strategy: fail-fast: false matrix: From ea8af1834ddafd1126cb5c807895211467dd463d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 17:05:37 -0700 Subject: [PATCH 152/225] Clean up un-used actions --- .github/workflows/test-action-linux.yml | 467 ------------------ .github/workflows/test-action-macos.yml | 452 ----------------- .github/workflows/test-action-windows.yml | 457 ----------------- .../workflows/test-packages-action-linux.yml | 288 ----------- .../workflows/test-packages-action-macos.yml | 282 ----------- .../test-packages-action-windows.yml | 297 ----------- 6 files changed, 2243 deletions(-) delete mode 100644 .github/workflows/test-action-linux.yml delete mode 100644 .github/workflows/test-action-macos.yml delete mode 100644 .github/workflows/test-action-windows.yml delete mode 100644 .github/workflows/test-packages-action-linux.yml delete mode 100644 .github/workflows/test-packages-action-macos.yml delete mode 100644 .github/workflows/test-packages-action-windows.yml diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml deleted file mode 100644 index a6823b052f87..000000000000 --- a/.github/workflows/test-action-linux.yml +++ /dev/null @@ -1,467 +0,0 @@ ---- -name: Test Artifact (Linux) - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - nox-session: - required: true - type: string - description: The nox session to run - container: - required: true - type: string - description: The container image to run tests on - testrun: - required: true - type: string - description: JSON string containing information about what and how to run the test suite - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.11" - salt-version: - type: string - required: true - description: The Salt version to set prior to running tests. - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - fips: - required: false - type: boolean - default: false - description: Test run with FIPS enabled - nox-version: - required: true - type: string - description: The nox version to install - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - workflow-slug: - required: false - type: string - description: Which workflow is running. - default: ci - default-timeout: - required: false - type: number - description: Timeout, in minutes, for the test job(Default 360, 6 hours). - default: 360 - -env: - COLUMNS: 190 - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Test Matrix - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-matrix.outputs.build-reports }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: 3.10.14 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: | - tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ inputs.distro-slug }} - - test: - name: Test - runs-on: - - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} - container: - image: ${{ inputs.container }} - # Full test runs. Each chunk should never take more than 2 hours. - # Partial test runs(no chunk parallelization), 6 Hours - timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} - env: - SALT_TRANSPORT: ${{ matrix.transport }} - - steps: - # - uses: actions/setup-python@v5 - # with: - # python-version: '3.10' - - - name: Check python - run: | - which python3 - - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Salt Version - run: | - echo "${{ inputs.salt-version }}" > salt/_version.txt - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Install System Dependencies - run: | - echo true - - - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- linux ${{ inputs.arch }} - - - name: Download testrun-changed-files.txt - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - uses: actions/download-artifact@v4 - with: - name: testrun-changed-files.txt - - - name: Current Directory - run: | - pwd - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - - - name: Run Changed Tests - id: run-fast-changed-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ - --from-filenames=testrun-changed-files.txt - - - name: Run Fast Tests - id: run-fast-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code - - - name: Run Slow Tests - id: run-slow-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - - - name: Run Core Tests - id: run-core-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - - - name: Run Flaky Tests - id: run-flaky-tests - if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - - - name: Run Full Tests - id: run-full-tests - if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --slow-tests --core-tests -k "mac or darwin" - - - name: Fix file ownership - run: | - sudo chown -R "$(id -un)" . - - - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false - run: | - nox --force-color -e combine-coverage - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - tree -a artifacts - if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} - fi - - - name: Upload Code Coverage Test Run Artifacts - if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/coverage/ - include-hidden-files: true - - - name: Upload JUnit XML Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/xml-unittests-output/ - include-hidden-files: true - - - name: Upload Test Run Log Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - report: - name: Test Reports - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - runs-on: ubuntu-latest - needs: - - test - - generate-matrix - env: - PIP_INDEX_URL: https://pypi.org/simple - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Merge JUnit XML Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Log Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Code Coverage Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 - if: ${{ inputs.skip-code-coverage == false }} - id: download-coverage-artifacts - with: - path: artifacts/coverage/ - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* - merge-multiple: true - - - name: Show Downloaded Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - run: | - tree -a artifacts - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - - - name: Create XML Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' - run: | - nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - - - name: Report Salt Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage -- salt - - - name: Report Combined Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage - - - name: Rename Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} - - - name: Upload Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} - path: artifacts/coverage - include-hidden-files: true diff --git a/.github/workflows/test-action-macos.yml b/.github/workflows/test-action-macos.yml deleted file mode 100644 index 56b4e482f502..000000000000 --- a/.github/workflows/test-action-macos.yml +++ /dev/null @@ -1,452 +0,0 @@ ---- -name: Test Artifact(macOS) - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - runner: - required: true - type: string - description: The GitHub runner name - nox-session: - required: true - type: string - description: The nox session to run - testrun: - required: true - type: string - description: JSON string containing information about what and how to run the test suite - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.11" - salt-version: - type: string - required: true - description: The Salt version to set prior to running tests. - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - nox-version: - required: true - type: string - description: The nox version to install - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - workflow-slug: - required: false - type: string - description: Which workflow is running. - default: ci - default-timeout: - required: false - type: number - description: Timeout, in minutes, for the test job(Default 360, 6 hours). - default: 360 - -env: - COLUMNS: 190 - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Test Matrix - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-matrix.outputs.build-reports }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: | - tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ inputs.distro-slug }} - - test: - name: Test - runs-on: ${{ inputs.runner }} - # Full test runs. Each chunk should never take more than 2 hours. - # Partial test runs(no chunk parallelization), 6 Hours - timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} - env: - SALT_TRANSPORT: ${{ matrix.transport }} - - steps: - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Salt Version - run: | - echo "${{ inputs.salt-version }}" > salt/_version.txt - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Install System Dependencies - run: | - brew install tree - - - name: Download nox.macos.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-macos-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- macos ${{ inputs.arch }} - - - name: Download testrun-changed-files.txt - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - uses: actions/download-artifact@v4 - with: - name: testrun-changed-files.txt - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - - - name: Run Changed Tests - id: run-fast-changed-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ - --from-filenames=testrun-changed-files.txt - - - name: Run Fast Tests - id: run-fast-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code - - - name: Run Slow Tests - id: run-slow-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests - - - name: Run Core Tests - id: run-core-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests - - - name: Run Flaky Tests - id: run-flaky-tests - if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - - - name: Run Full Tests - id: run-full-tests - if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --slow-tests --core-tests -k "mac or darwin" - - - name: Fix file ownership - run: | - sudo chown -R "$(id -un)" . - - - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false - run: | - nox --force-color -e combine-coverage - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - tree -a artifacts - if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} - fi - - - name: Upload Code Coverage Test Run Artifacts - if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/coverage/ - include-hidden-files: true - - - name: Upload JUnit XML Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/xml-unittests-output/ - include-hidden-files: true - - - name: Upload Test Run Log Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - report: - name: Test Reports - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - runs-on: ubuntu-latest - needs: - - test - - generate-matrix - env: - PIP_INDEX_URL: https://pypi.org/simple - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Merge JUnit XML Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Log Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Code Coverage Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 - if: ${{ inputs.skip-code-coverage == false }} - id: download-coverage-artifacts - with: - path: artifacts/coverage/ - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* - merge-multiple: true - - - name: Show Downloaded Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - run: | - tree -a artifacts - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - - - name: Create XML Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' - run: | - nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - - - name: Report Salt Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage -- salt - - - name: Report Combined Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage - - - name: Rename Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} - - - name: Upload Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} - path: artifacts/coverage - include-hidden-files: true diff --git a/.github/workflows/test-action-windows.yml b/.github/workflows/test-action-windows.yml deleted file mode 100644 index ca2cbdde8f5c..000000000000 --- a/.github/workflows/test-action-windows.yml +++ /dev/null @@ -1,457 +0,0 @@ ---- -name: Test Artifact(Windows) - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - nox-session: - required: true - type: string - description: The nox session to run - testrun: - required: true - type: string - description: JSON string containing information about what and how to run the test suite - gh-actions-python-version: - required: false - type: string - description: The python version to run tests with - default: "3.11" - salt-version: - type: string - required: true - description: The Salt version to set prior to running tests. - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - fips: - required: false - type: boolean - default: false - description: Test run with FIPS enabled - nox-version: - required: true - type: string - description: The nox version to install - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - workflow-slug: - required: false - type: string - description: Which workflow is running. - default: ci - default-timeout: - required: false - type: number - description: Timeout, in minutes, for the test job(Default 360, 6 hours). - default: 360 - -env: - COLUMNS: 190 - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Test Matrix - runs-on: ubuntu-latest - outputs: - matrix-include: ${{ steps.generate-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-matrix.outputs.build-reports }} - steps: - - uses: actions/setup-python@v5 - with: - python-version: 3.10.14 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Generate Test Matrix - id: generate-matrix - run: | - tools ci matrix --workflow=${{ inputs.workflow-slug }} ${{ fromJSON(inputs.testrun)['type'] == 'full' && '--full ' || '' }}${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} - - test: - name: Test - runs-on: ${{ inputs.distro-slug }} - # Full test runs. Each chunk should never take more than 2 hours. - # Partial test runs(no chunk parallelization), 6 Hours - timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.matrix-include) }} - env: - SALT_TRANSPORT: ${{ matrix.transport }} - - steps: - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Salt Version - run: | - echo "${{ inputs.salt-version }}" > salt/_version.txt - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Install System Dependencies - run: | - echo true - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - - - name: Download testrun-changed-files.txt - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - uses: actions/download-artifact@v4 - with: - name: testrun-changed-files.txt - - - name: Check nox python - continue-on-error: true - run: | - .nox/ci-test-onedir/Scripts/python.exe --version - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - - - name: Run Changed Tests - id: run-fast-changed-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: > - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "win" --core-tests --slow-tests --suppress-no-test-exit-code - "--from-filenames=testrun-changed-files.txt" - - - name: Run Fast Tests - id: run-fast-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: > - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "win" --suppress-no-test-exit-code - - - name: Run Slow Tests - id: run-slow-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: > - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "win" --suppress-no-test-exit-code --no-fast-tests --slow-tests - - - name: Run Core Tests - id: run-core-tests - if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: > - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "win" --suppress-no-test-exit-code --no-fast-tests --core-tests - - - name: Run Flaky Tests - id: run-flaky-tests - if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: > - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - -k "win" --suppress-no-test-exit-code --no-fast-tests --flaky-jail - - - name: Run Full Tests - id: run-full-tests - if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: > - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- - --slow-tests --core-tests -k "win" - - - name: Combine Coverage Reports - if: always() && inputs.skip-code-coverage == false - run: | - nox --force-color -e combine-coverage - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - shell: bash - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} - fi - - - name: Upload Code Coverage Test Run Artifacts - if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/coverage/ - include-hidden-files: true - - - name: Upload JUnit XML Test Run Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/xml-unittests-output/ - include-hidden-files: true - - - name: Upload Test Run Log Artifacts - if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - report: - name: Test Reports - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - runs-on: ubuntu-latest - needs: - - test - - generate-matrix - env: - PIP_INDEX_URL: https://pypi.org/simple - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - uses: actions/setup-python@v5 - with: - python-version: '3.10' - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Merge JUnit XML Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Log Test Run Artifacts - if: always() && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Merge Code Coverage Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-* - separate-directories: false - delete-merged: true - - - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 - if: ${{ inputs.skip-code-coverage == false }} - id: download-coverage-artifacts - with: - path: artifacts/coverage/ - pattern: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}* - merge-multiple: true - - - name: Show Downloaded Test Run Artifacts - if: ${{ inputs.skip-code-coverage == false }} - run: | - tree -a artifacts - - - name: Set up Python ${{ inputs.gh-actions-python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.gh-actions-python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - - - name: Create XML Coverage Reports - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' && job.status != 'cancelled' - run: | - nox --force-color -e create-xml-coverage-reports - mv artifacts/coverage/salt.xml artifacts/coverage/salt..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - mv artifacts/coverage/tests.xml artifacts/coverage/tests..${{ inputs.distro-slug }}..${{ inputs.nox-session }}.xml - - - name: Report Salt Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage -- salt - - - name: Report Combined Code Coverage - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - nox --force-color -e report-coverage - - - name: Rename Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - continue-on-error: true - run: | - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }} - - - name: Upload Code Coverage DB - if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 - with: - name: all-testrun-coverage-artifacts-${{ inputs.distro-slug }}.${{ inputs.nox-session }} - path: artifacts/coverage - include-hidden-files: true diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml deleted file mode 100644 index 88a218867b50..000000000000 --- a/.github/workflows/test-packages-action-linux.yml +++ /dev/null @@ -1,288 +0,0 @@ -name: Test Artifact - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - platform: - required: true - type: string - description: The platform being tested - container: - required: true - type: string - description: The container image to run tests on - arch: - required: true - type: string - description: The platform arch being tested - pkg-type: - required: true - type: string - description: The platform arch being tested - salt-version: - type: string - required: true - description: The Salt version of the packages to install and test - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - testing-releases: - required: true - type: string - description: A JSON list of releases to test upgrades against - nox-version: - required: true - type: string - description: The nox version to install - python-version: - required: false - type: string - description: The python version to run tests with - default: "3.10" - fips: - required: false - type: boolean - default: false - description: Test run with FIPS enabled - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - nox-session: - required: false - type: string - description: The nox session to run - default: ci-test-onedir - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - -env: - COLUMNS: 190 - AWS_MAX_ATTEMPTS: "10" - AWS_RETRY_MODE: "adaptive" - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - USE_S3_CACHE: 'false' - -jobs: - - generate-matrix: - name: Generate Matrix - runs-on: ubuntu-latest - outputs: - pkg-matrix-include: ${{ steps.generate-pkg-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-pkg-matrix.outputs.build-reports }} - steps: - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - - name: Generate Package Test Matrix - id: generate-pkg-matrix - run: | - tools ci pkg-matrix ${{ inputs.distro-slug }} \ - ${{ inputs.pkg-type }} --testing-releases ${{ join(fromJSON(inputs.testing-releases), ' ') }} - - - test: - name: Test - runs-on: - - ${{ inputs.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} - container: - image: ${{ inputs.container }} - options: --privileged - timeout-minutes: 120 # 2 Hours - More than this and something is wrong - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.pkg-matrix-include) }} - - steps: - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Download Packages - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ inputs.arch }}-${{ inputs.pkg-type }} - path: artifacts/pkg/ - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - #- name: Set up Python ${{ inputs.python-version }} - # uses: actions/setup-python@v5 - # with: - # python-version: "${{ inputs.python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: List Packages - run: | - tree artifacts/pkg/ - - - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- linux ${{ inputs.arch }} - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - - name: List Free Space - run: | - tools --timestamps vm ssh ${{ inputs.distro-slug }} -- df -h || true - -# - name: check systemd -# run: systemctl -# - #- name: Mock systemd - # run: | - # wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py - # cp systemctl3.py /usr/bin/systemctl - # chmod +x /usr/bin/systemctl - # - #- name: install pkg test - # run: | - # dpkg -i ./artifacts/pkg/salt-common_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb ./artifacts/pkg/salt-master_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - - - name: Run Package Tests - env: - SKIP_REQUIREMENTS_INSTALL: "1" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ - ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - - - name: Upload Test Run Log Artifacts - if: always() - uses: actions/upload-artifact@v4 - with: - name: pkg-testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - - name: Upload Test Run Artifacts - if: always() - uses: actions/upload-artifact@v4 - with: - name: pkg-testrun-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.pkg-type }}-${{ inputs.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} - path: | - artifacts/ - !artifacts/pkg/* - !artifacts/salt/* - !artifacts/salt-*.tar.* - include-hidden-files: true - - report: - name: Report - runs-on: ubuntu-latest - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - needs: - - generate-matrix - - test - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Wait For Artifacts - run: | - sleep 60 - - - name: Merge Test Run Artifacts - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: pkg-testrun-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.pkg-type }} - pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.pkg-type }}-* - separate-directories: true - delete-merged: true - - - name: Wait For Artifacts 2 - run: | - sleep 60 - - - name: Download Test Run Artifacts - id: download-test-run-artifacts - uses: actions/download-artifact@v4 - with: - path: artifacts/ - pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}${{ inputs.fips && '-fips' || '' }}-${{ inputs.pkg-type }}* - merge-multiple: true - - - name: Show Test Run Artifacts - if: always() - run: | - tree -a artifacts diff --git a/.github/workflows/test-packages-action-macos.yml b/.github/workflows/test-packages-action-macos.yml deleted file mode 100644 index dd10baf01584..000000000000 --- a/.github/workflows/test-packages-action-macos.yml +++ /dev/null @@ -1,282 +0,0 @@ -name: Test Artifact - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - runner: - required: true - type: string - description: The GitHub runner name - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - pkg-type: - required: true - type: string - description: The platform arch being tested - salt-version: - type: string - required: true - description: The Salt version of the packages to install and test - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - testing-releases: - required: true - type: string - description: A JSON list of releases to test upgrades against - nox-version: - required: true - type: string - description: The nox version to install - python-version: - required: false - type: string - description: The python version to run tests with - default: "3.10" - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - nox-session: - required: false - type: string - description: The nox session to run - default: ci-test-onedir - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - -env: - COLUMNS: 190 - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Generate Matrix - runs-on: - # We need to run on our self-hosted runners because we need proper credentials - # for boto3 to scan through our repositories. - - ubuntu-latest - outputs: - pkg-matrix-include: ${{ steps.generate-pkg-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-pkg-matrix.outputs.build-reports }} - steps: - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - - name: Generate Package Test Matrix - id: generate-pkg-matrix - run: | - tools ci pkg-matrix ${{ inputs.distro-slug }} ${{ inputs.pkg-type }} --testing-releases ${{ join(fromJSON(inputs.testing-releases), ' ') }} - - - test: - name: Test - runs-on: ${{ inputs.runner }} - timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.pkg-matrix-include) }} - - steps: - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Download Packages - uses: actions/download-artifact@v4 - with: - name: salt-${{ inputs.salt-version }}-${{ inputs.arch }}-${{ inputs.pkg-type }} - path: artifacts/pkg/ - - - name: Install System Dependencies - run: | - brew install tree - - - name: List Packages - run: | - tree artifacts/pkg/ - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Set up Python ${{ inputs.python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - name: Download nox.macos.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-macos-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- macos ${{ inputs.arch }} - - - name: Disable Gatekeeper - run: | - sudo -E spctl --master-disable - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - - - name: Run Package Tests - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - run: | - sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ - ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - - - name: Fix file ownership - run: | - sudo chown -R "$(id -un)" . - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - tree -a artifacts - - - name: Upload Test Run Artifacts - if: always() - uses: actions/upload-artifact@v4 - with: - name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}-${{ inputs.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} - path: | - artifacts/ - !artifacts/pkg/* - !artifacts/salt/* - !artifacts/salt-*.tar.* - include-hidden-files: true - - report: - name: Report - runs-on: ubuntu-latest - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - needs: - - generate-matrix - - test - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Wait For Artifacts - run: | - sleep 60 - - - name: Merge Test Run Artifacts - continue-on-error: true - uses: actions/upload-artifact/merge@v4 - with: - name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }} - pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}-* - separate-directories: true - delete-merged: true - - - name: Wait For Artifacts 2 - run: | - sleep 60 - - - name: Download Test Run Artifacts - id: download-test-run-artifacts - uses: actions/download-artifact@v4 - with: - path: artifacts/ - pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}* - merge-multiple: true - - - name: Show Test Run Artifacts - if: always() && steps.download-test-run-artifacts.outcome == 'success' - run: | - tree -a artifacts - - - name: Set up Python ${{ inputs.python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.python-version }}" - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml deleted file mode 100644 index d61f8c3d09ec..000000000000 --- a/.github/workflows/test-packages-action-windows.yml +++ /dev/null @@ -1,297 +0,0 @@ -name: Test Artifact - -on: - workflow_call: - inputs: - distro-slug: - required: true - type: string - description: The OS slug to run tests against - platform: - required: true - type: string - description: The platform being tested - arch: - required: true - type: string - description: The platform arch being tested - pkg-type: - required: true - type: string - description: The platform arch being tested - salt-version: - type: string - required: true - description: The Salt version of the packages to install and test - cache-prefix: - required: true - type: string - description: Seed used to invalidate caches - testing-releases: - required: true - type: string - description: A JSON list of releases to test upgrades against - nox-version: - required: true - type: string - description: The nox version to install - python-version: - required: false - type: string - description: The python version to run tests with - default: "3.10" - fips: - required: false - type: boolean - default: false - description: Test run with FIPS enabled - package-name: - required: false - type: string - description: The onedir package name to use - default: salt - nox-session: - required: false - type: string - description: The nox session to run - default: ci-test-onedir - skip-code-coverage: - required: false - type: boolean - description: Skip code coverage - default: false - -env: - COLUMNS: 190 - AWS_MAX_ATTEMPTS: "10" - AWS_RETRY_MODE: "adaptive" - PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} - PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} - PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} - PIP_DISABLE_PIP_VERSION_CHECK: "1" - RAISE_DEPRECATIONS_RUNTIME_ERRORS: "1" - -jobs: - - generate-matrix: - name: Generate Matrix - runs-on: - # We need to run on our self-hosted runners because we need proper credentials - # for boto3 to scan through our repositories. - - ubuntu-latest - outputs: - pkg-matrix-include: ${{ steps.generate-pkg-matrix.outputs.matrix }} - build-reports: ${{ steps.generate-pkg-matrix.outputs.build-reports }} - steps: - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - - name: Generate Package Test Matrix - id: generate-pkg-matrix - run: | - tools ci pkg-matrix ${{ inputs.fips && '--fips ' || '' }}${{ inputs.distro-slug }} \ - ${{ inputs.pkg-type }} --testing-releases ${{ join(fromJSON(inputs.testing-releases), ' ') }} - - - test: - name: Test - runs-on: ${{ inputs.distro-slug }} - timeout-minutes: 120 # 2 Hours - More than this and something is wrong - needs: - - generate-matrix - strategy: - fail-fast: false - matrix: - include: ${{ fromJSON(needs.generate-matrix.outputs.pkg-matrix-include) }} - - steps: - - - name: Set up Python ${{ inputs.python-version }} - uses: actions/setup-python@v5 - with: - python-version: "${{ inputs.python-version }}" - - - name: "Throttle Builds" - shell: bash - run: | - t=$(python3 -c 'import random, sys; sys.stdout.write(str(random.randint(1, 15)))'); echo "Sleeping $t seconds"; sleep "$t" - - - - name: "Set `TIMESTAMP` environment variable" - shell: bash - run: | - echo "TIMESTAMP=$(date +%s)" | tee -a "$GITHUB_ENV" - - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: Download Packages - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ inputs.arch }}-${{ inputs.pkg-type }} - path: ./artifacts/pkg/ - - - name: Download Onedir Tarball as an Artifact - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - path: ./artifacts/ - - - name: Decompress Onedir Tarball - shell: bash - run: | - python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" - cd artifacts - tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - - - name: Install Nox - run: | - python3 -m pip install 'nox==${{ inputs.nox-version }}' - env: - PIP_INDEX_URL: https://pypi.org/simple - - - run: python3 --version - - - name: Download nox.windows.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/download-artifact@v4 - with: - name: nox-windows-${{ inputs.arch }}-${{ inputs.nox-session }} - - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- windows ${{ inputs.arch }} - - - name: List Important Directories - run: | - dir d:/ - dir . - dir artifacts/ - dir artifacts/pkg - dir .nox/ci-test-onedir/Scripts - - - name: Check onedir python - continue-on-error: true - run: | - artifacts/salt/Scripts/python.exe --version - - - name: Check nox python - continue-on-error: true - run: | - .nox/ci-test-onedir/Scripts/python.exe --version - - - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - SKIP_CODE_COVERAGE: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - PYTHONUTF8: "1" - run: | - nox --force-color -f noxfile.py -e "${{ inputs.nox-session }}-pkgs" -- '${{ matrix.tests-chunk }}' --log-cli-level=debug - - - name: Run Package Tests - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_ONEDIR_FAILURES: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - COVERAGE_CONTEXT: ${{ inputs.distro-slug }} - OUTPUT_COLUMNS: "190" - PYTHONUTF8: "1" - run: > - nox --force-color -f noxfile.py -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - - - name: Prepare Test Run Artifacts - id: download-artifacts-from-vm - if: always() - shell: bash - run: | - # Delete the salt onedir, we won't need it anymore and it will prevent - # from it showing in the tree command below - rm -rf artifacts/salt* - if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} - fi - - - name: Upload Test Run Log Artifacts - if: always() - uses: actions/upload-artifact@v4 - with: - name: pkg-testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} - path: | - artifacts/logs - include-hidden-files: true - - - name: Upload Test Run Artifacts - if: always() - uses: actions/upload-artifact@v4 - with: - name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}-${{ inputs.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} - path: | - artifacts/ - !artifacts/pkg/* - !artifacts/salt/* - !artifacts/salt-*.tar.* - include-hidden-files: true - - report: - name: Report - runs-on: ubuntu-latest - if: always() && fromJSON(needs.generate-matrix.outputs.build-reports) && needs.test.result != 'cancelled' && needs.test.result != 'skipped' - needs: - - generate-matrix - - test - - steps: - - name: Checkout Source Code - uses: actions/checkout@v4 - - - name: "Throttle Builds" - shell: bash - run: | - t=$(shuf -i 1-30 -n 1); echo "Sleeping $t seconds"; sleep "$t" - - - name: Wait For Artifacts - run: | - sleep 60 - - - name: Merge Test Run Artifacts - uses: actions/upload-artifact/merge@v4 - continue-on-error: true - with: - name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }} - pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}-* - separate-directories: true - delete-merged: true - - - name: Wait For Artifacts 2 - run: | - sleep 60 - - - name: Download Test Run Artifacts - id: download-test-run-artifacts - uses: actions/download-artifact@v4 - with: - path: artifacts/ - pattern: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ inputs.pkg-type }}* - merge-multiple: true - - - name: Show Test Run Artifacts - if: always() && steps.download-test-run-artifacts.outcome == 'success' - run: | - tree -a artifacts From 409afde4b24f1c8df7304cede7499c746cbc2d0c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 20:17:04 -0700 Subject: [PATCH 153/225] Wrap json in single quotes --- .github/workflows/test-action.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 18d9e3ce4952..e48317905e29 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -88,7 +88,7 @@ jobs: # - name: Test Matrix run: | - echo ${{ toJSON(matrix) }} + "${{ toJSON(matrix) }}" - name: Check python run: | @@ -317,8 +317,6 @@ jobs: # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix strategy: fail-fast: false matrix: @@ -552,8 +550,6 @@ jobs: # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} - needs: - - generate-matrix strategy: fail-fast: false matrix: @@ -792,6 +788,7 @@ jobs: needs: - test-linux - test-macos + - test-windows strategy: fail-fast: false matrix: From bd0fb34e123cd5db5c2c7932d60baeddfeb73b7c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 26 Nov 2024 20:40:23 -0700 Subject: [PATCH 154/225] Fix slug param name --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index e48317905e29..98944649e1d5 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -514,7 +514,7 @@ jobs: rm -rf artifacts/salt* tree -a artifacts if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ inputs.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} fi - name: Upload Code Coverage Test Run Artifacts From 515d674f697b8c164fdbb416aaa05a4b7523b3e6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 3 Dec 2024 14:35:20 -0700 Subject: [PATCH 155/225] Skip upload release artifacts to bucket --- .github/workflows/staging.yml | 8 ++------ .github/workflows/templates/staging.yml.jinja | 7 ++++--- tools/ci.py | 15 ++++----------- 3 files changed, 10 insertions(+), 20 deletions(-) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index b285cfc958d4..c2b982f0baf1 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -567,7 +567,7 @@ jobs: - build-docs environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest steps: - uses: actions/checkout@v4 @@ -604,10 +604,6 @@ jobs: run: | tree -a artifacts/release - - name: Upload Release Artifacts - run: | - tools release upload-artifacts ${{ needs.prepare-workflow.outputs.salt-version }} artifacts/release - - name: Upload PyPi Artifacts uses: actions/upload-artifact@v4 with: @@ -647,7 +643,7 @@ jobs: - pkg-download-tests environment: staging runs-on: - - linux-x86_64 + - ubuntu-latest steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 0bb7e744ed99..7ad3a8ce3d4d 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -88,7 +88,7 @@ concurrency: - build-docs environment: <{ gh_environment }> runs-on: - - linux-x86_64 + - ubuntu-latest steps: - uses: actions/checkout@v4 @@ -133,12 +133,13 @@ concurrency: name: Salt-${{ needs.prepare-workflow.outputs.salt-version }}.pdf path: artifacts/release - #} - name: Upload Release Artifacts run: | tools release upload-artifacts ${{ needs.prepare-workflow.outputs.salt-version }} artifacts/release + #} + - name: Upload PyPi Artifacts uses: actions/upload-artifact@v4 with: @@ -171,7 +172,7 @@ concurrency: <%- endfor %> environment: <{ gh_environment }> runs-on: - - linux-x86_64 + - ubuntu-latest steps: - uses: actions/checkout@v4 diff --git a/tools/ci.py b/tools/ci.py index 673f3dd7c7d6..bcb2733a4ed1 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -27,17 +27,6 @@ else: from typing import NotRequired, TypedDict # pylint: disable=no-name-in-module -# try: -# import boto3 -# except ImportError: -# print( -# "\nPlease run 'python -m pip install -r " -# "requirements/static/ci/py{}.{}/tools.txt'\n".format(*sys.version_info), -# file=sys.stderr, -# flush=True, -# ) -# raise - log = logging.getLogger(__name__) # Define the command group @@ -1716,6 +1705,8 @@ def workflow_config( **_.as_dict(), ) for _ in TEST_SALT_LISTING[platform] # type: ignore + if _.arch != "arm64" + or os.environ.get("LINUX_ARM_RUNNER", "0") != "0" ] else: test_matrix[platform] += [ @@ -1724,6 +1715,8 @@ def workflow_config( **_.as_dict(), ) for _ in TEST_SALT_LISTING[platform] # type: ignore + if _.arch != "arm64" + or os.environ.get("LINUX_ARM_RUNNER", "0") != "0" ] ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") From 69f18a311fae5fdce007e96d26d3699dc8b7812a Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 3 Dec 2024 16:14:51 -0700 Subject: [PATCH 156/225] Fix windows mac test matrix --- .github/workflows/staging.yml | 6 ------ .github/workflows/templates/staging.yml.jinja | 3 ++- .github/workflows/test-action.yml | 6 +++--- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index c2b982f0baf1..e2b6859df9e1 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -571,12 +571,6 @@ jobs: steps: - uses: actions/checkout@v4 - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts with: diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 7ad3a8ce3d4d..c6e71814d94c 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -91,12 +91,13 @@ concurrency: - ubuntu-latest steps: - uses: actions/checkout@v4 - + {#- - name: Get Salt Project GitHub Actions Bot Environment run: | TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" + #} - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 98944649e1d5..07bdad2c5cfe 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -68,7 +68,7 @@ jobs: test-linux: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} container: image: ${{ matrix.container }} # Full test runs. Each chunk should never take more than 2 hours. @@ -320,7 +320,7 @@ jobs: strategy: fail-fast: false matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + include: ${{ fromJSON(inputs.matrix)['macos'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -553,7 +553,7 @@ jobs: strategy: fail-fast: false matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + include: ${{ fromJSON(inputs.matrix)['windows'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} From 3a9e0df027cae0d415996ef133883f5747273833 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 3 Dec 2024 17:32:06 -0700 Subject: [PATCH 157/225] Fix pacakge name on mac and windows --- .github/workflows/test-action.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 07bdad2c5cfe..2f2da6230416 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -346,7 +346,7 @@ jobs: - name: Download Onedir Tarball as an Artifact uses: actions/download-artifact@v4 with: - name: ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz path: artifacts/ - name: Decompress Onedir Tarball @@ -354,7 +354,7 @@ jobs: run: | python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" cd artifacts - tar xvf ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz - name: Install System Dependencies run: | @@ -582,7 +582,7 @@ jobs: - name: Download Onedir Tarball as an Artifact uses: actions/download-artifact@v4 with: - name: ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz path: artifacts/ - name: Decompress Onedir Tarball @@ -590,7 +590,7 @@ jobs: run: | python3 -c "import os; os.makedirs('artifacts', exist_ok=True)" cd artifacts - tar xvf ${{ matrix.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz + tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz - name: Install System Dependencies run: | From 59827f691da3ffa0acb377342c64be630f2abe26 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 3 Dec 2024 18:13:23 -0700 Subject: [PATCH 158/225] Do not try to download repo --- .github/workflows/staging.yml | 7 ------- .github/workflows/templates/staging.yml.jinja | 2 ++ 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index e2b6859df9e1..d6348634596a 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -581,13 +581,6 @@ jobs: with: name: salt-${{ needs.prepare-workflow.outputs.salt-version }}.patch path: artifacts/release - - - name: Download Source Repository - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-staging-src-repo - path: artifacts/release - - name: Download Release Documentation (HTML) uses: actions/download-artifact@v4 with: diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index c6e71814d94c..f34d3d18addb 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -110,12 +110,14 @@ concurrency: name: salt-${{ needs.prepare-workflow.outputs.salt-version }}.patch path: artifacts/release + {#- - name: Download Source Repository uses: actions/download-artifact@v4 with: name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-<{ gh_environment }>-src-repo path: artifacts/release + #} - name: Download Release Documentation (HTML) uses: actions/download-artifact@v4 with: From eeeb8f0f614a701eb6f7da7c2cf81984ce7eba2d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 13:06:18 -0700 Subject: [PATCH 159/225] Do not upload tarball --- .github/workflows/staging.yml | 10 ---------- .github/workflows/templates/staging.yml.jinja | 2 +- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index d6348634596a..0d8e22cf483b 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -591,16 +591,6 @@ jobs: run: | tree -a artifacts/release - - name: Upload PyPi Artifacts - uses: actions/upload-artifact@v4 - with: - name: pypi-artifacts - path: | - artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz - artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz.asc - retention-days: 7 - if-no-files-found: error - pkg-download-tests: name: Package Downloads if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] }} diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index f34d3d18addb..196d3808ecd5 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -141,7 +141,6 @@ concurrency: run: | tools release upload-artifacts ${{ needs.prepare-workflow.outputs.salt-version }} artifacts/release - #} - name: Upload PyPi Artifacts uses: actions/upload-artifact@v4 @@ -152,6 +151,7 @@ concurrency: artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz.asc retention-days: 7 if-no-files-found: error + #} <%- if includes.get("test-pkg-downloads", True) %> <%- include "test-salt-pkg-repo-downloads.yml.jinja" %> From 26e7644f2672e05bb4ad34ee778d1afae1e9b619 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 13:14:57 -0700 Subject: [PATCH 160/225] We no longer need to extend job names --- tools/ci.py | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index bcb2733a4ed1..dbf483bb0c12 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1544,24 +1544,6 @@ def workflow_config( kinds = ["linux", "windows", "macos"] - for kind in kinds: - jobs.update({_.job_name: True for _ in TEST_SALT_LISTING[kind]}) # type: ignore - - if skip_tests: - ctx.print("Skipping test jobs") - jobs["test"] = False - for kind in kinds: - jobs.update({_.job_name: False for _ in TEST_SALT_LISTING[kind]}) # type: ignore - - for kind in kinds: - jobs.update({_.job_name: True for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore - - if skip_pkg_tests: - ctx.print("Skipping package test jobs") - jobs["test-pkg"] = False - for kind in kinds: - jobs.update({_.job_name: False for _ in TEST_SALT_PKG_LISTING[kind]}) # type: ignore - # If there is no arm runner disable arm64 if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": jobs.update( From 5ec5a88476af1dab6c4feb88d48199e820444898 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 13:37:01 -0700 Subject: [PATCH 161/225] Pr is not defined --- tools/ci.py | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index dbf483bb0c12..8925cef49e9f 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1514,7 +1514,10 @@ def workflow_config( full = False gh_event_path = os.environ.get("GITHUB_EVENT_PATH") or None gh_event = None - if gh_event_path is not None: + ctx.info(f"Github event path is {gh_event_path}") + if gh_event_path is None: + labels = [] + else: try: gh_event = json.loads(open(gh_event_path, encoding="utf-8").read()) except Exception as exc: @@ -1523,6 +1526,17 @@ def workflow_config( ) ctx.exit(1) + if "pull_request" not in gh_event: + ctx.warn("The 'pull_request' key was not found on the event payload.") + ctx.exit(1) + + pr = gh_event["pull_request"]["number"] + labels = _get_pr_test_labels_from_event_payload(gh_event) + + ctx.info(f"{'==== labels ====':^80s}") + ctx.info(f"{pprint.pformat(labels)}") + ctx.info(f"{'==== end labels ====':^80s}") + ctx.info(f"{'==== github event ====':^80s}") ctx.info(f"{pprint.pformat(gh_event)}") ctx.info(f"{'==== end github event ====':^80s}") @@ -1544,21 +1558,6 @@ def workflow_config( kinds = ["linux", "windows", "macos"] - # If there is no arm runner disable arm64 - if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": - jobs.update( - { - _.job_name: (True if _.arch != "arm64" else False) - for _ in TEST_SALT_LISTING["linux"] # type: ignore - } - ) - jobs.update( - { - _.job_name: (True if _.arch != "arm64" else False) - for _ in TEST_SALT_PKG_LISTING["linux"] # type: ignore - } - ) - if skip_pkg_download_tests: jobs["test-pkg-download"] = False From b29d71ebe34ddd9717780a09b53d22d5c882cdc2 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 13:43:30 -0700 Subject: [PATCH 162/225] Fix label search when no pr defined --- tools/ci.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index 8925cef49e9f..b6b027ac5605 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1526,13 +1526,12 @@ def workflow_config( ) ctx.exit(1) - if "pull_request" not in gh_event: + if "pull_request" in gh_event: + pr = gh_event["pull_request"]["number"] + labels = _get_pr_test_labels_from_event_payload(gh_event) + else: + labels = [] ctx.warn("The 'pull_request' key was not found on the event payload.") - ctx.exit(1) - - pr = gh_event["pull_request"]["number"] - labels = _get_pr_test_labels_from_event_payload(gh_event) - ctx.info(f"{'==== labels ====':^80s}") ctx.info(f"{pprint.pformat(labels)}") ctx.info(f"{'==== end labels ====':^80s}") From cca6e71de5a934b7211fc0abc73e178e007237ff Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 13:52:08 -0700 Subject: [PATCH 163/225] Skip workflows that do not have matrix --- .github/workflows/test-action.yml | 3 +++ tools/ci.py | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 2f2da6230416..1c37ffd06d58 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -67,6 +67,7 @@ jobs: test-linux: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} + if: ${{ fromJSON(inputs.matrix)['linux'] != [] }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} container: @@ -316,6 +317,7 @@ jobs: runs-on: ${{ matrix.runner }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours + if: ${{ fromJSON(inputs.matrix)['macos'] != [] }} timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false @@ -546,6 +548,7 @@ jobs: test-windows: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} + if: ${{ fromJSON(inputs.matrix)['windows'] != [] }} runs-on: ${{ matrix.slug }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours diff --git a/tools/ci.py b/tools/ci.py index b6b027ac5605..aaf84e4e3f39 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1515,6 +1515,10 @@ def workflow_config( gh_event_path = os.environ.get("GITHUB_EVENT_PATH") or None gh_event = None ctx.info(f"Github event path is {gh_event_path}") + + if event_name != "pull_request": + full = True + if gh_event_path is None: labels = [] else: @@ -1532,6 +1536,7 @@ def workflow_config( else: labels = [] ctx.warn("The 'pull_request' key was not found on the event payload.") + ctx.info(f"{'==== labels ====':^80s}") ctx.info(f"{pprint.pformat(labels)}") ctx.info(f"{'==== end labels ====':^80s}") From af379d257a5a604f6efdf5813f3a8bd8af62580f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 13:54:24 -0700 Subject: [PATCH 164/225] Fix empty list check --- .github/workflows/test-action.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 1c37ffd06d58..474b1ae0a2f1 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -67,7 +67,7 @@ jobs: test-linux: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} - if: ${{ fromJSON(inputs.matrix)['linux'] != [] }} + if: ${{ fromJSON(inputs.matrix)['linux'] != '[]' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} container: @@ -317,7 +317,7 @@ jobs: runs-on: ${{ matrix.runner }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours - if: ${{ fromJSON(inputs.matrix)['macos'] != [] }} + if: ${{ fromJSON(inputs.matrix)['macos'] != '[]' }} timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false @@ -548,7 +548,7 @@ jobs: test-windows: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} - if: ${{ fromJSON(inputs.matrix)['windows'] != [] }} + if: ${{ fromJSON(inputs.matrix)['windows'] != '[]' }} runs-on: ${{ matrix.slug }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours From a0bea5d3bc8da17bc013d30330ba9cf3682df612 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 14:08:12 -0700 Subject: [PATCH 165/225] Remove un-used build-repos step --- .../workflows/templates/build-repos.yml.jinja | 33 ------------------- 1 file changed, 33 deletions(-) delete mode 100644 .github/workflows/templates/build-repos.yml.jinja diff --git a/.github/workflows/templates/build-repos.yml.jinja b/.github/workflows/templates/build-repos.yml.jinja deleted file mode 100644 index 862ae1e95749..000000000000 --- a/.github/workflows/templates/build-repos.yml.jinja +++ /dev/null @@ -1,33 +0,0 @@ -<%- for type, display_name in ( - ("src", "Source"), - ("deb", "DEB"), - ("rpm", "RPM"), - ("windows", "Windows"), - ("macos", "macOS"), - ("onedir", "Onedir"), - ) %> - - <%- set job_name = "build-{}-repo".format(type) %> - <%- do build_repo_needs.append(job_name) %> - - <{ job_name }>: - name: Build Repository - environment: <{ gh_environment }> - runs-on: - - ubuntu-latest - env: - USE_S3_CACHE: 'false' - needs: - - prepare-workflow - <%- if type not in ("src", "onedir") %> - - build-pkgs-onedir - <%- elif type == 'onedir' %> - - build-salt-onedir - <%- elif type == 'src' %> - - build-source-tarball - - build-pkgs-src - <%- endif %> - - <%- include "build-{}-repo.yml.jinja".format(type) %> - -<%- endfor %> From bd87cf4c392653c1885de3703258a65bc32e35e3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 15:29:34 -0700 Subject: [PATCH 166/225] Use ubuntu-22.04 in place of ubuntu-latest --- .github/workflows/ci.yml | 10 +++++----- .github/workflows/nightly.yml | 12 ++++++------ .github/workflows/release.yml | 4 ++-- .github/workflows/scheduled.yml | 12 ++++++------ .github/workflows/staging.yml | 14 +++++++------- .github/workflows/templates/ci.yml.jinja | 6 +++--- .github/workflows/templates/layout.yml.jinja | 4 ++-- .github/workflows/templates/release.yml.jinja | 2 +- .github/workflows/templates/staging.yml.jinja | 6 +++--- .../templates/trigger-branch-workflows.yml.jinja | 2 +- .../workflow-requirements-check.yml.jinja | 2 +- .github/workflows/test-action.yml | 2 +- .github/workflows/test-packages-action.yml | 2 +- 13 files changed, 39 insertions(+), 39 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cb7f1b52f80d..696795842ae8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,7 +38,7 @@ jobs: prepare-workflow: name: Prepare Workflow Run - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 outputs: jobs: ${{ steps.define-jobs.outputs.jobs }} changed-files: ${{ steps.process-changed-files.outputs.changed-files }} @@ -257,7 +257,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - - ubuntu-latest + - ubuntu-22.04 if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} needs: - prepare-workflow @@ -380,7 +380,7 @@ jobs: needs: - prepare-workflow - prepare-release - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -500,7 +500,7 @@ jobs: combine-all-code-coverage: name: Combine Code Coverage if: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] == false }} - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: PIP_INDEX_URL: https://pypi.org/simple needs: @@ -631,7 +631,7 @@ jobs: # on a pull request instead of requiring all name: Set the ${{ github.workflow }} Pipeline Exit Status if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - prepare-workflow - pre-commit diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 026e1c559d48..c804dca12342 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -40,7 +40,7 @@ jobs: workflow-requirements: name: Check Workflow Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 outputs: requirements-met: ${{ steps.check-requirements.outputs.requirements-met }} steps: @@ -72,7 +72,7 @@ jobs: trigger-branch-nightly-builds: name: Trigger Branch Workflows if: ${{ github.event_name == 'schedule' && fromJSON(needs.workflow-requirements.outputs.requirements-met) }} - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - workflow-requirements steps: @@ -84,7 +84,7 @@ jobs: prepare-workflow: name: Prepare Workflow Run - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 if: ${{ fromJSON(needs.workflow-requirements.outputs.requirements-met) }} needs: - workflow-requirements @@ -306,7 +306,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - - ubuntu-latest + - ubuntu-22.04 if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} needs: - prepare-workflow @@ -434,7 +434,7 @@ jobs: needs: - prepare-workflow - prepare-release - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -579,7 +579,7 @@ jobs: # on a pull request instead of requiring all name: Set the ${{ github.workflow }} Pipeline Exit Status if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 environment: nightly needs: - workflow-requirements diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7666188b61a6..3a0913db1eaf 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -37,7 +37,7 @@ jobs: check-requirements: name: Check Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 environment: release-check steps: - name: Check For Admin Permission @@ -443,7 +443,7 @@ jobs: # on a pull request instead of requiring all name: Set the ${{ github.workflow }} Pipeline Exit Status if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - check-requirements - prepare-workflow diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 6a04de30f545..c72a3fdf2b2e 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -30,7 +30,7 @@ jobs: workflow-requirements: name: Check Workflow Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 outputs: requirements-met: ${{ steps.check-requirements.outputs.requirements-met }} steps: @@ -62,7 +62,7 @@ jobs: trigger-branch-scheduled-builds: name: Trigger Branch Workflows if: ${{ github.event_name == 'schedule' && fromJSON(needs.workflow-requirements.outputs.requirements-met) }} - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - workflow-requirements steps: @@ -74,7 +74,7 @@ jobs: prepare-workflow: name: Prepare Workflow Run - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 if: ${{ fromJSON(needs.workflow-requirements.outputs.requirements-met) }} needs: - workflow-requirements @@ -296,7 +296,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - - ubuntu-latest + - ubuntu-22.04 if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} needs: - prepare-workflow @@ -419,7 +419,7 @@ jobs: needs: - prepare-workflow - prepare-release - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -541,7 +541,7 @@ jobs: # on a pull request instead of requiring all name: Set the ${{ github.workflow }} Pipeline Exit Status if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - workflow-requirements - trigger-branch-scheduled-builds diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 0d8e22cf483b..51dccb7d4d76 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -55,7 +55,7 @@ jobs: check-requirements: name: Check Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 environment: staging-check steps: - name: Check For Admin Permission @@ -66,7 +66,7 @@ jobs: prepare-workflow: name: Prepare Workflow Run - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - check-requirements outputs: @@ -296,7 +296,7 @@ jobs: prepare-release: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - - ubuntu-latest + - ubuntu-22.04 if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} needs: - prepare-workflow @@ -420,7 +420,7 @@ jobs: needs: - prepare-workflow - prepare-release - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -567,7 +567,7 @@ jobs: - build-docs environment: staging runs-on: - - ubuntu-latest + - ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -620,7 +620,7 @@ jobs: - pkg-download-tests environment: staging runs-on: - - ubuntu-latest + - ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -670,7 +670,7 @@ jobs: # on a pull request instead of requiring all name: Set the ${{ github.workflow }} Pipeline Exit Status if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - check-requirements - prepare-workflow diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 5b0632a8df0c..08c6be4c4096 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -57,7 +57,7 @@ <{ job_name }>: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - - ubuntu-latest + - ubuntu-22.04 if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} needs: - prepare-workflow @@ -206,7 +206,7 @@ needs: - prepare-workflow - prepare-release - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -300,7 +300,7 @@ <%- do conclusion_needs.append("combine-all-code-coverage") %> name: Combine Code Coverage if: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] == false }} - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 env: PIP_INDEX_URL: https://pypi.org/simple needs: diff --git a/.github/workflows/templates/layout.yml.jinja b/.github/workflows/templates/layout.yml.jinja index e5b429a3760f..94b9ec5b47a2 100644 --- a/.github/workflows/templates/layout.yml.jinja +++ b/.github/workflows/templates/layout.yml.jinja @@ -77,7 +77,7 @@ jobs: prepare-workflow: name: Prepare Workflow Run - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 <%- if prepare_workflow_if_check %> if: <{ prepare_workflow_if_check }> <%- endif %> @@ -324,7 +324,7 @@ jobs: # on a pull request instead of requiring all name: Set the ${{ github.workflow }} Pipeline Exit Status if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 <%- if workflow_slug == "nightly" %> environment: <{ workflow_slug }> <%- endif %> diff --git a/.github/workflows/templates/release.yml.jinja b/.github/workflows/templates/release.yml.jinja index 9e6e098c80ea..ccad8c7c95cc 100644 --- a/.github/workflows/templates/release.yml.jinja +++ b/.github/workflows/templates/release.yml.jinja @@ -52,7 +52,7 @@ permissions: <{ job_name }>: <%- do prepare_workflow_needs.append(job_name) %> name: Check Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 environment: <{ gh_environment }>-check steps: - name: Check For Admin Permission diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 196d3808ecd5..c3de71922e06 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -65,7 +65,7 @@ concurrency: <{ job_name }>: <%- do prepare_workflow_needs.append(job_name) %> name: Check Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 environment: <{ gh_environment }>-check steps: - name: Check For Admin Permission @@ -88,7 +88,7 @@ concurrency: - build-docs environment: <{ gh_environment }> runs-on: - - ubuntu-latest + - ubuntu-22.04 steps: - uses: actions/checkout@v4 {#- @@ -175,7 +175,7 @@ concurrency: <%- endfor %> environment: <{ gh_environment }> runs-on: - - ubuntu-latest + - ubuntu-22.04 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/templates/trigger-branch-workflows.yml.jinja b/.github/workflows/templates/trigger-branch-workflows.yml.jinja index 9d187cd6a2d1..6efee9087a70 100644 --- a/.github/workflows/templates/trigger-branch-workflows.yml.jinja +++ b/.github/workflows/templates/trigger-branch-workflows.yml.jinja @@ -7,7 +7,7 @@ <%- do conclusion_needs.append(job_name) %> name: Trigger Branch Workflows if: ${{ github.event_name == 'schedule' && fromJSON(needs.workflow-requirements.outputs.requirements-met) }} - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - workflow-requirements steps: diff --git a/.github/workflows/templates/workflow-requirements-check.yml.jinja b/.github/workflows/templates/workflow-requirements-check.yml.jinja index 67e04eef3e73..9458fe0423a0 100644 --- a/.github/workflows/templates/workflow-requirements-check.yml.jinja +++ b/.github/workflows/templates/workflow-requirements-check.yml.jinja @@ -4,7 +4,7 @@ <{ job_name }>: <%- do prepare_workflow_needs.append(job_name) %> name: Check Workflow Requirements - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 outputs: requirements-met: ${{ steps.check-requirements.outputs.requirements-met }} steps: diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 474b1ae0a2f1..8d46213b2c2a 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -787,7 +787,7 @@ jobs: report: name: Test Reports - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 needs: - test-linux - test-macos diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 496c2d887374..c305833fd419 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -452,7 +452,7 @@ jobs: report: name: Report - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 if: always() needs: - test-linux From 8d7ffd40c3187b77bb7cbb7e6344380efd7274ee Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 15:30:04 -0700 Subject: [PATCH 167/225] Try to fix docs lint --- salt/pillar/pillar_ldap.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/salt/pillar/pillar_ldap.py b/salt/pillar/pillar_ldap.py index 9649194ad08c..2c5eab301b8a 100644 --- a/salt/pillar/pillar_ldap.py +++ b/salt/pillar/pillar_ldap.py @@ -15,7 +15,7 @@ =============================== The basic configuration is part of the `master configuration -`_. +<_master-configuration-ext-pillar>`_. .. code-block:: yaml From 887395f79277c9641494ed467c52170582a34581 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 16:02:23 -0700 Subject: [PATCH 168/225] Clean up test and test-pkg templates --- .github/workflows/ci.yml | 1 - .github/workflows/nightly.yml | 1 - .github/workflows/scheduled.yml | 1 - .github/workflows/staging.yml | 1 - .../templates/test-salt-pkg.yml.jinja | 102 ------------------ .../workflows/templates/test-salt.yml.jinja | 98 ----------------- 6 files changed, 204 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 696795842ae8..9b619fc556b1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -478,7 +478,6 @@ jobs: skip-code-coverage: ${{ fromJSON(needs.prepare-workflow.outputs.testrun)['skip_code_coverage'] }} testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test needs: diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index c804dca12342..a432a08cf5ec 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -555,7 +555,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test needs: diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index c72a3fdf2b2e..606b23bd47c7 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -517,7 +517,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test needs: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 51dccb7d4d76..a5d3df7de959 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -541,7 +541,6 @@ jobs: skip-code-coverage: true testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} - test: name: Test needs: diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 4115a174cc67..8659a42dbebf 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -15,105 +15,3 @@ skip-code-coverage: <{ skip_test_coverage_check }> testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} -{# - <%- for os in test_salt_pkg_listing["linux"] %> - <%- set job_name = os.job_name %> - - <{ job_name }>: - <%- do test_salt_pkg_needs.append(job_name) %> - name: <{ os.display_name }> Package Test<%- if os.fips %> (fips)<%- endif %> - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- endif %> - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-linux.yml - with: - distro-slug: <{ os.slug }> - nox-session: ci-test-onedir - platform: linux - container: <{ os.container }> - arch: <{ os.arch }> - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: <{ os.pkg_type }> - nox-version: <{ nox_version }> - python-version: "<{ gh_actions_workflows_python_version }>" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - skip-code-coverage: <{ skip_test_coverage_check }> - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - <%- if os.fips %> - fips: true - <%- endif %> - - <%- endfor %> - - - - <%- for os in test_salt_pkg_listing["macos"] %> - <%- set job_name = os.job_name %> - - <{ job_name }>: - <%- do test_salt_pkg_needs.append(job_name) %> - name: <{ os.display_name }> Package Test - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- endif %> - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-macos.yml - with: - distro-slug: <{ os.slug }> - runner: <{ os.runner }> - nox-session: ci-test-onedir - platform: macos - arch: <{ os.arch }> - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: macos - nox-version: <{ nox_version }> - python-version: "<{ gh_actions_workflows_python_version }>" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - skip-code-coverage: <{ skip_test_coverage_check }> - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - <%- endfor %> - - - <%- for os in test_salt_pkg_listing["windows"] %> - <%- set job_name = os.job_name %> - - <{ job_name }>: - <%- do test_salt_pkg_needs.append(job_name) %> - name: <{ os.display_name }> <{ os.pkg_type }> Package Test - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- endif %> - needs: - - prepare-workflow - - build-pkgs-onedir - - build-ci-deps - uses: ./.github/workflows/test-packages-action-windows.yml - with: - distro-slug: <{ os.slug }> - nox-session: ci-test-onedir - platform: windows - arch: <{ os.arch }> - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - pkg-type: <{ os.pkg_type }> - nox-version: <{ nox_version }> - python-version: "<{ gh_actions_workflows_python_version }>" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - skip-code-coverage: <{ skip_test_coverage_check }> - testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} - - <%- endfor %> -#} diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 957b0c65fdcf..7678a6c99662 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -21,101 +21,3 @@ workflow-slug: <{ workflow_slug }> default-timeout: <{ timeout_value }> matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['test-matrix']) }} -{#- - <%- for os in test_salt_listing["windows"] %> - - <{ os.job_name }>: - <%- do test_salt_needs.append(os.job_name) %> - name: <{ os.display_name }> Test - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} - <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} - <%- endif %> - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-windows.yml - with: - distro-slug: <{ os.slug }> - nox-session: ci-test-onedir - platform: windows - arch: amd64 - nox-version: <{ nox_version }> - gh-actions-python-version: "<{ gh_actions_workflows_python_version }>" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - skip-code-coverage: <{ skip_test_coverage_check }> - workflow-slug: <{ workflow_slug }> - default-timeout: <{ timeout_value }> - - <%- endfor %> - - - <%- for os in test_salt_listing["macos"] %> - - <{ os.job_name }>: - <%- do test_salt_needs.append(os.job_name) %> - name: <{ os.display_name }> Test - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} - <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{os.job_name}>'] }} - <%- endif %> - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-macos.yml - with: - distro-slug: <{ os.slug }> - runner: <{ os.runner }> - nox-session: ci-test-onedir - platform: macos - arch: <{ os.arch }> - nox-version: <{ nox_version }> - gh-actions-python-version: "<{ gh_actions_workflows_python_version }>" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - skip-code-coverage: <{ skip_test_coverage_check }> - workflow-slug: <{ workflow_slug }> - default-timeout: <{ timeout_value }> - - <%- endfor %> - - <%- for os in test_salt_listing["linux"] %> - <%- set job_name = os.job_name %> - - <{ job_name }>: - <%- do test_salt_needs.append(job_name) %> - name: <{ os.display_name }> Test<%- if os.fips %> (fips)<%- endif %> - <%- if workflow_slug != "ci" or os.slug in mandatory_os_slugs or True%> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- else %> - if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} - <%- endif %> - needs: - - prepare-workflow - - build-ci-deps - uses: ./.github/workflows/test-action-linux.yml - with: - distro-slug: <{ os.slug }> - nox-session: ci-test-onedir - platform: linux - container: <{ os.container }> - arch: <{ os.arch }> - nox-version: <{ nox_version }> - gh-actions-python-version: "<{ gh_actions_workflows_python_version }>" - testrun: ${{ needs.prepare-workflow.outputs.testrun }} - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> - skip-code-coverage: <{ skip_test_coverage_check }> - workflow-slug: <{ workflow_slug }> - default-timeout: <{ timeout_value }> - <%- if os.fips %> - fips: true - <%- endif %> - - <%- endfor %> -#} From 5a8aba4253e480f5369f900962039516b1d20a21 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 16:39:32 -0700 Subject: [PATCH 169/225] Skip lintcheck to test build --- .github/workflows/build-docs.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs.yml index 88c244d3a54f..3bfc0532ff1b 100644 --- a/.github/workflows/build-docs.yml +++ b/.github/workflows/build-docs.yml @@ -24,15 +24,15 @@ jobs: build: name: Build runs-on: - - ubuntu-latest + - ubuntu-22.04 strategy: fail-fast: false matrix: docs-output: - - linkcheck + # XXX re-enable lintcheck and fix the errors + # - linkcheck - spellcheck - html - # - pdf steps: - uses: actions/checkout@v4 From 4734877489b3842e958db202d1017773f22b82ef Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 18:23:32 -0700 Subject: [PATCH 170/225] Skip docs spellcheck for testing purposes --- .github/workflows/build-docs.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs.yml index 3bfc0532ff1b..3372769516a8 100644 --- a/.github/workflows/build-docs.yml +++ b/.github/workflows/build-docs.yml @@ -29,9 +29,9 @@ jobs: fail-fast: false matrix: docs-output: - # XXX re-enable lintcheck and fix the errors + # XXX re-enable lintcheck and spellcheck then fix the errors # - linkcheck - - spellcheck + # - spellcheck - html steps: From ca2bccea757cd6fc3c6fcc43a16fecb0513eb404 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 4 Dec 2024 18:09:42 -0700 Subject: [PATCH 171/225] Test docker creation --- .github/workflows/test-packages-action.yml | 28 ++++++++++------------ 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index c305833fd419..549ef0730598 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -61,9 +61,9 @@ jobs: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} - container: - image: ${{ matrix.container }} - options: --privileged + # container: + # image: ${{ matrix.container }} + # options: --privileged timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false @@ -133,23 +133,18 @@ jobs: with: cache-prefix: ${{ inputs.cache-prefix }} + - name: "Pull container ${{ matrix.container }}" + run: | + docker pull ${{ matrix.container }} + + - name: "Start container ${{ matrix.container }}" + run: | + /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --network github_network_4aec5d26a4974877b66c415bffa9ce54 --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target + - name: List Free Space run: | df -h || true -# - name: check systemd -# run: systemctl -# - #- name: Mock systemd - # run: | - # wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/refs/heads/master/files/docker/systemctl3.py - # cp systemctl3.py /usr/bin/systemctl - # chmod +x /usr/bin/systemctl - # - #- name: install pkg test - # run: | - # dpkg -i ./artifacts/pkg/salt-common_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb ./artifacts/pkg/salt-master_${{ inputs.salt-version}}_${{ inputs.arch == 'x86_64' && 'amd64' || 'arm64' }}.deb - - name: Show System Info env: SKIP_REQUIREMENTS_INSTALL: "1" @@ -165,6 +160,7 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" COVERAGE_CONTEXT: ${{ matrix.distro-slug }} run: | + /usr/bin/docker exec --name ${{ github.run_id }}_salt-test \ nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} From 43e4bbad3a4fed40417893cfce4b068a68ad35ae Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 10:30:21 -0700 Subject: [PATCH 172/225] Add back setup python step --- .github/workflows/test-packages-action.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 549ef0730598..d9cd0caa7d42 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -104,10 +104,10 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz - #- name: Set up Python ${{ inputs.python-version }} - # uses: actions/setup-python@v5 - # with: - # python-version: "${{ inputs.python-version }}" + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" - name: Install Nox run: | From bb419f90bf34ad9db7a9458c373fb04ec7d0bd55 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 13:40:18 -0700 Subject: [PATCH 173/225] Fix docker exec --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index d9cd0caa7d42..906e65905c3f 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -160,7 +160,7 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" COVERAGE_CONTEXT: ${{ matrix.distro-slug }} run: | - /usr/bin/docker exec --name ${{ github.run_id }}_salt-test \ + /usr/bin/docker exec ${{ github.run_id }}_salt-test \ nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} From f70df510a3a1d197a123af353c73a7422a988d5d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 13:43:18 -0700 Subject: [PATCH 174/225] Try matrix without include --- .github/workflows/test-action.yml | 23 ++++++++++------------ .github/workflows/test-packages-action.yml | 11 +++-------- 2 files changed, 13 insertions(+), 21 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 8d46213b2c2a..aeb45b74f6bd 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -66,7 +66,7 @@ env: jobs: test-linux: - name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} ${{ matrix.fips && '--fips ' || '' }} if: ${{ fromJSON(inputs.matrix)['linux'] != '[]' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} @@ -77,8 +77,7 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: ${{ fromJSON(inputs.matrix)['linux'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -176,7 +175,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.slug }} run: | nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --core-tests --slow-tests --suppress-no-test-exit-code \ + --core-tests --slow-tests --suppress-no-test-exit-code \ --from-filenames=testrun-changed-files.txt - name: Run Fast Tests @@ -194,7 +193,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.slug }} run: | nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code + --suppress-no-test-exit-code - name: Run Slow Tests id: run-slow-tests @@ -211,7 +210,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.slug }} run: | nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --slow-tests + --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests id: run-core-tests @@ -228,7 +227,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.slug }} run: | nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --core-tests + --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests id: run-flaky-tests @@ -245,7 +244,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.slug }} run: | nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - -k "mac or darwin" --suppress-no-test-exit-code --no-fast-tests --flaky-jail + --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests id: run-full-tests @@ -262,7 +261,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.slug }} run: | nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --slow-tests --core-tests -k "mac or darwin" + --slow-tests --core-tests - name: Fix file ownership run: | @@ -321,8 +320,7 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['macos'] }} + matrix: ${{ fromJSON(inputs.matrix)['macos'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -555,8 +553,7 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['windows'] }} + matrix: ${{ fromJSON(inputs.matrix)['windows'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 906e65905c3f..ef0a5fe30e53 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -67,9 +67,7 @@ jobs: timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} - + matrix: ${{ fromJSON(inputs.matrix)['linux'] }} steps: - name: "Throttle Builds" @@ -191,9 +189,7 @@ jobs: timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['macos'] }} - + matrix: ${{ fromJSON(inputs.matrix)['macos'] }} steps: - name: "Throttle Builds" @@ -309,8 +305,7 @@ jobs: timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: ${{ fromJSON(inputs.matrix)['linux'] }} steps: From 250c90875f0ccf5133c51a0c49e9793788786376 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 15:07:48 -0700 Subject: [PATCH 175/225] Fix empty martix --- .github/workflows/test-action.yml | 3 +-- .github/workflows/test-packages-action.yml | 3 +-- tools/ci.py | 11 +++++++++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index aeb45b74f6bd..53f407621de7 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -791,8 +791,7 @@ jobs: - test-windows strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: ${{ fromJSON(inputs.matrix)['linux'] }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index ef0a5fe30e53..7ec42aea1087 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -450,8 +450,7 @@ jobs: - test-macos - test-windows strategy: - matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: ${{ fromJSON(inputs.matrix)['linux'] }} steps: - name: Checkout Source Code diff --git a/tools/ci.py b/tools/ci.py index aaf84e4e3f39..da2e61a213cb 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1707,8 +1707,15 @@ def workflow_config( ctx.info(f"{pprint.pformat(test_matrix)}") ctx.info(f"{'==== end test matrix ====':^80s}") - config["pkg-test-matrix"] = pkg_test_matrix # type: ignore - config["test-matrix"] = test_matrix # type: ignore + config["pkg-test-matrix"] = {} + config["test-matrix"] = {} + for platform in platforms: + config["pkg-test-matrix"][platform] = {} # type: ignore + if pkg_test_matrix.get(platform, {}): + config["pkg-test-matrix"][platform]["include"] = pkg_test_matrix[platform] # type: ignore + config["test-matrix"][platform] = {} # type: ignore + if test_matrix.get(platform, {}): + config["test-matrix"][platform]["include"] = test_matrix[platform] # type: ignore ctx.info("Jobs selected are") for x, y in jobs.items(): From 71645a53337fe88eb0f314e186841c92f1c53ce1 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 17:24:49 -0700 Subject: [PATCH 176/225] Start created container --- .github/workflows/test-packages-action.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 7ec42aea1087..623e4f3f7e66 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -135,10 +135,14 @@ jobs: run: | docker pull ${{ matrix.container }} - - name: "Start container ${{ matrix.container }}" + - name: "Create container ${{ matrix.container }}" run: | /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --network github_network_4aec5d26a4974877b66c415bffa9ce54 --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target + - name: "Start container ${{ matrix.container }}" + run: | + /usr/bin/docker start ${{ github.run_id }}_salt-test + - name: List Free Space run: | df -h || true From 293300c360daf51e36a0e6b56e64815ff4c5b8fa Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 17:47:32 -0700 Subject: [PATCH 177/225] test empty matrix --- tools/ci.py | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index da2e61a213cb..b50e14578101 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1706,16 +1706,14 @@ def workflow_config( ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") ctx.info(f"{'==== end test matrix ====':^80s}") - - config["pkg-test-matrix"] = {} - config["test-matrix"] = {} - for platform in platforms: - config["pkg-test-matrix"][platform] = {} # type: ignore - if pkg_test_matrix.get(platform, {}): - config["pkg-test-matrix"][platform]["include"] = pkg_test_matrix[platform] # type: ignore - config["test-matrix"][platform] = {} # type: ignore - if test_matrix.get(platform, {}): - config["test-matrix"][platform]["include"] = test_matrix[platform] # type: ignore + config["pkg-test-matrix"] = {"linux": [], "macos": [], "windows": []} + config["test-matrix"] = {"linux": [], "macos": [], "windows": []} + #config["pkg-test-matrix"] = pkg_test_matrix + #if not any([_ for _ in pkg_test_matrix]): + # jobs["test-pkg"] = False + #config["test-matrix"] = text_matrix + #if not any([_ for _ in test_matrix]): + # jobs["test"] = False ctx.info("Jobs selected are") for x, y in jobs.items(): From 0f819326d35451dd58d1825c0086262ce816b4ee Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 18:05:28 -0700 Subject: [PATCH 178/225] Fix matrix --- .github/workflows/test-action.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 53f407621de7..bd235f609793 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -67,7 +67,7 @@ jobs: test-linux: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} ${{ matrix.fips && '--fips ' || '' }} - if: ${{ fromJSON(inputs.matrix)['linux'] != '[]' }} + if: ${{ fromJSON(inputs.matrix)['linux'] != '[ ]' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} container: @@ -77,7 +77,8 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -316,11 +317,12 @@ jobs: runs-on: ${{ matrix.runner }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours - if: ${{ fromJSON(inputs.matrix)['macos'] != '[]' }} + if: ${{ fromJSON(inputs.matrix)['macos'] != '[ ]' }} timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['macos'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['macos'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -546,7 +548,7 @@ jobs: test-windows: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} - if: ${{ fromJSON(inputs.matrix)['windows'] != '[]' }} + if: ${{ fromJSON(inputs.matrix)['windows'] != '[ ]' }} runs-on: ${{ matrix.slug }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours @@ -556,7 +558,6 @@ jobs: matrix: ${{ fromJSON(inputs.matrix)['windows'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} - steps: - uses: actions/setup-python@v5 with: From 1c16351e13bc8201a7009d015ed4523718b76a70 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 18:34:38 -0700 Subject: [PATCH 179/225] fix pre-commit --- .github/workflows/ci.yml | 2 ++ .github/workflows/nightly.yml | 2 ++ .github/workflows/scheduled.yml | 2 ++ .github/workflows/staging.yml | 2 ++ .github/workflows/templates/test-salt-pkg.yml.jinja | 1 + .github/workflows/templates/test-salt.yml.jinja | 2 +- .github/workflows/test-packages-action.yml | 10 ++++++---- tools/ci.py | 12 ++++++------ 8 files changed, 22 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9b619fc556b1..062a78cd56d1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -464,6 +464,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: name: Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir @@ -480,6 +481,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a432a08cf5ec..01e0bcc71a85 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -541,6 +541,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: name: Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir @@ -557,6 +558,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 606b23bd47c7..1b33213a105f 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -503,6 +503,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: name: Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir @@ -519,6 +520,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index a5d3df7de959..20a94b2f8d3b 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -527,6 +527,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: name: Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir @@ -543,6 +544,7 @@ jobs: matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: name: Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 8659a42dbebf..86ffe2792f9c 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -1,6 +1,7 @@ <%- set job_name = "test-packages" %> <{ job_name }>: name: Package Test + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow - build-pkgs-onedir diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 7678a6c99662..ee31d5a305f4 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -5,7 +5,7 @@ <%- endif %> test: name: Test - {#- if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} #} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow - build-ci-deps diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 623e4f3f7e66..c870ba9ad541 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -67,7 +67,8 @@ jobs: timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} steps: - name: "Throttle Builds" @@ -193,7 +194,8 @@ jobs: timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['macos'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['macos'] }} steps: - name: "Throttle Builds" @@ -309,8 +311,8 @@ jobs: timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['linux'] }} - + matrix: + include: ${{ fromJSON(inputs.matrix)['windows'] }} steps: - name: Set up Python ${{ inputs.python-version }} diff --git a/tools/ci.py b/tools/ci.py index b50e14578101..e08cd91838ce 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1706,13 +1706,13 @@ def workflow_config( ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") ctx.info(f"{'==== end test matrix ====':^80s}") - config["pkg-test-matrix"] = {"linux": [], "macos": [], "windows": []} - config["test-matrix"] = {"linux": [], "macos": [], "windows": []} - #config["pkg-test-matrix"] = pkg_test_matrix - #if not any([_ for _ in pkg_test_matrix]): + config["pkg-test-matrix"] = {"linux": [], "macos": [], "windows": []} # type: ignore + config["test-matrix"] = {"linux": [], "macos": [], "windows": []} # type: ignore + # config["pkg-test-matrix"] = pkg_test_matrix + # if not any([_ for _ in pkg_test_matrix]): # jobs["test-pkg"] = False - #config["test-matrix"] = text_matrix - #if not any([_ for _ in test_matrix]): + # config["test-matrix"] = text_matrix + # if not any([_ for _ in test_matrix]): # jobs["test"] = False ctx.info("Jobs selected are") From e1197578524b7f92b00c824a4e1a2ce1917cab6c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 18:46:11 -0700 Subject: [PATCH 180/225] meh --- .github/workflows/test-action.yml | 3 ++- .github/workflows/test-packages-action.yml | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index bd235f609793..e01a6549ee76 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -792,7 +792,8 @@ jobs: - test-windows strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} env: PIP_INDEX_URL: https://pypi.org/simple diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index c870ba9ad541..51ede17da2aa 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -64,6 +64,7 @@ jobs: # container: # image: ${{ matrix.container }} # options: --privileged + if: ${{ fromJSON(inputs.matrix)['linux'] != '[ ]' }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false @@ -191,6 +192,7 @@ jobs: test-macos: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: ${{ matrix.runner }} + if: ${{ fromJSON(inputs.matrix)['macos'] != '[ ]' }} timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: fail-fast: false @@ -309,6 +311,7 @@ jobs: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: ${{ matrix.distro-slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong + if: ${{ fromJSON(inputs.matrix)['windows'] != '[ ]' }} strategy: fail-fast: false matrix: @@ -456,7 +459,8 @@ jobs: - test-macos - test-windows strategy: - matrix: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} steps: - name: Checkout Source Code From fc5bd71ec98908c93bd9a05fb6ffff83e2e9c69f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 20:44:29 -0700 Subject: [PATCH 181/225] meh --- .github/workflows/ci.yml | 4 ++-- .github/workflows/nightly.yml | 4 ++-- .github/workflows/scheduled.yml | 4 ++-- .github/workflows/staging.yml | 4 ++-- .github/workflows/templates/test-salt-pkg.yml.jinja | 2 +- .github/workflows/templates/test-salt.yml.jinja | 2 +- .github/workflows/test-packages-action.yml | 3 ++- 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 062a78cd56d1..2d8aa27b6e02 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -463,7 +463,7 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: - name: Package Test + name: Test Package if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow @@ -480,7 +480,7 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: - name: Test + name: Test Salt if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 01e0bcc71a85..e0d5efa3759d 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -540,7 +540,7 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: - name: Package Test + name: Test Package if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow @@ -557,7 +557,7 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: - name: Test + name: Test Salt if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 1b33213a105f..b6a4fa9fe86a 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -502,7 +502,7 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: - name: Package Test + name: Test Package if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow @@ -519,7 +519,7 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: - name: Test + name: Test Salt if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 20a94b2f8d3b..c4cf136fe5fb 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -526,7 +526,7 @@ jobs: nox-archive-hash: "${{ needs.prepare-workflow.outputs.nox-archive-hash }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} test-packages: - name: Package Test + name: Test Package if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow @@ -543,7 +543,7 @@ jobs: testing-releases: ${{ needs.prepare-workflow.outputs.testing-releases }} matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['pkg-test-matrix']) }} test: - name: Test + name: Test Salt if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow diff --git a/.github/workflows/templates/test-salt-pkg.yml.jinja b/.github/workflows/templates/test-salt-pkg.yml.jinja index 86ffe2792f9c..14614ca38f9e 100644 --- a/.github/workflows/templates/test-salt-pkg.yml.jinja +++ b/.github/workflows/templates/test-salt-pkg.yml.jinja @@ -1,6 +1,6 @@ <%- set job_name = "test-packages" %> <{ job_name }>: - name: Package Test + name: Test Package if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test-pkg'] }} needs: - prepare-workflow diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index ee31d5a305f4..502254c40a60 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -4,7 +4,7 @@ <%- set timeout_value = 180 %> <%- endif %> test: - name: Test + name: Test Salt if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['test'] }} needs: - prepare-workflow diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 51ede17da2aa..fe26adebf177 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -1,4 +1,5 @@ -name: Test Artifact +--- +name: Test Packages on: workflow_call: From 2df002aada2b15b67d308b4f06bb208f78c90ea6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 5 Dec 2024 21:59:44 -0700 Subject: [PATCH 182/225] Fix condition check --- .github/workflows/test-action.yml | 7 ++++--- .github/workflows/test-packages-action.yml | 8 ++++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index e01a6549ee76..53ab6ba8c684 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -67,7 +67,7 @@ jobs: test-linux: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} ${{ matrix.fips && '--fips ' || '' }} - if: ${{ fromJSON(inputs.matrix)['linux'] != '[ ]' }} + if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} container: @@ -317,7 +317,7 @@ jobs: runs-on: ${{ matrix.runner }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours - if: ${{ fromJSON(inputs.matrix)['macos'] != '[ ]' }} + if: ${{ toJSON(fromJSON(inputs.matrix)['macos']) != '[]' }} timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false @@ -548,7 +548,7 @@ jobs: test-windows: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} - if: ${{ fromJSON(inputs.matrix)['windows'] != '[ ]' }} + if: ${{ toJSON(fromJSON(inputs.matrix)['windows']) != '[]' }} runs-on: ${{ matrix.slug }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours @@ -786,6 +786,7 @@ jobs: report: name: Test Reports runs-on: ubuntu-22.04 + if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} needs: - test-linux - test-macos diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index fe26adebf177..5918fb2aa601 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -65,7 +65,7 @@ jobs: # container: # image: ${{ matrix.container }} # options: --privileged - if: ${{ fromJSON(inputs.matrix)['linux'] != '[ ]' }} + if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: fail-fast: false @@ -193,7 +193,7 @@ jobs: test-macos: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: ${{ matrix.runner }} - if: ${{ fromJSON(inputs.matrix)['macos'] != '[ ]' }} + if: ${{ toJSON(fromJSON(inputs.matrix)['macos']) != '[]' }} timeout-minutes: 150 # 2 & 1/2 Hours - More than this and something is wrong (MacOS needs a little more time) strategy: fail-fast: false @@ -312,7 +312,7 @@ jobs: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: ${{ matrix.distro-slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong - if: ${{ fromJSON(inputs.matrix)['windows'] != '[ ]' }} + if: ${{ toJSON(fromJSON(inputs.matrix)['windows']) != '[]' }} strategy: fail-fast: false matrix: @@ -454,7 +454,7 @@ jobs: report: name: Report runs-on: ubuntu-22.04 - if: always() + if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} needs: - test-linux - test-macos From 53342da53b12e1b302bdbede577d43199db30cb3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 00:06:21 -0700 Subject: [PATCH 183/225] Re-enable matrix --- tools/ci.py | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index e08cd91838ce..3d419ec9f8bc 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1706,15 +1706,8 @@ def workflow_config( ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") ctx.info(f"{'==== end test matrix ====':^80s}") - config["pkg-test-matrix"] = {"linux": [], "macos": [], "windows": []} # type: ignore - config["test-matrix"] = {"linux": [], "macos": [], "windows": []} # type: ignore - # config["pkg-test-matrix"] = pkg_test_matrix - # if not any([_ for _ in pkg_test_matrix]): - # jobs["test-pkg"] = False - # config["test-matrix"] = text_matrix - # if not any([_ for _ in test_matrix]): - # jobs["test"] = False - + config["pkg-test-matrix"] = pkg_test_matrix # type: ignore + config["test-matrix"] = test_matrix # type: ignore ctx.info("Jobs selected are") for x, y in jobs.items(): ctx.info(f"{x} = {y}") From 4ae24a8cf4eb750da74711c56a9a52506cac1f5e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 00:36:48 -0700 Subject: [PATCH 184/225] Do not sepcify network for container --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 5918fb2aa601..ad85db2cb07e 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -140,7 +140,7 @@ jobs: - name: "Create container ${{ matrix.container }}" run: | - /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --network github_network_4aec5d26a4974877b66c415bffa9ce54 --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target + /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target - name: "Start container ${{ matrix.container }}" run: | From 456faec2d6c6b6df88b2b4a2fc0f9526fd68a155 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 03:41:26 -0700 Subject: [PATCH 185/225] Clean up workflows --- .github/workflows/build-deps-onedir.yml | 2 +- .github/workflows/build-packages.yml | 4 ++-- .github/workflows/build-salt-onedir.yml | 2 +- .github/workflows/lint-action.yml | 4 ++-- .github/workflows/pre-commit-action.yml | 2 +- .github/workflows/release-tag.yml | 2 +- .github/workflows/release-update-winrepo.yml | 2 +- .github/workflows/test-action.yml | 6 ++---- tools/ci.py | 2 +- 9 files changed, 12 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build-deps-onedir.yml b/.github/workflows/build-deps-onedir.yml index 8bb6ba00b13b..5ee054ba79ba 100644 --- a/.github/workflows/build-deps-onedir.yml +++ b/.github/workflows/build-deps-onedir.yml @@ -40,7 +40,7 @@ jobs: build-deps-linux: name: Linux runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} strategy: fail-fast: false matrix: diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index e3b5fa1487db..abf17b5b754e 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -53,7 +53,7 @@ jobs: build-deb-packages: name: DEB runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} strategy: fail-fast: false matrix: @@ -145,7 +145,7 @@ jobs: build-rpm-packages: name: RPM runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} strategy: fail-fast: false matrix: diff --git a/.github/workflows/build-salt-onedir.yml b/.github/workflows/build-salt-onedir.yml index 79a34e93469b..c26b21b83ede 100644 --- a/.github/workflows/build-salt-onedir.yml +++ b/.github/workflows/build-salt-onedir.yml @@ -43,7 +43,7 @@ jobs: env: USE_S3_CACHE: 'false' runs-on: - - ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'linux-arm64' }} + - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} strategy: fail-fast: false matrix: diff --git a/.github/workflows/lint-action.yml b/.github/workflows/lint-action.yml index b696c72a9432..09f614fbf36c 100644 --- a/.github/workflows/lint-action.yml +++ b/.github/workflows/lint-action.yml @@ -18,7 +18,7 @@ env: jobs: Salt: name: Lint Salt's Source Code - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 if: ${{ contains(fromJSON('["push", "schedule", "workflow_dispatch"]'), github.event_name) || fromJSON(inputs.changed-files)['salt'] || fromJSON(inputs.changed-files)['lint'] }} container: @@ -58,7 +58,7 @@ jobs: Tests: name: Lint Salt's Test Suite - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 if: ${{ contains(fromJSON('["push", "schedule", "workflow_dispatch"]'), github.event_name) || fromJSON(inputs.changed-files)['tests'] || fromJSON(inputs.changed-files)['lint'] }} container: diff --git a/.github/workflows/pre-commit-action.yml b/.github/workflows/pre-commit-action.yml index d662c5335cdd..fa9cacd1f667 100644 --- a/.github/workflows/pre-commit-action.yml +++ b/.github/workflows/pre-commit-action.yml @@ -21,7 +21,7 @@ jobs: Pre-Commit: name: Run Pre-Commit Against Salt - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 container: image: ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04 diff --git a/.github/workflows/release-tag.yml b/.github/workflows/release-tag.yml index bc4624ef0866..7d88b2d63f60 100644 --- a/.github/workflows/release-tag.yml +++ b/.github/workflows/release-tag.yml @@ -32,7 +32,7 @@ jobs: permissions: contents: write # for dev-drprasad/delete-tag-and-release to delete tags or releases name: Generate Tag and Github Release - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - uses: dev-drprasad/delete-tag-and-release@v0.2.0 if: github.event.inputs.reTag == 'true' diff --git a/.github/workflows/release-update-winrepo.yml b/.github/workflows/release-update-winrepo.yml index 4282709d72b0..542301f98c4d 100644 --- a/.github/workflows/release-update-winrepo.yml +++ b/.github/workflows/release-update-winrepo.yml @@ -19,7 +19,7 @@ permissions: jobs: update-winrepo: name: Update Winrepo - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: Checkout Salt diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 53ab6ba8c684..f2fff4dc8c87 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -87,9 +87,6 @@ jobs: # with: # python-version: '3.10' # - - name: Test Matrix - run: | - "${{ toJSON(matrix) }}" - name: Check python run: | @@ -555,7 +552,8 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['windows'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['windows'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} steps: diff --git a/tools/ci.py b/tools/ci.py index 3d419ec9f8bc..adb431f6384d 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1601,7 +1601,7 @@ def workflow_config( ctx.info(f"str_releases {str_releases}") platforms = ["linux", "macos", "windows"] - pkg_test_matrix = {} + pkg_test_matrix: dict[str, list] = {_: [] for _ in platforms} if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": TEST_SALT_LISTING["linux"] = list( From 330214b8a4183a851815a92be9b07549c85a9e5e Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 13:43:56 -0700 Subject: [PATCH 186/225] Include matrix without include keyword --- .github/workflows/test-action.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index f2fff4dc8c87..f172dcaf9575 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -77,8 +77,7 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: ${{ fromJSON(inputs.matrix)['linux'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -318,8 +317,7 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['macos'] }} + matrix: ${{ fromJSON(inputs.matrix)['macos'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -552,8 +550,7 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: - include: ${{ fromJSON(inputs.matrix)['windows'] }} + matrix: ${{ fromJSON(inputs.matrix)['windows'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} steps: From 21b204e7277c5c90ef65f422ce057d054c200e22 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 14:04:16 -0700 Subject: [PATCH 187/225] Filter out some test runs --- tools/ci.py | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index adb431f6384d..b2b872ec2205 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -1476,6 +1476,28 @@ def upload_coverage(ctx: Context, reports_path: pathlib.Path, commit_sha: str = ctx.exit(0) +def _os_test_filter(osdef, transport, chunk): + """ + Filter out some test runs based on os, tranport and chunk to be run. + """ + if transport == "tcp" and chunk in ("unit", "functional"): + return False + if "macos" in osdef.slug and chunk == "scenarios": + return False + if osdef.arch == "arm64" and os.environ.get("LINUX_ARM_RUNNER", "0") == "0": + return False + if transport == "tcp" and osdef.slug not in ( + "rockylinux-9", + "rockylinux-9-arm64", + "photonos-5", + "photonos-5-arm64", + "ubuntu-22.04", + "ubuntu-22.04-arm64", + ): + return False + return True + + @ci.command( name="workflow-config", arguments={ @@ -1659,23 +1681,7 @@ def workflow_config( if not skip_tests: for platform in platforms: for transport in ("zeromq", "tcp"): - # if transport == "tcp" and distro_slug not in ( - # "rockylinux-9", - # "rockylinux-9-arm64", - # "photonos-5", - # "photonos-5-arm64", - # "ubuntu-22.04", - # "ubuntu-22.04-arm64", - # ): - # # Only run TCP transport tests on these distributions - # continue for chunk in ("unit", "functional", "integration", "scenarios"): - if transport == "tcp" and chunk in ("unit", "functional"): - # Only integration and scenarios shall be tested under TCP, - # the rest would be repeating tests - continue - # if "macos" in distro_slug and chunk == "scenarios": - # continue splits = _splits.get(chunk) or 1 if full and splits > 1: for split in range(1, splits + 1): @@ -1690,8 +1696,7 @@ def workflow_config( **_.as_dict(), ) for _ in TEST_SALT_LISTING[platform] # type: ignore - if _.arch != "arm64" - or os.environ.get("LINUX_ARM_RUNNER", "0") != "0" + if _os_test_filter(_, transport, chunk) ] else: test_matrix[platform] += [ @@ -1700,8 +1705,7 @@ def workflow_config( **_.as_dict(), ) for _ in TEST_SALT_LISTING[platform] # type: ignore - if _.arch != "arm64" - or os.environ.get("LINUX_ARM_RUNNER", "0") != "0" + if _os_test_filter(_, transport, chunk) ] ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") From 3b6aa9cf5a98e1279636e5d4853ec0b296021753 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 14:12:35 -0700 Subject: [PATCH 188/225] Re-use include for matrix --- .github/workflows/test-action.yml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index f172dcaf9575..cf1991a520bd 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -66,7 +66,7 @@ env: jobs: test-linux: - name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }} ${{ matrix.fips && '--fips ' || '' }} + name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} ${{ matrix.transport }}${{ matrix.fips && '--fips ' || '' }} if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} @@ -77,7 +77,8 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['linux'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -317,7 +318,8 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['macos'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['macos'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} @@ -550,7 +552,8 @@ jobs: timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} strategy: fail-fast: false - matrix: ${{ fromJSON(inputs.matrix)['windows'] }} + matrix: + include: ${{ fromJSON(inputs.matrix)['windows'] }} env: SALT_TRANSPORT: ${{ matrix.transport }} steps: From 58039da5149e66d4dc57fc768fa693ab0b259c39 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 17:11:54 -0700 Subject: [PATCH 189/225] Add draft release step to staging --- .github/workflows/ci.yml | 8 +-- .github/workflows/draft-release.yml | 33 ++++++++++ .github/workflows/nightly.yml | 8 +-- .github/workflows/release.yml | 21 ------- .github/workflows/scheduled.yml | 8 +-- .github/workflows/staging.yml | 40 +++++------- .github/workflows/templates/ci.yml.jinja | 8 +-- .github/workflows/templates/release.yml.jinja | 4 -- .github/workflows/templates/staging.yml.jinja | 63 ++++++------------- 9 files changed, 83 insertions(+), 110 deletions(-) create mode 100644 .github/workflows/draft-release.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2d8aa27b6e02..902ee6470a2c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -240,7 +240,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -258,7 +258,7 @@ jobs: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - ubuntu-22.04 - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['prepare-release'] }} needs: - prepare-workflow steps: @@ -365,7 +365,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -376,7 +376,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-source-tarball'] }} needs: - prepare-workflow - prepare-release diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml new file mode 100644 index 000000000000..766342cf88cd --- /dev/null +++ b/.github/workflows/draft-release.yml @@ -0,0 +1,33 @@ +--- +name: Draft Github Release + +on: + workflow_call: + inputs: + salt-version: + type: string + required: true + description: The Salt version to set prior to building packages. + matrix: + required: true + type: string + description: Json job matrix config + +env: + COLUMNS: 190 + PIP_INDEX_URL: ${{ vars.PIP_INDEX_URL }} + PIP_TRUSTED_HOST: ${{ vars.PIP_TRUSTED_HOST }} + PIP_EXTRA_INDEX_URL: ${{ vars.PIP_EXTRA_INDEX_URL }} + PIP_DISABLE_PIP_VERSION_CHECK: "1" + +jobs: + + create-github-release: + name: Create Github Draft Release + runs-on: ubuntu-22.04 + steps: + # Checkout here so we can easily use custom actions + - uses: actions/checkout@v4 + - uses: actions/download-artifact@v4 + - name: List Directory Structure + run: ls -R diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index e0d5efa3759d..7f46fb2b5ee2 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -289,7 +289,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -307,7 +307,7 @@ jobs: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - ubuntu-22.04 - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['prepare-release'] }} needs: - prepare-workflow steps: @@ -419,7 +419,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -430,7 +430,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-source-tarball'] }} needs: - prepare-workflow - prepare-release diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3a0913db1eaf..6c616a7ca53f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -254,25 +254,6 @@ jobs: run: | tools pkg repo publish release ${{ needs.prepare-workflow.outputs.salt-version }} - pkg-download-tests: - name: Package Downloads - if: ${{ inputs.skip-salt-pkg-download-test-suite == false }} - needs: - - prepare-workflow - - build-ci-deps - - download-onedir-artifact - uses: ./.github/workflows/test-package-downloads-action.yml - with: - nox-session: ci-test-onedir - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - environment: release - nox-version: 2022.8.7 - python-version: "3.10" - skip-code-coverage: true - latest-release: "${{ needs.prepare-workflow.outputs.latest-release }}" - secrets: inherit - release: name: Release v${{ needs.prepare-workflow.outputs.salt-version }} if: ${{ always() && ! failure() && ! cancelled() }} @@ -284,7 +265,6 @@ jobs: - prepare-workflow - backup - publish-repositories - - pkg-download-tests environment: release steps: - name: Clone The Salt Repository @@ -448,7 +428,6 @@ jobs: - check-requirements - prepare-workflow - publish-repositories - - pkg-download-tests - release - publish-pypi - build-ci-deps diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index b6a4fa9fe86a..16dc76940a34 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -279,7 +279,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -297,7 +297,7 @@ jobs: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - ubuntu-22.04 - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['prepare-release'] }} needs: - prepare-workflow steps: @@ -404,7 +404,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -415,7 +415,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-source-tarball'] }} needs: - prepare-workflow - prepare-release diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index c4cf136fe5fb..36e5fabfc015 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -279,7 +279,7 @@ jobs: lint: name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['lint'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['lint'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -297,7 +297,7 @@ jobs: name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - ubuntu-22.04 - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['prepare-release'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['prepare-release'] }} needs: - prepare-workflow steps: @@ -405,7 +405,7 @@ jobs: build-docs: name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-docs'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-docs'] }} needs: - prepare-workflow - build-source-tarball @@ -416,7 +416,7 @@ jobs: build-source-tarball: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['build-source-tarball'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['build-source-tarball'] }} needs: - prepare-workflow - prepare-release @@ -582,6 +582,7 @@ jobs: with: name: salt-${{ needs.prepare-workflow.outputs.salt-version }}.patch path: artifacts/release + - name: Download Release Documentation (HTML) uses: actions/download-artifact@v4 with: @@ -592,25 +593,6 @@ jobs: run: | tree -a artifacts/release - pkg-download-tests: - name: Package Downloads - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['test-pkg-download'] }} - needs: - - prepare-workflow - - build-ci-deps - - build-salt-onedir - uses: ./.github/workflows/test-package-downloads-action.yml - with: - nox-session: ci-test-onedir - cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 - salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - environment: staging - nox-version: 2022.8.7 - python-version: "3.10" - skip-code-coverage: true - latest-release: "${{ needs.prepare-workflow.outputs.latest-release }}" - secrets: inherit - publish-pypi: name: Publish to PyPi(test) if: ${{ inputs.skip-test-pypi-publish != true && github.event.repository.fork != true }} @@ -618,7 +600,6 @@ jobs: - prepare-workflow - upload-release-artifacts - build-ci-deps - - pkg-download-tests environment: staging runs-on: - ubuntu-22.04 @@ -666,6 +647,16 @@ jobs: run: | tools pkg pypi-upload --test artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz + draft-release: + name: Draft Github Release + needs: + - prepare-workflow + - upload-release-artifacts + uses: ./.github/workflows/draft-release.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks # on a pull request instead of requiring all @@ -683,7 +674,6 @@ jobs: - build-salt-onedir - build-pkgs-src - upload-release-artifacts - - pkg-download-tests - publish-pypi steps: - name: Get workflow information diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 08c6be4c4096..38a7cec037c2 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -29,7 +29,7 @@ lint: <%- do conclusion_needs.append('lint') %> name: Lint - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} uses: ./.github/workflows/lint-action.yml needs: - prepare-workflow @@ -58,7 +58,7 @@ name: "Prepare Release: ${{ needs.prepare-workflow.outputs.salt-version }}" runs-on: - ubuntu-22.04 - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow steps: @@ -185,7 +185,7 @@ <{ job_name }>: <%- do conclusion_needs.append(job_name) %> name: Documentation - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - build-source-tarball @@ -202,7 +202,7 @@ <{ job_name }>: name: Build Source Tarball - if: ${{ fromJSON(needs.prepare-workflow.outputs.jobs)['<{ job_name }>'] }} + if: ${{ fromJSON(needs.prepare-workflow.outputs.config)['jobs']['<{ job_name }>'] }} needs: - prepare-workflow - prepare-release diff --git a/.github/workflows/templates/release.yml.jinja b/.github/workflows/templates/release.yml.jinja index ccad8c7c95cc..b1b5e574afef 100644 --- a/.github/workflows/templates/release.yml.jinja +++ b/.github/workflows/templates/release.yml.jinja @@ -278,10 +278,6 @@ permissions: run: | tools pkg repo publish <{ gh_environment }> ${{ needs.prepare-workflow.outputs.salt-version }} - <%- if includes.get("test-pkg-downloads", True) %> - <%- include "test-salt-pkg-repo-downloads.yml.jinja" %> - <%- endif %> - release: <%- do conclusion_needs.append('release') %> name: Release v${{ needs.prepare-workflow.outputs.salt-version }} diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index c3de71922e06..79e1503fdbd3 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -91,13 +91,6 @@ concurrency: - ubuntu-22.04 steps: - uses: actions/checkout@v4 - {#- - - name: Get Salt Project GitHub Actions Bot Environment - run: | - TOKEN=$(curl -sS -f -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 30") - SPB_ENVIRONMENT=$(curl -sS -f -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/tags/instance/spb:environment) - echo "SPB_ENVIRONMENT=$SPB_ENVIRONMENT" >> "$GITHUB_ENV" - #} - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts @@ -110,14 +103,6 @@ concurrency: name: salt-${{ needs.prepare-workflow.outputs.salt-version }}.patch path: artifacts/release - {#- - - name: Download Source Repository - uses: actions/download-artifact@v4 - with: - name: salt-${{ needs.prepare-workflow.outputs.salt-version }}-<{ gh_environment }>-src-repo - path: artifacts/release - - #} - name: Download Release Documentation (HTML) uses: actions/download-artifact@v4 with: @@ -128,35 +113,6 @@ concurrency: run: | tree -a artifacts/release - {#- - - - name: Download Release Documentation (PDF) - uses: actions/download-artifact@v4 - with: - name: Salt-${{ needs.prepare-workflow.outputs.salt-version }}.pdf - path: artifacts/release - - - - name: Upload Release Artifacts - run: | - tools release upload-artifacts ${{ needs.prepare-workflow.outputs.salt-version }} artifacts/release - - - - name: Upload PyPi Artifacts - uses: actions/upload-artifact@v4 - with: - name: pypi-artifacts - path: | - artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz - artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz.asc - retention-days: 7 - if-no-files-found: error - #} - - <%- if includes.get("test-pkg-downloads", True) %> - <%- include "test-salt-pkg-repo-downloads.yml.jinja" %> - <%- endif %> - publish-pypi: <%- do conclusion_needs.append('publish-pypi') %> name: Publish to PyPi(test) @@ -220,4 +176,23 @@ concurrency: run: | tools pkg pypi-upload --test artifacts/release/salt-${{ needs.prepare-workflow.outputs.salt-version }}.tar.gz + draft-release: + name: Draft Github Release + needs: + - prepare-workflow + - upload-release-artifacts + <%- 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 %> + uses: ./.github/workflows/draft-release.yml + with: + salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + <%- endblock jobs %> From 71d22596198571c26eca0b59f50c442210f87f39 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 20:18:06 -0700 Subject: [PATCH 190/225] Use normal test containers --- tools/precommit/workflows.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index cf9845184d6a..f62213a34434 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -229,28 +229,28 @@ display_name="Rocky Linux 8", arch="x86_64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", ), LinuxPkg( slug="rockylinux-8-arm64", display_name="Rocky Linux 8 Arm64", arch="arm64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-8", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-8", ), LinuxPkg( slug="rockylinux-9", display_name="Rocky Linux 9", arch="x86_64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", ), LinuxPkg( slug="rockylinux-9-arm64", display_name="Rocky Linux 9 Arm64", arch="arm64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-rockylinux-9", + container="ghcr.io/saltstack/salt-ci-containers/testing:rockylinux-9", ), LinuxPkg( slug="amazonlinux-2", From d6a12f2ea6fe45709b1532a74d2af95e2e5494a5 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 6 Dec 2024 22:51:09 -0700 Subject: [PATCH 191/225] Use nox to extract tarball on container --- .github/workflows/test-packages-action.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index ad85db2cb07e..9dab48f714ee 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -125,15 +125,6 @@ jobs: with: name: nox-linux-${{ matrix.arch }}-${{ inputs.nox-session }} - - name: Decompress .nox Directory - run: | - nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} - - - name: Setup Python Tools Scripts - uses: ./.github/actions/setup-python-tools-scripts - with: - cache-prefix: ${{ inputs.cache-prefix }} - - name: "Pull container ${{ matrix.container }}" run: | docker pull ${{ matrix.container }} @@ -146,6 +137,15 @@ jobs: run: | /usr/bin/docker start ${{ github.run_id }}_salt-test + - name: Decompress .nox Directory + run: | + docker exec ${{ github.run_id}}_salt-test nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} + + - name: Setup Python Tools Scripts + uses: ./.github/actions/setup-python-tools-scripts + with: + cache-prefix: ${{ inputs.cache-prefix }} + - name: List Free Space run: | df -h || true @@ -155,7 +155,7 @@ jobs: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + docker exec ${{ github.run_id }}_salt-tests nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - name: Run Package Tests env: From 0ce96eab590c32e63beded88c60e30beb02c1df1 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 00:28:49 -0700 Subject: [PATCH 192/225] Fix typo --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 9dab48f714ee..b8732710744a 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -155,7 +155,7 @@ jobs: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - docker exec ${{ github.run_id }}_salt-tests nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + docker exec ${{ github.run_id }}_salt-test nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - name: Run Package Tests env: From d87bed3738ad8523f21b22f94fe716a7f1fced42 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 01:52:45 -0700 Subject: [PATCH 193/225] support for older venv --- noxfile.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/noxfile.py b/noxfile.py index a605db687cc3..3d39c7438777 100644 --- a/noxfile.py +++ b/noxfile.py @@ -1805,13 +1805,24 @@ def ci_test_onedir_pkgs(session): session_warn(session, "Replacing VirtualEnv instance...") ci_test_onedir_path = REPO_ROOT / ".nox" / "ci-test-onedir" - session._runner.venv = VirtualEnv( - str(ci_test_onedir_path.relative_to(REPO_ROOT)), - interpreter=session._runner.func.python, - reuse_existing=True, - venv=session._runner.venv.venv_or_virtualenv == "venv", - venv_params=session._runner.venv.venv_params, - ) + if hasattr(session._runner.venv, "venv_or_virtualenv"): + venv = session._runner.venv.venv_or_virtualenv == "venv" + session._runner.venv = VirtualEnv( + str(ci_test_onedir_path.relative_to(REPO_ROOT)), + interpreter=session._runner.func.python, + reuse_existing=True, + venv=venv, + venv_params=session._runner.venv.venv_params, + ) + else: + venv = session._runner.venv.venv_backend in ("venv", "virtualenv") + session._runner.venv = VirtualEnv( # pylint: disable=unexpected-keyword-arg + str(ci_test_onedir_path.relative_to(REPO_ROOT)), + interpreter=session._runner.func.python, + reuse_existing=True, + venv_backend=session._runner.venv.venv_backend, + venv_params=session._runner.venv.venv_params, + ) os.environ["VIRTUAL_ENV"] = session._runner.venv.location session._runner.venv.create() From 12debcd74549073fb09c535cec98c770eeafd29b Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 14:14:08 -0700 Subject: [PATCH 194/225] Call nox via module name --- .github/workflows/test-packages-action.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index b8732710744a..a08379295cad 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -131,7 +131,7 @@ jobs: - name: "Create container ${{ matrix.container }}" run: | - /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target + /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/bin/systemd" ${{ matrix.container }} --systemd --unit rescue.target - name: "Start container ${{ matrix.container }}" run: | @@ -139,7 +139,7 @@ jobs: - name: Decompress .nox Directory run: | - docker exec ${{ github.run_id}}_salt-test nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts @@ -155,7 +155,7 @@ jobs: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - docker exec ${{ github.run_id }}_salt-test nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + docker exec ${{ github.run_id }}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - name: Run Package Tests env: @@ -166,7 +166,7 @@ jobs: COVERAGE_CONTEXT: ${{ matrix.distro-slug }} run: | /usr/bin/docker exec ${{ github.run_id }}_salt-test \ - nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ + python3 -m nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} - name: Upload Test Run Log Artifacts From 6522fad7de9a3d8ab2c4eba4be0e25fa30170484 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 14:24:54 -0700 Subject: [PATCH 195/225] Use different container names for pkg tests --- .github/workflows/test-action.yml | 42 ++++++++++++---------- .github/workflows/test-packages-action.yml | 9 ++--- 2 files changed, 26 insertions(+), 25 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index cf1991a520bd..abd2656cc034 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -83,14 +83,10 @@ jobs: SALT_TRANSPORT: ${{ matrix.transport }} steps: - # - uses: actions/setup-python@v5 - # with: - # python-version: '3.10' - # - - - name: Check python - run: | - which python3 + - name: Set up Python ${{ inputs.python-version }} + uses: actions/setup-python@v5 + with: + python-version: "${{ inputs.python-version }}" - name: "Throttle Builds" shell: bash @@ -122,9 +118,17 @@ jobs: cd artifacts tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.tar.xz - - name: Install System Dependencies + - name: "Pull container ${{ matrix.container }}" run: | - echo true + docker pull ${{ matrix.container }} + + - name: "Create container ${{ matrix.container }}" + run: | + /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/bin/systemd" ${{ matrix.container }} --systemd --unit rescue.target + + - name: "Start container ${{ matrix.container }}" + run: | + /usr/bin/docker start ${{ github.run_id }}_salt-test - name: Download nox.linux.${{ matrix.arch }}.tar.* artifact for session ${{ inputs.nox-session }} uses: actions/download-artifact@v4 @@ -139,7 +143,7 @@ jobs: - name: Decompress .nox Directory run: | - nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} - name: Download testrun-changed-files.txt if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} @@ -155,8 +159,8 @@ jobs: env: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" - run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + run: + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - name: Run Changed Tests id: run-fast-changed-tests @@ -172,7 +176,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --core-tests --slow-tests --suppress-no-test-exit-code \ --from-filenames=testrun-changed-files.txt @@ -190,7 +194,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code - name: Run Slow Tests @@ -207,7 +211,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests @@ -224,7 +228,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests @@ -241,7 +245,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests @@ -258,7 +262,7 @@ jobs: SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --slow-tests --core-tests - name: Fix file ownership diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index a08379295cad..083fe268c4b7 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -62,9 +62,6 @@ jobs: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-24.04' || 'linux-arm64' }} - # container: - # image: ${{ matrix.container }} - # options: --privileged if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong strategy: @@ -131,15 +128,15 @@ jobs: - name: "Create container ${{ matrix.container }}" run: | - /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/bin/systemd" ${{ matrix.container }} --systemd --unit rescue.target + /usr/bin/docker create --name ${{ github.run_id }}_salt-test-pkg --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/bin/systemd" ${{ matrix.container }} --systemd --unit rescue.target - name: "Start container ${{ matrix.container }}" run: | - /usr/bin/docker start ${{ github.run_id }}_salt-test + /usr/bin/docker start ${{ github.run_id }}_salt-test-pkg - name: Decompress .nox Directory run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} + docker exec ${{ github.run_id}}_salt-test-pkg python3 -m nox --force-color -e decompress-dependencies -- linux ${{ matrix.arch }} - name: Setup Python Tools Scripts uses: ./.github/actions/setup-python-tools-scripts From a7e4ce15a3b1a6da81473b143da5720d285a1fe3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 14:59:02 -0700 Subject: [PATCH 196/225] Fix systemd path --- .github/workflows/test-action.yml | 2 +- .github/workflows/test-packages-action.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index abd2656cc034..5824e410ad87 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -124,7 +124,7 @@ jobs: - name: "Create container ${{ matrix.container }}" run: | - /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/bin/systemd" ${{ matrix.container }} --systemd --unit rescue.target + /usr/bin/docker create --name ${{ github.run_id }}_salt-test --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target - name: "Start container ${{ matrix.container }}" run: | diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 083fe268c4b7..69d1b74b040d 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -128,7 +128,7 @@ jobs: - name: "Create container ${{ matrix.container }}" run: | - /usr/bin/docker create --name ${{ github.run_id }}_salt-test-pkg --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/bin/systemd" ${{ matrix.container }} --systemd --unit rescue.target + /usr/bin/docker create --name ${{ github.run_id }}_salt-test-pkg --workdir /__w/salt/salt --privileged -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work":"/__w" -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" --entrypoint "/usr/lib/systemd/systemd" ${{ matrix.container }} --systemd --unit rescue.target - name: "Start container ${{ matrix.container }}" run: | From c67f1b313d1e689b5449beb09157114fe6e2fa6f Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 15:44:58 -0700 Subject: [PATCH 197/225] Fix container name --- .github/workflows/test-packages-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 69d1b74b040d..b06c1e37cc65 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -152,7 +152,7 @@ jobs: SKIP_REQUIREMENTS_INSTALL: "1" PRINT_SYSTEM_INFO_ONLY: "1" run: | - docker exec ${{ github.run_id }}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} + docker exec ${{ github.run_id }}_salt-test-pkg python3 -m nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} - name: Run Package Tests env: @@ -162,7 +162,7 @@ jobs: SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" COVERAGE_CONTEXT: ${{ matrix.distro-slug }} run: | - /usr/bin/docker exec ${{ github.run_id }}_salt-test \ + /usr/bin/docker exec ${{ github.run_id }}_salt-test-pkg \ python3 -m nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} From fd05d1211c0368357a30a6cb27278b64f10a8894 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 15:56:38 -0700 Subject: [PATCH 198/225] Fix workflow option name --- .github/workflows/ci.yml | 2 +- .github/workflows/nightly.yml | 2 +- .github/workflows/scheduled.yml | 2 +- .github/workflows/staging.yml | 2 +- .github/workflows/templates/test-salt.yml.jinja | 2 +- .github/workflows/test-action.yml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 902ee6470a2c..4ad401cb3b31 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -489,7 +489,7 @@ jobs: with: nox-session: ci-test-onedir nox-version: 2022.8.7 - gh-actions-python-version: "3.10" + python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 7f46fb2b5ee2..a51d0f9d5b68 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -566,7 +566,7 @@ jobs: with: nox-session: ci-test-onedir nox-version: 2022.8.7 - gh-actions-python-version: "3.10" + python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index 16dc76940a34..810454efae59 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -528,7 +528,7 @@ jobs: with: nox-session: ci-test-onedir nox-version: 2022.8.7 - gh-actions-python-version: "3.10" + python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 36e5fabfc015..b071872628ee 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -552,7 +552,7 @@ jobs: with: nox-session: ci-test-onedir nox-version: 2022.8.7 - gh-actions-python-version: "3.10" + python-version: "3.10" testrun: ${{ needs.prepare-workflow.outputs.testrun }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|3.10.15 diff --git a/.github/workflows/templates/test-salt.yml.jinja b/.github/workflows/templates/test-salt.yml.jinja index 502254c40a60..4c63ca8eceac 100644 --- a/.github/workflows/templates/test-salt.yml.jinja +++ b/.github/workflows/templates/test-salt.yml.jinja @@ -13,7 +13,7 @@ with: nox-session: ci-test-onedir nox-version: <{ nox_version }> - gh-actions-python-version: "<{ gh_actions_workflows_python_version }>" + python-version: "<{ gh_actions_workflows_python_version }>" testrun: ${{ needs.prepare-workflow.outputs.testrun }} salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" cache-prefix: ${{ needs.prepare-workflow.outputs.cache-seed }}|<{ python_version }> diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 5824e410ad87..ca9ddfa8c161 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -12,7 +12,7 @@ on: required: true type: string description: JSON string containing information about what and how to run the test suite - gh-actions-python-version: + python-version: required: false type: string description: The python version to run tests with From 2a1f8e57b30bfab246640825b5246f8911a1a622 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 16:46:28 -0700 Subject: [PATCH 199/225] Fix action input name --- .github/workflows/test-action.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index ca9ddfa8c161..3c9a9afa42a0 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -368,10 +368,10 @@ jobs: with: name: nox-macos-${{ matrix.arch }}-${{ inputs.nox-session }} - - name: Set up Python ${{ inputs.gh-actions-python-version }} + - name: Set up Python ${{ inputs.python-version }} uses: actions/setup-python@v5 with: - python-version: "${{ inputs.gh-actions-python-version }}" + python-version: "${{ inputs.python-version }}" - name: Install Nox run: | @@ -599,10 +599,10 @@ jobs: run: | echo true - - name: Set up Python ${{ inputs.gh-actions-python-version }} + - name: Set up Python ${{ inputs.python-version }} uses: actions/setup-python@v5 with: - python-version: "${{ inputs.gh-actions-python-version }}" + python-version: "${{ inputs.python-version }}" - name: Install Nox run: | @@ -855,10 +855,10 @@ jobs: run: | tree -a artifacts - - name: Set up Python ${{ inputs.gh-actions-python-version }} + - name: Set up Python ${{ inputs.python-version }} uses: actions/setup-python@v5 with: - python-version: "${{ inputs.gh-actions-python-version }}" + python-version: "${{ inputs.python-version }}" - name: Install Nox run: | From 7e8d2c2882579d8a9432818f18fabd11c5f471f7 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 16:52:36 -0700 Subject: [PATCH 200/225] Do not use container config --- .github/workflows/test-action.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 3c9a9afa42a0..eada9ccc5765 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -70,8 +70,6 @@ jobs: if: ${{ toJSON(fromJSON(inputs.matrix)['linux']) != '[]' }} runs-on: - ${{ matrix.arch == 'x86_64' && 'ubuntu-22.04' || 'linux-arm64' }} - container: - image: ${{ matrix.container }} # Full test runs. Each chunk should never take more than 2 hours. # Partial test runs(no chunk parallelization), 6 Hours timeout-minutes: ${{ fromJSON(inputs.testrun)['type'] == 'full' && inputs.default-timeout || 360 }} From 264703b09d8ce1416c6314fa288780f936f1f62d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 19:08:04 -0700 Subject: [PATCH 201/225] No longer use any systemd specific containers --- tools/precommit/workflows.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tools/precommit/workflows.py b/tools/precommit/workflows.py index f62213a34434..9bb72a3cfda3 100644 --- a/tools/precommit/workflows.py +++ b/tools/precommit/workflows.py @@ -343,14 +343,14 @@ display_name="Photon OS 5", arch="x86_64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), LinuxPkg( slug="photonos-5-arm64", display_name="Photon OS 5 Arm64", arch="arm64", pkg_type="rpm", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), LinuxPkg( slug="photonos-5", @@ -358,7 +358,7 @@ arch="x86_64", pkg_type="rpm", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), LinuxPkg( slug="photonos-5-arm64", @@ -366,7 +366,7 @@ arch="arm64", pkg_type="rpm", fips=True, - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-photon-5", + container="ghcr.io/saltstack/salt-ci-containers/testing:photon-5", ), LinuxPkg( slug="ubuntu-20.04", @@ -387,14 +387,14 @@ display_name="Ubuntu 22.04", arch="x86_64", pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), LinuxPkg( slug="ubuntu-22.04-arm64", display_name="Ubuntu 22.04 Arm64", arch="arm64", pkg_type="deb", - container="ghcr.io/saltstack/salt-ci-containers/testing:systemd-ubuntu-22.04", + container="ghcr.io/saltstack/salt-ci-containers/testing:ubuntu-22.04", ), LinuxPkg( slug="ubuntu-24.04", From e2b8162e9c9c42b0b38bde87e1cfec29d2876e07 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sat, 7 Dec 2024 20:05:42 -0700 Subject: [PATCH 202/225] mac and windows have static package type --- .github/workflows/test-packages-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index b06c1e37cc65..67b53671ac38 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -214,7 +214,7 @@ jobs: - name: Download Packages uses: actions/download-artifact@v4 with: - name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-${{ matrix.pkg_type }} + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-macos path: artifacts/pkg/ - name: Install System Dependencies @@ -338,7 +338,7 @@ jobs: - name: Download Packages uses: actions/download-artifact@v4 with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ matrix.arch }}-${{ matrix.pkg_type }} + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ matrix.arch }}-windows path: ./artifacts/pkg/ - name: Download Onedir Tarball as an Artifact From c83d519415be2f64a3093eeca26908700f9c8c3d Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 14:05:49 -0700 Subject: [PATCH 203/225] Attempt to fix logs artifact name --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 67b53671ac38..8df67e7a730b 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -170,7 +170,7 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: pkg-testrun-log-artifacts-${{ matrix.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + name: pkg-testrun-log-artifacts-${{ matrix.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.pkg_type }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/logs include-hidden-files: true From ae15d5612fcb0615a096db83b88ef36a861c1eee Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 14:15:44 -0700 Subject: [PATCH 204/225] Fix prepare workflow step --- .github/workflows/test-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index eada9ccc5765..b1889a87014f 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -278,7 +278,7 @@ jobs: run: | # Delete the salt onedir, we won't need it anymore and it will prevent # from it showing in the tree command below - rm -rf artifacts/salt* + sudo rm -rf artifacts/salt* tree -a artifacts if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} From 2c3f867e6d881901d3a1d3d887928ccb016224b3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 14:20:05 -0700 Subject: [PATCH 205/225] Download all artifacts to artifacts/ dir --- .github/workflows/draft-release.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 766342cf88cd..07715e19a60f 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -29,5 +29,7 @@ jobs: # Checkout here so we can easily use custom actions - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 + with: + path: artifacts/ - name: List Directory Structure - run: ls -R + run: ls -R artifacts/ From 718d66da082c5cda811ebe3f9354f8f9cd6505b7 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 14:56:47 -0700 Subject: [PATCH 206/225] Fix artifact name slug --- .github/workflows/test-packages-action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index 8df67e7a730b..d70737b2868f 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -170,7 +170,7 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: pkg-testrun-log-artifacts-${{ matrix.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.pkg_type }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + name: pkg-testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.pkg_type }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/logs include-hidden-files: true @@ -179,7 +179,7 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} + name: pkg-testrun-artifacts-${{ matrix.slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} path: | artifacts/ !artifacts/pkg/* From 6f724c6f911187a8a014dabc57a10011bd0c6ba6 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 16:17:26 -0700 Subject: [PATCH 207/225] Echo url --- .github/workflows/draft-release.yml | 29 +++++++++++++++++++--- .github/workflows/test-packages-action.yml | 22 ++++++++-------- 2 files changed, 37 insertions(+), 14 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 07715e19a60f..480aeb350537 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -22,14 +22,37 @@ env: jobs: - create-github-release: - name: Create Github Draft Release + list-artifacts: + name: Download and list all artifacts runs-on: ubuntu-22.04 steps: # Checkout here so we can easily use custom actions - - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 with: path: artifacts/ - name: List Directory Structure run: ls -R artifacts/ + + + create-github-release: + name: Download and list all artifacts + runs-on: ubuntu-22.04 + steps: + - name: Create Release + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: v${{ inputs.salt-version }} + draft: true + prerelease: false + + release-artifacts: + name: Download and list all artifacts + runs-on: ubuntu-22.04 + needs: + - create-github-release + steps: + - name: Echo upload url + run: echo ${{ needs.create-github-release.outputs.upload_url }} diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index d70737b2868f..d29e784f4fc1 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -160,7 +160,7 @@ jobs: RERUN_FAILURES: "1" GITHUB_ACTIONS_PIPELINE: "1" SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - COVERAGE_CONTEXT: ${{ matrix.distro-slug }} + COVERAGE_CONTEXT: ${{ matrix.slug }} run: | /usr/bin/docker exec ${{ github.run_id }}_salt-test-pkg \ python3 -m nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ @@ -274,7 +274,7 @@ jobs: RERUN_FAILURES: "1" GITHUB_ACTIONS_PIPELINE: "1" SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - COVERAGE_CONTEXT: ${{ matrix.distro-slug }} + COVERAGE_CONTEXT: ${{ matrix.slug }} run: | sudo -E nox --force-color -e ${{ inputs.nox-session }}-pkgs -- ${{ matrix.tests-chunk }} \ ${{ matrix.version && format('--prev-version={0}', matrix.version) || ''}} @@ -296,7 +296,7 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} + name: pkg-testrun-artifacts-${{ matrix.slug }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} path: | artifacts/ !artifacts/pkg/* @@ -307,7 +307,7 @@ jobs: test-windows: name: ${{ matrix.display_name }} ${{ matrix.tests-chunk }} - runs-on: ${{ matrix.distro-slug }} + runs-on: ${{ matrix.slug }} timeout-minutes: 120 # 2 Hours - More than this and something is wrong if: ${{ toJSON(fromJSON(inputs.matrix)['windows']) != '[]' }} strategy: @@ -408,7 +408,7 @@ jobs: GITHUB_ACTIONS_PIPELINE: "1" SKIP_INITIAL_ONEDIR_FAILURES: "1" SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - COVERAGE_CONTEXT: ${{ matrix.distro-slug }} + COVERAGE_CONTEXT: ${{ matrix.slug }} OUTPUT_COLUMNS: "190" PYTHONUTF8: "1" run: > @@ -424,14 +424,14 @@ jobs: # from it showing in the tree command below rm -rf artifacts/salt* if [ "${{ inputs.skip-code-coverage }}" != "true" ]; then - mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.distro-slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} + mv artifacts/coverage/.coverage artifacts/coverage/.coverage.${{ matrix.slug }}.${{ inputs.nox-session }}.${{ matrix.transport }}.${{ matrix.tests-chunk }} fi - name: Upload Test Run Log Artifacts if: always() uses: actions/upload-artifact@v4 with: - name: pkg-testrun-log-artifacts-${{ matrix.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} + name: pkg-testrun-log-artifacts-${{ matrix.slug }}-${{ inputs.nox-session }}-${{ matrix.transport }}-${{ matrix.tests-chunk }}-${{ env.TIMESTAMP }} path: | artifacts/logs include-hidden-files: true @@ -440,7 +440,7 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} + name: pkg-testrun-artifacts-${{ matrix.slug }}-${{ matrix.pkg_type }}-${{ matrix.arch }}-${{ matrix.tests-chunk }}-${{ matrix.version || 'no-version'}}-${{ env.TIMESTAMP }} path: | artifacts/ !artifacts/pkg/* @@ -477,8 +477,8 @@ jobs: continue-on-error: true uses: actions/upload-artifact/merge@v4 with: - name: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }} - pattern: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}-* + name: pkg-testrun-artifacts-${{ matrix.slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }} + pattern: pkg-testrun-artifacts-${{ matrix.slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}-* separate-directories: true delete-merged: true @@ -491,7 +491,7 @@ jobs: uses: actions/download-artifact@v4 with: path: artifacts/ - pattern: pkg-testrun-artifacts-${{ matrix.distro-slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}* + pattern: pkg-testrun-artifacts-${{ matrix.slug }}${{ matrix.fips && '-fips' || '' }}-${{ matrix.pkg_type }}* merge-multiple: true - name: Show Test Run Artifacts From d6a6c37fb87825a0da3abff188042ab0a18a5d51 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 16:32:39 -0700 Subject: [PATCH 208/225] Fix test environment variables --- .github/workflows/test-action.yml | 101 +++++++++--------------------- 1 file changed, 28 insertions(+), 73 deletions(-) diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index b1889a87014f..34206cbf8712 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -154,113 +154,68 @@ jobs: pwd - name: Show System Info - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_SYSTEM_INFO_ONLY: "1" - run: - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} + run: | + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_SYSTEM_INFO_ONLY=1 ${{ github.run_id}}_salt-test \ + python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} - name: Run Changed Tests id: run-fast-changed-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ - --core-tests --slow-tests --suppress-no-test-exit-code \ - --from-filenames=testrun-changed-files.txt + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ + -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + --core-tests --slow-tests --suppress-no-test-exit-code --from-filenames=testrun-changed-files.txt - name: Run Fast Tests id: run-fast-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['fast'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ + -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code - name: Run Slow Tests id: run-slow-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['slow'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ + -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --slow-tests - name: Run Core Tests id: run-core-tests if: ${{ fromJSON(inputs.testrun)['type'] != 'full' && fromJSON(inputs.testrun)['selected_tests']['core'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ + -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --core-tests - name: Run Flaky Tests id: run-flaky-tests if: ${{ fromJSON(inputs.testrun)['selected_tests']['flaky'] }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ + -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --flaky-jail - name: Run Full Tests id: run-full-tests if: ${{ fromJSON(inputs.testrun)['type'] == 'full' }} - env: - SKIP_REQUIREMENTS_INSTALL: "1" - PRINT_TEST_SELECTION: "0" - PRINT_TEST_PLAN_ONLY: "0" - PRINT_SYSTEM_INFO: "0" - RERUN_FAILURES: "1" - GITHUB_ACTIONS_PIPELINE: "1" - SKIP_INITIAL_GH_ACTIONS_FAILURES: "1" - SKIP_CODE_COVERAGE: "${{ inputs.skip-code-coverage && '1' || '0' }}" - COVERAGE_CONTEXT: ${{ matrix.slug }} run: | - docker exec ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ + docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ + -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --slow-tests --core-tests - name: Fix file ownership From c95b7b521b9178fa89483a373d03f29a87782300 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 8 Dec 2024 21:15:38 -0700 Subject: [PATCH 209/225] Fix linter issues --- .github/workflows/draft-release.yml | 2 ++ .github/workflows/test-action.yml | 12 ++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 480aeb350537..133796d16d5a 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -47,6 +47,8 @@ jobs: tag_name: v${{ inputs.salt-version }} draft: true prerelease: false + - run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" > $GITHUB_OUTPUT + release-artifacts: name: Download and list all artifacts diff --git a/.github/workflows/test-action.yml b/.github/workflows/test-action.yml index 34206cbf8712..6ce9962b14b3 100644 --- a/.github/workflows/test-action.yml +++ b/.github/workflows/test-action.yml @@ -164,7 +164,7 @@ jobs: run: | docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ - -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }} -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --core-tests --slow-tests --suppress-no-test-exit-code --from-filenames=testrun-changed-files.txt @@ -174,7 +174,7 @@ jobs: run: | docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ - -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }} -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code @@ -184,7 +184,7 @@ jobs: run: | docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ - -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }} -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --slow-tests @@ -194,7 +194,7 @@ jobs: run: | docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ - -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }} -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --core-tests @@ -204,7 +204,7 @@ jobs: run: | docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ - -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }} -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --suppress-no-test-exit-code --no-fast-tests --flaky-jail @@ -214,7 +214,7 @@ jobs: run: | docker exec -e SKIP_REQUIREMENTS_INSTALL=1 -e PRINT_TEST_SELECTION=0 -e PRINT_TEST_PLAN_ONLY=0 -e PRINT_SYSTEM_INFO=0 \ -e RERUN_FAILURES=1 -e GITHUB_ACTIONS_PIPELINE=1 -e SKIP_INITIAL_GH_ACTIONS_FAILURES=1 \ - -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }}" -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ + -e SKIP_CODE_COVERAGE=${{ inputs.skip-code-coverage && '1' || '0' }} -e CONVERAGE_CONTEXT=${{ matrix.slug }} \ ${{ github.run_id}}_salt-test python3 -m nox --force-color -e ${{ inputs.nox-session }} -- ${{ matrix.tests-chunk }} -- \ --slow-tests --core-tests From 00c0cfbc0d594a51a6d97fabf180acd3d794a924 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 9 Dec 2024 02:36:45 -0700 Subject: [PATCH 210/225] fix pre-commit --- .github/workflows/draft-release.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 133796d16d5a..0840e3b00983 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -37,6 +37,8 @@ jobs: create-github-release: name: Download and list all artifacts runs-on: ubuntu-22.04 + outputs: + upload_url: ${{ steps.create_release.outputs.upload_url }} steps: - name: Create Release id: create_release @@ -47,7 +49,8 @@ jobs: tag_name: v${{ inputs.salt-version }} draft: true prerelease: false - - run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" > $GITHUB_OUTPUT + - name: Release Output + run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" >> "$GITHUB_OUTPUT" release-artifacts: From cd2866c558a5e992dec4d99ff909c1cf653ca0f3 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 9 Dec 2024 12:58:43 -0700 Subject: [PATCH 211/225] Fix pkg type for windows pacakge tests --- .github/workflows/test-packages-action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-packages-action.yml b/.github/workflows/test-packages-action.yml index d29e784f4fc1..1cf340e3db73 100644 --- a/.github/workflows/test-packages-action.yml +++ b/.github/workflows/test-packages-action.yml @@ -338,7 +338,7 @@ jobs: - name: Download Packages uses: actions/download-artifact@v4 with: - name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ matrix.arch }}-windows + name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-${{ matrix.arch }}-${{ matrix.pkg_type }} path: ./artifacts/pkg/ - name: Download Onedir Tarball as an Artifact From bdfc5d0e139eb1b4fa9c703421c52a5627d74ee8 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 9 Dec 2024 14:06:31 -0700 Subject: [PATCH 212/225] Draft release needs packages built --- .github/workflows/staging.yml | 1 + .github/workflows/templates/staging.yml.jinja | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index b071872628ee..cc87552e4809 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -652,6 +652,7 @@ jobs: needs: - prepare-workflow - upload-release-artifacts + - build-pkgs-onedir uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 79e1503fdbd3..6be8520f8b19 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -181,6 +181,7 @@ concurrency: needs: - prepare-workflow - upload-release-artifacts + - build-pkgs-onedir <%- for need in test_salt_needs.iter(consume=True) %> - <{ need }> <%- endfor %> From dc445c1104a806dcbc67b5b2e7f2ee221f91d966 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 9 Dec 2024 17:39:50 -0700 Subject: [PATCH 213/225] Add perms to draft release --- .github/workflows/staging.yml | 4 ++++ .github/workflows/templates/staging.yml.jinja | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index cc87552e4809..bd2e025c46e4 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -649,6 +649,10 @@ jobs: draft-release: name: Draft Github Release + permissions: + contents: write + pull-requests: read + id-token: write needs: - prepare-workflow - upload-release-artifacts diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 6be8520f8b19..6bb9e9e69809 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -178,6 +178,10 @@ concurrency: draft-release: name: Draft Github Release + permissions: + contents: write + pull-requests: read + id-token: write needs: - prepare-workflow - upload-release-artifacts From c5b3904f8bea73d767bafde535dd30e03bf128a2 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Tue, 10 Dec 2024 16:21:07 -0700 Subject: [PATCH 214/225] drat release also requires tests --- .github/workflows/draft-release.yml | 49 ++++++++++++++++++- .github/workflows/staging.yml | 2 + .github/workflows/templates/staging.yml.jinja | 2 + 3 files changed, 52 insertions(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 0840e3b00983..30472626225d 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -33,7 +33,6 @@ jobs: - name: List Directory Structure run: ls -R artifacts/ - create-github-release: name: Download and list all artifacts runs-on: ubuntu-22.04 @@ -52,12 +51,60 @@ jobs: - name: Release Output run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" >> "$GITHUB_OUTPUT" + list-source-tarball: + name: Add Source Tarball to Release + needs: + - create-github-release + runs-on: ubuntu-22.04 + outputs: + upload_url: ${{ steps.list_files.outputs.files }} + steps: + - uses: actions/download-artifact@v4 + with: + name: salt-${{ inputs.salt-version }}.tar.gz + path: artifacts + - id: list-files + run: | + echo files=$(ls -l artifacts/| jq -Rn '[inputs | { file: "\(.)" }]') >> "$GITHUB_OUTPUT" + + upload-source-tarball: + name: Upload Source Tarball Artifacts + runs-on: ubunut-22.04 + needs: + - list-source-tarball + - create-github-release + strategy: + matrix: + include: ${{ fromJSON(needs.list-source-tarball.outputs.files) }} + steps: + - uses: actions/download-artifact@v4 + with: + name: salt-${{ inputs.salt-version }}.tar.gz + path: artifacts + + - id: file-type + run: echo "file_type=$( file --mime-type artifacts/${{ matrix.file }} )" >> "$GITHUB_OUTPUT" + + - name: Upload Source Tarball + id: upload-release-asset-source + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ needs.create-github-release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: artifacts/${{ matrix.file }} + asset_name: ${{ matrix.file }} + asset_content_type: ${{ steps.file-type.outputs.file_type }} + release-artifacts: name: Download and list all artifacts runs-on: ubuntu-22.04 needs: - create-github-release + strategy: + matrix: + ${{ fromJSON(inputs.matrix)['linux'] }} steps: - name: Echo upload url run: echo ${{ needs.create-github-release.outputs.upload_url }} diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index bd2e025c46e4..d6b5a052c9a5 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -657,6 +657,8 @@ jobs: - prepare-workflow - upload-release-artifacts - build-pkgs-onedir + - test-packages + - test uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 6bb9e9e69809..771816794548 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -186,6 +186,8 @@ concurrency: - prepare-workflow - upload-release-artifacts - build-pkgs-onedir + - test-packages + - test <%- for need in test_salt_needs.iter(consume=True) %> - <{ need }> <%- endfor %> From bb77a3e03ad45dc0dabff33e21db9d83cb6e29d4 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Wed, 11 Dec 2024 17:24:28 -0700 Subject: [PATCH 215/225] Run draft release when tests are skipped --- .github/workflows/staging.yml | 3 +++ .github/workflows/templates/staging.yml.jinja | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index d6b5a052c9a5..324c23e27afd 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -649,6 +649,9 @@ jobs: draft-release: name: Draft Github Release + if: | + always() && (needs.test.result == 'sucess' || needs.test.result == 'skipped') && + (needs.test-pkg.result == 'sucess' || needs.test-pkg.result == 'skipped') permissions: contents: write pull-requests: read diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 771816794548..e63fff9ea8d0 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -178,6 +178,9 @@ concurrency: draft-release: name: Draft Github Release + if: | + always() && (needs.test.result == 'sucess' || needs.test.result == 'skipped') && + (needs.test-pkg.result == 'sucess' || needs.test-pkg.result == 'skipped') permissions: contents: write pull-requests: read From 08501c9fa94ccb8bb3338f8277f1fcae03ad4a12 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 12 Dec 2024 14:20:24 -0700 Subject: [PATCH 216/225] Require more needs results --- .github/workflows/staging.yml | 6 +++--- .github/workflows/templates/staging.yml.jinja | 15 +++------------ 2 files changed, 6 insertions(+), 15 deletions(-) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 324c23e27afd..57fd96e290b7 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -650,15 +650,15 @@ jobs: draft-release: name: Draft Github Release if: | - always() && (needs.test.result == 'sucess' || needs.test.result == 'skipped') && - (needs.test-pkg.result == 'sucess' || needs.test-pkg.result == 'skipped') + always() && (needs.test.result == 'success' || needs.test.result == 'skipped') && + (needs.test-pkg.result == 'success' || needs.test-pkg.result == 'skipped') && + needs.prepare-workflow.result == 'success' && needs.build-pkgs-onedir.result == 'success' permissions: contents: write pull-requests: read id-token: write needs: - prepare-workflow - - upload-release-artifacts - build-pkgs-onedir - test-packages - test diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index e63fff9ea8d0..750d303ecbf0 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -179,27 +179,18 @@ concurrency: draft-release: name: Draft Github Release if: | - always() && (needs.test.result == 'sucess' || needs.test.result == 'skipped') && - (needs.test-pkg.result == 'sucess' || needs.test-pkg.result == 'skipped') + always() && (needs.test.result == 'success' || needs.test.result == 'skipped') && + (needs.test-pkg.result == 'success' || needs.test-pkg.result == 'skipped') && + needs.prepare-workflow.result == 'success' && needs.build-pkgs-onedir.result == 'success' permissions: contents: write pull-requests: read id-token: write needs: - prepare-workflow - - upload-release-artifacts - build-pkgs-onedir - test-packages - test - <%- 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 %> uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" From 294af90a7450bfb53d02dc46888fdae407189ece Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 12 Dec 2024 14:50:08 -0700 Subject: [PATCH 217/225] Fix list files step name --- .github/workflows/draft-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 30472626225d..e197e8c0e158 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -57,7 +57,7 @@ jobs: - create-github-release runs-on: ubuntu-22.04 outputs: - upload_url: ${{ steps.list_files.outputs.files }} + upload_url: ${{ steps.list-files.outputs.files }} steps: - uses: actions/download-artifact@v4 with: From 5143c8704f8b01538778263ff3fb050b9309ad96 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Thu, 12 Dec 2024 16:52:15 -0700 Subject: [PATCH 218/225] Try and fix draft --- .github/workflows/draft-release.yml | 6 +++--- .github/workflows/staging.yml | 10 +++++----- .github/workflows/templates/staging.yml.jinja | 10 +++++----- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index e197e8c0e158..c474cae2badd 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -57,7 +57,7 @@ jobs: - create-github-release runs-on: ubuntu-22.04 outputs: - upload_url: ${{ steps.list-files.outputs.files }} + files: ${{ steps.list-files.outputs.files }} steps: - uses: actions/download-artifact@v4 with: @@ -65,11 +65,11 @@ jobs: path: artifacts - id: list-files run: | - echo files=$(ls -l artifacts/| jq -Rn '[inputs | { file: "\(.)" }]') >> "$GITHUB_OUTPUT" + echo files="$(find artifacts -maxdepth 1 -type f -printf '%f\n' | jq -Rnc '[inputs | { file: "\(.)" }]')" >> "$GITHUB_OUTPUT" upload-source-tarball: name: Upload Source Tarball Artifacts - runs-on: ubunut-22.04 + runs-on: ubuntu-22.04 needs: - list-source-tarball - create-github-release diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 57fd96e290b7..83438ea95654 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -651,17 +651,17 @@ jobs: name: Draft Github Release if: | always() && (needs.test.result == 'success' || needs.test.result == 'skipped') && - (needs.test-pkg.result == 'success' || needs.test-pkg.result == 'skipped') && + (needs.test-packages.result == 'success' || needs.test-packages.result == 'skipped') && needs.prepare-workflow.result == 'success' && needs.build-pkgs-onedir.result == 'success' - permissions: - contents: write - pull-requests: read - id-token: write needs: - prepare-workflow - build-pkgs-onedir - test-packages - test + permissions: + contents: write + pull-requests: read + id-token: write uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 750d303ecbf0..adb42dce1dc9 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -180,17 +180,17 @@ concurrency: name: Draft Github Release if: | always() && (needs.test.result == 'success' || needs.test.result == 'skipped') && - (needs.test-pkg.result == 'success' || needs.test-pkg.result == 'skipped') && + (needs.test-packages.result == 'success' || needs.test-packages.result == 'skipped') && needs.prepare-workflow.result == 'success' && needs.build-pkgs-onedir.result == 'success' - permissions: - contents: write - pull-requests: read - id-token: write needs: - prepare-workflow - build-pkgs-onedir - test-packages - test + permissions: + contents: write + pull-requests: read + id-token: write uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" From d639621646cb810036db8c022b98e47ca3d64e40 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Fri, 13 Dec 2024 15:18:50 -0700 Subject: [PATCH 219/225] Add release name to draft --- .github/workflows/draft-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index c474cae2badd..86889138f248 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -45,6 +45,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: + release_name: "Release v${{ inputs.version }}" tag_name: v${{ inputs.salt-version }} draft: true prerelease: false @@ -96,7 +97,6 @@ jobs: asset_name: ${{ matrix.file }} asset_content_type: ${{ steps.file-type.outputs.file_type }} - release-artifacts: name: Download and list all artifacts runs-on: ubuntu-22.04 From 9949112a56137143c711a0fcfd00861b78b59111 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 15 Dec 2024 14:43:32 -0700 Subject: [PATCH 220/225] Experiment with output matrix --- .github/workflows/draft-release.yml | 34 +++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 86889138f248..1bec8b2d1aa7 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -45,7 +45,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: - release_name: "Release v${{ inputs.version }}" + release_name: "Release v${{ inputs.salt-version }}" tag_name: v${{ inputs.salt-version }} draft: true prerelease: false @@ -53,7 +53,7 @@ jobs: run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" >> "$GITHUB_OUTPUT" list-source-tarball: - name: Add Source Tarball to Release + name: List Source Tarball Artifacts needs: - create-github-release runs-on: ubuntu-22.04 @@ -97,6 +97,36 @@ jobs: asset_name: ${{ matrix.file }} asset_content_type: ${{ steps.file-type.outputs.file_type }} + list-onedir-linux: + name: List Onedir Artifacts Linux + runs-on: ubuntu-22.04 + needs: + - create-github-release + outputs: + ${{ matrix.arch }}-files: ${{ steps.list-files.outputs.files }} + strategy: + matrix: + include: ${{ fromJSON(inputs.matrix)['linux'] }} + steps: + - uses: actions/download-artifact@v4 + with: + name: salt-${{ inputs.salt-version }}-onedir-linux-${{ matrix.arch }}.tar.xz + path: artifacts + - id: list-files + run: | + echo ${{ matrix.arch }}-files="$(find artifacts -maxdepth 1 -type f -printf '%f\n' | jq -Rnc '[inputs | { file: "\(.)" }]')" >> "$GITHUB_OUTPUT" + +# upload-onedir-linux: +# name: Upload Onedir Packages Linux +# runs-on: ubuntu-22.04 +# needs: +# - create-github-release +# - list-onedir-linux +# strategy: +# matrix: +# include: ${{ fromJSON(needs.list-onedir-linux.outputs.files) }} + + release-artifacts: name: Download and list all artifacts runs-on: ubuntu-22.04 From 8ee928507966e63e31e8cc0d75cd99b6caea1a6a Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 15 Dec 2024 18:30:44 -0700 Subject: [PATCH 221/225] Clean up type annontations --- tools/ci.py | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/tools/ci.py b/tools/ci.py index b2b872ec2205..0add128bed5b 100644 --- a/tools/ci.py +++ b/tools/ci.py @@ -14,7 +14,7 @@ import shutil import sys import time -from typing import TYPE_CHECKING, Any +from typing import TYPE_CHECKING, Any, Literal from ptscripts import Context, command_group @@ -1567,7 +1567,7 @@ def workflow_config( ctx.info(f"{pprint.pformat(gh_event)}") ctx.info(f"{'==== end github event ====':^80s}") - config = {} + config: dict[str, Any] = {} jobs = { "lint": True, "test": True, @@ -1582,15 +1582,30 @@ def workflow_config( "build-deps-ci": True, } - kinds = ["linux", "windows", "macos"] + platforms: list[Literal["linux", "macos", "windows"]] = [ + "linux", + "macos", + "windows", + ] if skip_pkg_download_tests: jobs["test-pkg-download"] = False config["jobs"] = jobs config["build-matrix"] = { - kind: _build_matrix(kind) for kind in ["linux", "macos", "windows"] # type: ignore + platform: _build_matrix(platform) for platform in platforms } + ctx.info(f"{'==== build matrix ====':^80s}") + ctx.info(f"{pprint.pformat(config['build-matrix'])}") + ctx.info(f"{'==== end build matrix ====':^80s}") + config["artifact-matrix"] = [] + for platform in platforms: + config["artifact-matrix"] += [ + dict({"platform": platform}, **_) for _ in config["build-matrix"][platform] + ] + ctx.info(f"{'==== artifact matrix ====':^80s}") + ctx.info(f"{pprint.pformat(config['artifact-matrix'])}") + ctx.info(f"{'==== end artifact matrix ====':^80s}") # Get salt releases. releases = tools.utils.get_salt_releases(ctx) @@ -1622,7 +1637,6 @@ def workflow_config( str_releases = [str(version) for version in testing_releases] ctx.info(f"str_releases {str_releases}") - platforms = ["linux", "macos", "windows"] pkg_test_matrix: dict[str, list] = {_: [] for _ in platforms} if os.environ.get("LINUX_ARM_RUNNER", "0") == "0": @@ -1642,7 +1656,7 @@ def workflow_config( }, **_.as_dict(), ) - for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + for _ in TEST_SALT_PKG_LISTING[platform] ] for version in str_releases: for platform in platforms: @@ -1654,7 +1668,7 @@ def workflow_config( }, **_.as_dict(), ) - for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + for _ in TEST_SALT_PKG_LISTING[platform] ] pkg_test_matrix[platform] += [ dict( @@ -1664,7 +1678,7 @@ def workflow_config( }, **_.as_dict(), ) - for _ in TEST_SALT_PKG_LISTING[platform] # type: ignore + for _ in TEST_SALT_PKG_LISTING[platform] ] ctx.info(f"{'==== pkg test matrix ====':^80s}") ctx.info(f"{pprint.pformat(pkg_test_matrix)}") @@ -1695,7 +1709,7 @@ def workflow_config( }, **_.as_dict(), ) - for _ in TEST_SALT_LISTING[platform] # type: ignore + for _ in TEST_SALT_LISTING[platform] if _os_test_filter(_, transport, chunk) ] else: @@ -1704,14 +1718,14 @@ def workflow_config( {"transport": transport, "tests-chunk": chunk}, **_.as_dict(), ) - for _ in TEST_SALT_LISTING[platform] # type: ignore + for _ in TEST_SALT_LISTING[platform] if _os_test_filter(_, transport, chunk) ] ctx.info(f"{'==== test matrix ====':^80s}") ctx.info(f"{pprint.pformat(test_matrix)}") ctx.info(f"{'==== end test matrix ====':^80s}") - config["pkg-test-matrix"] = pkg_test_matrix # type: ignore - config["test-matrix"] = test_matrix # type: ignore + config["pkg-test-matrix"] = pkg_test_matrix + config["test-matrix"] = test_matrix ctx.info("Jobs selected are") for x, y in jobs.items(): ctx.info(f"{x} = {y}") From c051224195948fd802139eb61a9b78e6259e4d28 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Sun, 15 Dec 2024 21:54:08 -0700 Subject: [PATCH 222/225] Upload onedir artifacts to release --- .github/workflows/draft-release.yml | 66 ++----------------- .github/workflows/release-artifact.yml | 61 +++++++++++++++++ .github/workflows/staging.yml | 2 +- .github/workflows/templates/staging.yml.jinja | 3 +- 4 files changed, 71 insertions(+), 61 deletions(-) create mode 100644 .github/workflows/release-artifact.yml diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 1bec8b2d1aa7..59a1bdcd2102 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -52,80 +52,28 @@ jobs: - name: Release Output run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" >> "$GITHUB_OUTPUT" - list-source-tarball: - name: List Source Tarball Artifacts - needs: - - create-github-release - runs-on: ubuntu-22.04 - outputs: - files: ${{ steps.list-files.outputs.files }} - steps: - - uses: actions/download-artifact@v4 - with: - name: salt-${{ inputs.salt-version }}.tar.gz - path: artifacts - - id: list-files - run: | - echo files="$(find artifacts -maxdepth 1 -type f -printf '%f\n' | jq -Rnc '[inputs | { file: "\(.)" }]')" >> "$GITHUB_OUTPUT" - upload-source-tarball: - name: Upload Source Tarball Artifacts runs-on: ubuntu-22.04 needs: - - list-source-tarball - create-github-release - strategy: - matrix: - include: ${{ fromJSON(needs.list-source-tarball.outputs.files) }} steps: - - uses: actions/download-artifact@v4 + - uses: ./.github/workflows/release-artifact.yml with: name: salt-${{ inputs.salt-version }}.tar.gz - path: artifacts - - - id: file-type - run: echo "file_type=$( file --mime-type artifacts/${{ matrix.file }} )" >> "$GITHUB_OUTPUT" - - - name: Upload Source Tarball - id: upload-release-asset-source - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ needs.create-github-release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps - asset_path: artifacts/${{ matrix.file }} - asset_name: ${{ matrix.file }} - asset_content_type: ${{ steps.file-type.outputs.file_type }} + upload_url: ${{ needs.create-github-release.outputs.upload_url }} - list-onedir-linux: - name: List Onedir Artifacts Linux + upload-onedir: runs-on: ubuntu-22.04 needs: - create-github-release - outputs: - ${{ matrix.arch }}-files: ${{ steps.list-files.outputs.files }} strategy: matrix: - include: ${{ fromJSON(inputs.matrix)['linux'] }} + include: ${{ inputs.matrix }} steps: - - uses: actions/download-artifact@v4 + - uses: ./.github/workflows/release-artifact.yml with: - name: salt-${{ inputs.salt-version }}-onedir-linux-${{ matrix.arch }}.tar.xz - path: artifacts - - id: list-files - run: | - echo ${{ matrix.arch }}-files="$(find artifacts -maxdepth 1 -type f -printf '%f\n' | jq -Rnc '[inputs | { file: "\(.)" }]')" >> "$GITHUB_OUTPUT" - -# upload-onedir-linux: -# name: Upload Onedir Packages Linux -# runs-on: ubuntu-22.04 -# needs: -# - create-github-release -# - list-onedir-linux -# strategy: -# matrix: -# include: ${{ fromJSON(needs.list-onedir-linux.outputs.files) }} - + name: salt-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.${{ matrix.platform == 'windows' && 'zip' || 'tar.xz' }} + upload_url: ${{ needs.create-github-release.outputs.upload_url }} release-artifacts: name: Download and list all artifacts diff --git a/.github/workflows/release-artifact.yml b/.github/workflows/release-artifact.yml new file mode 100644 index 000000000000..d6a2331e8544 --- /dev/null +++ b/.github/workflows/release-artifact.yml @@ -0,0 +1,61 @@ +--- +name: Upload Release Artifact + +on: + workflow_call: + inputs: + artifact-name: + type: string + required: true + description: The Salt version to set prior to building packages. + uload-url: + type: string + required: true + description: Release's upload url. + + +steps: + + list-files: + name: List Files From Artifact + needs: + - create-github-release + runs-on: ubuntu-22.04 + outputs: + files: ${{ steps.list-files.outputs.files }} + steps: + - uses: actions/download-artifact@v4 + with: + name: ${{ inputs.artifact-name }} + path: artifacts + - id: list-files + run: | + echo files="$(find artifacts -maxdepth 1 -type f -printf '%f\n' | jq -Rnc '[inputs | { file: "\(.)" }]')" >> "$GITHUB_OUTPUT" + + upload-files: + name: Upload Source Tarball Artifacts + runs-on: ubuntu-22.04 + needs: + - list-files + strategy: + matrix: + include: ${{ fromJSON(needs.list-files.outputs.files) }} + steps: + - uses: actions/download-artifact@v4 + with: + name: ${{ inputs.artifact-name }} + path: artifacts + + - id: file-type + run: echo "file_type=$( file --mime-type artifacts/${{ matrix.file }} )" >> "$GITHUB_OUTPUT" + + - name: Upload Source Tarball + id: upload-release-asset-source + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ inputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: artifacts/${{ matrix.file }} + asset_name: ${{ matrix.file }} + asset_content_type: ${{ steps.file-type.outputs.file_type }} diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 83438ea95654..fc78227aa321 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -665,7 +665,7 @@ jobs: uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['artifact-matrix']) }} set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index adb42dce1dc9..a3d370a704b3 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -194,6 +194,7 @@ concurrency: uses: ./.github/workflows/draft-release.yml with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" - matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} + matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['artifact-matrix']) }} + <%- endblock jobs %> From ffef079d29db075d6ddd950d158c803ead339059 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 16 Dec 2024 14:00:36 -0700 Subject: [PATCH 223/225] Disable concurrency restricionts for now --- .github/workflows/staging.yml | 6 +++--- .github/workflows/templates/staging.yml.jinja | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index fc78227aa321..7c60cfb3e47b 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -47,9 +47,9 @@ permissions: pull-requests: read # for dorny/paths-filter to read pull requests actions: read # for technote-space/workflow-conclusion-action to get the job statuses -concurrency: - group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.repository }} - cancel-in-progress: false +#concurrency: +# group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.repository }} +# cancel-in-progress: false jobs: diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index a3d370a704b3..4be53dca8c80 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -51,9 +51,9 @@ on: <%- block concurrency %> -concurrency: - group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.repository }} - cancel-in-progress: false +#concurrency: +# group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.repository }} +# cancel-in-progress: false <%- endblock concurrency %> From c22cd41ebd482beddebd2e8c6b2f66e67d2e472c Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 16 Dec 2024 14:29:20 -0700 Subject: [PATCH 224/225] Upload more artifacts --- .github/workflows/draft-release.yml | 83 ++++++++++++++----- .github/workflows/release-artifact.yml | 12 ++- .github/workflows/staging.yml | 6 +- .github/workflows/templates/staging.yml.jinja | 6 +- 4 files changed, 78 insertions(+), 29 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index 59a1bdcd2102..d40324e23321 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -12,6 +12,10 @@ on: required: true type: string description: Json job matrix config + build-matrix: + required: true + type: string + description: Json job matrix config env: COLUMNS: 190 @@ -53,36 +57,75 @@ jobs: run: echo "upload_url=${{ steps.create_release.outputs.upload_url }}" >> "$GITHUB_OUTPUT" upload-source-tarball: - runs-on: ubuntu-22.04 needs: - create-github-release - steps: - - uses: ./.github/workflows/release-artifact.yml - with: - name: salt-${{ inputs.salt-version }}.tar.gz - upload_url: ${{ needs.create-github-release.outputs.upload_url }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}.tar.gz + upload_url: ${{ needs.create-github-release.outputs.upload_url }} upload-onedir: - runs-on: ubuntu-22.04 needs: - create-github-release strategy: matrix: - include: ${{ inputs.matrix }} - steps: - - uses: ./.github/workflows/release-artifact.yml - with: - name: salt-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.${{ matrix.platform == 'windows' && 'zip' || 'tar.xz' }} - upload_url: ${{ needs.create-github-release.outputs.upload_url }} + include: ${{ fromJSON(inputs.matrix) }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}-onedir-${{ matrix.platform }}-${{ matrix.arch }}.${{ matrix.platform == 'windows' && 'zip' || 'tar.xz' }} + upload_url: ${{ needs.create-github-release.outputs.upload_url }} - release-artifacts: - name: Download and list all artifacts - runs-on: ubuntu-22.04 + upload-deb-packages: needs: - create-github-release strategy: matrix: - ${{ fromJSON(inputs.matrix)['linux'] }} - steps: - - name: Echo upload url - run: echo ${{ needs.create-github-release.outputs.upload_url }} + include: ${{ fromJSON(inputs.build-matrix)['linux'] }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-deb + upload_url: ${{ needs.create-github-release.outputs.upload_url }} + + upload-rpm-packages: + needs: + - create-github-release + strategy: + matrix: + include: ${{ fromJSON(inputs.build-matrix)['linux'] }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-rpm + upload_url: ${{ needs.create-github-release.outputs.upload_url }} + + upload-mac-packages: + needs: + - create-github-release + strategy: + matrix: + include: ${{ fromJSON(inputs.build-matrix)['macos'] }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-macos + upload_url: ${{ needs.create-github-release.outputs.upload_url }} + + upload-windows-msi-packages: + needs: + - create-github-release + strategy: + matrix: + include: ${{ fromJSON(inputs.build-matrix)['windows'] }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-MSI + upload_url: ${{ needs.create-github-release.outputs.upload_url }} + + upload-windows-nsis-packages: + needs: + - create-github-release + strategy: + matrix: + include: ${{ fromJSON(inputs.build-matrix)['windows'] }} + uses: ./.github/workflows/release-artifact.yml + with: + name: salt-${{ inputs.salt-version }}-${{ matrix.arch }}-NSIS + upload_url: ${{ needs.create-github-release.outputs.upload_url }} diff --git a/.github/workflows/release-artifact.yml b/.github/workflows/release-artifact.yml index d6a2331e8544..5025643f0735 100644 --- a/.github/workflows/release-artifact.yml +++ b/.github/workflows/release-artifact.yml @@ -4,29 +4,27 @@ name: Upload Release Artifact on: workflow_call: inputs: - artifact-name: + name: type: string required: true description: The Salt version to set prior to building packages. - uload-url: + upload_url: type: string required: true description: Release's upload url. -steps: +jobs: list-files: name: List Files From Artifact - needs: - - create-github-release runs-on: ubuntu-22.04 outputs: files: ${{ steps.list-files.outputs.files }} steps: - uses: actions/download-artifact@v4 with: - name: ${{ inputs.artifact-name }} + name: ${{ inputs.name }} path: artifacts - id: list-files run: | @@ -43,7 +41,7 @@ steps: steps: - uses: actions/download-artifact@v4 with: - name: ${{ inputs.artifact-name }} + name: ${{ inputs.name }} path: artifacts - id: file-type diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 7c60cfb3e47b..33e262ca5c40 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -652,9 +652,12 @@ jobs: if: | always() && (needs.test.result == 'success' || needs.test.result == 'skipped') && (needs.test-packages.result == 'success' || needs.test-packages.result == 'skipped') && - needs.prepare-workflow.result == 'success' && needs.build-pkgs-onedir.result == 'success' + needs.prepare-workflow.result == 'success' && needs.build-salt-onedir.result == 'success' && + needs.build-pkgs-onedir.result == 'success' && needs.pre-commit.result == 'success' needs: - prepare-workflow + - pre-commit + - build-salt-onedir - build-pkgs-onedir - test-packages - test @@ -666,6 +669,7 @@ jobs: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['artifact-matrix']) }} + build-matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} set-pipeline-exit-status: # This step is just so we can make github require this step, to pass checks diff --git a/.github/workflows/templates/staging.yml.jinja b/.github/workflows/templates/staging.yml.jinja index 4be53dca8c80..c823da809da8 100644 --- a/.github/workflows/templates/staging.yml.jinja +++ b/.github/workflows/templates/staging.yml.jinja @@ -181,9 +181,12 @@ on: if: | always() && (needs.test.result == 'success' || needs.test.result == 'skipped') && (needs.test-packages.result == 'success' || needs.test-packages.result == 'skipped') && - needs.prepare-workflow.result == 'success' && needs.build-pkgs-onedir.result == 'success' + needs.prepare-workflow.result == 'success' && needs.build-salt-onedir.result == 'success' && + needs.build-pkgs-onedir.result == 'success' && needs.pre-commit.result == 'success' needs: - prepare-workflow + - pre-commit + - build-salt-onedir - build-pkgs-onedir - test-packages - test @@ -195,6 +198,7 @@ on: with: salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}" matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['artifact-matrix']) }} + build-matrix: ${{ toJSON(fromJSON(needs.prepare-workflow.outputs.config)['build-matrix']) }} <%- endblock jobs %> From 2f3f794b38916c0adfbb77af0ee0014da0691803 Mon Sep 17 00:00:00 2001 From: "Daniel A. Wozniak" Date: Mon, 16 Dec 2024 17:44:51 -0700 Subject: [PATCH 225/225] Fix up workflow step names --- .github/workflows/draft-release.yml | 4 ++-- .github/workflows/release-artifact.yml | 10 ++++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml index d40324e23321..0eb554be36e2 100644 --- a/.github/workflows/draft-release.yml +++ b/.github/workflows/draft-release.yml @@ -27,7 +27,7 @@ env: jobs: list-artifacts: - name: Download and list all artifacts + name: List Artifacts runs-on: ubuntu-22.04 steps: # Checkout here so we can easily use custom actions @@ -38,7 +38,7 @@ jobs: run: ls -R artifacts/ create-github-release: - name: Download and list all artifacts + name: Draft Release v${{ inputs.salt-version }} runs-on: ubuntu-22.04 outputs: upload_url: ${{ steps.create_release.outputs.upload_url }} diff --git a/.github/workflows/release-artifact.yml b/.github/workflows/release-artifact.yml index 5025643f0735..5829c676fbfb 100644 --- a/.github/workflows/release-artifact.yml +++ b/.github/workflows/release-artifact.yml @@ -17,7 +17,7 @@ on: jobs: list-files: - name: List Files From Artifact + name: List ${{ inputs.name }} runs-on: ubuntu-22.04 outputs: files: ${{ steps.list-files.outputs.files }} @@ -26,12 +26,13 @@ jobs: with: name: ${{ inputs.name }} path: artifacts + - run: find artifacts -maxdepth 1 -type f -printf '%f\n' - id: list-files run: | echo files="$(find artifacts -maxdepth 1 -type f -printf '%f\n' | jq -Rnc '[inputs | { file: "\(.)" }]')" >> "$GITHUB_OUTPUT" upload-files: - name: Upload Source Tarball Artifacts + name: Upload ${{ matrix.file }} from ${{ inputs.name }} runs-on: ubuntu-22.04 needs: - list-files @@ -44,10 +45,11 @@ jobs: name: ${{ inputs.name }} path: artifacts - - id: file-type + - name: Detect type of ${{ matrix.file }} + id: file-type run: echo "file_type=$( file --mime-type artifacts/${{ matrix.file }} )" >> "$GITHUB_OUTPUT" - - name: Upload Source Tarball + - name: Upload ${{ matrix.file }} id: upload-release-asset-source uses: actions/upload-release-asset@v1 env: