From 73b44d574b566c007ceec0462c059913bf368ab1 Mon Sep 17 00:00:00 2001 From: Moritz Utcke Date: Mon, 28 Apr 2025 17:11:54 -0300 Subject: [PATCH] Update --- .../auto-merge-staging-into-main.yml | 39 ++++++++++++------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/.github/workflows/auto-merge-staging-into-main.yml b/.github/workflows/auto-merge-staging-into-main.yml index 33951c18..03ec7c09 100644 --- a/.github/workflows/auto-merge-staging-into-main.yml +++ b/.github/workflows/auto-merge-staging-into-main.yml @@ -1,7 +1,8 @@ name: Auto Merge Staging into Main + on: schedule: - - cron: '0 2 * * *' # 2:00 UTC = 4:00 Europäische Zeit + - cron: '0 2 * * *' # 2:00 UTC = 4:00 Europäische Zeit workflow_dispatch: jobs: @@ -12,17 +13,17 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - + - name: Set Git user run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" - + - name: Fetch all branches run: | git fetch origin main git fetch origin staging - + - name: Check if main has commits not in staging id: check run: | @@ -31,21 +32,28 @@ jobs: echo "❌ Staging is behind main and requires manual merging." exit 1 fi - + + - name: Checkout staging and create branch + id: create_branch + run: | + git checkout staging + git checkout -b auto-merge/staging-to-main + git push origin auto-merge/staging-to-main + - name: Create PR from staging → main id: create_pr uses: peter-evans/create-pull-request@v4 with: token: ${{ secrets.GITHUB_TOKEN }} commit-message: "chore: auto-merge staging into main" - branch: staging + branch: auto-merge/staging-to-main base: main title: "Auto-merge staging into main" body: | This PR was created automatically by GitHub Actions. It merges the latest `staging` into `main`. draft: false - + - name: Enable auto-merge on PR if: steps.create_pr.outputs.pull-request-number != '' uses: peter-evans/enable-pull-request-automerge@v3 @@ -53,7 +61,8 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} pull-request-number: ${{ steps.create_pr.outputs.pull-request-number }} merge-method: merge - + + notify_failure: needs: merge if: failure() @@ -62,10 +71,10 @@ jobs: - name: Send Discord notification on failure run: | curl -H "Content-Type: application/json" \ - -X POST \ - -d "{\"content\": \"🚨 Auto-Merge fehlgeschlagen! Bitte manuell prüfen: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}\"}" \ - ${{ secrets.DISCORD_WEBHOOK_URL }} - + -X POST \ + -d "{\"content\": \"🚨 Auto-Merge fehlgeschlagen! Bitte manuell prüfen: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}\"}" \ + ${{ secrets.DISCORD_WEBHOOK_URL }} + notify_success: needs: merge if: success() @@ -74,6 +83,6 @@ jobs: - name: Send Discord notification on success run: | curl -H "Content-Type: application/json" \ - -X POST \ - -d "{\"content\": \"✅ Auto-Merge ausgeführt! Ergebnis jetzt auf [GitHub](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) und [online-energieausweis.org](https://online-energieausweis.org) einsehen.\"}" \ - ${{ secrets.DISCORD_WEBHOOK_URL }} \ No newline at end of file + -X POST \ + -d "{\"content\": \"✅ Auto-Merge ausgeführt! Ergebnis jetzt auf [GitHub](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) und [online-energieausweis.org](https://online-energieausweis.org) einsehen.\"}" \ + ${{ secrets.DISCORD_WEBHOOK_URL }} \ No newline at end of file