Skip to content

Commit 5118e16

Browse files
committed
Add db migration checks to GHA workflow
1 parent b9a3589 commit 5118e16

File tree

3 files changed

+36
-9
lines changed

3 files changed

+36
-9
lines changed

.github/workflows/database-migrations.yml

+31-5
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@ name: Database Migrations
33
on:
44
push:
55
branches:
6-
- main
6+
- '*'
7+
paths:
8+
- 'packages/schema/**'
9+
pull_request:
710
paths:
811
- 'packages/schema/**'
912
workflow_dispatch:
@@ -14,6 +17,29 @@ permissions:
1417
packages: read
1518

1619
jobs:
20+
check-migrations:
21+
name: Check migrations
22+
runs-on: ubuntu-latest
23+
24+
steps:
25+
- uses: actions/checkout@v4
26+
- uses: pnpm/action-setup@v4
27+
with:
28+
version: 8
29+
- uses: actions/setup-node@v4
30+
with:
31+
node-version: '20'
32+
cache: "pnpm"
33+
34+
- name: Install dependencies
35+
run: pnpm install
36+
37+
- name: Lint or check migrations
38+
working-directory: ./packages/schema
39+
run: pnpm migrate:check
40+
env:
41+
DATABASE_URL: ${{ secrets.DATABASE_URL }}
42+
1743
apply-migrations:
1844
name: Apply migrations
1945
runs-on: ubuntu-latest
@@ -27,18 +53,18 @@ jobs:
2753
with:
2854
node-version: '20'
2955
cache: "pnpm"
30-
56+
3157
- name: Install dependencies
3258
run: pnpm install
33-
59+
3460
- uses: aws-actions/configure-aws-credentials@v4
3561
with:
3662
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
3763
aws-region: ${{ vars.AWS_REGION }}
3864
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
39-
65+
4066
- name: Run migrations
4167
working-directory: ./packages/schema
4268
run: pnpm migrate
4369
env:
44-
DATABASE_URL: ${{ secrets.DATABASE_URL }}
70+
DATABASE_URL: ${{ secrets.DATABASE_URL }}

packages/schema/migrations/0001_narrow_molly_hayes.sql

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@ CREATE TABLE IF NOT EXISTS "coe_pqp" (
55
"pqp" integer
66
);
77
--> statement-breakpoint
8-
CREATE INDEX "pqp_month_vehicle_class_idx" ON "coe_pqp" USING btree ("month","vehicle_class");--> statement-breakpoint
9-
CREATE INDEX "pqp_vehicle_class_idx" ON "coe_pqp" USING btree ("vehicle_class");--> statement-breakpoint
10-
CREATE INDEX "pqp_idx" ON "coe_pqp" USING btree ("pqp");
8+
CREATE INDEX IF NOT EXISTS "pqp_month_vehicle_class_idx" ON "coe_pqp" USING btree ("month","vehicle_class");--> statement-breakpoint
9+
CREATE INDEX IF NOT EXISTS "pqp_vehicle_class_idx" ON "coe_pqp" USING btree ("vehicle_class");--> statement-breakpoint
10+
CREATE INDEX IF NOT EXISTS "pqp_idx" ON "coe_pqp" USING btree ("pqp");

packages/schema/package.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
"private": true,
55
"main": "src/index.ts",
66
"scripts": {
7-
"migrate": "drizzle-kit migrate"
7+
"migrate": "drizzle-kit migrate",
8+
"migrate:check": "drizzle-kit check"
89
},
910
"author": "Ru Chern Chong <[email protected]>",
1011
"license": "MIT",

0 commit comments

Comments
 (0)