ci(actions): use ubuntu-latest label; add auto-merge job gated by success (requires GITEA_TOKEN secret)

This commit is contained in:
Your Name
2025-09-30 19:39:15 +08:00
parent 6712d83a85
commit 1e6be7e995

View File

@@ -12,14 +12,31 @@ concurrency:
jobs: jobs:
build_test_package: build_test_package:
runs-on: self-hosted runs-on: ubuntu-latest
steps: steps:
- name: Show Java and Maven versions - name: Show Java and Maven versions
run: | run: |
java -version java -version
mvn -v mvn -v
# Gitea act_runner provides the repo workspace by default.
- name: Build and test - name: Build and test
run: mvn -B -DskipTests=false clean verify run: mvn -B -DskipTests=false clean verify
- name: Package - name: Package
run: mvn -B -DskipTests clean package run: mvn -B -DskipTests clean package
auto_merge:
runs-on: ubuntu-latest
needs: build_test_package
if: ${{ github.event_name == 'pull_request' && needs.build_test_package.result == 'success' }}
steps:
- name: Auto-merge PR on success
env:
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
PR_NUMBER: ${{ github.event.pull_request.number }}
REPO: ${{ github.repository }}
run: |
if [ -z "$GITEA_TOKEN" ]; then
echo "GITEA_TOKEN not set, skipping auto-merge"; exit 0;
fi
curl -sS -H "Authorization: token $GITEA_TOKEN" -H 'Content-Type: application/json' \
-X POST "http://localhost:3000/api/v1/repos/${REPO}/pulls/${PR_NUMBER}/merge" \
-d '{"Do":"squash","delete_branch_after_merge":true}'