From fa090981319dbe6a79b391f1f9623739e247e93a Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Tue, 10 Feb 2026 11:37:05 -0800 Subject: [PATCH] Fix manual variant selection using setup job matrix output --- .github/workflows/container_latest.yml | 34 +++++++++++++++----------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/.github/workflows/container_latest.yml b/.github/workflows/container_latest.yml index ace0ce2fc..9cc97a972 100644 --- a/.github/workflows/container_latest.yml +++ b/.github/workflows/container_latest.yml @@ -28,16 +28,28 @@ permissions: contents: read jobs: + setup: + runs-on: ubuntu-latest + outputs: + variants: ${{ steps.set-variants.outputs.variants }} + steps: + - name: Select variants for this run + id: set-variants + run: | + if [ "${{ github.event_name }}" = "workflow_dispatch" ] && [ "${{ github.event.inputs.variant }}" != "all" ]; then + variants="[\"${{ github.event.inputs.variant }}\"]" + else + variants='["standard","large_disk"]' + fi + echo "variants=$variants" >> "$GITHUB_OUTPUT" + build: + needs: [setup] runs-on: ubuntu-latest - if: | - github.event_name != 'workflow_dispatch' || - github.event.inputs.variant == 'all' || - github.event.inputs.variant == matrix.variant strategy: matrix: platform: [amd64, arm64, arm, 386] - variant: [standard, large_disk] + variant: ${{ fromJSON(needs.setup.outputs.variants) }} steps: - name: Checkout @@ -139,17 +151,11 @@ jobs: create-manifest: runs-on: ubuntu-latest - needs: [build] - if: | - github.event_name != 'pull_request' && - ( - github.event_name != 'workflow_dispatch' || - github.event.inputs.variant == 'all' || - github.event.inputs.variant == matrix.variant - ) + needs: [setup, build] + if: github.event_name != 'pull_request' strategy: matrix: - variant: [standard, large_disk] + variant: ${{ fromJSON(needs.setup.outputs.variants) }} steps: - name: Checkout uses: actions/checkout@v6