Skip to content

Commit 396f28d

Browse files
committed
Merge branch 'fix/flaky-tests-and-ci'
2 parents ec8d9db + 22f0feb commit 396f28d

File tree

5 files changed

+212
-11
lines changed

5 files changed

+212
-11
lines changed

.github/workflows/test.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Test
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
test:
7+
runs-on: ubuntu-latest
8+
9+
steps:
10+
- uses: actions/checkout@v4
11+
12+
- uses: pnpm/action-setup@v4
13+
14+
- uses: actions/setup-node@v4
15+
with:
16+
node-version: 20
17+
cache: 'pnpm'
18+
19+
- name: Install dependencies
20+
run: pnpm install
21+
22+
- name: Start test databases
23+
run: docker compose up -d --wait
24+
25+
- name: Wait for LibSQL
26+
run: pnpx wait-on http://localhost:8080/health
27+
28+
- name: Run tests
29+
run: pnpm test
30+
31+
- name: Stop databases
32+
if: always()
33+
run: docker compose down -v

docker-compose.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
version: '3.9'
2-
31
services:
42
kysely_codegen_adminer:
53
container_name: kysely_codegen_adminer
@@ -24,6 +22,12 @@ services:
2422
ports:
2523
- 3306:3306
2624
restart: always
25+
healthcheck:
26+
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "user", "-ppassword"]
27+
interval: 2s
28+
timeout: 10s
29+
retries: 10
30+
start_period: 10s
2731
kysely_codegen_postgres:
2832
container_name: kysely_codegen_postgres
2933
environment:
@@ -34,3 +38,9 @@ services:
3438
ports:
3539
- 5433:5432
3640
restart: always
41+
healthcheck:
42+
test: ["CMD-SHELL", "pg_isready -U user -d database"]
43+
interval: 2s
44+
timeout: 5s
45+
retries: 5
46+
start_period: 5s

package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@
2828
"ci:test": "pnpm test",
2929
"ci:unused": "knip",
3030
"dev": "tsx watch ./src/cli/bin.ts",
31-
"docker:up": "docker-compose up -d",
31+
"docker:up": "docker compose up -d --wait",
32+
"docker:wait": "wait-on tcp:5433 tcp:3306 http://localhost:8080/health",
3233
"fix": "run-s fix:*",
3334
"fix:eslint": "eslint --fix src",
3435
"fix:prettier": "prettier --write src",
@@ -97,7 +98,8 @@
9798
"ts-dedent": "^2.2.0",
9899
"tsx": "^4.20.5",
99100
"typescript": "^5.9.2",
100-
"vitest": "^3.2.4"
101+
"vitest": "^3.2.4",
102+
"wait-on": "^9.0.1"
101103
},
102104
"peerDependencies": {
103105
"@libsql/kysely-libsql": ">=0.3.0 <0.5.0",

0 commit comments

Comments
 (0)