Release workflow pulls test artifacts from a previous staging workflow run

Signed-off-by: Pedro Algarvio <palgarvio@vmware.com>
This commit is contained in:
Pedro Algarvio 2023-03-22 11:43:10 +00:00 committed by Thomas Phipps
parent 82f31a20b9
commit 54c40dadf5
5 changed files with 93 additions and 3 deletions

View file

@ -162,6 +162,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
environment: release
skip-code-coverage: true
artifacts-from-workflow: staging.yml
secrets: inherit
test-macos-pkg-downloads:
@ -177,6 +178,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
environment: release
skip-code-coverage: true
artifacts-from-workflow: staging.yml
secrets: inherit
test-windows-pkg-downloads:
@ -192,6 +194,7 @@ jobs:
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
environment: release
skip-code-coverage: true
artifacts-from-workflow: staging.yml
secrets: inherit
release:

View file

@ -14,6 +14,9 @@
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
environment: <{ gh_environment }>
skip-code-coverage: true
<%- if gh_environment == "release" %>
artifacts-from-workflow: staging.yml
<%- endif %>
secrets: inherit
@ -33,6 +36,9 @@
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
environment: <{ gh_environment }>
skip-code-coverage: true
<%- if gh_environment == "release" %>
artifacts-from-workflow: staging.yml
<%- endif %>
secrets: inherit
@ -52,4 +58,7 @@
salt-version: "${{ needs.prepare-workflow.outputs.salt-version }}"
environment: <{ gh_environment }>
skip-code-coverage: true
<%- if gh_environment == "release" %>
artifacts-from-workflow: staging.yml
<%- endif %>
secrets: inherit

View file

@ -43,6 +43,13 @@ on:
type: string
description: The nox session to run
default: test-pkgs-onedir
artifacts-from-workflow:
required: false
type: string
description: >
Which workflow to download artifacts from. An empty string means the
current workflow run.
default: ""
env:
@ -98,12 +105,23 @@ jobs:
key: ${{ inputs.cache-prefix }}|test-pkg-download-deps|${{ matrix.arch }}|${{ inputs.distro-slug }}|${{ inputs.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }}
- name: Download Onedir Tarball as an Artifact
if: steps.nox-dependencies-cache.outputs.cache-hit != 'true'
if: inputs.artifacts-from-workflow == ''
uses: actions/download-artifact@v3
with:
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/
- name: Download Onedir Tarball as an Artifact(from a different workflow)
if: inputs.artifacts-from-workflow != ''
uses: dawidd6/action-download-artifact@v2
with:
workflow: ${{ inputs.artifacts-from-workflow }}
workflow_conclusion: ""
branch: ${{ github.event.ref }}
if_no_artifact_found: fail
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/
- name: Decompress Onedir Tarball
if: steps.nox-dependencies-cache.outputs.cache-hit != 'true'
shell: bash
@ -135,6 +153,14 @@ jobs:
run: |
nox --force-color -e compress-dependencies -- ${{ inputs.distro-slug }}
- name: Upload Onedir Tarball as an Artifact
uses: actions/upload-artifact@v3
with:
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz*
retention-days: 7
if-no-files-found: error
- name: Upload Nox Requirements Tarball
uses: actions/upload-artifact@v3
with:

View file

@ -43,6 +43,13 @@ on:
type: string
description: The nox session to run
default: test-pkgs-onedir
artifacts-from-workflow:
required: false
type: string
description: >
Which workflow to download artifacts from. An empty string means the
current workflow run.
default: ""
env:
@ -95,12 +102,23 @@ jobs:
key: ${{ inputs.cache-prefix }}|test-pkg-download-deps|${{ matrix.arch }}|${{ inputs.distro-slug }}|${{ inputs.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }}
- name: Download Onedir Tarball as an Artifact
if: steps.nox-dependencies-cache.outputs.cache-hit != 'true'
if: inputs.artifacts-from-workflow == ''
uses: actions/download-artifact@v3
with:
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/
- name: Download Onedir Tarball as an Artifact(from a different workflow)
if: inputs.artifacts-from-workflow != ''
uses: dawidd6/action-download-artifact@v2
with:
workflow: ${{ inputs.artifacts-from-workflow }}
workflow_conclusion: ""
branch: ${{ github.event.ref }}
if_no_artifact_found: fail
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/
- name: Decompress Onedir Tarball
if: steps.nox-dependencies-cache.outputs.cache-hit != 'true'
shell: bash
@ -148,6 +166,14 @@ jobs:
run: |
nox --force-color -e compress-dependencies -- ${{ inputs.distro-slug }}
- name: Upload Onedir Tarball as an Artifact
uses: actions/upload-artifact@v3
with:
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz*
retention-days: 7
if-no-files-found: error
- name: Upload Nox Requirements Tarball
uses: actions/upload-artifact@v3
with:

View file

@ -43,6 +43,13 @@ on:
type: string
description: The nox session to run
default: test-pkgs-onedir
artifacts-from-workflow:
required: false
type: string
description: >
Which workflow to download artifacts from. An empty string means the
current workflow run.
default: ""
env:
@ -95,12 +102,23 @@ jobs:
key: ${{ inputs.cache-prefix }}|test-pkg-download-deps|${{ matrix.arch }}|${{ inputs.distro-slug }}|${{ inputs.nox-session }}|${{ hashFiles('requirements/**/*.txt', 'cicd/golden-images.json') }}
- name: Download Onedir Tarball as an Artifact
if: steps.nox-dependencies-cache.outputs.cache-hit != 'true'
if: inputs.artifacts-from-workflow == ''
uses: actions/download-artifact@v3
with:
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/
- name: Download Onedir Tarball as an Artifact(from a different workflow)
if: inputs.artifacts-from-workflow != ''
uses: dawidd6/action-download-artifact@v2
with:
workflow: ${{ inputs.artifacts-from-workflow }}
workflow_conclusion: ""
branch: ${{ github.event.ref }}
if_no_artifact_found: fail
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/
- name: Decompress Onedir Tarball
if: steps.nox-dependencies-cache.outputs.cache-hit != 'true'
shell: bash
@ -139,6 +157,14 @@ jobs:
run: |
nox --force-color -e compress-dependencies -- ${{ inputs.distro-slug }}
- name: Upload Onedir Tarball as an Artifact
uses: actions/upload-artifact@v3
with:
name: ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz
path: artifacts/${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ matrix.arch }}.tar.xz*
retention-days: 7
if-no-files-found: error
- name: Upload Nox Requirements Tarball
uses: actions/upload-artifact@v3
with: