super-productivity/.github/workflows/pr-preview-deploy.yml
Johannes Millan 70aae24449 fix(sync): defer ImmediateUploadService initialization until data loads
Prevents race condition where upload attempts happen before sync config
is loaded from IndexedDB, eliminating 404 errors to default baseUrl
during app startup and E2E tests.
2026-01-22 17:33:17 +01:00

78 lines
2.4 KiB
YAML

name: PR Preview Deploy
on:
pull_request:
types: [opened, synchronize, reopened]
permissions:
contents: read
pull-requests: write
deployments: write
jobs:
deploy-preview:
runs-on: ubuntu-latest
env:
UNSPLASH_KEY: ${{ secrets.UNSPLASH_KEY }}
UNSPLASH_CLIENT_ID: ${{ secrets.UNSPLASH_CLIENT_ID }}
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
# work around for npm installs from git+https://github.com/johannesjo/J2M.git
- name: Reconfigure git to use HTTP authentication
run: >
git config --global url."https://github.com/".insteadOf
ssh://git@github.com/
- name: Install npm Packages
run: npm i
- name: Generate environment file
run: npm run env
- name: Build Frontend for Web
run: npm run buildFrontend:prodWeb
- name: Deploy to Cloudflare Pages
id: cloudflare-deploy
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
command: pages deploy dist/browser --project-name=super-productivity-preview --branch=${{ github.head_ref }}
- name: Find existing comment
uses: peter-evans/find-comment@b30e6a3c0ed37e7c023ccd3f1db5c6c0b0c23aad # v4.0.0
id: find-comment
with:
issue-number: ${{ github.event.pull_request.number }}
comment-author: 'github-actions[bot]'
body-includes: '<!-- pr-preview-comment -->'
- name: Create or update PR comment
uses: peter-evans/create-or-update-comment@e8674b075228eee787fea43ef493e45ece1004c9 # v5.0.0
with:
comment-id: ${{ steps.find-comment.outputs.comment-id }}
issue-number: ${{ github.event.pull_request.number }}
edit-mode: replace
body: |
<!-- pr-preview-comment -->
## Preview Deployment
| Status | URL |
|--------|-----|
| Deployed | ${{ steps.cloudflare-deploy.outputs.deployment-url }} |
**Branch:** `${{ github.head_ref }}`
**Commit:** ${{ github.sha }}
---
<sub>Deployed with Cloudflare Pages</sub>