Skip to content

Netlify Deploy

Netlify Deploy #9

Workflow file for this run

name: Netlify Deploy
on:
pull_request:
branches:
- main
types: [closed]
workflow_dispatch:
jobs:
build-and-deploy:
runs-on: ubuntu-latest
environment: michaelkennedy
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Node Init
uses: actions/setup-node@v4
with:
node-version: 22
- name: Install Netlify
run: |
npm install netlify-cli -g \
npm install @netlify/plugin-nextjs -g
- name: Create Production Env File
uses: tmshkr/handle-env@v1.2
if: ${{ github.ref_name == 'main' }}
with:
env: |
NEXT_PUBLIC_DB_ENV='production'
NEXT_PUBLIC_CACHE_TTL=${{ vars.NEXT_PUBLIC_CACHE_TTL }}
NEXT_PUBLIC_FIREBASE_API_KEY=${{ vars.NEXT_PUBLIC_FIREBASE_API_KEY }}
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=${{ vars.NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN }}
NEXT_PUBLIC_FIREBASE_PROJECT_ID=${{ vars.NEXT_PUBLIC_FIREBASE_PROJECT_ID }}
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=${{ vars.NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET }}
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=${{ vars.NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID }}
NEXT_PUBLIC_FIREBASE_APP_ID=${{ vars.NEXT_PUBLIC_FIREBASE_APP_ID }}
NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID=${{ vars.NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID }}
- name: Install Dependencies
run: npm ci
- name: Deploy to Netlify Production
if: ${{ success() && github.ref_name == 'main' }}
run: |
netlify deploy --build \
--site ${{ secrets.NETLIFY_SITE_ID }} \
--auth ${{ secrets.NETLIFY_DEPLOY_KEY }} \
--message "${{ github.event.pull_request.title }}" \
--prod