From 656de28402a1d314719c42ecf9ba81e24843a7d3 Mon Sep 17 00:00:00 2001 From: Michel Roegl-Brunner Date: Wed, 14 May 2025 14:38:16 +0200 Subject: [PATCH] Add automerge to workflows --- .github/workflows/auto-update-app-headers.yml | 16 +++++++++++++--- .../workflows/get-versions-from-newreleases.yaml | 15 ++++++++++++--- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/.github/workflows/auto-update-app-headers.yml b/.github/workflows/auto-update-app-headers.yml index 541442d..7d221e1 100644 --- a/.github/workflows/auto-update-app-headers.yml +++ b/.github/workflows/auto-update-app-headers.yml @@ -25,6 +25,13 @@ jobs: app-id: ${{ vars.APP_ID }} private-key: ${{ secrets.APP_PRIVATE_KEY }} + - name: Generate a token for PR approval and merge + id: generate-token-merge + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.APP_ID_APPROVE_AND_MERGE }} + private-key: ${{ secrets.APP_KEY_APPROVE_AND_MERGE }} + # Step 1: Checkout repository - name: Checkout repository uses: actions/checkout@v2 @@ -91,14 +98,17 @@ jobs: gh pr review $PR_NUMBER --approve fi - - name: Re-approve pull request after update + - name: Approve pull request and merge if: env.changed == 'true' env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_TOKEN: ${{ steps.generate-token-merge.outputs.token }} run: | - PR_NUMBER=$(gh pr list --head "pr-update-app-files" --json number --jq '.[].number') + git config --global user.name "github-actions-automege[bot]" + git config --global user.email "github-actions-automege[bot]@users.noreply.github.com" + PR_NUMBER=$(gh pr list --head "${BRANCH_NAME}" --json number --jq '.[].number') if [ -n "$PR_NUMBER" ]; then gh pr review $PR_NUMBER --approve + gh pr merge $PR_NUMBER --squash --admin fi # Step 8: Output success message when no changes diff --git a/.github/workflows/get-versions-from-newreleases.yaml b/.github/workflows/get-versions-from-newreleases.yaml index 9c4a833..2a0dc35 100644 --- a/.github/workflows/get-versions-from-newreleases.yaml +++ b/.github/workflows/get-versions-from-newreleases.yaml @@ -29,6 +29,13 @@ jobs: app-id: ${{ vars.APP_ID }} private-key: ${{ secrets.APP_PRIVATE_KEY }} + - name: Generate a token for PR approval and merge + id: generate-token-merge + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.APP_ID_APPROVE_AND_MERGE }} + private-key: ${{ secrets.APP_KEY_APPROVE_AND_MERGE }} + - name: Crawl from newreleases.io env: token: ${{ secrets.NEWRELEASES_TOKEN }} @@ -110,10 +117,12 @@ jobs: - name: Approve pull request and merge if: env.changed == 'true' env: - GH_TOKEN: ${{ secrets.PAT_MICHEL }} + GH_TOKEN: ${{ steps.generate-token-merge.outputs.token }} run: | - PR_NUMBER=$(gh pr list --head "update_versions" --json number --jq '.[].number') + git config --global user.name "github-actions-automege[bot]" + git config --global user.email "github-actions-automege[bot]@users.noreply.github.com" + PR_NUMBER=$(gh pr list --head "${BRANCH_NAME}" --json number --jq '.[].number') if [ -n "$PR_NUMBER" ]; then gh pr review $PR_NUMBER --approve - gh pr merge $PR_NUMBER --squash --delete-branch --admin + gh pr merge $PR_NUMBER --squash --admin fi