fix(ci): make platform publish resilient to individual build failures
publish job now runs with if: always() && !cancelled(), and gates each publish step on download.outcome == 'success'. One flaky target (e.g. windows-x64-baseline) no longer blocks all other platforms.
This commit is contained in:
parent
ae54fd31f4
commit
0749a8f138
9
.github/workflows/publish-platform.yml
vendored
9
.github/workflows/publish-platform.yml
vendored
@ -154,6 +154,7 @@ jobs:
|
|||||||
# =============================================================================
|
# =============================================================================
|
||||||
publish:
|
publish:
|
||||||
needs: build
|
needs: build
|
||||||
|
if: always() && !cancelled()
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
@ -176,14 +177,16 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Download artifact
|
- name: Download artifact
|
||||||
|
id: download
|
||||||
if: steps.check.outputs.skip != 'true'
|
if: steps.check.outputs.skip != 'true'
|
||||||
|
continue-on-error: true
|
||||||
uses: actions/download-artifact@v4
|
uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: binary-${{ matrix.platform }}
|
name: binary-${{ matrix.platform }}
|
||||||
path: .
|
path: .
|
||||||
|
|
||||||
- name: Extract artifact
|
- name: Extract artifact
|
||||||
if: steps.check.outputs.skip != 'true'
|
if: steps.check.outputs.skip != 'true' && steps.download.outcome == 'success'
|
||||||
run: |
|
run: |
|
||||||
PLATFORM="${{ matrix.platform }}"
|
PLATFORM="${{ matrix.platform }}"
|
||||||
mkdir -p packages/${PLATFORM}
|
mkdir -p packages/${PLATFORM}
|
||||||
@ -199,13 +202,13 @@ jobs:
|
|||||||
ls -la packages/${PLATFORM}/bin/
|
ls -la packages/${PLATFORM}/bin/
|
||||||
|
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
if: steps.check.outputs.skip != 'true'
|
if: steps.check.outputs.skip != 'true' && steps.download.outcome == 'success'
|
||||||
with:
|
with:
|
||||||
node-version: "24"
|
node-version: "24"
|
||||||
registry-url: "https://registry.npmjs.org"
|
registry-url: "https://registry.npmjs.org"
|
||||||
|
|
||||||
- name: Publish ${{ matrix.platform }}
|
- name: Publish ${{ matrix.platform }}
|
||||||
if: steps.check.outputs.skip != 'true'
|
if: steps.check.outputs.skip != 'true' && steps.download.outcome == 'success'
|
||||||
run: |
|
run: |
|
||||||
cd packages/${{ matrix.platform }}
|
cd packages/${{ matrix.platform }}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user