Skip to content

Commit

Permalink
build(database): target the pr branch when applying migrations
Browse files Browse the repository at this point in the history
  • Loading branch information
tericcabrel committed Jun 23, 2024
1 parent 99786a5 commit 51dbbb2
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 26 deletions.
11 changes: 11 additions & 0 deletions .github/workflows/migration-db-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,17 @@ jobs:
- name: Setup pscale
uses: planetscale/setup-pscale-action@v1

- name: Get the deploy request number in development branch
run: |
DEV_DEPLOY_REQUEST_NUMBER=$(pscale deploy-request list ${{ secrets.PLANETSCALE_DATABASE_NAME }} --org ${{ secrets.PLANETSCALE_ORG_NAME }} -f json | jq -r '.[] | select(.into_branch == "dev" and .state == "open") | .number')
if [ -z "$DEV_DEPLOY_REQUEST_NUMBER" ]; then
echo "No open deploy request found in the development branch."
exit 1
fi
echo "The deploy request number in the development branch is $DEV_DEPLOY_REQUEST_NUMBER"
echo "DEV_DEPLOY_REQUEST_NUMBER=$DEV_DEPLOY_REQUEST_NUMBER" >> $GITHUB_ENV
- name: Set database branch name
run: echo "PSCALE_BRANCH_NAME=$(echo ${{ github.head_ref }} | tr -cd '[:alnum:]-'| tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV

Expand Down
32 changes: 8 additions & 24 deletions .github/workflows/migration-db-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,13 @@ on:
- 'main'
paths:
- 'packages/domain/prisma/migrations/**'
pull_request:
branches:
- 'main'
paths:
- 'packages/domain/prisma/migrations/**'

env:
PLANETSCALE_SERVICE_TOKEN_ID: ${{ secrets.PLANETSCALE_SERVICE_TOKEN_ID }}
PLANETSCALE_SERVICE_TOKEN: ${{ secrets.PLANETSCALE_SERVICE_TOKEN }}

jobs:
print-branch-name:
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request.merged == true)
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Print pull request branch
if: github.event_name == 'pull_request'
run: |
echo "Pull Request Branch: ${{ github.event.pull_request.head.ref }}"
apply-migration:
# run only the push event on the main branch
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand All @@ -40,18 +21,21 @@ jobs:

- name: Set database branch name
run: |
echo "Name 1: ${{ github.ref }}"
echo "Name 2: ${{ github.ref_name }}"
echo "Name 3: ${{ github.ref_type }}"
echo "Name 4: ${{ github }}"
echo "PSCALE_BRANCH_NAME=$(echo ${{ github.event.pull_request.base.ref }} | tr -cd '[:alnum:]-'| tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
- name: Get the deploy request number in development branch
run: |
DEV_DEPLOY_REQUEST_NUMBER=$(pscale deploy-request show ${{ secrets.PLANETSCALE_DATABASE_NAME }} ${{ env.PSCALE_BRANCH_NAME }} --org ${{ secrets.PLANETSCALE_ORG_NAME }} -f json | jq -r '.number')
DEV_DEPLOY_REQUEST_NUMBER=$(pscale deploy-request list ${{ secrets.PLANETSCALE_DATABASE_NAME }} --org ${{ secrets.PLANETSCALE_ORG_NAME }} -f json | jq -r '.[] | select(.into_branch == "dev" and .state == "open") | .number')
if [ -z "$DEV_DEPLOY_REQUEST_NUMBER" ]; then
echo "No open deploy request found in the development branch."
exit 1
fi
echo "DEV_DEPLOY_REQUEST_NUMBER=$DEV_DEPLOY_REQUEST_NUMBER" >> $GITHUB_ENV
- name: Check deployment state
if: ${{ env.DEV_DEPLOY_REQUEST_NUMBER != null }}
continue-on-error: false
run: |
for i in {1..10}; do
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
/*
Warnings:
- You are about to drop the column `is_favorite` on the `folders` table. All the data in the column will be lost.
*/
-- DropIndex
DROP INDEX `folders_is_favorite_idx` ON `folders`;
Expand Down

0 comments on commit 51dbbb2

Please sign in to comment.