Skip to content

v0.0.6

v0.0.6 #25

Workflow file for this run

name: Build and Deploy to Vercel
on:
release:
types: [published]
jobs:
build:
name: Build Application
uses: ./.github/workflows/build-reusable.yml
secrets:
NEXT_PUBLIC_CONVEX_URL: ${{ secrets.NEXT_PUBLIC_CONVEX_URL }}
CONVEX_DEPLOYMENT: ${{ secrets.CONVEX_DEPLOYMENT }}
CLERK_SECRET_KEY: ${{ secrets.CLERK_SECRET_KEY }}
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY: ${{ secrets.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY }}
LIVE_BLOCK_SECRET_API_KEY: ${{ secrets.LIVE_BLOCK_SECRET_API_KEY }}
deploy:
name: Deploy Application to Vercel
runs-on: ubuntu-latest
needs: build
steps:
- name: Checkout Code
uses: actions/checkout@v4
# Download build artifacts from previous job
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: build-output
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install pnpm
uses: pnpm/action-setup@v2
with:
version: 8
run_install: false
# Create the .env file in the deploy job
- name: Set up environment variables
run: |
# Create .env file
touch .env
# Add Convex specific variables
echo "NEXT_PUBLIC_CONVEX_URL=${{ secrets.NEXT_PUBLIC_CONVEX_URL }}" >> .env
echo "CONVEX_DEPLOYMENT=${{ secrets.CONVEX_DEPLOYMENT }}" >> .env
# Add other public and private environment variables
echo "CLERK_SECRET_KEY=${{ secrets.CLERK_SECRET_KEY }}" >> .env
echo "NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=${{ secrets.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY }}" >> .env
# Liveblocks secret key:
echo "LIVE_BLOCK_SECRET_API_KEY=${{secrets.LIVE_BLOCK_SECRET_API_KEY}}" >> .env
# Install Vercel CLI
- name: Install Vercel CLI
run: npm install --global vercel@latest
# Deploy to Vercel (using env vars directly)
- name: Deploy to Vercel Production
run: vercel --token ${{ secrets.VERCEL_TOKEN }} --prod --confirm
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
NEXT_PUBLIC_CONVEX_URL: ${{ secrets.NEXT_PUBLIC_CONVEX_URL }}
CONVEX_DEPLOYMENT: ${{ secrets.CONVEX_DEPLOYMENT }}
CLERK_SECRET_KEY: ${{ secrets.CLERK_SECRET_KEY }}
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY: ${{ secrets.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY }}
LIVE_BLOCK_SECRET_API_KEY: ${{ secrets.LIVE_BLOCK_SECRET_API_KEY }}