tangled
alpha
login
or
join now
linkat.blue
/
linkat
6
fork
atom
Create your Link in Bio for Bluesky
6
fork
atom
overview
issues
pulls
pipelines
開発用コマンド整理 (#9)
authored by
mkizka.dev
and committed by
GitHub
1 year ago
3a75cec3
b6606f84
+26
-13
8 changed files
expand all
collapse all
unified
split
.gitignore
compose.yaml
package.json
playwright.config.ts
scripts
dev.sh
setup-dev.sh
setup-test.sh
vitest
global-setup.ts
+1
.gitignore
···
10
10
generated/
11
11
atproto/
12
12
lexicons/com/
13
13
+
nohup.out
13
14
14
15
# playwright
15
16
playwright-report/
-4
compose.yaml
···
1
1
volumes:
2
2
db_data:
3
3
-
jetstream_data:
4
3
5
4
services:
6
5
db:
···
20
19
image: ghcr.io/bluesky-social/jetstream:sha-011b545
21
20
restart: always
22
21
network_mode: host
23
23
-
volumes:
24
24
-
- jetstream_data:/data
25
22
environment:
26
23
- JETSTREAM_WS_URL=ws://localhost:2583/xrpc/com.atproto.sync.subscribeRepos
27
24
- JETSTREAM_WORKER_COUNT=1
28
28
-
- JETSTREAM_DATA_DIR=/data
+3
-6
package.json
···
12
12
"build": "run-p -s build:*",
13
13
"build:remix": "remix vite:build",
14
14
"build:server": "node ./scripts/build-server.js",
15
15
-
"dev": "pnpm setup-dev && pnpm run-p -l dev:*",
16
16
-
"dev:atproto": "cd atproto && make run-dev-env",
17
17
-
"dev:prisma": "prisma studio --browser none",
18
18
-
"dev:remix": "NODE_ENV=development tsx watch --ignore vite.config.ts.* --env-file .env ./app/server.ts",
15
15
+
"dev": "./scripts/dev.sh",
16
16
+
"dev-atproto": "cd atproto && make run-dev-env",
19
17
"e2e": "playwright test",
20
18
"format": "pnpm _eslint --fix && prettier . --write",
21
19
"lint": "pnpm _eslint && prettier . --check",
···
23
21
"prepare": "husky",
24
22
"setup-dev": "./scripts/setup-dev.sh",
25
23
"start": "NODE_ENV=production node ./dist/server.js",
26
26
-
"start:e2e": "pnpm run-p -l dev:atproto start:local",
27
27
-
"start:local": "wait-on http-get://localhost:2583 && NODE_ENV=development E2E=1 tsx --env-file .env ./app/server.ts",
24
24
+
"start:local": "NODE_ENV=development E2E=1 node --env-file .env ./dist/server.js",
28
25
"test": "vitest",
29
26
"typecheck": "tsc"
30
27
},
+1
-1
playwright.config.ts
···
41
41
},
42
42
],
43
43
webServer: {
44
44
-
command: "pnpm start:e2e",
44
44
+
command: "pnpm start:local",
45
45
port: 3000,
46
46
stdout: "pipe",
47
47
reuseExistingServer: !process.env.CI,
+5
scripts/dev.sh
···
1
1
+
#!/usr/bin/env bash
2
2
+
set -euo pipefail
3
3
+
4
4
+
source ./scripts/setup-dev.sh
5
5
+
NODE_ENV=development tsx watch --ignore vite.config.ts.* --env-file .env ./app/server.ts
+15
-1
scripts/setup-dev.sh
···
1
1
#!/usr/bin/env bash
2
2
set -euo pipefail
3
3
4
4
+
# 1. Setup atproto dev server
4
5
if [ ! -d ./atproto/node_modules ]; then
5
6
cd atproto
6
7
make deps
···
8
9
cd ..
9
10
fi
10
11
11
11
-
docker compose up -d --wait
12
12
+
# 2. Start atproto dev server
13
13
+
nohup pnpm dev-atproto &
14
14
+
pid=$!
15
15
+
echo "Started atproto dev server with pid $pid"
16
16
+
trap "
17
17
+
echo
18
18
+
echo 'kill -STOP $pid && docker compose down'
19
19
+
kill $pid
20
20
+
docker compose down
21
21
+
exit
22
22
+
" SIGINT SIGTERM
23
23
+
24
24
+
# 3. Setup database and jetstream
25
25
+
pnpm wait-on tcp:2583 && docker compose up -d --wait
12
26
pnpm prisma db push --skip-generate
scripts/setup-for-test.sh
scripts/setup-test.sh
+1
-1
vitest/global-setup.ts
···
1
1
import { execSync } from "child_process";
2
2
3
3
const globalSetup = () => {
4
4
-
execSync("./scripts/setup-for-test.sh", { stdio: "inherit" });
4
4
+
execSync("./scripts/setup-test.sh", { stdio: "inherit" });
5
5
};
6
6
7
7
export default globalSetup;