This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy to Supabase on PR | |
on: pull_request | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Set up Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18' # Ensure compatibility with Supabase CLI | |
- name: Install dependencies | |
run: npm install | |
- name: Install Supabase CLI locally | |
run: npm install supabase | |
- name: Authenticate Supabase CLI | |
run: npx supabase login --token "${{ secrets.SUPABASE_ACCESS_TOKEN }}" | |
- name: Link Supabase Project | |
run: npx supabase link --project-ref "${{ secrets.SUPABASE_PROJECT_REF }}" --password "${{ secrets.SUPABASE_DB_PWD }}" | |
- name: Deploy migrations | |
run: npx supabase db push --password "${{ secrets.SUPABASE_DB_PWD }}" --include-all | |
- name: Deploy Edge Functions | |
run: | | |
if [ -d "supabase/functions" ] && [ "$(ls -A supabase/functions)" ]; then | |
npx supabase functions deploy | |
else | |
echo "No functions to deploy." | |
fi |