buncargo 1.0.26 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin.d.ts +1 -12
- package/dist/bin.js +261 -252
- package/dist/cli/bin.d.ts +13 -0
- package/dist/cli/bin.js +315 -0
- package/dist/cli/commands/help.d.ts +1 -0
- package/dist/cli/commands/runtime.d.ts +5 -0
- package/dist/cli/commands/version.d.ts +1 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +14 -0
- package/dist/cli/run-cli.d.ts +22 -0
- package/dist/cli.d.ts +1 -22
- package/dist/cli.js +5 -13
- package/dist/config/config.d.ts +1 -0
- package/dist/config/define-config.d.ts +13 -0
- package/dist/config/index.d.ts +3 -0
- package/dist/config/index.js +15 -0
- package/dist/config/merge-configs.d.ts +3 -0
- package/dist/config/validate-config.d.ts +3 -0
- package/dist/config.d.ts +1 -72
- package/dist/config.js +12 -12
- package/dist/core/docker.d.ts +1 -74
- package/dist/core/docker.js +35 -26
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.js +123 -108
- package/dist/core/network.js +2 -2
- package/dist/core/ports.d.ts +22 -0
- package/dist/core/ports.js +5 -1
- package/dist/core/process.js +1 -1
- package/dist/core/tunnel.d.ts +33 -0
- package/dist/core/utils.js +2 -2
- package/dist/core/watchdog-runner.js +45 -42
- package/dist/core/watchdog.d.ts +1 -0
- package/dist/core/watchdog.js +4 -2
- package/dist/docker/index.d.ts +1 -0
- package/dist/docker/index.js +38 -0
- package/dist/docker/runtime.d.ts +87 -0
- package/dist/docker/runtime.js +37 -0
- package/dist/docker-compose/compose.d.ts +1 -0
- package/dist/docker-compose/generated-file.d.ts +7 -0
- package/dist/docker-compose/index.d.ts +3 -0
- package/dist/docker-compose/index.js +15 -0
- package/dist/docker-compose/model.d.ts +6 -0
- package/dist/docker-compose/services/clickhouse.d.ts +16 -0
- package/dist/docker-compose/services/define-docker-service.d.ts +41 -0
- package/dist/docker-compose/services/index.d.ts +23 -0
- package/dist/docker-compose/services/index.js +17 -0
- package/dist/docker-compose/services/postgres.d.ts +12 -0
- package/dist/docker-compose/services/redis.d.ts +12 -0
- package/dist/docker-compose/services/shared.d.ts +7 -0
- package/dist/docker-compose/yaml.d.ts +2 -0
- package/dist/environment/create-dev-environment.d.ts +23 -0
- package/dist/environment/index.d.ts +1 -0
- package/dist/environment/index.js +15 -0
- package/dist/environment/logging.d.ts +17 -0
- package/dist/environment/seeding.d.ts +9 -0
- package/dist/environment.d.ts +1 -23
- package/dist/environment.js +12 -14
- package/dist/index-045jksh5.js +147 -0
- package/dist/index-08wa79cs.js +125 -117
- package/dist/index-0kxnae3z.js +335 -0
- package/dist/index-1mdrf7nz.js +66 -0
- package/dist/index-1yvbwj4k.js +262 -242
- package/dist/index-23ev345g.js +475 -0
- package/dist/index-2ckr49sf.js +228 -0
- package/dist/index-2f47khe5.js +376 -369
- package/dist/index-2fr3g85b.js +220 -183
- package/dist/index-38xnzpa6.js +450 -0
- package/dist/index-3h3dhtf2.js +51 -43
- package/dist/index-42x95209.js +51 -43
- package/dist/index-4gp0az1g.js +145 -0
- package/dist/index-4xrxh8yv.js +72 -0
- package/dist/index-5gmws6ah.js +181 -0
- package/dist/index-5hka0tff.js +78 -76
- package/dist/index-5rfqps4b.js +3 -0
- package/dist/index-5t9jxqm0.js +428 -0
- package/dist/index-6c1w1xk5.js +101 -0
- package/dist/index-6fm7mvwj.js +118 -97
- package/dist/index-6srpc523.js +127 -128
- package/dist/index-731rzzfp.js +187 -0
- package/dist/index-75y4cg2z.js +51 -43
- package/dist/index-7ja4ywyj.js +126 -127
- package/dist/index-8bw1cmz4.js +531 -0
- package/dist/index-8hbbj1mp.js +120 -121
- package/dist/index-8xj2p5n5.js +145 -0
- package/dist/index-bj79tw5w.js +0 -0
- package/dist/index-bnk6nr0g.js +73 -0
- package/dist/index-brbbzyks.js +72 -0
- package/dist/index-c0dr6mcv.js +123 -0
- package/dist/index-cty0bcry.js +235 -218
- package/dist/index-d8tyv5se.js +228 -0
- package/dist/index-d9efy0n4.js +176 -150
- package/dist/index-etfmqjjf.js +427 -0
- package/dist/index-fb29934k.js +172 -0
- package/dist/index-g50jw1yf.js +72 -0
- package/dist/index-g6eb5wdw.js +118 -117
- package/dist/index-ggq3yryx.js +99 -95
- package/dist/index-h70tce00.js +177 -0
- package/dist/index-hkxtfqtc.js +333 -0
- package/dist/index-kf3dhser.js +146 -143
- package/dist/index-ma6tgdb2.js +500 -0
- package/dist/index-mam0bcyz.js +123 -0
- package/dist/index-mm412dkp.js +274 -0
- package/dist/index-n8v18aeb.js +0 -0
- package/dist/index-ndnmnsej.js +378 -371
- package/dist/index-p8wty0e2.js +389 -379
- package/dist/index-qfphr2fd.js +100 -0
- package/dist/index-qqmms8rs.js +51 -43
- package/dist/index-qw4093g2.js +51 -43
- package/dist/index-qzwpzjbx.js +121 -122
- package/dist/index-segbnm0h.js +146 -143
- package/dist/index-t0fj6gg1.js +112 -0
- package/dist/index-thdkwnv7.js +122 -0
- package/dist/index-tjbx2r2t.js +270 -0
- package/dist/index-tjqw9vtj.js +62 -54
- package/dist/index-vbpb89jy.js +248 -0
- package/dist/index-vhs88xhe.js +99 -95
- package/dist/index-w8zxnjka.js +249 -0
- package/dist/index-wk2na3t9.js +404 -0
- package/dist/index-wz9x8g7z.js +383 -373
- package/dist/index-x249gyde.js +388 -378
- package/dist/index-xkvd0nsd.js +187 -0
- package/dist/index-yedqxm1z.js +80 -0
- package/dist/index-zfjzzjkf.js +266 -0
- package/dist/index.d.ts +12 -8
- package/dist/index.js +66 -35
- package/dist/lint.d.ts +1 -46
- package/dist/lint.js +3 -7
- package/dist/loader/cache.d.ts +4 -0
- package/dist/loader/find-config-file.d.ts +2 -0
- package/dist/loader/index.d.ts +5 -0
- package/dist/loader/index.js +24 -0
- package/dist/loader/load-dev-env.d.ts +5 -0
- package/dist/loader/loader.d.ts +1 -0
- package/dist/loader.d.ts +1 -45
- package/dist/loader.js +22 -20
- package/dist/prisma/index.d.ts +1 -0
- package/dist/prisma/prisma.d.ts +29 -0
- package/dist/prisma.d.ts +1 -29
- package/dist/prisma.js +6 -10
- package/dist/src/bin.js +309 -0
- package/dist/src/cli.js +5 -0
- package/dist/src/config.js +15 -0
- package/dist/src/core/docker.js +38 -0
- package/dist/src/core/index.js +130 -0
- package/dist/src/core/network.js +9 -0
- package/dist/src/core/ports.js +23 -0
- package/dist/src/core/process.js +31 -0
- package/dist/src/core/utils.js +11 -0
- package/dist/src/core/watchdog-runner.js +69 -0
- package/dist/src/core/watchdog.js +28 -0
- package/dist/src/docker/runtime.js +37 -0
- package/dist/src/docker-compose/index.js +16 -0
- package/dist/src/docker-compose/services/index.js +17 -0
- package/dist/src/environment.js +12 -0
- package/dist/src/index.js +122 -0
- package/dist/src/lint.js +3 -0
- package/dist/src/loader.js +25 -0
- package/dist/src/prisma.js +6 -0
- package/dist/src/types.js +0 -0
- package/dist/typecheck/index.d.ts +1 -0
- package/dist/typecheck/index.js +7 -0
- package/dist/typecheck/typecheck.d.ts +46 -0
- package/dist/types/all-types.d.ts +501 -0
- package/dist/types/cli.d.ts +1 -0
- package/dist/types/config.d.ts +6 -0
- package/dist/types/docker.d.ts +15 -0
- package/dist/types/environment.d.ts +8 -0
- package/dist/types/hooks.d.ts +9 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +0 -0
- package/dist/types/prisma.d.ts +1 -0
- package/dist/types.d.ts +1 -393
- package/package.json +145 -140
- package/readme.md +358 -105
- package/src/cli/bin.ts +77 -0
- package/src/cli/commands/help.ts +39 -0
- package/src/cli/commands/runtime.ts +72 -0
- package/src/cli/commands/version.ts +4 -0
- package/src/cli/index.ts +1 -0
- package/{cli.ts → src/cli/run-cli.ts} +95 -6
- package/src/config/define-config.ts +30 -0
- package/src/config/index.ts +3 -0
- package/src/config/merge-configs.ts +33 -0
- package/src/config/validate-config.ts +136 -0
- package/{core → src/core}/index.ts +2 -2
- package/{core → src/core}/ports.ts +68 -1
- package/{core → src/core}/process.ts +6 -2
- package/src/core/tunnel.ts +151 -0
- package/{core → src/core}/utils.ts +1 -0
- package/{core → src/core}/watchdog.ts +5 -1
- package/src/docker/index.ts +1 -0
- package/{core/docker.ts → src/docker/runtime.ts} +40 -4
- package/src/docker-compose/generated-file.ts +45 -0
- package/src/docker-compose/index.ts +7 -0
- package/src/docker-compose/model.ts +197 -0
- package/src/docker-compose/services/clickhouse.ts +79 -0
- package/src/docker-compose/services/define-docker-service.ts +109 -0
- package/src/docker-compose/services/index.ts +67 -0
- package/src/docker-compose/services/postgres.ts +60 -0
- package/src/docker-compose/services/redis.ts +48 -0
- package/src/docker-compose/services/shared.ts +79 -0
- package/src/docker-compose/yaml.ts +88 -0
- package/{environment.ts → src/environment/create-dev-environment.ts} +101 -146
- package/src/environment/index.ts +1 -0
- package/src/environment/logging.ts +101 -0
- package/src/environment/seeding.ts +57 -0
- package/{index.ts → src/index.ts} +49 -15
- package/src/loader/cache.ts +23 -0
- package/src/loader/find-config-file.ts +29 -0
- package/src/loader/index.ts +17 -0
- package/src/loader/load-dev-env.ts +38 -0
- package/src/prisma/index.ts +1 -0
- package/{prisma.ts → src/prisma/prisma.ts} +4 -2
- package/src/typecheck/index.ts +1 -0
- package/{types.ts → src/types/all-types.ts} +137 -6
- package/src/types/index.ts +1 -0
- package/bin.ts +0 -191
- package/config.ts +0 -194
- package/loader.ts +0 -126
- /package/{core → src/core}/network.ts +0 -0
- /package/{core → src/core}/watchdog-runner.ts +0 -0
- /package/{lint.ts → src/typecheck/typecheck.ts} +0 -0
package/dist/bin.d.ts
CHANGED
|
@@ -1,13 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
|
|
3
|
-
* CLI Entry Point for buncargo
|
|
4
|
-
*
|
|
5
|
-
* Usage:
|
|
6
|
-
* bunx buncargo dev # Start containers + dev servers
|
|
7
|
-
* bunx buncargo dev --down # Stop containers
|
|
8
|
-
* bunx buncargo dev --reset # Stop + remove volumes
|
|
9
|
-
* bunx buncargo typecheck # Run TypeScript typecheck
|
|
10
|
-
* bunx buncargo prisma ... # Run prisma commands
|
|
11
|
-
* bunx buncargo help # Show help
|
|
12
|
-
*/
|
|
13
|
-
export {};
|
|
2
|
+
import "./cli/bin";
|
package/dist/bin.js
CHANGED
|
@@ -1,228 +1,163 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import"./index-
|
|
9
|
-
import"./index-
|
|
10
|
-
import"./index-
|
|
11
|
-
import"./index-
|
|
12
|
-
import"./index-
|
|
13
|
-
import"./index-
|
|
14
|
-
import"./index-
|
|
15
|
-
import"./index-08wa79cs.js";
|
|
16
|
-
import {
|
|
17
|
-
__commonJS,
|
|
18
|
-
__require
|
|
19
|
-
} from "./index-qnx9j3qa.js";
|
|
2
|
+
import { runCli } from "./index-5gmws6ah.js";
|
|
3
|
+
import { loadDevEnv } from "./index-yedqxm1z.js";
|
|
4
|
+
import "./index-38xnzpa6.js";
|
|
5
|
+
import "./index-vbpb89jy.js";
|
|
6
|
+
import "./index-w8zxnjka.js";
|
|
7
|
+
import "./index-mam0bcyz.js";
|
|
8
|
+
import "./index-mm412dkp.js";
|
|
9
|
+
import "./index-045jksh5.js";
|
|
10
|
+
import "./index-6c1w1xk5.js";
|
|
11
|
+
import "./index-tjbx2r2t.js";
|
|
12
|
+
import "./index-4gp0az1g.js";
|
|
13
|
+
import "./index-xkvd0nsd.js";
|
|
14
|
+
import { __commonJS, __require } from "./index-qnx9j3qa.js";
|
|
20
15
|
|
|
21
16
|
// package.json
|
|
22
17
|
var require_package = __commonJS((exports, module) => {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
"fast-glob": "^3.3.3",
|
|
162
|
-
picocolors: "^1.1.1"
|
|
163
|
-
}
|
|
164
|
-
};
|
|
18
|
+
module.exports = {
|
|
19
|
+
name: "buncargo",
|
|
20
|
+
version: "1.0.31",
|
|
21
|
+
description:
|
|
22
|
+
"A Bun-powered development environment CLI for managing Docker Compose services, dev servers, and environment variables",
|
|
23
|
+
type: "module",
|
|
24
|
+
module: "./dist/index.js",
|
|
25
|
+
main: "./dist/index.js",
|
|
26
|
+
types: "./dist/index.d.ts",
|
|
27
|
+
license: "MIT",
|
|
28
|
+
repository: {
|
|
29
|
+
type: "git",
|
|
30
|
+
url: "git+https://github.com/HansKristoffer/buncargo.git",
|
|
31
|
+
},
|
|
32
|
+
author: "Kristoffer Hansen",
|
|
33
|
+
keywords: [
|
|
34
|
+
"bun",
|
|
35
|
+
"dev-tools",
|
|
36
|
+
"docker",
|
|
37
|
+
"docker-compose",
|
|
38
|
+
"development",
|
|
39
|
+
"cli",
|
|
40
|
+
"monorepo",
|
|
41
|
+
"dev-server",
|
|
42
|
+
"environment",
|
|
43
|
+
],
|
|
44
|
+
engines: {
|
|
45
|
+
bun: ">=1.0.0",
|
|
46
|
+
},
|
|
47
|
+
files: ["src/**/*.ts", "dist", "!src/**/*.test.ts"],
|
|
48
|
+
bin: {
|
|
49
|
+
"dev-tools": "./dist/bin.js",
|
|
50
|
+
buncargo: "./dist/bin.js",
|
|
51
|
+
},
|
|
52
|
+
exports: {
|
|
53
|
+
".": {
|
|
54
|
+
types: "./dist/index.d.ts",
|
|
55
|
+
bun: "./src/index.ts",
|
|
56
|
+
import: "./dist/index.js",
|
|
57
|
+
default: "./dist/index.js",
|
|
58
|
+
},
|
|
59
|
+
"./types": {
|
|
60
|
+
types: "./dist/types.d.ts",
|
|
61
|
+
bun: "./src/types.ts",
|
|
62
|
+
import: "./dist/types.js",
|
|
63
|
+
default: "./dist/types.js",
|
|
64
|
+
},
|
|
65
|
+
"./config": {
|
|
66
|
+
types: "./dist/config.d.ts",
|
|
67
|
+
bun: "./src/config.ts",
|
|
68
|
+
import: "./dist/config.js",
|
|
69
|
+
default: "./dist/config.js",
|
|
70
|
+
},
|
|
71
|
+
"./environment": {
|
|
72
|
+
types: "./dist/environment.d.ts",
|
|
73
|
+
bun: "./src/environment.ts",
|
|
74
|
+
import: "./dist/environment.js",
|
|
75
|
+
default: "./dist/environment.js",
|
|
76
|
+
},
|
|
77
|
+
"./core/ports": {
|
|
78
|
+
types: "./dist/core/ports.d.ts",
|
|
79
|
+
bun: "./src/core/ports.ts",
|
|
80
|
+
import: "./dist/core/ports.js",
|
|
81
|
+
default: "./dist/core/ports.js",
|
|
82
|
+
},
|
|
83
|
+
"./core/docker": {
|
|
84
|
+
types: "./dist/core/docker.d.ts",
|
|
85
|
+
bun: "./src/core/docker.ts",
|
|
86
|
+
import: "./dist/core/docker.js",
|
|
87
|
+
default: "./dist/core/docker.js",
|
|
88
|
+
},
|
|
89
|
+
"./core/network": {
|
|
90
|
+
types: "./dist/core/network.d.ts",
|
|
91
|
+
bun: "./src/core/network.ts",
|
|
92
|
+
import: "./dist/core/network.js",
|
|
93
|
+
default: "./dist/core/network.js",
|
|
94
|
+
},
|
|
95
|
+
"./core/process": {
|
|
96
|
+
types: "./dist/core/process.d.ts",
|
|
97
|
+
bun: "./src/core/process.ts",
|
|
98
|
+
import: "./dist/core/process.js",
|
|
99
|
+
default: "./dist/core/process.js",
|
|
100
|
+
},
|
|
101
|
+
"./core/watchdog": {
|
|
102
|
+
types: "./dist/core/watchdog.d.ts",
|
|
103
|
+
bun: "./src/core/watchdog.ts",
|
|
104
|
+
import: "./dist/core/watchdog.js",
|
|
105
|
+
default: "./dist/core/watchdog.js",
|
|
106
|
+
},
|
|
107
|
+
"./core/utils": {
|
|
108
|
+
types: "./dist/core/utils.d.ts",
|
|
109
|
+
bun: "./src/core/utils.ts",
|
|
110
|
+
import: "./dist/core/utils.js",
|
|
111
|
+
default: "./dist/core/utils.js",
|
|
112
|
+
},
|
|
113
|
+
"./cli": {
|
|
114
|
+
types: "./dist/cli.d.ts",
|
|
115
|
+
bun: "./src/cli.ts",
|
|
116
|
+
import: "./dist/cli.js",
|
|
117
|
+
default: "./dist/cli.js",
|
|
118
|
+
},
|
|
119
|
+
"./lint": {
|
|
120
|
+
types: "./dist/lint.d.ts",
|
|
121
|
+
bun: "./src/lint.ts",
|
|
122
|
+
import: "./dist/lint.js",
|
|
123
|
+
default: "./dist/lint.js",
|
|
124
|
+
},
|
|
125
|
+
"./loader": {
|
|
126
|
+
types: "./dist/loader.d.ts",
|
|
127
|
+
bun: "./src/loader.ts",
|
|
128
|
+
import: "./dist/loader.js",
|
|
129
|
+
default: "./dist/loader.js",
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
scripts: {
|
|
133
|
+
build: "bun run build:js && bun run build:types",
|
|
134
|
+
"build:js":
|
|
135
|
+
"bun build ./src/index.ts ./src/bin.ts ./src/cli.ts ./src/config.ts ./src/environment.ts ./src/lint.ts ./src/loader.ts ./src/prisma.ts ./src/types.ts ./src/core/docker.ts ./src/core/index.ts ./src/core/network.ts ./src/core/ports.ts ./src/core/process.ts ./src/core/utils.ts ./src/core/watchdog.ts ./src/core/watchdog-runner.ts ./src/docker/runtime.ts ./src/docker-compose/index.ts ./src/docker-compose/services/index.ts --outdir ./dist --root ./src --target node --packages external --splitting",
|
|
136
|
+
"build:types": "tsc -p tsconfig.build.json",
|
|
137
|
+
prepublishOnly: "bun run build",
|
|
138
|
+
"publish:patch": "npm version patch && npm publish",
|
|
139
|
+
"publish:minor": "npm version minor && npm publish",
|
|
140
|
+
"publish:major": "npm version major && npm publish",
|
|
141
|
+
lint: "bun run typecheck && biome check",
|
|
142
|
+
"lint:write": "bun run typecheck && biome check --fix && biome format",
|
|
143
|
+
typecheck: "tsgo --incremental",
|
|
144
|
+
},
|
|
145
|
+
devDependencies: {
|
|
146
|
+
"@types/bun": "1.3.2",
|
|
147
|
+
"@biomejs/biome": "2.3.4",
|
|
148
|
+
"@typescript/native-preview": "7.0.0-dev.20260127.1",
|
|
149
|
+
typescript: "^5.7.0",
|
|
150
|
+
},
|
|
151
|
+
dependencies: {
|
|
152
|
+
"fast-glob": "^3.3.3",
|
|
153
|
+
picocolors: "^1.1.1",
|
|
154
|
+
},
|
|
155
|
+
};
|
|
165
156
|
});
|
|
166
157
|
|
|
167
|
-
//
|
|
168
|
-
async function loadEnv() {
|
|
169
|
-
try {
|
|
170
|
-
return await loadDevEnv();
|
|
171
|
-
} catch (error) {
|
|
172
|
-
console.error(`❌ ${error instanceof Error ? error.message : error}`);
|
|
173
|
-
process.exit(1);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
async function handleDev(args) {
|
|
177
|
-
const env = await loadEnv();
|
|
178
|
-
await runCli(env, { args });
|
|
179
|
-
}
|
|
180
|
-
async function handlePrisma(args) {
|
|
181
|
-
const env = await loadEnv();
|
|
182
|
-
if (!env.prisma) {
|
|
183
|
-
console.error("❌ Prisma is not configured in your dev config.");
|
|
184
|
-
console.error("");
|
|
185
|
-
console.error(" Add prisma to your config:");
|
|
186
|
-
console.error("");
|
|
187
|
-
console.error(" export default defineDevConfig({");
|
|
188
|
-
console.error(" ...");
|
|
189
|
-
console.error(" prisma: {");
|
|
190
|
-
console.error(" cwd: 'packages/prisma'");
|
|
191
|
-
console.error(" }");
|
|
192
|
-
console.error(" })");
|
|
193
|
-
process.exit(1);
|
|
194
|
-
}
|
|
195
|
-
const running = await env.isRunning();
|
|
196
|
-
if (!running) {
|
|
197
|
-
console.log("\uD83D\uDC33 Starting database container...");
|
|
198
|
-
await env.start({ startServers: false, wait: true });
|
|
199
|
-
}
|
|
200
|
-
const exitCode = await env.prisma.run(args);
|
|
201
|
-
process.exit(exitCode);
|
|
202
|
-
}
|
|
203
|
-
async function handleEnv() {
|
|
204
|
-
const env = await loadEnv();
|
|
205
|
-
console.log(JSON.stringify({
|
|
206
|
-
projectName: env.projectName,
|
|
207
|
-
ports: env.ports,
|
|
208
|
-
urls: env.urls,
|
|
209
|
-
portOffset: env.portOffset,
|
|
210
|
-
isWorktree: env.isWorktree,
|
|
211
|
-
localIp: env.localIp,
|
|
212
|
-
root: env.root
|
|
213
|
-
}, null, 2));
|
|
214
|
-
}
|
|
215
|
-
async function handleTypecheck() {
|
|
216
|
-
const env = await loadEnv();
|
|
217
|
-
const { runWorkspaceTypecheck } = await import("./lint.js");
|
|
218
|
-
const result = await runWorkspaceTypecheck({
|
|
219
|
-
root: env.root,
|
|
220
|
-
verbose: true
|
|
221
|
-
});
|
|
222
|
-
process.exit(result.success ? 0 : 1);
|
|
223
|
-
}
|
|
158
|
+
// src/cli/commands/help.ts
|
|
224
159
|
function showHelp() {
|
|
225
|
-
|
|
160
|
+
console.log(`
|
|
226
161
|
buncargo - Development environment CLI
|
|
227
162
|
|
|
228
163
|
USAGE:
|
|
@@ -258,43 +193,117 @@ CONFIG:
|
|
|
258
193
|
Run "bunx buncargo dev --help" for dev command options.
|
|
259
194
|
`);
|
|
260
195
|
}
|
|
196
|
+
|
|
197
|
+
// src/cli/commands/runtime.ts
|
|
198
|
+
async function loadEnv() {
|
|
199
|
+
try {
|
|
200
|
+
return await loadDevEnv();
|
|
201
|
+
} catch (error) {
|
|
202
|
+
console.error(`❌ ${error instanceof Error ? error.message : error}`);
|
|
203
|
+
process.exit(1);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
async function handleDev(args) {
|
|
207
|
+
const env = await loadEnv();
|
|
208
|
+
await runCli(env, { args });
|
|
209
|
+
}
|
|
210
|
+
async function handlePrisma(args) {
|
|
211
|
+
const env = await loadEnv();
|
|
212
|
+
if (!env.prisma) {
|
|
213
|
+
console.error("❌ Prisma is not configured in your dev config.");
|
|
214
|
+
console.error("");
|
|
215
|
+
console.error(" Add prisma to your config:");
|
|
216
|
+
console.error("");
|
|
217
|
+
console.error(" export default defineDevConfig({");
|
|
218
|
+
console.error(" ...");
|
|
219
|
+
console.error(" prisma: {");
|
|
220
|
+
console.error(" cwd: 'packages/prisma'");
|
|
221
|
+
console.error(" }");
|
|
222
|
+
console.error(" })");
|
|
223
|
+
process.exit(1);
|
|
224
|
+
}
|
|
225
|
+
const running = await env.isRunning();
|
|
226
|
+
if (!running) {
|
|
227
|
+
console.log("\uD83D\uDC33 Starting database container...");
|
|
228
|
+
await env.start({ startServers: false, wait: true });
|
|
229
|
+
}
|
|
230
|
+
const exitCode = await env.prisma.run(args);
|
|
231
|
+
process.exit(exitCode);
|
|
232
|
+
}
|
|
233
|
+
async function handleEnv() {
|
|
234
|
+
const env = await loadEnv();
|
|
235
|
+
console.log(
|
|
236
|
+
JSON.stringify(
|
|
237
|
+
{
|
|
238
|
+
projectName: env.projectName,
|
|
239
|
+
ports: env.ports,
|
|
240
|
+
urls: env.urls,
|
|
241
|
+
portOffset: env.portOffset,
|
|
242
|
+
isWorktree: env.isWorktree,
|
|
243
|
+
localIp: env.localIp,
|
|
244
|
+
root: env.root,
|
|
245
|
+
},
|
|
246
|
+
null,
|
|
247
|
+
2,
|
|
248
|
+
),
|
|
249
|
+
);
|
|
250
|
+
}
|
|
251
|
+
async function handleTypecheck() {
|
|
252
|
+
const env = await loadEnv();
|
|
253
|
+
const { runWorkspaceTypecheck } = await import("./index-5rfqps4b.js");
|
|
254
|
+
const result = await runWorkspaceTypecheck({
|
|
255
|
+
root: env.root,
|
|
256
|
+
verbose: true,
|
|
257
|
+
});
|
|
258
|
+
process.exit(result.success ? 0 : 1);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
// src/cli/commands/version.ts
|
|
261
262
|
function showVersion() {
|
|
262
|
-
|
|
263
|
-
|
|
263
|
+
const pkg = require_package();
|
|
264
|
+
console.log(`buncargo v${pkg.version}`);
|
|
264
265
|
}
|
|
266
|
+
|
|
267
|
+
// src/cli/bin.ts
|
|
265
268
|
async function main() {
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
269
|
+
const args = process.argv.slice(2);
|
|
270
|
+
const command = args[0];
|
|
271
|
+
const commandArgs = args.slice(1);
|
|
272
|
+
if (
|
|
273
|
+
!command ||
|
|
274
|
+
command === "help" ||
|
|
275
|
+
command === "--help" ||
|
|
276
|
+
command === "-h"
|
|
277
|
+
) {
|
|
278
|
+
showHelp();
|
|
279
|
+
process.exit(0);
|
|
280
|
+
}
|
|
281
|
+
if (command === "version" || command === "--version" || command === "-v") {
|
|
282
|
+
showVersion();
|
|
283
|
+
process.exit(0);
|
|
284
|
+
}
|
|
285
|
+
switch (command) {
|
|
286
|
+
case "dev":
|
|
287
|
+
await handleDev(commandArgs);
|
|
288
|
+
break;
|
|
289
|
+
case "typecheck":
|
|
290
|
+
await handleTypecheck();
|
|
291
|
+
break;
|
|
292
|
+
case "prisma":
|
|
293
|
+
await handlePrisma(commandArgs);
|
|
294
|
+
break;
|
|
295
|
+
case "env":
|
|
296
|
+
await handleEnv();
|
|
297
|
+
break;
|
|
298
|
+
default:
|
|
299
|
+
console.error(`❌ Unknown command: ${command}`);
|
|
300
|
+
console.error("");
|
|
301
|
+
console.error(' Run "bunx buncargo help" for available commands.');
|
|
302
|
+
process.exit(1);
|
|
303
|
+
}
|
|
296
304
|
}
|
|
297
305
|
main().catch((error) => {
|
|
298
|
-
|
|
299
|
-
|
|
306
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
307
|
+
console.error(`❌ ${message}`);
|
|
308
|
+
process.exit(1);
|
|
300
309
|
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
/**
|
|
3
|
+
* CLI Entry Point for buncargo
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* bunx buncargo dev # Start containers + dev servers
|
|
7
|
+
* bunx buncargo dev --down # Stop containers
|
|
8
|
+
* bunx buncargo dev --reset # Stop + remove volumes
|
|
9
|
+
* bunx buncargo typecheck # Run TypeScript typecheck
|
|
10
|
+
* bunx buncargo prisma ... # Run prisma commands
|
|
11
|
+
* bunx buncargo help # Show help
|
|
12
|
+
*/
|
|
13
|
+
export {};
|