From 98ba1ea02e509d4e0833a07d4ef4598b9c26ea63 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Wed, 23 Oct 2024 08:55:02 -0500 Subject: [PATCH] chore(ci): Automatic update from template --- .github/workflows/template.yml | 53 ++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 .github/workflows/template.yml diff --git a/.github/workflows/template.yml b/.github/workflows/template.yml new file mode 100644 index 00000000..44b115ca --- /dev/null +++ b/.github/workflows/template.yml @@ -0,0 +1,53 @@ +name: Template Update + +permissions: + contents: read + +on: + schedule: + - cron: '1 1 1 * *' + workflow_dispatch: + +env: + RUST_BACKTRACE: 1 + CARGO_TERM_COLOR: always + CLICOLOR: 1 + TEMPLATE_URL: "https://github.com/epage/_rust.git" + TEMPLATE_BRANCH: "main" + +concurrency: + group: "${{ github.workflow }}-${{ github.ref }}" + cancel-in-progress: true + +jobs: + update: + permissions: + security-events: write # to create PR + pull-requests: write + contents: write # to push the branch + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Configure git + run: | + git config --global user.name '${{ github.actor }}' + git config --global user.email '<>' + - name: Fetch template + run: "git remote add template ${{ env.TEMPLATE_URL }} && git fetch template ${{ env.TEMPLATE_BRANCH }}" + - name: Merge template + run: "git checkout -b template-update && git merge template/${{ env.TEMPLATE_BRANCH }} -m 'chore: Update from template'" + - name: Push branch + run: "git push --set-upstream origin template-update" + env: + GH_TOKEN: ${{ github.token }} + - name: Create PR + run: "gh pr create --head template-update --title 'chore: Update from template' --body ''" + env: + GH_TOKEN: ${{ github.token }} + - name: Merge PR + run: "gh pr merge --auto --delete-branch" + env: + GH_TOKEN: ${{ github.token }}