Skip to content

Migration workflow

Migration workflow #1

on:
push:
branches:
- master
# paths:
# - 'server/database/migrations/**'
pull_request:
branches:
- master
# paths:
# - 'server/database/migrations/**'
jobs:
database-migration-staging:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
environment: production
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20.17.0
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run database migration
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
run: npm run db:migrate
database-migration-production:
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
environment: staging
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20.17.0
cache: 'npm'
- name: Install dependencies
run: npm ci
- name: Run database migration
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
run: npm run db:migrate