From 4c179dcfc50d22abe0c6f3c5be42aca4a7b653f4 Mon Sep 17 00:00:00 2001 From: Th1nkK1D Date: Mon, 26 Aug 2024 20:47:19 +0700 Subject: [PATCH] ci: trigger action on feature's main branch --- .github/workflows/production.yml | 2 +- .github/workflows/staging.yml | 21 +++++++++++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/.github/workflows/production.yml b/.github/workflows/production.yml index f6672067..ee9c161c 100644 --- a/.github/workflows/production.yml +++ b/.github/workflows/production.yml @@ -11,7 +11,7 @@ jobs: github_token: ${{secrets.GITHUB_TOKEN}} workflow: staging.yml workflow_conclusion: success - name: build-artifact + name: build-main - name: Upload to server uses: burnett01/rsync-deployments@6.0.0 with: diff --git a/.github/workflows/staging.yml b/.github/workflows/staging.yml index 9bd4aebe..24511e06 100644 --- a/.github/workflows/staging.yml +++ b/.github/workflows/staging.yml @@ -1,7 +1,7 @@ name: Build and deploy to staging on: push: - branches: ['main'] + branches: ['main', '**/main'] paths-ignore: - '**/README.md' - '.github/workflows/production.yml' @@ -10,6 +10,12 @@ jobs: build: runs-on: ubuntu-latest steps: + - name: Set artifact name + run: | + ARTIFACT=${{ github.ref_name }} + ARTIFACT=build-${ARTIFACT/\//-} + echo "ARTIFACT=${ARTIFACT}" >> $GITHUB_ENV + echo "Set artifact name as ${ARTIFACT}" - uses: actions/checkout@v4 - name: Use Node.js uses: actions/setup-node@v4 @@ -27,19 +33,25 @@ jobs: - name: Upload build artifact uses: actions/upload-artifact@v4 with: - name: build-artifact + name: ${{ env.ARTIFACT }} path: build/* if-no-files-found: error - retention-days: 7 + retention-days: ${{ github.ref_name == 'main' && 7 || 1 }} overwrite: true deploy-to-staging: runs-on: ubuntu-latest needs: build steps: + - name: Set artifact name + run: | + ARTIFACT=${{ github.ref_name }} + ARTIFACT=build-${ARTIFACT/\//-} + echo "ARTIFACT=${ARTIFACT}" >> $GITHUB_ENV + echo "Set artifact name as ${ARTIFACT}" - name: Download build artifact uses: actions/download-artifact@v4 with: - name: build-artifact + name: ${{ env.ARTIFACT }} - name: Publish to Cloudflare Pages uses: cloudflare/pages-action@v1 with: @@ -47,4 +59,5 @@ jobs: accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} projectName: parliament-watch directory: ./ + branch: ${{ github.ref_name }} gitHubToken: ${{ secrets.GITHUB_TOKEN }}