Skip to content

Deploy to Cloudflare Pages #8

Deploy to Cloudflare Pages

Deploy to Cloudflare Pages #8

Workflow file for this run

name: Deploy to Cloudflare Pages
on:
# push:
# branches: ["dev-v1"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
inputs:
DEPLOYMENT_ENVIRONMENT:
description: 'Deployment environment'
required: true
type: choice
options:
- preview
- production
default: 'production'
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
CLOUDFLARE_PROJECT_NAME: ${{ secrets.CLOUDFLARE_PROJECT_NAME }}
R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
R2_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}
R2_PUBLIC_BUCKET: ${{ secrets.R2_PUBLIC_BUCKET || secrets.CLOUDFLARE_PROJECT_NAME }}
D1_DATABASE_NAME: ${{ secrets.D1_DATABASE_NAME }}
DEPLOYMENT_ENVIRONMENT: ${{ inputs.DEPLOYMENT_ENVIRONMENT }}
PRODUCTION_BRANCH: main
jobs:
deploy:
runs-on: ubuntu-latest
environment:
name: ${{ github.event.inputs.DEPLOYMENT_ENVIRONMENT }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: 18.x
cache: 'yarn'
- name: Setup
run: yarn setup:production
- name: Deploy to Cloudflare Pages [${{ inputs.DEPLOYMENT_ENVIRONMENT }}]
run: yarn deploy:github