3 Commits
Author SHA1 Message Date
marc 11ef1715ab build: count files without a failing arithmetic command
release / release (push) Canceled after 0s
Under set -e, ((n++)) with n at 0 evaluates to 0 and exits the script. Bash
3.2 on macOS ignores that case, so local builds passed while the release
runner's bash 5 stopped silently on the first file.
2026-10-15 08:03:53 +02:00
marc 7e59978f07 ci: fetch the release tag with basic auth
GitHub's git endpoint rejects a bearer header; it takes the job token as the
password of x-access-token, as actions/checkout does. The release tag is also
resolved in the job environment.
2026-10-15 08:00:51 +02:00
marc 4ffd755fe7 ci: resolve the release tag in the job environment 2026-10-15 07:59:08 +02:00
3 changed files with 9 additions and 9 deletions
+5 -5
View File
@@ -18,13 +18,12 @@ on:
permissions:
contents: write
env:
NODE_VERSION: v24.12.0
RELEASE_REF: ${{ inputs.tag || github.ref_name }}
jobs:
release:
runs-on: ubuntu-latest
env:
NODE_VERSION: v24.12.0
RELEASE_REF: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.tag || github.ref_name }}
steps:
- name: Check out the tag
env:
@@ -32,7 +31,8 @@ jobs:
run: |
case "$RELEASE_REF" in v[0-9]*.[0-9]*.[0-9]*) ;; *) echo "not a version tag: $RELEASE_REF" >&2; exit 1 ;; esac
git init -q .
git -c http.extraheader="AUTHORIZATION: bearer $GITHUB_TOKEN" fetch -q --depth 1 \
basic=$(printf 'x-access-token:%s' "$GITHUB_TOKEN" | base64 -w0)
git -c http.extraheader="AUTHORIZATION: basic $basic" fetch -q --depth 1 \
"https://github.com/$GITHUB_REPOSITORY" "refs/tags/$RELEASE_REF:refs/tags/$RELEASE_REF"
git checkout -q "refs/tags/$RELEASE_REF"
- name: Install Node
+1 -1
View File
@@ -51,7 +51,7 @@ for filename in "${BUILD_FILES[@]}"; do
if [ -f "$filepath" ]; then
cat "$filepath" >> "$OUTPUT"
echo "" >> "$OUTPUT"
((file_count++))
file_count=$((file_count + 1))
else
echo "Warning: $filename not found, skipping" >&2
fi
+3 -3
View File
@@ -45,7 +45,7 @@ for test_file in "$TEST_DIR"/[0-9][0-9]_*.sql; do
[ -f "$test_file" ] || continue
test_name=$(basename "$test_file" .sql)
((total_files++))
total_files=$((total_files + 1))
output=$(psql -U "$PG_USER" -d "$DB" -f "$test_file" 2>&1)
exit_code=$?
@@ -59,7 +59,7 @@ for test_file in "$TEST_DIR"/[0-9][0-9]_*.sql; do
total_fail=$((total_fail + file_fail))
if [ $exit_code -ne 0 ] || [ "$file_fail" -gt 0 ] || [ "$file_errors" -gt 0 ]; then
((failed_files++))
failed_files=$((failed_files + 1))
echo " [FAIL] $test_name — ${file_pass} passed, ${file_fail} failed, ${file_errors} SQL error(s)"
# Print only failing lines for a focused view
if [ "$file_errors" -gt 0 ]; then
@@ -69,7 +69,7 @@ for test_file in "$TEST_DIR"/[0-9][0-9]_*.sql; do
echo "$output" | grep "CHECK FAIL:" | sed 's/^/ /'
fi
else
((passed_files++))
passed_files=$((passed_files + 1))
echo " [PASS] $test_name — ${file_pass} assertion(s) passed"
fi
done