57 lines
2.1 KiB
YAML
57 lines
2.1 KiB
YAML
name: Deploy to Cloudflare Pages
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout Code
|
|
uses: actions/checkout@v4
|
|
|
|
- uses: oven-sh/setup-bun@v2
|
|
|
|
# Optional: Add your build steps here if your project needs compilation
|
|
- name: Install Dependencies & Build
|
|
run: |
|
|
echo "VITE_GEMINI_API_KEY=${{ secrets.VITE_GEMINI_API_KEY }}" >> .env
|
|
echo "GEMINI_API_KEY=${{ secrets.VITE_GEMINI_API_KEY }}" >> .env
|
|
echo "GUIDE_JOB_SECRET=${{ secrets.GUIDE_JOB_SECRET }}" >> .env
|
|
bun i --frozen-lockfile
|
|
bun run build
|
|
|
|
- name: Configure Pages Secrets
|
|
run: |
|
|
printf '%s' "$GEMINI_API_KEY" | bunx wrangler pages secret put GEMINI_API_KEY --project-name=hotfridge
|
|
printf '%s' "$GUIDE_JOB_SECRET" | bunx wrangler pages secret put GUIDE_JOB_SECRET --project-name=hotfridge
|
|
env:
|
|
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
|
|
GEMINI_API_KEY: ${{ secrets.VITE_GEMINI_API_KEY }}
|
|
GUIDE_JOB_SECRET: ${{ secrets.GUIDE_JOB_SECRET }}
|
|
|
|
- name: Deploy to Cloudflare Pages
|
|
uses: cloudflare/wrangler-action@v3
|
|
with:
|
|
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
|
|
command: pages deploy .svelte-kit/cloudflare --project-name=hotfridge
|
|
|
|
- name: Deploy Recommendation Workflow
|
|
uses: cloudflare/wrangler-action@v3
|
|
with:
|
|
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
|
|
command: deploy --config wrangler.workflow.jsonc
|
|
|
|
- name: Configure Recommendation Workflow Secret
|
|
run: |
|
|
printf '%s' "$GUIDE_JOB_SECRET" | bunx wrangler secret put GUIDE_JOB_SECRET --config wrangler.workflow.jsonc
|
|
env:
|
|
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
|
|
GUIDE_JOB_SECRET: ${{ secrets.GUIDE_JOB_SECRET }}
|