Merge pull request #22 from Dokploy/fix/ci/cd

refactor: update build preview workflow for clarity and efficiency
This commit is contained in:
Mauricio Siu
2025-03-16 12:36:56 -06:00
committed by GitHub
2 changed files with 58 additions and 42 deletions

View File

@@ -1,31 +1,24 @@
name: "Build and Deploy Preview" name: Build Preview Deployment
concurrency:
group: ${{ github.workflow }}-${{ github.event.number || github.sha }}
cancel-in-progress: true
on: on:
pull_request: pull_request:
types: [opened, synchronize] types: [opened, synchronize]
jobs: jobs:
build-and-deploy: build-preview:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build and Deploy Preview
permissions:
contents: read
actions: write
pull-requests: write
deployments: write
steps: steps:
- name: Checkout - uses: actions/checkout@v4
uses: actions/checkout@v4 - uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Setup pnpm
uses: pnpm/action-setup@v2
with: with:
version: 8 version: 8
- uses: actions/setup-node@v4
with:
node-version: 20
- name: Install dependencies - name: Install dependencies
working-directory: app working-directory: app
@@ -34,32 +27,18 @@ jobs:
- name: Build - name: Build
working-directory: app working-directory: app
run: pnpm build run: pnpm build
# - name: Deploy to Cloudflare Pages
- name: List build output # uses: AdrianGonz97/refined-cf-pages-action@v1
run: ls -la app/dist # with:
# apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
- name: Deploy to Cloudflare Pages # accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
uses: AdrianGonz97/refined-cf-pages-action@v1 # githubToken: ${{ secrets.GITHUB_TOKEN }}
with: # projectName: ${{ secrets.CLOUDFLARE_PROJECT_NAME }}
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} # deploymentName: Preview
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} # directory: app/dist
githubToken: ${{ secrets.GITHUB_TOKEN }}
projectName: ${{ secrets.CLOUDFLARE_PROJECT_NAME }}
deploymentName: Preview
directory: app/dist
- name: Upload build artifact - name: Upload build artifact
id: upload-artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: preview-build name: preview-build
path: app/dist path: app/dist
retention-days: 1
- name: Verify artifact upload
run: |
echo "Artifact upload completed"
echo "Workflow ID: ${{ github.run_id }}"
echo "Repository: ${{ github.repository }}"
echo "Event name: ${{ github.event_name }}"
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.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
githubToken: ${{ secrets.GITHUB_TOKEN }}
projectName: templates
deploymentName: Preview
directory: ${{ steps.preview-build-artifact.outputs.download-path }}