chore: update GitHub Actions workflows for build and deploy preview

- Renamed the build preview workflow for clarity.
- Removed unnecessary permissions and commented out deployment steps in the build workflow.
- Introduced a new deploy preview workflow that triggers on successful completion of the build workflow, handling artifact download and deployment to Cloudflare Pages.
This commit is contained in:
Mauricio Siu
2025-03-16 11:38:19 -06:00
parent a0085b44d0
commit b5ae891d5d
2 changed files with 55 additions and 23 deletions

View File

@@ -1,6 +1,6 @@
name: "Build and Deploy Preview" name: Build Preview Deployment
on: n:
pull_request: pull_request:
types: [opened, synchronize] types: [opened, synchronize]
@@ -8,11 +8,6 @@ jobs:
build-and-deploy: build-and-deploy:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build and Deploy Preview name: Build and Deploy Preview
permissions:
contents: read
actions: write
pull-requests: write
deployments: write
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
@@ -38,15 +33,15 @@ jobs:
- name: List build output - name: List build output
run: ls -la app/dist run: ls -la app/dist
- name: Deploy to Cloudflare Pages # - name: Deploy to Cloudflare Pages
uses: AdrianGonz97/refined-cf-pages-action@v1 # uses: AdrianGonz97/refined-cf-pages-action@v1
with: # with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} # apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} # accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
githubToken: ${{ secrets.GITHUB_TOKEN }} # githubToken: ${{ secrets.GITHUB_TOKEN }}
projectName: ${{ secrets.CLOUDFLARE_PROJECT_NAME }} # projectName: ${{ secrets.CLOUDFLARE_PROJECT_NAME }}
deploymentName: Preview # deploymentName: Preview
directory: app/dist # directory: app/dist
- name: Upload build artifact - name: Upload build artifact
id: upload-artifact id: upload-artifact
@@ -56,10 +51,10 @@ jobs:
path: app/dist path: app/dist
retention-days: 1 retention-days: 1
- name: Verify artifact upload # - name: Verify artifact upload
run: | # run: |
echo "Artifact upload completed" # echo "Artifact upload completed"
echo "Workflow ID: ${{ github.run_id }}" # echo "Workflow ID: ${{ github.run_id }}"
echo "Repository: ${{ github.repository }}" # echo "Repository: ${{ github.repository }}"
echo "Event name: ${{ github.event_name }}" # echo "Event name: ${{ github.event_name }}"
echo "Event type: ${{ github.event.action }}" # echo "Event type: ${{ github.event.action }}"

37
.github/workflows/deploy-preview.yml vendored Normal file
View File

@@ -0,0 +1,37 @@
name: Upload Preview Deployment
on:
workflow_run:
workflows: [Build Preview Deployment]
types:
- completed
permissions:
actions: read
deployments: write
contents: read
pull-requests: write
jobs:
deploy-preview:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
- name: Download build artifact
uses: actions/download-artifact@v4
id: preview-build-artifact
with:
name: preview-build
path: build
github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }}
- name: Deploy to Cloudflare Pages
uses: AdrianGonz97/refined-cf-pages-action@v1
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
accountId: ${{ secrets.CF_ACCOUNT_ID }}
githubToken: ${{ secrets.GITHUB_TOKEN }}
projectName: templates
deploymentName: Preview
directory: ${{ steps.preview-build-artifact.outputs.download-path }}