Fix release builds (#1317)

In order to preserve the folder hierarchy in our uploaded artifact,
we need to insert a wildcard in the root path.

Also, fix fan-in of tasks that lead to the publish test result task.
This commit is contained in:
Daniel Chao
2025-11-14 15:18:30 -08:00
committed by GitHub
parent 0ff9125062
commit ef9b53be98
9 changed files with 95 additions and 65 deletions

23
.github/workflows/build.yml generated vendored
View File

@@ -185,7 +185,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -221,7 +221,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-macOS-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -254,7 +254,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -360,7 +360,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-alpine-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -394,7 +394,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-windows-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -427,7 +427,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -463,7 +463,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-macOS-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -496,7 +496,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -602,7 +602,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-alpine-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -636,7 +636,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-windows-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -651,6 +651,7 @@ jobs:
path: '**/build/reports/tests/**/*'
if-no-files-found: ignore
publish-test-results:
if: '!failure() && !cancelled()'
needs:
- gradle-check
- gradle-check-windows
@@ -679,7 +680,7 @@ jobs:
uses: EnricoMi/publish-unit-test-result-action@v2
with:
comment_mode: 'off'
files: '**/build/test-results/**/*.xml'
files: test-results-xml-*/**/*.xml
- name: Upload Test Result HTML
if: '!cancelled()'
uses: actions/upload-artifact@v5

23
.github/workflows/main.yml generated vendored
View File

@@ -184,7 +184,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -220,7 +220,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-macOS-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -253,7 +253,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -359,7 +359,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-alpine-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -393,7 +393,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-windows-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -426,7 +426,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -462,7 +462,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-macOS-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -495,7 +495,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -601,7 +601,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-alpine-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -635,7 +635,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-windows-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -703,6 +703,7 @@ jobs:
path: '**/build/reports/tests/**/*'
if-no-files-found: ignore
publish-test-results:
if: '!failure() && !cancelled()'
needs:
- gradle-check
- gradle-check-windows
@@ -732,7 +733,7 @@ jobs:
uses: EnricoMi/publish-unit-test-result-action@v2
with:
comment_mode: 'off'
files: '**/build/test-results/**/*.xml'
files: test-results-xml-*/**/*.xml
- name: Upload Test Result HTML
if: '!cancelled()'
uses: actions/upload-artifact@v5

48
.github/workflows/prb.yml generated vendored
View File

@@ -94,7 +94,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -131,7 +131,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-macOS-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -166,7 +166,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -274,7 +274,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-alpine-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -310,7 +310,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-windows-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -345,7 +345,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -382,7 +382,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-macOS-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -417,7 +417,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -525,7 +525,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-alpine-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -561,7 +561,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-windows-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -585,3 +585,31 @@ jobs:
with:
name: test-results-event-file
path: ${{ github.event_path }}
check-pkl-github-actions:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Setup Pkl
id: setup-pkl
env:
PKL_VERSION: 0.30.0
PKL_FILENAME: pkl
PKL_DOWNLOAD_URL: https://github.com/apple/pkl/releases/download/0.30.0/pkl-linux-amd64
shell: bash
run: |-
DIR="$(mktemp -d /tmp/pkl-$PKL_VERSION-XXXXXX)"
PKL_EXEC="$DIR/$PKL_FILENAME"
curl -sfL -o $PKL_EXEC "$PKL_DOWNLOAD_URL"
chmod +x $PKL_EXEC
echo "$DIR" >> "$GITHUB_PATH"
echo "pkl_exec=$PKL_EXEC" >> "$GITHUB_OUTPUT"
- shell: bash
run: pkl eval -m .github/ --project-dir .github/ .github/index.pkl
- name: check git status
shell: bash
run: |-
if [ -n "$(git status --porcelain)" ]; then
echo "Running pkl resulted in a diff! You likely need to run 'pkl eval' and commit the changes."
git diff --name-only
exit 1
fi

23
.github/workflows/release-branch.yml generated vendored
View File

@@ -184,7 +184,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -220,7 +220,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-macOS-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -253,7 +253,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -359,7 +359,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-alpine-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -393,7 +393,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-windows-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -426,7 +426,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -462,7 +462,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-macOS-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -495,7 +495,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -601,7 +601,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-alpine-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -635,7 +635,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-windows-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -650,6 +650,7 @@ jobs:
path: '**/build/reports/tests/**/*'
if-no-files-found: ignore
publish-test-results:
if: '!failure() && !cancelled()'
needs:
- gradle-check
- gradle-check-windows
@@ -678,7 +679,7 @@ jobs:
uses: EnricoMi/publish-unit-test-result-action@v2
with:
comment_mode: 'off'
files: '**/build/test-results/**/*.xml'
files: test-results-xml-*/**/*.xml
- name: Upload Test Result HTML
if: '!cancelled()'
uses: actions/upload-artifact@v5

23
.github/workflows/release.yml generated vendored
View File

@@ -184,7 +184,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -220,7 +220,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-macOS-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -253,7 +253,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-linux-aarch64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -359,7 +359,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-alpine-linux-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -393,7 +393,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-cli-windows-amd64
path: pkl-cli/build/executable/**/*
path: pkl-cli*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -426,7 +426,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -462,7 +462,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-macOS-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -495,7 +495,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-linux-aarch64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -601,7 +601,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-alpine-linux-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -635,7 +635,7 @@ jobs:
uses: actions/upload-artifact@v5
with:
name: executable-pkl-doc-windows-amd64
path: pkl-doc/build/executable/**/*
path: pkl-doc*/build/executable/**/*
- name: Upload Test Result XML
if: '!cancelled()'
uses: actions/upload-artifact@v5
@@ -741,6 +741,7 @@ jobs:
path: '**/build/reports/tests/**/*'
if-no-files-found: ignore
publish-test-results:
if: '!failure() && !cancelled()'
needs:
- gradle-check
- gradle-check-windows
@@ -771,7 +772,7 @@ jobs:
uses: EnricoMi/publish-unit-test-result-action@v2
with:
comment_mode: 'off'
files: '**/build/test-results/**/*.xml'
files: test-results-xml-*/**/*.xml
- name: Upload Test Result HTML
if: '!cancelled()'
uses: actions/upload-artifact@v5