From d3500df0c25859f7f869a97b49723323472af28f Mon Sep 17 00:00:00 2001 From: Thomas Dax Date: Tue, 3 Sep 2024 10:56:03 +0200 Subject: [PATCH] Add workflow to merge main into next (#79) --- .github/workflows/main-into-next-pr.yml | 45 +++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/main-into-next-pr.yml diff --git a/.github/workflows/main-into-next-pr.yml b/.github/workflows/main-into-next-pr.yml new file mode 100644 index 00000000..4b0ff9be --- /dev/null +++ b/.github/workflows/main-into-next-pr.yml @@ -0,0 +1,45 @@ +name: Create "Merge main into next" PR +on: + push: + branches: + - main +jobs: + main-into-next: + name: Create "Merge main into next" PR + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 # Needed to also fetch next branch + + - name: Setup Git user + run: | + git config user.name github-actions + git config user.email github-actions@github.com + + - name: Try automatic merge of main into next + id: automatic-merge-attempt + continue-on-error: true + run: | + git checkout next + git merge main + echo 'PR_TITLE=Merge main into next' >> $GITHUB_ENV + echo 'PR_BODY=This is an automated pull request to merge changes from `main` into `next`.' >> $GITHUB_ENV + + - name: Merge with conflicts if automatic merge failed + if: steps.automatic-merge-attempt.outcome == 'failure' && steps.automatic-merge-attempt.conclusion == 'success' # https://docs.github.com/en/actions/learn-github-actions/contexts#steps-context + run: | + git add . + git commit -m "Merge main into next" + echo 'PR_TITLE=[Conflicts] Merge main into next' >> $GITHUB_ENV + echo 'PR_BODY=This is an automated pull request to merge changes from `main` into `next`. It has merge conflicts. To resolve conflicts, check out the branch `merge-main-into-next` locally, make any necessary changes to conflicting files, and commit and publish your changes.' >> $GITHUB_ENV + + - name: Create pull request + uses: peter-evans/create-pull-request@v6 + with: + token: ${{ secrets.VIVID_PLANET_BOT_TOKEN }} + title: ${{ env.PR_TITLE }} + body: ${{ env.PR_BODY }} + base: next + branch: merge-main-into-next