1
1
name : examples
2
2
on : [push]
3
3
jobs :
4
- bun :
4
+ bun-mysql :
5
5
runs-on : ubuntu-latest
6
6
strategy :
7
7
matrix :
8
8
include :
9
9
- dir : " examples/bun-mysql2"
10
10
qs : " mysql"
11
+ steps :
12
+ - uses : actions/checkout@v4
13
+ - uses : sqlc-dev/setup-sqlc@v4
14
+ with :
15
+ sqlc-version : ' 1.24.0'
16
+ - uses : oven-sh/setup-bun@v1
17
+ with :
18
+ bun-version : latest
19
+ - uses : shogo82148/actions-setup-mysql@v1
20
+ with :
21
+ mysql-version : " 8.1"
22
+ - run : bun install
23
+ working-directory : ${{ matrix.dir }}
24
+ - run : mysql --user="root" --database="mysql" < schema.sql
25
+ working-directory : examples/authors/mysql
26
+ - run : bun run src/main.ts
27
+ working-directory : ${{ matrix.dir }}
28
+ env :
29
+ DATABASE_URL : mysql://root:@localhost:3306/mysql
30
+
31
+ bun-postgresql :
32
+ runs-on : ubuntu-latest
33
+ strategy :
34
+ matrix :
35
+ include :
11
36
- dir : " examples/bun-postgres"
12
37
qs : " postgresql"
13
38
- dir : " examples/bun-pg"
@@ -20,21 +45,53 @@ jobs:
20
45
- uses : oven-sh/setup-bun@v1
21
46
with :
22
47
bun-version : latest
48
+ - uses : sqlc-dev/action-setup-postgres@master
49
+ with :
50
+ postgres-version : " 16"
51
+ id : postgres
23
52
- run : bun install
24
53
working-directory : ${{ matrix.dir }}
25
- - run : echo "DATABASE_URL=$(sqlc createdb --queryset ${{ matrix.qs }})" >> $GITHUB_ENV
26
- working-directory : examples/authors
54
+ - run : psql -f schema.sql "$DATABASE_URL"
55
+ working-directory : examples/authors/postgresql
27
56
env :
28
- SQLC_AUTH_TOKEN : ${{ secrets.SQLC_AUTH_TOKEN }}
57
+ DATABASE_URL : ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
29
58
- run : bun run src/main.ts
30
59
working-directory : ${{ matrix.dir }}
31
- node :
60
+ env :
61
+ DATABASE_URL : ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
62
+
63
+ node-mysql :
32
64
runs-on : ubuntu-latest
33
65
strategy :
34
66
matrix :
35
67
include :
36
68
- dir : " examples/node-mysql2"
37
69
qs : " mysql"
70
+ steps :
71
+ - uses : actions/checkout@v4
72
+ - uses : sqlc-dev/setup-sqlc@v4
73
+ with :
74
+ sqlc-version : ' 1.24.0'
75
+ - uses : actions/setup-node@v4
76
+ - uses : shogo82148/actions-setup-mysql@v1
77
+ with :
78
+ mysql-version : " 8.1"
79
+ - run : npm install
80
+ working-directory : ${{ matrix.dir }}
81
+ - run : npx tsc
82
+ working-directory : ${{ matrix.dir }}
83
+ - run : mysql --user="root" --database="mysql" < schema.sql
84
+ working-directory : examples/authors/mysql
85
+ - run : node ./src/main.js
86
+ working-directory : ${{ matrix.dir }}
87
+ env :
88
+ DATABASE_URL : mysql://root:@localhost:3306/mysql
89
+
90
+ node-postgresql :
91
+ runs-on : ubuntu-latest
92
+ strategy :
93
+ matrix :
94
+ include :
38
95
- dir : " examples/node-postgres"
39
96
qs : " postgresql"
40
97
- dir : " examples/node-pg"
@@ -45,13 +102,19 @@ jobs:
45
102
with :
46
103
sqlc-version : ' 1.24.0'
47
104
- uses : actions/setup-node@v4
105
+ - uses : sqlc-dev/action-setup-postgres@master
106
+ with :
107
+ postgres-version : " 16"
108
+ id : postgres
48
109
- run : npm install
49
110
working-directory : ${{ matrix.dir }}
50
111
- run : npx tsc
51
112
working-directory : ${{ matrix.dir }}
52
- - run : echo "DATABASE_URL=$(sqlc createdb --queryset ${{ matrix.qs }})" >> $GITHUB_ENV
53
- working-directory : examples/authors
113
+ - run : psql -f schema.sql "$DATABASE_URL"
114
+ working-directory : examples/authors/postgresql
54
115
env :
55
- SQLC_AUTH_TOKEN : ${{ secrets.SQLC_AUTH_TOKEN }}
116
+ DATABASE_URL : ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
56
117
- run : node ./src/main.js
57
- working-directory : ${{ matrix.dir }}
118
+ working-directory : ${{ matrix.dir }}
119
+ env :
120
+ DATABASE_URL : ${{ steps.postgres.outputs.connection-uri }}?sslmode=disable
0 commit comments