@basaltbytes/odoo-agentic-dev 0.1.0-beta.1 → 0.1.0-beta.3
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/README.md +153 -73
- package/dist/cli.js +6 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/doctor.js +1 -1
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/down.js +2 -1
- package/dist/commands/down.js.map +1 -1
- package/dist/commands/eject.d.ts +74 -0
- package/dist/commands/eject.js +331 -0
- package/dist/commands/eject.js.map +1 -0
- package/dist/commands/info.js +1 -1
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/json-report.d.ts +39 -6
- package/dist/commands/json-report.js +55 -9
- package/dist/commands/json-report.js.map +1 -1
- package/dist/commands/link-source.js +1 -1
- package/dist/commands/link-source.js.map +1 -1
- package/dist/commands/list.js +1 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/logs.js +1 -1
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/prune.js +1 -1
- package/dist/commands/prune.js.map +1 -1
- package/dist/commands/psql.js +1 -1
- package/dist/commands/psql.js.map +1 -1
- package/dist/commands/reset-db.js +4 -2
- package/dist/commands/reset-db.js.map +1 -1
- package/dist/commands/setup.js +5 -2
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/shell.js +1 -1
- package/dist/commands/shell.js.map +1 -1
- package/dist/commands/test.js +7 -5
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/up.d.ts +11 -0
- package/dist/commands/up.js +15 -1
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/update.js +1 -1
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/worktree.d.ts +1 -7
- package/dist/commands/worktree.js +5 -13
- package/dist/commands/worktree.js.map +1 -1
- package/dist/config/schema.js +41 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/core/command-plan.d.ts +10 -5
- package/dist/core/command-plan.js +13 -4
- package/dist/core/command-plan.js.map +1 -1
- package/dist/core/compose-model.d.ts +20 -2
- package/dist/core/compose-model.js +59 -13
- package/dist/core/compose-model.js.map +1 -1
- package/dist/core/dockerfile-model.d.ts +8 -0
- package/dist/core/dockerfile-model.js +34 -0
- package/dist/core/dockerfile-model.js.map +1 -0
- package/dist/core/project-recipe.d.ts +37 -0
- package/dist/core/project-recipe.js +2 -0
- package/dist/core/project-recipe.js.map +1 -1
- package/dist/errors/errors.d.ts +9 -1
- package/dist/errors/errors.js +8 -0
- package/dist/errors/errors.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/platform/docker-compose.js +4 -0
- package/dist/platform/docker-compose.js.map +1 -1
- package/dist/platform/odoo-lifecycle.js +5 -5
- package/dist/platform/odoo-lifecycle.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -24,117 +24,158 @@ WSL2 guidance:
|
|
|
24
24
|
pnpm add -D @basaltbytes/odoo-agentic-dev
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
Create `odoo-agentic-dev.config.ts` at the project root (also accepted: `.mts`, `.js`, `.mjs` — `.ts` configs load directly, no precompilation needed).
|
|
27
|
+
Create `odoo-agentic-dev.config.ts` at the project root (also accepted: `.mts`, `.js`, `.mjs` — `.ts` configs load directly, no precompilation needed). This is a complete config for an Odoo-only project:
|
|
28
28
|
|
|
29
29
|
```ts
|
|
30
30
|
import { defineConfig } from "@basaltbytes/odoo-agentic-dev";
|
|
31
31
|
|
|
32
32
|
export default defineConfig({
|
|
33
|
-
project: {
|
|
34
|
-
id: "billing-odoo",
|
|
35
|
-
dbPrefix: "billing",
|
|
36
|
-
sharedDatabase: "billing_dev",
|
|
37
|
-
sharedBranches: ["main", "develop"]
|
|
38
|
-
},
|
|
39
|
-
|
|
33
|
+
project: { id: "billing-odoo", dbPrefix: "billing" },
|
|
40
34
|
odoo: {
|
|
41
35
|
version: "18.0",
|
|
42
|
-
|
|
43
|
-
configFile: "config/odoo.conf",
|
|
44
|
-
addons: [
|
|
45
|
-
{ host: "addons", container: "/mnt/extra-addons/custom" }
|
|
46
|
-
]
|
|
47
|
-
},
|
|
48
|
-
|
|
49
|
-
database: {
|
|
50
|
-
initialModules: ["billing_core"]
|
|
36
|
+
addons: [{ host: "addons", container: "/mnt/extra-addons/custom" }]
|
|
51
37
|
}
|
|
52
38
|
});
|
|
53
39
|
```
|
|
54
40
|
|
|
55
|
-
|
|
41
|
+
Everything else has a sensible default: the stock `odoo:<version>` image, `postgres:16`, services named `odoo`/`db`, Odoo on port `18069 + hash(db) % 1000` bound to loopback, demo data disabled. Add config only where your project actually deviates — the [Configuration Reference](#configuration-reference) below shows every field and its default.
|
|
42
|
+
|
|
43
|
+
Then:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
pnpm exec odoo-agentic-dev setup # prepare the worktree (deps, image, database)
|
|
47
|
+
pnpm exec odoo-agentic-dev up # start Odoo + companion apps
|
|
48
|
+
pnpm exec odoo-agentic-dev info # inspect the derived context at any time
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## For Coding Agents
|
|
52
|
+
|
|
53
|
+
The CLI is designed to be driven by coding agents: deterministic derivation, no interactive prompts, meaningful exit codes, `--json` everywhere, and guard rails on destructive actions. To make your agents use it well, paste the block in [docs/AGENTS-SNIPPET.md](docs/AGENTS-SNIPPET.md) into your project's `CLAUDE.md` / `AGENTS.md` — it covers the daily commands, the env contract (`run -- <cmd>` instead of hand-assembled variables), and the rule that Docker Compose is only reached through `odoo-agentic-dev compose --`.
|
|
54
|
+
|
|
55
|
+
## Configuration Reference
|
|
56
|
+
|
|
57
|
+
Every field, with defaults shown in comments. Only `project.id`, `project.dbPrefix`, `odoo.version`, and `odoo.addons` are required — a good config states only what deviates from the defaults.
|
|
56
58
|
|
|
57
59
|
```ts
|
|
58
60
|
import { defineConfig } from "@basaltbytes/odoo-agentic-dev";
|
|
59
61
|
|
|
60
62
|
export default defineConfig({
|
|
61
63
|
project: {
|
|
62
|
-
id: "
|
|
63
|
-
dbPrefix: "
|
|
64
|
-
sharedDatabase: "
|
|
65
|
-
|
|
64
|
+
id: "acme", // required — namespaces compose projects, labels, the registry
|
|
65
|
+
dbPrefix: "acme", // required — derived DBs are `<dbPrefix>_<branch-slug>`
|
|
66
|
+
sharedDatabase: "acme_dev", // default: none — one DB reused by long-lived branches,
|
|
67
|
+
// protected from deletion (needs --allow-shared)
|
|
68
|
+
sharedBranches: ["main", "master"], // default when sharedDatabase is set
|
|
69
|
+
stripBranchPrefixes: // default: ["feature","feat","bugfix","bug","hotfix","fix","chore","task"]
|
|
70
|
+
["feature", "fix"], // at most ONE leading branch segment is stripped before slugging
|
|
66
71
|
},
|
|
67
72
|
|
|
68
73
|
ports: {
|
|
69
|
-
odooBase: 18069,
|
|
70
|
-
companionBase:
|
|
71
|
-
range: 1000,
|
|
72
|
-
hashAlgorithm: "posix-cksum"
|
|
74
|
+
odooBase: 18069, // default — Odoo port = odooBase + hash(db) % range
|
|
75
|
+
companionBase: 28000, // default — same formula per companion app
|
|
76
|
+
range: 1000, // default
|
|
77
|
+
hashAlgorithm: "fnv1a32", // default — "posix-cksum" reproduces bash `cksum` tooling
|
|
78
|
+
// so a migrated project keeps its exact ports
|
|
73
79
|
},
|
|
74
80
|
|
|
75
81
|
odoo: {
|
|
76
|
-
version: "18.0
|
|
77
|
-
serviceName: "odoo",
|
|
78
|
-
databaseServiceName: "db",
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
{
|
|
85
|
-
|
|
82
|
+
version: "18.0", // required — image tag, and part of the DB template cache key
|
|
83
|
+
serviceName: "odoo", // default — compose service to exec/log against
|
|
84
|
+
databaseServiceName: "db", // default
|
|
85
|
+
postgresImage: "postgres:16", // default
|
|
86
|
+
build: { // default: none — the CLI GENERATES a Dockerfile from this
|
|
87
|
+
aptPackages: ["tesseract-ocr"], // (FROM odoo:<version>, one apt layer, one pip layer, COPYs)
|
|
88
|
+
pipRequirements: ["backend/requirements.txt"],
|
|
89
|
+
pipPackages: ["requests"],
|
|
90
|
+
copy: [{ from: "backend/sql-script", to: "/opt/acme/sql-script" }],
|
|
91
|
+
},
|
|
92
|
+
dockerfile: "Dockerfile.odoo", // default: none — hand-written escape hatch, mutually
|
|
93
|
+
// exclusive with `build`; without either, the stock
|
|
94
|
+
// `odoo:<version>` image runs as-is
|
|
95
|
+
imageName: "acme-odoo:dev", // default: none — tag for the built image
|
|
96
|
+
dev: "xml,reload", // default — `--dev=` flags for the served Odoo; false disables
|
|
97
|
+
baseAddonsPath: // default — in-image addons dir, prepended to every
|
|
98
|
+
"/usr/lib/python3/dist-packages/odoo/addons", // --addons-path the CLI passes
|
|
99
|
+
configFile: "config/odoo.conf", // default: none — mounted read-only at /etc/odoo/odoo.conf
|
|
100
|
+
// (rarely needed: db connection, --database, --addons-path,
|
|
101
|
+
// and --no-database-list are all handled by the CLI)
|
|
102
|
+
source: "../odoo", // default: none — local Odoo checkout for `link-source`
|
|
103
|
+
addons: [ // required, at least one mount (host path relative to repo root)
|
|
104
|
+
{ host: "addons", container: "/mnt/extra-addons/custom" },
|
|
105
|
+
// { host: "/abs/elsewhere", container: "/mnt/x", allowOutsideRepo: true },
|
|
106
|
+
],
|
|
86
107
|
},
|
|
87
108
|
|
|
88
109
|
database: {
|
|
89
|
-
initialModules: ["
|
|
90
|
-
withoutDemo: "all",
|
|
91
|
-
postInit: [
|
|
92
|
-
|
|
93
|
-
|
|
110
|
+
initialModules: ["acme_core"], // default: [] — installed on first setup / reset-db
|
|
111
|
+
withoutDemo: "all", // default — `false` keeps Odoo demo data
|
|
112
|
+
postInit: [ // default: [] — run after EVERY database init or reset,
|
|
113
|
+
// and folded into the template-snapshot cache key
|
|
114
|
+
{ type: "odoo-shell-file", file: "scripts/post-init.py" },
|
|
115
|
+
{ type: "set-ir-config-parameter", key: "app.mobile.url", value: "$E2E_BASE_URL" },
|
|
116
|
+
// also: { type: "odoo-shell-inline", code: "..." }
|
|
117
|
+
// { type: "command", command: "pnpm", args: ["seed"], cwd: "tools" }
|
|
118
|
+
],
|
|
94
119
|
},
|
|
95
120
|
|
|
96
|
-
setup: {
|
|
97
|
-
submodules: true,
|
|
98
|
-
packageManagers: [
|
|
121
|
+
setup: { // host-side workspace bootstrap — runs ONCE per worktree,
|
|
122
|
+
submodules: true, // default: false — git submodule update --init --recursive
|
|
123
|
+
packageManagers: [ // default: []
|
|
99
124
|
{ cwd: ".", command: "pnpm", args: ["install"] },
|
|
100
|
-
{ cwd: "frontend", command: "pnpm", args: ["install"] }
|
|
101
|
-
]
|
|
125
|
+
{ cwd: "frontend", command: "pnpm", args: ["install"] },
|
|
126
|
+
],
|
|
127
|
+
},
|
|
128
|
+
|
|
129
|
+
compose: {
|
|
130
|
+
file: "docker-compose.worktree.yml", // default: none — escape hatch replacing the generated
|
|
131
|
+
// compose file; it can interpolate ${ODOO_DATABASE:?} etc.
|
|
132
|
+
// Rarely needed: the generated file already builds the
|
|
133
|
+
// image, serves only the derived DB, sets --addons-path,
|
|
134
|
+
// dev mode, restart policies, and injects the context env.
|
|
102
135
|
},
|
|
103
136
|
|
|
104
137
|
worktree: {
|
|
105
|
-
copyFiles: [".env.e2e"],
|
|
106
|
-
branchPrefix: "worktree-"
|
|
138
|
+
copyFiles: [".env", ".env.e2e"], // default: [] — root files copied into fresh worktrees when present
|
|
139
|
+
branchPrefix: "worktree-", // default — branch name prefix for `worktree create <name>`
|
|
140
|
+
},
|
|
141
|
+
|
|
142
|
+
test: {
|
|
143
|
+
profiles: { // default: {} — `test --profile payment` appends these args
|
|
144
|
+
payment: ["--test-tags", "payment"],
|
|
145
|
+
},
|
|
107
146
|
},
|
|
108
147
|
|
|
109
|
-
|
|
148
|
+
envAliases: { // default: {} — compatibility names for existing tooling;
|
|
149
|
+
KL_WORKTREE_DB_NAME: "ODOO_DATABASE", // an alias may target any assembled env key,
|
|
150
|
+
E2E_PWA_PORT: "PWA_PORT", // including companion portEnv/urlEnv keys
|
|
151
|
+
},
|
|
152
|
+
|
|
153
|
+
companionApps: [ // default: [] — processes `up` starts alongside Odoo
|
|
110
154
|
{
|
|
111
|
-
name: "pwa",
|
|
155
|
+
name: "pwa", // lowercase kebab, unique
|
|
112
156
|
cwd: "frontend",
|
|
113
|
-
command: "
|
|
114
|
-
args: ["
|
|
115
|
-
portEnv: "PWA_PORT",
|
|
116
|
-
urlEnv: "E2E_BASE_URL",
|
|
117
|
-
env: {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
157
|
+
command: "sh", // args are NOT token-substituted — read env vars via the
|
|
158
|
+
args: ["-lc", 'pnpm dev --port "$PWA_PORT" --strictPort'], // shell (or the tool's own env support)
|
|
159
|
+
portEnv: "PWA_PORT", // optional — env var receiving the allocated port
|
|
160
|
+
urlEnv: "E2E_BASE_URL", // optional — env var receiving http://localhost:<port>
|
|
161
|
+
env: { // optional extra env; $VARS here ARE substituted from the context
|
|
162
|
+
VITE_API_URL: "$ODOO_BASE_URL",
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
],
|
|
166
|
+
|
|
167
|
+
cleanup: {
|
|
168
|
+
maxAgeDays: 30, // default — age threshold for prune --older-than candidates
|
|
169
|
+
auto: false, // default — opt in to automatic pruning of gone-branch stacks
|
|
170
|
+
},
|
|
124
171
|
});
|
|
125
172
|
```
|
|
126
173
|
|
|
127
|
-
|
|
174
|
+
Database names are derived from the branch: at most **one** leading type segment from `stripBranchPrefixes` is stripped — `feature/fix/x` becomes `<dbPrefix>_fix_x` — then the remainder is sanitized, prefixed, and capped at 58 chars (longer names keep a stable hash suffix). Ports are a hash of that database name modulo `ports.range`, so the same branch always gets the same ports on every machine.
|
|
128
175
|
|
|
129
|
-
|
|
176
|
+
### `setup` vs `database.postInit`
|
|
130
177
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
```bash
|
|
134
|
-
pnpm exec odoo-agentic-dev setup # prepare the worktree (deps, image, database)
|
|
135
|
-
pnpm exec odoo-agentic-dev up # start Odoo + companion apps
|
|
136
|
-
pnpm exec odoo-agentic-dev info # inspect the derived context at any time
|
|
137
|
-
```
|
|
178
|
+
They run at different times against different things. `setup` is host-side workspace bootstrap — submodules and dependency installs — executed once when a worktree is prepared, before any database exists. `database.postInit` runs against Odoo after **every** database initialization or reset (and is part of the template cache key, so editing a hook correctly invalidates cached snapshots). Rule of thumb: filesystem state → `setup`; database state → `database.postInit`.
|
|
138
179
|
|
|
139
180
|
## Commands
|
|
140
181
|
|
|
@@ -372,13 +413,33 @@ With `--hook-json` (the WorktreeRemove hook contract) the `{worktree_path}` payl
|
|
|
372
413
|
|
|
373
414
|
`info`, `list`, `doctor`, and `prune` have dedicated JSON shapes and keep stdout pure JSON (warnings go to stderr).
|
|
374
415
|
|
|
375
|
-
The lifecycle commands — `setup`, `
|
|
416
|
+
The mutating lifecycle commands — `setup`, `reset-db`, `update`, `test`, `down`, and `up --detach` — accept `--json` too. In JSON mode **stdout carries exactly one JSON object** (a single final line) and **everything else — decorative progress, streamed compose/Odoo subprocess output, the test tail — goes to stderr**, so a parser can always read the report with `tail -n 1 | jq` (no other line ever reaches stdout).
|
|
417
|
+
|
|
418
|
+
Every report shares this core:
|
|
376
419
|
|
|
377
420
|
```json
|
|
378
|
-
{ "ok": true, "command": "reset-db", "database": "kl_feature_x", "
|
|
421
|
+
{ "ok": true, "command": "reset-db", "database": "kl_feature_x", "composeProjectName": "kl_kl_feature_x", "odooHttpPort": 18119, "durationMs": 4180, "actions": ["restore-from-template"] }
|
|
379
422
|
```
|
|
380
423
|
|
|
381
|
-
|
|
424
|
+
- `ok` — `true` on success; `false` on failure or (for `test`) a non-zero child exit.
|
|
425
|
+
- `composeProject` and `odooUrl` are kept as back-compat aliases of `composeProjectName` / the derived web URL.
|
|
426
|
+
- `actions` records what the command did, so tooling can tell which path ran.
|
|
427
|
+
|
|
428
|
+
Per-command extras merged into the core:
|
|
429
|
+
|
|
430
|
+
- **`setup` / `reset-db`** add `"mode": "template-restore" | "full-init"` and `"templateKey": "<recipe template hash>"`.
|
|
431
|
+
- **`test`** adds `"exitCode"`, `"stdoutTail"`, and `"stderrTail"` (the last 200 lines of the Odoo run); `ok` mirrors `exitCode === 0`.
|
|
432
|
+
- **`down`** adds `"volumesRemoved": boolean`.
|
|
433
|
+
|
|
434
|
+
On failure the command still renders the error on stderr and exits 1, **and** stdout gets a final `ok:false` object carrying the typed error, so a parser never sees an empty stdout:
|
|
435
|
+
|
|
436
|
+
```json
|
|
437
|
+
{ "ok": false, "command": "reset-db", "database": "kl_e2e_demo", "composeProjectName": "kl_kl_e2e_demo", "odooHttpPort": 18119, "durationMs": 12, "actions": [], "error": { "tag": "SharedDatabaseProtectionError", "message": "refusing to touch shared database \"kl_e2e_demo\" (re-run reset-db with --allow-shared)" } }
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
`error.tag` is the underlying `TaggedError` `_tag`. Identity fields (`database`, `composeProjectName`, `odooHttpPort`) are `null` when the command fails before the context resolves.
|
|
441
|
+
|
|
442
|
+
Attached `up` (without `--detach`) streams forever and never reaches a final line, so **`up --json` requires `--detach`** — it is rejected up front with a `ConfigValidationError` pointing at `--detach`. `up --detach --json` works.
|
|
382
443
|
|
|
383
444
|
## State Registry
|
|
384
445
|
|
|
@@ -447,6 +508,25 @@ type PostInitHook =
|
|
|
447
508
|
|
|
448
509
|
Hook files resolve relative to the project root. Only `set-ir-config-parameter` commits automatically (it runs `env.cr.commit()` for you); `odoo-shell-file` and `odoo-shell-inline` scripts must call `env.cr.commit()` themselves or their changes are rolled back when the shell exits. Prefer `odoo-shell-file` and `set-ir-config-parameter`; inline code is harder to review.
|
|
449
510
|
|
|
511
|
+
## Ejecting
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
odoo-agentic-dev eject # all (Dockerfile + compose), prints the config patch
|
|
515
|
+
odoo-agentic-dev eject compose # just the compose file
|
|
516
|
+
odoo-agentic-dev eject dockerfile # just the Dockerfile (needs an odoo.build block)
|
|
517
|
+
odoo-agentic-dev eject --write-config # also rewrite the config in place
|
|
518
|
+
```
|
|
519
|
+
|
|
520
|
+
`eject` converts generated infra into project-owned files: it writes the Dockerfile (`Dockerfile.odoo`) and/or the compose file (`docker-compose.worktree.yml`) into the repo as plain, editable files and points the config at them via the existing `odoo.dockerfile` / `compose.file` escape hatches. There are no new runtime concepts — eject just automates stepping onto hatches the CLI already supports.
|
|
521
|
+
|
|
522
|
+
**When to eject:** you need custom services the generated compose does not model (extra containers, exotic networking), deliberate LAN exposure, or your team simply prefers infra it can see and edit in the repo.
|
|
523
|
+
|
|
524
|
+
**What you keep.** Everything that makes the CLI worth using still works against an ejected stack: database/port derivation, the full context env injection (`compose.file` consumers run with the same variables `info --env` prints, so the ejected compose's `${ODOO_DATABASE:?}` / `${ODOO_HTTP_PORT:?}` interpolations always resolve), the worktree lifecycle (`setup`/`up`/`down`/`reset-db`), and the safety guards (shared-database protection, loopback-only binding, unsafe-name rejection). The ejected files are **portable**: the compose render emits interpolations instead of the current worktree's baked literals, so one file serves every worktree.
|
|
525
|
+
|
|
526
|
+
**What you give up.** Config-driven infra upgrades. Once ejected, changes to `odoo.build` no longer regenerate your Dockerfile, and improvements to the generated compose file in future CLI releases no longer reach you — those files are yours to maintain.
|
|
527
|
+
|
|
528
|
+
By default eject prints a ready-to-apply config patch and changes nothing else; pass a path to override the destination (`--dockerfile-out` / `--compose-out`), `--force` to overwrite an existing file, and `--json` for a machine-readable `{ ok, written, configPatch, configWritten }` object. `--write-config` rewrites the config in place and discards comments, so it refuses a commented file without `--force`. `eject dockerfile` refuses a stock-image config — there is nothing to eject; add an `odoo.build` block first, or eject only the compose file.
|
|
529
|
+
|
|
450
530
|
## Development
|
|
451
531
|
|
|
452
532
|
```bash
|
package/dist/cli.js
CHANGED
|
@@ -22,6 +22,8 @@ import { psqlCommand } from "./commands/psql.js";
|
|
|
22
22
|
import { runCommand } from "./commands/run.js";
|
|
23
23
|
import { composeCommand } from "./commands/compose.js";
|
|
24
24
|
import { worktreeCommand } from "./commands/worktree.js";
|
|
25
|
+
import { ejectCommand } from "./commands/eject.js";
|
|
26
|
+
import { readFileSync } from "node:fs";
|
|
25
27
|
import { CommandRunnerLive } from "./platform/command-runner.js";
|
|
26
28
|
import { GitLive } from "./platform/git.js";
|
|
27
29
|
import { DockerComposeLive } from "./platform/docker-compose.js";
|
|
@@ -48,9 +50,12 @@ const root = Command.make("odoo-agentic-dev").pipe(Command.withDescription("Agen
|
|
|
48
50
|
runCommand,
|
|
49
51
|
composeCommand,
|
|
50
52
|
worktreeCommand,
|
|
53
|
+
ejectCommand,
|
|
51
54
|
]));
|
|
52
55
|
const services = Layer.mergeAll(GitLive, OdooLifecycleLive, ProcessSupervisorLive, StateStoreLive, PortProbeLive).pipe(Layer.provideMerge(DockerComposeLive), Layer.provideMerge(CommandRunnerLive), Layer.provideMerge(NodeServices.layer));
|
|
53
|
-
|
|
56
|
+
// ../package.json resolves from both dist/cli.js and src/cli.ts — single version source
|
|
57
|
+
const { version } = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
|
|
58
|
+
const program = Command.runWith(root, { version })(process.argv.slice(2)).pipe(Effect.provide(services), Effect.catch((error) => Effect.gen(function* () {
|
|
54
59
|
// ShowHelp is the cli library's control-flow signal: by the time it
|
|
55
60
|
// reaches us the help text is already printed (bare invocation or
|
|
56
61
|
// unknown subcommand), so the error itself must not be rendered.
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,8EAA8E;AAC9E,sEAAsE;AACtE,OAAO,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAChD,OAAO,CAAC,eAAe,CAAC,+CAA+C,CAAC,EACxE,OAAO,CAAC,eAAe,CAAC;IACtB,WAAW;IACX,YAAY;IACZ,SAAS;IACT,WAAW;IACX,cAAc;IACd,aAAa;IACb,WAAW;IACX,iBAAiB;IACjB,WAAW;IACX,YAAY;IACZ,aAAa;IACb,WAAW;IACX,YAAY;IACZ,WAAW;IACX,UAAU;IACV,cAAc;IACd,eAAe;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -205,5 +205,5 @@ export const doctorCommand = Command.make("doctor", {
|
|
|
205
205
|
if (hasHardFailure(checks)) {
|
|
206
206
|
process.exitCode = 1;
|
|
207
207
|
}
|
|
208
|
-
}));
|
|
208
|
+
})).pipe(Command.withDescription("environment health report; exits 1 on hard failures"));
|
|
209
209
|
//# sourceMappingURL=doctor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE5E,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAUzC,kEAAkE;AAClE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAW,EAAE;IACxD,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3F,OAAO,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAW,EAAE;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACjD,OAAO,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,WAA0B,EAAW,EAAE,CAC/D,WAAW,KAAK,IAAI,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAE1E,8EAA8E;AAC9E,MAAM,eAAe,GAAG,GAAkB,EAAE;IAC1C,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,YAAY,GAChB,qEAAqE;IACrE,gFAAgF;IAChF,uCAAuC,CAAC;AAE1C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAkC,EAAW,EAAE,CAC5E,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAkC,EAAU,EAAE,CAC/E,MAAM;KACH,GAAG,CACF,CAAC,KAAK,EAAE,EAAE,CACR,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,MAAM,GACrD,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAC3C,EAAE,CACL;KACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAEhB;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,kBAAsC,EAKtC,EAAE,CACF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC;IAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC;IACvB,MAAM,MAAM,GAAuB,EAAE,CAAC;IAEtC,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,IAA2B,EAA6B,EAAE,CACvF,MAAM;SACH,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACtB,IAAI,CACH,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACrB,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CACpE,CACF,CAAC;IAEN,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7E,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,eAAe;QACrB,EAAE,EAAE,aAAa,CAAC,QAAQ,KAAK,CAAC;QAChC,IAAI,EAAE,IAAI;QACV,MAAM,EACJ,aAAa,CAAC,QAAQ,KAAK,CAAC;YAC1B,CAAC,CAAC,0BAA0B;YAC5B,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,sBAAsB;KAC3D,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,KAAK,CAAC,IAAI,gBAAgB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3F,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,YAAY;QAClB,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,SAAS;YACf,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,CAAC,CAAC,iEAAiE;KACtE,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,cAAc;QACpB,EAAE,EAAE,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QACxC,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,QAAQ,OAAO,CAAC,QAAQ,CAAC,IAAI,kBAAkB;KACxD,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC;QAC/B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,YAAY,EAAE,kBAAkB;QAChC,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,EAC1D,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CACxF,CAAC;IACF,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,QAAQ;QACd,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,MAAM,CAAC,EAAE;YACf,CAAC,CAAC,YAAY,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,MAAM,CAAC,OAAO,EAAE;YAC9D,CAAC,CAAC,MAAM,CAAC,OAAO;KACnB,CAAC,CAAC;IAEH,IAAI,GAAG,GAA2B,IAAI,CAAC;IACvC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CACnD,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC1B,oBAAoB,CAAC;YACnB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,GAAG,EAAE,QAAQ;SACd,CAAC,CACH,EACD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,EAC1D,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CACxF,CAAC;QACF,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,SAAS;YACf,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,KAAK;YACX,MAAM,EAAE,OAAO,CAAC,EAAE;gBAChB,CAAC,CAAC,YAAY,OAAO,CAAC,GAAG,CAAC,YAAY,qBAAqB,OAAO,CAAC,GAAG,CAAC,kBAAkB,UAAU,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;gBAC7H,CAAC,CAAC,OAAO,CAAC,OAAO;SACpB,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,EAAE;YAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IACpC,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,IAAI,EAAE,CAAC,CAAC,EACnD,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CACxF,CAAC;IACF,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAEpD,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,GAAG,CAAC;QACvB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC1D,MAAM,MAAM,GACV,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC,YAAY,CAAC,EAAE,cAAc,IAAI,IAAI,CAAC;QAC5F,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,MAAM;YACZ,qEAAqE;YACrE,EAAE,EAAE,IAAI,IAAI,MAAM,KAAK,IAAI;YAC3B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,IAAI;gBACV,CAAC,CAAC,QAAQ,UAAU,CAAC,YAAY,UAAU;gBAC3C,CAAC,CAAC,MAAM,KAAK,IAAI;oBACf,CAAC,CAAC,QAAQ,UAAU,CAAC,YAAY,2BAA2B,MAAM,GAAG;oBACrE,CAAC,CAAC,QAAQ,UAAU,CAAC,YAAY,+BAA+B;SACrE,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;QAChD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,CAAC,YAAY,KAAK,CAAC;gBAAE,SAAS,CAAC,6BAA6B;YACnE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9F,CAAC;QACD,MAAM,UAAU,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnF,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC;YAC3B,IAAI,EAAE,KAAK;YACX,MAAM,EACJ,UAAU,CAAC,MAAM,KAAK,CAAC;gBACrB,CAAC,CAAC,uCAAuC;gBACzC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,QAAQ,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SAC1F,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,UAAU;QAChB,EAAE,EAAE,UAAU,CAAC,EAAE;QACjB,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,UAAU,CAAC,EAAE;YACnB,CAAC,CAAC,GAAG,kBAAkB,EAAE,KAAK,UAAU,CAAC,IAAI,CAAC,MAAM,kBAAkB;YACtE,CAAC,CAAC,UAAU,CAAC,OAAO;KACvB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,KAAK;QACX,EAAE,EAAE,UAAU,CAAC,QAAQ,KAAK,CAAC;QAC7B,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,UAAU,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,uBAAuB;KACvF,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC;QACV,IAAI,EAAE,KAAK;QACX,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,uBAAuB;KAC9E,CAAC,CAAC;IAEH,MAAM,UAAU,GACd,IAAI,KAAK,IAAI;QACX,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,MAAM,CAAC,EAAE;YACT,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9D,CAAC,CAAC,IAAI,CAAC;IACb,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,UAAU,KAAK,IAAI;QAC3C,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,sCAAsC,EAAE,CAAC;QAC9E,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,IAAI,CACzB,MAAM,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE,CAChC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACpB,MAAM,UAAU,GAAG,oBAAoB,CAAC;gBACtC,IAAI,EAAE,UAAU;gBAChB,cAAc;gBACd,MAAM;gBACN,aAAa,EAAE,IAAI;gBACnB,WAAW,EAAE,KAAK;gBAClB,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAC9B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,gBAAgB,CAAC,CAAC;YACvE,OAAO,UAAU,CAAC,MAAM,KAAK,CAAC;gBAC5B,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE;gBAC7C,CAAC,CAAC;oBACE,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,sDAAsD;iBACnF,CAAC;QACR,CAAC,CAAC,CACH,CACF,EACD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC,CAAC,CACzF,CAAC;IACN,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC;IAEtE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CACvC,QAAQ,EACR;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,CAAC;IACpF,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;CAClD,EACD,CAAC,KAAK,EAAE,EAAE,CACR,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/E,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAC9E,CAAC;IACF,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC,CACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/down.js
CHANGED
|
@@ -41,6 +41,7 @@ export const downCommand = Command.make("down", {
|
|
|
41
41
|
yield* report.action("compose-down");
|
|
42
42
|
if (flags.volumes)
|
|
43
43
|
yield* report.action("remove-volumes");
|
|
44
|
+
yield* report.setExtra("volumesRemoved", flags.volumes);
|
|
44
45
|
yield* finalizeDownState(ctx, flags);
|
|
45
|
-
})));
|
|
46
|
+
}))).pipe(Command.withDescription("stop this worktree's stack (--volumes to also delete data)"));
|
|
46
47
|
//# sourceMappingURL=down.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"down.js","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"down.js","sourceRoot":"","sources":["../../src/commands/down.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Effect, Option } from "effect";
|
|
2
|
+
import { Command } from "effect/unstable/cli";
|
|
3
|
+
import { EjectError } from "../errors/errors.js";
|
|
4
|
+
import type { ConfigLoadError, ConfigValidationError } from "../errors/errors.js";
|
|
5
|
+
import type { OdooAgenticDevConfig, OdooAgenticDevConfigInput, OdooImageBuild } from "../core/project-recipe.js";
|
|
6
|
+
import type { WorktreeContext } from "../core/worktree-context.js";
|
|
7
|
+
export type EjectTarget = "all" | "dockerfile" | "compose";
|
|
8
|
+
export declare const DEFAULT_DOCKERFILE_OUT = "Dockerfile.odoo";
|
|
9
|
+
export declare const DEFAULT_COMPOSE_OUT = "docker-compose.worktree.yml";
|
|
10
|
+
/**
|
|
11
|
+
* The ejected Dockerfile is byte-identical to the generated one except for the
|
|
12
|
+
* first line: ownership now belongs to the project, so the "do not edit" notice
|
|
13
|
+
* is replaced by a provenance stamp carrying the CLI version it was cut from.
|
|
14
|
+
*/
|
|
15
|
+
export declare const ejectedDockerfileHeader: (version: string) => string;
|
|
16
|
+
/** Render the ejected Dockerfile: the generated body with the header swapped. */
|
|
17
|
+
export declare const renderEjectedDockerfile: (odooVersion: string, cliVersion: string, build: OdooImageBuild) => string;
|
|
18
|
+
/** Regenerate a complete config file from a validated input object. */
|
|
19
|
+
export declare const serializeConfigFile: (input: OdooAgenticDevConfigInput) => string;
|
|
20
|
+
/**
|
|
21
|
+
* Whether the source contains `//` or `/*` OUTSIDE string/template literals.
|
|
22
|
+
* URLs like "http://x" inside strings do not count as comments.
|
|
23
|
+
*/
|
|
24
|
+
export declare const hasComments: (source: string) => boolean;
|
|
25
|
+
export type EjectChanges = {
|
|
26
|
+
/** config-relative compose file path, when compose was ejected */
|
|
27
|
+
readonly composeFile?: string;
|
|
28
|
+
/** config-relative dockerfile path, when the dockerfile was ejected */
|
|
29
|
+
readonly dockerfileFile?: string;
|
|
30
|
+
};
|
|
31
|
+
/** Apply ejected-file references to a validated input object (immutably). */
|
|
32
|
+
export declare const applyEjectToInput: (input: OdooAgenticDevConfigInput, changes: EjectChanges) => OdooAgenticDevConfigInput;
|
|
33
|
+
/** Human-readable, ready-to-apply patch describing the exact config edits. */
|
|
34
|
+
export declare const buildConfigPatch: (changes: EjectChanges) => string;
|
|
35
|
+
export type EjectResult = {
|
|
36
|
+
readonly written: ReadonlyArray<string>;
|
|
37
|
+
readonly configPatch: string;
|
|
38
|
+
readonly configWritten: boolean;
|
|
39
|
+
/** human notes (e.g. stock image: compose-only eject) */
|
|
40
|
+
readonly notes: ReadonlyArray<string>;
|
|
41
|
+
};
|
|
42
|
+
export type PerformEjectOptions = {
|
|
43
|
+
readonly recipe: OdooAgenticDevConfig;
|
|
44
|
+
readonly ctx: WorktreeContext;
|
|
45
|
+
readonly rootDir: string;
|
|
46
|
+
readonly target: EjectTarget;
|
|
47
|
+
readonly dockerfileOut: string;
|
|
48
|
+
readonly composeOut: string;
|
|
49
|
+
readonly force: boolean;
|
|
50
|
+
readonly writeConfig: boolean;
|
|
51
|
+
readonly configFlag: string | undefined;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Convert generated infra into project-owned files: render the portable compose
|
|
55
|
+
* model and (optionally) the ejected Dockerfile, write them as plain files, and
|
|
56
|
+
* either leave a config patch or regenerate the config in place.
|
|
57
|
+
*/
|
|
58
|
+
export declare const performEject: (options: PerformEjectOptions) => Effect.Effect<EjectResult, EjectError | ConfigLoadError | ConfigValidationError>;
|
|
59
|
+
/** The success payload printed (as one line) to stdout in `--json` mode. */
|
|
60
|
+
export declare const renderEjectJson: (result: EjectResult) => string;
|
|
61
|
+
/** The failure payload printed (as one line) to stdout in `--json` mode. */
|
|
62
|
+
export declare const renderEjectErrorJson: (error: {
|
|
63
|
+
readonly _tag: string;
|
|
64
|
+
readonly message: string;
|
|
65
|
+
}) => string;
|
|
66
|
+
export declare const ejectCommand: Command.Command<"eject", {
|
|
67
|
+
readonly target: Option.Option<string>;
|
|
68
|
+
readonly dockerfileOut: Option.Option<string>;
|
|
69
|
+
readonly composeOut: Option.Option<string>;
|
|
70
|
+
readonly force: boolean;
|
|
71
|
+
readonly writeConfig: boolean;
|
|
72
|
+
readonly json: boolean;
|
|
73
|
+
readonly config: Option.Option<string>;
|
|
74
|
+
}, {}, import("../errors/errors.js").RuntimeError, import("../platform/git.js").GitApi>;
|