From a1f37c340f02792577b68c984dbd765b818281fe Mon Sep 17 00:00:00 2001 From: KelvinTegelaar <49186168+KelvinTegelaar@users.noreply.github.com> Date: Fri, 28 Mar 2025 11:12:59 +0100 Subject: [PATCH] Create Automated_merge.yml --- .github/workflows/Automated_merge.yml | 56 +++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/Automated_merge.yml diff --git a/.github/workflows/Automated_merge.yml b/.github/workflows/Automated_merge.yml new file mode 100644 index 000000000000..f732923516c8 --- /dev/null +++ b/.github/workflows/Automated_merge.yml @@ -0,0 +1,56 @@ +name: Automated Merges + +on: + schedule: + # Runs every day at 00:00 UTC + - cron: "0 0 * * *" + workflow_dispatch: + +jobs: + # Job 1: Merge dev -> release/nightly (run daily except Friday) + dev-to-nightly: + runs-on: ubuntu-latest + steps: + - name: Check the weekday + id: check-day + run: | + # +%u returns a number for day of week: Monday=1 ... Sunday=7 + DAY_OF_WEEK=$(date +'%u') + echo "day_of_week=$DAY_OF_WEEK" >> $GITHUB_OUTPUT + + - name: Create and merge PR from dev to release/nightly + if: ${{ steps.check-day.outputs.day_of_week != '5' }} + uses: peter-evans/create-pull-request@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + base: release/nightly + head: dev + title: "Nightly Merge: dev → release/nightly" + body: "This PR was automatically created and merged by GitHub Actions." + branch: "auto/dev-to-nightly" + merge: true + merge_method: squash + + # Job 2: Merge release/nightly -> release/beta (run only on Friday) + nightly-to-beta: + runs-on: ubuntu-latest + needs: [dev-to-nightly] + steps: + - name: Check the weekday + id: check-day + run: | + DAY_OF_WEEK=$(date +'%u') + echo "day_of_week=$DAY_OF_WEEK" >> $GITHUB_OUTPUT + + - name: Create and merge PR from release/nightly to release/beta + if: ${{ steps.check-day.outputs.day_of_week == '5' }} + uses: peter-evans/create-pull-request@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + base: release/beta + head: release/nightly + title: "Weekly Merge: release/nightly → release/beta" + body: "This PR was automatically created and merged by GitHub Actions." + branch: "auto/nightly-to-beta" + merge: true + merge_method: squash