@basaltbytes/odoo-agentic-dev 0.1.0-beta.1 → 0.1.0-beta.2

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 CHANGED
@@ -24,117 +24,154 @@ 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). For an Odoo-only project:
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
- dockerfile: "Dockerfile",
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
- For a KRISS LAURE-like monorepo with a frontend companion app:
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
+ ## Configuration Reference
52
+
53
+ 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
54
 
57
55
  ```ts
58
56
  import { defineConfig } from "@basaltbytes/odoo-agentic-dev";
59
57
 
60
58
  export default defineConfig({
61
59
  project: {
62
- id: "kriss-laure",
63
- dbPrefix: "kl",
64
- sharedDatabase: "kl_e2e_demo",
65
- sharedBranches: ["main", "master", "dev", "develop", "development"]
60
+ id: "acme", // required — namespaces compose projects, labels, the registry
61
+ dbPrefix: "acme", // required — derived DBs are `<dbPrefix>_<branch-slug>`
62
+ sharedDatabase: "acme_dev", // default: none — one DB reused by long-lived branches,
63
+ // protected from deletion (needs --allow-shared)
64
+ sharedBranches: ["main", "master"], // default when sharedDatabase is set
65
+ stripBranchPrefixes: // default: ["feature","feat","bugfix","bug","hotfix","fix","chore","task"]
66
+ ["feature", "fix"], // at most ONE leading branch segment is stripped before slugging
66
67
  },
67
68
 
68
69
  ports: {
69
- odooBase: 18069,
70
- companionBase: 28028,
71
- range: 1000,
72
- hashAlgorithm: "posix-cksum"
70
+ odooBase: 18069, // default — Odoo port = odooBase + hash(db) % range
71
+ companionBase: 28000, // default — same formula per companion app
72
+ range: 1000, // default
73
+ hashAlgorithm: "fnv1a32", // default — "posix-cksum" reproduces bash `cksum` tooling
74
+ // so a migrated project keeps its exact ports
73
75
  },
74
76
 
75
77
  odoo: {
76
- version: "18.0-20250606",
77
- serviceName: "odoo",
78
- databaseServiceName: "db",
79
- configFile: "config/odoo.worktree.conf",
80
- dockerfile: "Dockerfile.odoo",
81
- imageName: "krisslaure-odoo-agentic-dev",
82
- addons: [
83
- { host: "backend/addons/Custom", container: "/mnt/extra-addons/Custom" },
84
- { host: "backend/addons/OCA", container: "/mnt/extra-addons/OCA" }
85
- ]
78
+ version: "18.0", // required — image tag, and part of the DB template cache key
79
+ serviceName: "odoo", // default — compose service to exec/log against
80
+ databaseServiceName: "db", // default
81
+ postgresImage: "postgres:16", // default
82
+ build: { // default: none — the CLI GENERATES a Dockerfile from this
83
+ aptPackages: ["tesseract-ocr"], // (FROM odoo:<version>, one apt layer, one pip layer, COPYs)
84
+ pipRequirements: ["backend/requirements.txt"],
85
+ pipPackages: ["requests"],
86
+ copy: [{ from: "backend/sql-script", to: "/opt/acme/sql-script" }],
87
+ },
88
+ dockerfile: "Dockerfile.odoo", // default: none — hand-written escape hatch, mutually
89
+ // exclusive with `build`; without either, the stock
90
+ // `odoo:<version>` image runs as-is
91
+ imageName: "acme-odoo:dev", // default: none — tag for the built image
92
+ dev: "xml,reload", // default — `--dev=` flags for the served Odoo; false disables
93
+ baseAddonsPath: // default — in-image addons dir, prepended to every
94
+ "/usr/lib/python3/dist-packages/odoo/addons", // --addons-path the CLI passes
95
+ configFile: "config/odoo.conf", // default: none — mounted read-only at /etc/odoo/odoo.conf
96
+ // (rarely needed: db connection, --database, --addons-path,
97
+ // and --no-database-list are all handled by the CLI)
98
+ source: "../odoo", // default: none — local Odoo checkout for `link-source`
99
+ addons: [ // required, at least one mount (host path relative to repo root)
100
+ { host: "addons", container: "/mnt/extra-addons/custom" },
101
+ // { host: "/abs/elsewhere", container: "/mnt/x", allowOutsideRepo: true },
102
+ ],
86
103
  },
87
104
 
88
105
  database: {
89
- initialModules: ["KL_setup", "KL_payment_demo"],
90
- withoutDemo: "all",
91
- postInit: [
92
- { type: "odoo-shell-file", file: "scripts/odoo-agentic-dev/post-init.py" }
93
- ]
106
+ initialModules: ["acme_core"], // default: [] — installed on first setup / reset-db
107
+ withoutDemo: "all", // default — `false` keeps Odoo demo data
108
+ postInit: [ // default: [] — run after EVERY database init or reset,
109
+ // and folded into the template-snapshot cache key
110
+ { type: "odoo-shell-file", file: "scripts/post-init.py" },
111
+ { type: "set-ir-config-parameter", key: "app.mobile.url", value: "$E2E_BASE_URL" },
112
+ // also: { type: "odoo-shell-inline", code: "..." }
113
+ // { type: "command", command: "pnpm", args: ["seed"], cwd: "tools" }
114
+ ],
94
115
  },
95
116
 
96
- setup: {
97
- submodules: true,
98
- packageManagers: [
117
+ setup: { // host-side workspace bootstrap — runs ONCE per worktree,
118
+ submodules: true, // default: false — git submodule update --init --recursive
119
+ packageManagers: [ // default: []
99
120
  { cwd: ".", command: "pnpm", args: ["install"] },
100
- { cwd: "frontend", command: "pnpm", args: ["install"] }
101
- ]
121
+ { cwd: "frontend", command: "pnpm", args: ["install"] },
122
+ ],
123
+ },
124
+
125
+ compose: {
126
+ file: "docker-compose.worktree.yml", // default: none — escape hatch replacing the generated
127
+ // compose file; it can interpolate ${ODOO_DATABASE:?} etc.
128
+ // Rarely needed: the generated file already builds the
129
+ // image, serves only the derived DB, sets --addons-path,
130
+ // dev mode, restart policies, and injects the context env.
102
131
  },
103
132
 
104
133
  worktree: {
105
- copyFiles: [".env.e2e"], // project-root files copied into a fresh worktree when present
106
- branchPrefix: "worktree-" // branch name for `worktree create <name>` (default)
134
+ copyFiles: [".env", ".env.e2e"], // default: [] — root files copied into fresh worktrees when present
135
+ branchPrefix: "worktree-", // default — branch name prefix for `worktree create <name>`
136
+ },
137
+
138
+ test: {
139
+ profiles: { // default: {} — `test --profile payment` appends these args
140
+ payment: ["--test-tags", "payment"],
141
+ },
142
+ },
143
+
144
+ envAliases: { // default: {} — compatibility names for existing tooling;
145
+ KL_WORKTREE_DB_NAME: "ODOO_DATABASE", // an alias may target any assembled env key,
146
+ E2E_PWA_PORT: "PWA_PORT", // including companion portEnv/urlEnv keys
107
147
  },
108
148
 
109
- companionApps: [
149
+ companionApps: [ // default: [] — processes `up` starts alongside Odoo
110
150
  {
111
- name: "pwa",
151
+ name: "pwa", // lowercase kebab, unique
112
152
  cwd: "frontend",
113
- command: "pnpm",
114
- args: ["dev", "--host", "0.0.0.0", "--strictPort"],
115
- portEnv: "PWA_PORT",
116
- urlEnv: "E2E_BASE_URL",
117
- env: {
118
- VITE_SERVICE_API_URL: "",
119
- VITE_ODOO_DATA_BASE_NAME: "$ODOO_DATABASE",
120
- VITE_E2E_PROXY_API_URL: "$ODOO_BASE_URL"
121
- }
122
- }
123
- ]
153
+ command: "sh", // args are NOT token-substituted — read env vars via the
154
+ args: ["-lc", 'pnpm dev --port "$PWA_PORT" --strictPort'], // shell (or the tool's own env support)
155
+ portEnv: "PWA_PORT", // optional — env var receiving the allocated port
156
+ urlEnv: "E2E_BASE_URL", // optional — env var receiving http://localhost:<port>
157
+ env: { // optional extra env; $VARS here ARE substituted from the context
158
+ VITE_API_URL: "$ODOO_BASE_URL",
159
+ },
160
+ },
161
+ ],
162
+
163
+ cleanup: {
164
+ maxAgeDays: 30, // default — age threshold for prune --older-than candidates
165
+ auto: false, // default — opt in to automatic pruning of gone-branch stacks
166
+ },
124
167
  });
125
168
  ```
126
169
 
127
- Ports are derived from a hash of the database name modulo `ports.range`. The default hash is FNV-1a 32-bit (`hashAlgorithm: "fnv1a32"`); set `hashAlgorithm: "posix-cksum"` to reproduce the POSIX `cksum` CRC so a project migrating from bash tooling that derives ports via `cksum <<< "$db"` keeps the exact same port per database.
170
+ 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
171
 
129
- Database names are derived from the branch: at most **one** leading type segment (`feature`, `feat`, `bugfix`, `bug`, `hotfix`, `fix`, `chore`, `task`) is stripped — `feature/fix/x` becomes `<dbPrefix>_fix_x` — then the remainder is sanitized and prefixed with `project.dbPrefix`. Set `project.stripBranchPrefixes` (for example `["release"]`) to replace the built-in list.
172
+ ### `setup` vs `database.postInit`
130
173
 
131
- Then:
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
- ```
174
+ 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
175
 
139
176
  ## Commands
140
177
 
package/dist/cli.js CHANGED
@@ -22,6 +22,7 @@ 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 { readFileSync } from "node:fs";
25
26
  import { CommandRunnerLive } from "./platform/command-runner.js";
26
27
  import { GitLive } from "./platform/git.js";
27
28
  import { DockerComposeLive } from "./platform/docker-compose.js";
@@ -50,7 +51,9 @@ const root = Command.make("odoo-agentic-dev").pipe(Command.withDescription("Agen
50
51
  worktreeCommand,
51
52
  ]));
52
53
  const services = Layer.mergeAll(GitLive, OdooLifecycleLive, ProcessSupervisorLive, StateStoreLive, PortProbeLive).pipe(Layer.provideMerge(DockerComposeLive), Layer.provideMerge(CommandRunnerLive), Layer.provideMerge(NodeServices.layer));
53
- const program = Command.runWith(root, { version: "0.1.0-beta.1" })(process.argv.slice(2)).pipe(Effect.provide(services), Effect.catch((error) => Effect.gen(function* () {
54
+ // ../package.json resolves from both dist/cli.js and src/cli.ts single version source
55
+ const { version } = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
56
+ const program = Command.runWith(root, { version })(process.argv.slice(2)).pipe(Effect.provide(services), Effect.catch((error) => Effect.gen(function* () {
54
57
  // ShowHelp is the cli library's control-flow signal: by the time it
55
58
  // reaches us the help text is already printed (bare invocation or
56
59
  // 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":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Effect, Schema } from "effect";
2
2
  import { ConfigValidationError } from "../errors/errors.js";
3
+ import { DEFAULT_BASE_ADDONS_PATH } from "../core/project-recipe.js";
3
4
  import { DEFAULT_STRIP_BRANCH_PREFIXES } from "../core/database-name.js";
4
5
  const AddonMountSchema = Schema.Struct({
5
6
  host: Schema.String,
@@ -52,6 +53,14 @@ const ConfigInputSchema = Schema.Struct({
52
53
  configFile: Schema.optional(Schema.String),
53
54
  dockerfile: Schema.optional(Schema.String),
54
55
  imageName: Schema.optional(Schema.String),
56
+ build: Schema.optional(Schema.Struct({
57
+ aptPackages: Schema.optional(Schema.Array(Schema.String)),
58
+ pipPackages: Schema.optional(Schema.Array(Schema.String)),
59
+ pipRequirements: Schema.optional(Schema.Array(Schema.String)),
60
+ copy: Schema.optional(Schema.Array(Schema.Struct({ from: Schema.String, to: Schema.String }))),
61
+ })),
62
+ dev: Schema.optional(Schema.Union([Schema.String, Schema.Literal(false)])),
63
+ baseAddonsPath: Schema.optional(Schema.String),
55
64
  addons: Schema.Array(AddonMountSchema),
56
65
  source: Schema.optional(Schema.String),
57
66
  }),
@@ -141,6 +150,28 @@ export const normalizeConfig = (input) => {
141
150
  input.project.sharedDatabase === undefined) {
142
151
  issues.push("project.sharedBranches is set but project.sharedDatabase is missing");
143
152
  }
153
+ if (input.odoo.build !== undefined) {
154
+ if (input.odoo.dockerfile !== undefined) {
155
+ issues.push("odoo.build and odoo.dockerfile are mutually exclusive — pick one");
156
+ }
157
+ const build = input.odoo.build;
158
+ const hasContent = (build.aptPackages?.length ?? 0) > 0 ||
159
+ (build.pipPackages?.length ?? 0) > 0 ||
160
+ (build.pipRequirements?.length ?? 0) > 0 ||
161
+ (build.copy?.length ?? 0) > 0;
162
+ if (!hasContent) {
163
+ issues.push("odoo.build must declare at least one of aptPackages, pipPackages, pipRequirements, copy");
164
+ }
165
+ // docker build context = project root, so sources can never escape it
166
+ for (const source of [
167
+ ...(build.pipRequirements ?? []),
168
+ ...(build.copy ?? []).map((entry) => entry.from),
169
+ ]) {
170
+ if (source.startsWith("/") || source === ".." || source.startsWith("../")) {
171
+ issues.push(`odoo.build path "${source}" must be inside the repo (it is copied into the docker build context)`);
172
+ }
173
+ }
174
+ }
144
175
  if (issues.length > 0)
145
176
  return Effect.fail(new ConfigValidationError({ issues }));
146
177
  return Effect.succeed({
@@ -161,6 +192,16 @@ export const normalizeConfig = (input) => {
161
192
  configFile: input.odoo.configFile ?? null,
162
193
  dockerfile: input.odoo.dockerfile ?? null,
163
194
  imageName: input.odoo.imageName ?? null,
195
+ build: input.odoo.build === undefined
196
+ ? null
197
+ : {
198
+ aptPackages: input.odoo.build.aptPackages ?? [],
199
+ pipPackages: input.odoo.build.pipPackages ?? [],
200
+ pipRequirements: input.odoo.build.pipRequirements ?? [],
201
+ copy: input.odoo.build.copy ?? [],
202
+ },
203
+ dev: input.odoo.dev ?? "xml,reload",
204
+ baseAddonsPath: input.odoo.baseAddonsPath ?? DEFAULT_BASE_ADDONS_PATH,
164
205
  addons: input.odoo.addons,
165
206
  source: input.odoo.source ?? null,
166
207
  },
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,9 @@
1
- import type { PostInitHook } from "./project-recipe.js";
1
+ import type { OdooAgenticDevConfig, PostInitHook } from "./project-recipe.js";
2
+ /**
3
+ * In-container `--addons-path`: the image's base addons plus every configured
4
+ * mount. Passed on every odoo invocation so projects need no odoo.conf for it.
5
+ */
6
+ export declare const containerAddonsPath: (recipe: OdooAgenticDevConfig) => string;
2
7
  export declare const psqlArgs: (dbService: string, sql: string) => Array<string>;
3
8
  export declare const terminateSessionsSql: (databaseName: string) => string;
4
9
  export declare const dropDatabaseSql: (databaseName: string) => string;
@@ -7,9 +12,9 @@ export declare const createFromTemplateSql: (databaseName: string, templateName:
7
12
  /** Replace `to`'s filestore with a copy of `from`'s (guarded: `from` may not exist). */
8
13
  export declare const copyFilestoreArgs: (odooService: string, from: string, to: string) => Array<string>;
9
14
  export declare const removeFilestoreArgs: (odooService: string, databaseName: string) => Array<string>;
10
- export declare const odooInitArgs: (odooService: string, databaseName: string, modules: ReadonlyArray<string>, withoutDemo: string | false) => Array<string>;
11
- export declare const odooUpdateArgs: (odooService: string, databaseName: string, modules: ReadonlyArray<string>) => Array<string>;
12
- export declare const odooShellArgs: (odooService: string, databaseName: string) => Array<string>;
15
+ export declare const odooInitArgs: (odooService: string, databaseName: string, addonsPath: string, modules: ReadonlyArray<string>, withoutDemo: string | false) => Array<string>;
16
+ export declare const odooUpdateArgs: (odooService: string, databaseName: string, addonsPath: string, modules: ReadonlyArray<string>) => Array<string>;
17
+ export declare const odooShellArgs: (odooService: string, databaseName: string, addonsPath: string) => Array<string>;
13
18
  export type OdooTestOptions = {
14
19
  readonly tags?: string | undefined;
15
20
  readonly file?: string | undefined;
@@ -17,7 +22,7 @@ export type OdooTestOptions = {
17
22
  readonly logLevel?: string | undefined;
18
23
  readonly extraArgs?: ReadonlyArray<string> | undefined;
19
24
  };
20
- export declare const odooTestArgs: (odooService: string, databaseName: string, options: OdooTestOptions) => Array<string>;
25
+ export declare const odooTestArgs: (odooService: string, databaseName: string, addonsPath: string, options: OdooTestOptions) => Array<string>;
21
26
  export declare const setIrConfigParameterCode: (key: string, value: string) => string;
22
27
  export type ExpandedHook = {
23
28
  readonly kind: "odoo-shell";
@@ -1,6 +1,11 @@
1
1
  import { substituteEnvTokens } from "./worktree-context.js";
2
2
  // All database names reaching these builders have passed assertSafeDatabaseName
3
3
  // (^[a-z][a-z0-9_]*$), which is what makes the string interpolation safe.
4
+ /**
5
+ * In-container `--addons-path`: the image's base addons plus every configured
6
+ * mount. Passed on every odoo invocation so projects need no odoo.conf for it.
7
+ */
8
+ export const containerAddonsPath = (recipe) => [recipe.odoo.baseAddonsPath, ...recipe.odoo.addons.map((mount) => mount.container)].join(",");
4
9
  export const psqlArgs = (dbService, sql) => [
5
10
  "exec",
6
11
  "-T",
@@ -40,30 +45,32 @@ export const removeFilestoreArgs = (odooService, databaseName) => [
40
45
  "-c",
41
46
  `rm -rf /var/lib/odoo/filestore/${databaseName}`,
42
47
  ];
43
- export const odooInitArgs = (odooService, databaseName, modules, withoutDemo) => [
48
+ export const odooInitArgs = (odooService, databaseName, addonsPath, modules, withoutDemo) => [
44
49
  "run",
45
50
  "--rm",
46
51
  odooService,
47
52
  "odoo",
48
53
  "-d",
49
54
  databaseName,
55
+ `--addons-path=${addonsPath}`,
50
56
  "-i",
51
57
  (modules.length > 0 ? modules : ["base"]).join(","),
52
58
  ...(withoutDemo === false ? [] : [`--without-demo=${withoutDemo}`]),
53
59
  "--stop-after-init",
54
60
  ];
55
- export const odooUpdateArgs = (odooService, databaseName, modules) => [
61
+ export const odooUpdateArgs = (odooService, databaseName, addonsPath, modules) => [
56
62
  "run",
57
63
  "--rm",
58
64
  odooService,
59
65
  "odoo",
60
66
  "-d",
61
67
  databaseName,
68
+ `--addons-path=${addonsPath}`,
62
69
  "-u",
63
70
  modules.join(","),
64
71
  "--stop-after-init",
65
72
  ];
66
- export const odooShellArgs = (odooService, databaseName) => [
73
+ export const odooShellArgs = (odooService, databaseName, addonsPath) => [
67
74
  "run",
68
75
  "--rm",
69
76
  "-T",
@@ -72,15 +79,17 @@ export const odooShellArgs = (odooService, databaseName) => [
72
79
  "shell",
73
80
  "-d",
74
81
  databaseName,
82
+ `--addons-path=${addonsPath}`,
75
83
  "--no-http",
76
84
  ];
77
- export const odooTestArgs = (odooService, databaseName, options) => [
85
+ export const odooTestArgs = (odooService, databaseName, addonsPath, options) => [
78
86
  "run",
79
87
  "--rm",
80
88
  odooService,
81
89
  "odoo",
82
90
  "-d",
83
91
  databaseName,
92
+ `--addons-path=${addonsPath}`,
84
93
  "--test-enable",
85
94
  ...(options.tags !== undefined ? ["--test-tags", options.tags] : []),
86
95
  ...(options.file !== undefined ? ["--test-file", options.file] : []),
@@ -1 +1 @@
1
- {"version":3,"file":"command-plan.js","sourceRoot":"","sources":["../../src/core/command-plan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-plan.js","sourceRoot":"","sources":["../../src/core/command-plan.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { containerAddonsPath } from "./command-plan.js";
2
+ import { GENERATED_DOCKERFILE_RELATIVE_PATH } from "./dockerfile-model.js";
1
3
  export const GENERATED_COMPOSE_RELATIVE_PATH = ".odoo-agentic-dev/compose.generated.yml";
2
4
  const hostPath = (host) => host.startsWith("/") || host.startsWith("./") || host.startsWith("../") ? host : `./${host}`;
3
5
  /**
@@ -16,9 +18,11 @@ export const buildComposeModel = (recipe, ctx) => {
16
18
  const dbService = recipe.odoo.databaseServiceName;
17
19
  const odooService = recipe.odoo.serviceName;
18
20
  const labels = buildOadLabels(recipe, ctx);
19
- const imageOrBuild = recipe.odoo.dockerfile !== null
21
+ const dockerfile = recipe.odoo.dockerfile ??
22
+ (recipe.odoo.build !== null ? GENERATED_DOCKERFILE_RELATIVE_PATH : null);
23
+ const imageOrBuild = dockerfile !== null
20
24
  ? {
21
- build: { context: ".", dockerfile: recipe.odoo.dockerfile },
25
+ build: { context: ".", dockerfile },
22
26
  ...(recipe.odoo.imageName !== null ? { image: recipe.odoo.imageName } : {}),
23
27
  }
24
28
  : { image: `odoo:${recipe.odoo.version}` };
@@ -26,6 +30,7 @@ export const buildComposeModel = (recipe, ctx) => {
26
30
  services: {
27
31
  [dbService]: {
28
32
  image: recipe.odoo.postgresImage,
33
+ restart: "unless-stopped",
29
34
  environment: { POSTGRES_USER: "odoo", POSTGRES_PASSWORD: "odoo", POSTGRES_DB: "postgres" },
30
35
  healthcheck: {
31
36
  test: ["CMD-SHELL", "pg_isready -U odoo -d postgres"],
@@ -38,8 +43,19 @@ export const buildComposeModel = (recipe, ctx) => {
38
43
  },
39
44
  [odooService]: {
40
45
  ...imageOrBuild,
46
+ restart: "unless-stopped",
41
47
  depends_on: { [dbService]: { condition: "service_healthy" } },
42
- environment: { HOST: dbService, USER: "odoo", PASSWORD: "odoo" },
48
+ // the official image's entrypoint turns HOST/USER/PASSWORD into db args;
49
+ // the full context env rides along for post-init scripts and in-container tests
50
+ environment: { HOST: dbService, USER: "odoo", PASSWORD: "odoo", ...ctx.env },
51
+ // serve exactly this worktree's database, with the db manager hidden
52
+ command: [
53
+ "odoo",
54
+ `--database=${ctx.databaseName}`,
55
+ "--no-database-list",
56
+ `--addons-path=${containerAddonsPath(recipe)}`,
57
+ ...(recipe.odoo.dev === false ? [] : [`--dev=${recipe.odoo.dev}`]),
58
+ ],
43
59
  // loopback-only: never expose the dev Odoo on the LAN by default
44
60
  ports: [`127.0.0.1:${ctx.odooHttpPort}:8069`],
45
61
  volumes: [
@@ -1 +1 @@
1
- {"version":3,"file":"compose-model.js","sourceRoot":"","sources":["../../src/core/compose-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose-model.js","sourceRoot":"","sources":["../../src/core/compose-model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,kCAAkC,EAAE,MAAM,uBAAuB,CAAC;AAO3E,MAAM,CAAC,MAAM,+BAA+B,GAAG,yCAAyC,CAAC;AAEzF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CACxC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;AAE/F;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,MAA4B,EAC5B,GAAoB,EACI,EAAE,CAAC,CAAC;IAC5B,qBAAqB,EAAE,GAAG;IAC1B,gCAAgC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;IACnD,8BAA8B,EAAE,GAAG,CAAC,YAAY;IAChD,8BAA8B,EAAE,GAAG,CAAC,OAAO;IAC3C,4BAA4B,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;CAC/C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAA4B,EAC5B,GAAoB,EACN,EAAE;IAChB,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;IAClD,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;IAC5C,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE3C,MAAM,UAAU,GACd,MAAM,CAAC,IAAI,CAAC,UAAU;QACtB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,YAAY,GAChB,UAAU,KAAK,IAAI;QACjB,CAAC,CAAC;YACE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE;YACnC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5E;QACH,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;IAE/C,OAAO;QACL,QAAQ,EAAE;YACR,CAAC,SAAS,CAAC,EAAE;gBACX,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa;gBAChC,OAAO,EAAE,gBAAgB;gBACzB,WAAW,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE;gBAC1F,WAAW,EAAE;oBACX,IAAI,EAAE,CAAC,WAAW,EAAE,gCAAgC,CAAC;oBACrD,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,EAAE;iBACZ;gBACD,OAAO,EAAE,CAAC,kCAAkC,CAAC;gBAC7C,MAAM;aACP;YACD,CAAC,WAAW,CAAC,EAAE;gBACb,GAAG,YAAY;gBACf,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE;gBAC7D,yEAAyE;gBACzE,gFAAgF;gBAChF,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE;gBAC5E,qEAAqE;gBACrE,OAAO,EAAE;oBACP,MAAM;oBACN,cAAc,GAAG,CAAC,YAAY,EAAE;oBAChC,oBAAoB;oBACpB,iBAAiB,mBAAmB,CAAC,MAAM,CAAC,EAAE;oBAC9C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;iBACnE;gBACD,iEAAiE;gBACjE,KAAK,EAAE,CAAC,aAAa,GAAG,CAAC,YAAY,OAAO,CAAC;gBAC7C,OAAO,EAAE;oBACP,wBAAwB;oBACxB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;oBAClF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI;wBACjC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC;wBAC7D,CAAC,CAAC,EAAE,CAAC;iBACR;gBACD,MAAM;aACP;SACF;QACD,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE;KAC3D,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAgC,EAAU,EAAE,CAChE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAEpE,MAAM,UAAU,GAAG,CAAC,IAAa,EAAE,MAAc,EAAiB,EAAE;IAClE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,YAAY,CAAC,IAAc,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC9E,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAC;YACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,CAAC,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC;gBAC1F,OAAO,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7D,CAAC;YACD,OAAO,CAAC,GAAG,GAAG,GAAG,GAAG,KAAK,YAAY,CAAC,KAAe,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,GAAG,YAAY,CAAC,IAAc,CAAC,EAAE,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,wFAAwF;AACxF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAmB,EAAU,EAAE,CAC/D,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { OdooImageBuild } from "./project-recipe.js";
2
+ export declare const GENERATED_DOCKERFILE_RELATIVE_PATH = ".odoo-agentic-dev/Dockerfile.generated";
3
+ /**
4
+ * Deterministic Dockerfile from `odoo.build`: FROM the official image, COPY
5
+ * declared files and requirements, one apt layer, one pip layer, back to the
6
+ * odoo user. Lists render in declaration order — same config, same bytes.
7
+ */
8
+ export declare const renderDockerfile: (version: string, build: OdooImageBuild) => string;
@@ -0,0 +1,34 @@
1
+ export const GENERATED_DOCKERFILE_RELATIVE_PATH = ".odoo-agentic-dev/Dockerfile.generated";
2
+ const requirementsTarget = (index) => `/tmp/oad-requirements-${index}.txt`;
3
+ /**
4
+ * Deterministic Dockerfile from `odoo.build`: FROM the official image, COPY
5
+ * declared files and requirements, one apt layer, one pip layer, back to the
6
+ * odoo user. Lists render in declaration order — same config, same bytes.
7
+ */
8
+ export const renderDockerfile = (version, build) => {
9
+ const lines = [
10
+ "# Generated by odoo-agentic-dev from `odoo.build` in the project config — do not edit.",
11
+ `FROM odoo:${version}`,
12
+ "USER root",
13
+ ];
14
+ build.pipRequirements.forEach((file, index) => {
15
+ lines.push(`COPY ${file} ${requirementsTarget(index)}`);
16
+ });
17
+ for (const entry of build.copy) {
18
+ lines.push(`COPY ${entry.from} ${entry.to}`);
19
+ }
20
+ if (build.aptPackages.length > 0) {
21
+ lines.push("RUN apt-get update \\", ` && apt-get install -y --no-install-recommends ${build.aptPackages.join(" ")} \\`, " && rm -rf /var/lib/apt/lists/*");
22
+ }
23
+ const pipArgs = [
24
+ ...build.pipRequirements.map((_, index) => `-r ${requirementsTarget(index)}`),
25
+ ...build.pipPackages,
26
+ ];
27
+ if (pipArgs.length > 0) {
28
+ // --break-system-packages: the official image's python is Debian-managed (PEP 668)
29
+ lines.push(`RUN python3 -m pip install --break-system-packages --ignore-installed ${pipArgs.join(" ")}`);
30
+ }
31
+ lines.push("USER odoo");
32
+ return lines.join("\n") + "\n";
33
+ };
34
+ //# sourceMappingURL=dockerfile-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dockerfile-model.js","sourceRoot":"","sources":["../../src/core/dockerfile-model.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kCAAkC,GAAG,wCAAwC,CAAC;AAE3F,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,yBAAyB,KAAK,MAAM,CAAC;AAE3F;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,KAAqB,EAAU,EAAE;IACjF,MAAM,KAAK,GAAkB;QAC3B,wFAAwF;QACxF,aAAa,OAAO,EAAE;QACtB,WAAW;KACZ,CAAC;IAEF,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5C,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IACH,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CACR,uBAAuB,EACvB,qDAAqD,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EACrF,oCAAoC,CACrC,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG;QACd,GAAG,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7E,GAAG,KAAK,CAAC,WAAW;KACrB,CAAC;IACF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,mFAAmF;QACnF,KAAK,CAAC,IAAI,CACR,yEAAyE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC7F,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACjC,CAAC,CAAC"}
@@ -48,14 +48,38 @@ export type OdooProjectConfig = {
48
48
  /** leading branch type segments stripped (at most one) before deriving the database name */
49
49
  readonly stripBranchPrefixes?: ReadonlyArray<string>;
50
50
  };
51
+ /**
52
+ * Declarative image customization: the CLI generates a Dockerfile from these
53
+ * (FROM odoo:<version>, apt install, pip install, COPY) so projects don't
54
+ * have to maintain one. All host paths are relative to the project root
55
+ * (the docker build context). Mutually exclusive with `odoo.dockerfile`.
56
+ */
57
+ export type OdooImageBuildConfig = {
58
+ readonly aptPackages?: ReadonlyArray<string>;
59
+ readonly pipPackages?: ReadonlyArray<string>;
60
+ /** requirements files copied into the image and `pip install -r`-ed */
61
+ readonly pipRequirements?: ReadonlyArray<string>;
62
+ readonly copy?: ReadonlyArray<{
63
+ readonly from: string;
64
+ readonly to: string;
65
+ }>;
66
+ };
67
+ /** Default in-image Odoo addons path (the official odoo image layout). */
68
+ export declare const DEFAULT_BASE_ADDONS_PATH = "/usr/lib/python3/dist-packages/odoo/addons";
51
69
  export type OdooRuntimeConfig = {
52
70
  readonly version: string;
53
71
  readonly serviceName?: string;
54
72
  readonly databaseServiceName?: string;
55
73
  readonly postgresImage?: string;
56
74
  readonly configFile?: string;
75
+ /** hand-written Dockerfile; prefer `build` and let the CLI generate one */
57
76
  readonly dockerfile?: string;
58
77
  readonly imageName?: string;
78
+ readonly build?: OdooImageBuildConfig;
79
+ /** `--dev=` value for the dev server (default "xml,reload"); false disables it */
80
+ readonly dev?: string | false;
81
+ /** in-image addons path prepended to the mounts in every --addons-path */
82
+ readonly baseAddonsPath?: string;
59
83
  readonly addons: ReadonlyArray<OdooAddonMount>;
60
84
  /** path to a local Odoo source checkout, or "docker-only" */
61
85
  readonly source?: string;
@@ -104,6 +128,16 @@ export type OdooAgenticDevConfigInput = {
104
128
  readonly auto?: boolean;
105
129
  };
106
130
  };
131
+ /** Normalized image build: every list present (possibly empty). */
132
+ export type OdooImageBuild = {
133
+ readonly aptPackages: ReadonlyArray<string>;
134
+ readonly pipPackages: ReadonlyArray<string>;
135
+ readonly pipRequirements: ReadonlyArray<string>;
136
+ readonly copy: ReadonlyArray<{
137
+ readonly from: string;
138
+ readonly to: string;
139
+ }>;
140
+ };
107
141
  /** Normalized config: every default applied, optionals resolved. */
108
142
  export type OdooAgenticDevConfig = {
109
143
  readonly project: {
@@ -127,6 +161,9 @@ export type OdooAgenticDevConfig = {
127
161
  readonly configFile: string | null;
128
162
  readonly dockerfile: string | null;
129
163
  readonly imageName: string | null;
164
+ readonly build: OdooImageBuild | null;
165
+ readonly dev: string | false;
166
+ readonly baseAddonsPath: string;
130
167
  readonly addons: ReadonlyArray<OdooAddonMount>;
131
168
  readonly source: string | null;
132
169
  };
@@ -5,6 +5,8 @@ export const CANONICAL_ENV_VARS = [
5
5
  "ODOO_HTTP_PORT",
6
6
  "ODOO_COMPOSE_PROJECT_NAME",
7
7
  ];
8
+ /** Default in-image Odoo addons path (the official odoo image layout). */
9
+ export const DEFAULT_BASE_ADDONS_PATH = "/usr/lib/python3/dist-packages/odoo/addons";
8
10
  /**
9
11
  * Identity helper preserving literal types. Runtime validation happens when the
10
12
  * CLI loads the file (config/schema.ts), so plain JS configs are covered too.
@@ -1 +1 @@
1
- {"version":3,"file":"project-recipe.js","sourceRoot":"","sources":["../../src/core/project-recipe.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,eAAe;IACf,aAAa;IACb,eAAe;IACf,gBAAgB;IAChB,2BAA2B;CACnB,CAAC;AA0JX;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAiC,EAA6B,EAAE,CAC3F,MAAM,CAAC"}
1
+ {"version":3,"file":"project-recipe.js","sourceRoot":"","sources":["../../src/core/project-recipe.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,eAAe;IACf,aAAa;IACb,eAAe;IACf,gBAAgB;IAChB,2BAA2B;CACnB,CAAC;AA+DX,0EAA0E;AAC1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,4CAA4C,CAAC;AA4HrF;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAiC,EAA6B,EAAE,CAC3F,MAAM,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export { CANONICAL_ENV_VARS, defineConfig } from "./core/project-recipe.js";
2
- export type { CanonicalEnvVar, CompanionAppConfig, OdooAddonMount, OdooAgenticDevConfig, OdooAgenticDevConfigInput, OdooDatabaseConfig, OdooProjectConfig, OdooRuntimeConfig, PackageManagerStep, PostInitHook, } from "./core/project-recipe.js";
2
+ export type { CanonicalEnvVar, CompanionAppConfig, OdooAddonMount, OdooAgenticDevConfig, OdooAgenticDevConfigInput, OdooDatabaseConfig, OdooImageBuild, OdooImageBuildConfig, OdooProjectConfig, OdooRuntimeConfig, PackageManagerStep, PostInitHook, } from "./core/project-recipe.js";
3
3
  export type { PortHashAlgorithm } from "./core/port-allocator.js";
@@ -3,6 +3,7 @@ import { dirname, isAbsolute, join, resolve } from "node:path";
3
3
  import { Context, Duration, Effect, Layer } from "effect";
4
4
  import { ComposeCommandError, DockerUnavailableError, tail } from "../errors/errors.js";
5
5
  import { buildComposeModel, GENERATED_COMPOSE_RELATIVE_PATH, renderComposeYaml, } from "../core/compose-model.js";
6
+ import { GENERATED_DOCKERFILE_RELATIVE_PATH, renderDockerfile } from "../core/dockerfile-model.js";
6
7
  import { CommandRunner } from "./command-runner.js";
7
8
  export const composeArgs = (ref, rest) => [
8
9
  "compose",
@@ -191,6 +192,9 @@ export const DockerComposeLive = Layer.effect(DockerCompose, Effect.gen(function
191
192
  try: () => {
192
193
  mkdirSync(dirname(file), { recursive: true });
193
194
  writeFileSync(file, renderComposeYaml(buildComposeModel(recipe, ctx)));
195
+ if (recipe.odoo.build !== null) {
196
+ writeFileSync(join(ctx.rootDir, GENERATED_DOCKERFILE_RELATIVE_PATH), renderDockerfile(recipe.odoo.version, recipe.odoo.build));
197
+ }
194
198
  },
195
199
  catch: (cause) => new ComposeCommandError({
196
200
  args: ["<prepare>"],
@@ -1 +1 @@
1
- {"version":3,"file":"docker-compose.js","sourceRoot":"","sources":["../../src/platform/docker-compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker-compose.js","sourceRoot":"","sources":["../../src/platform/docker-compose.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { readFileSync } from "node:fs";
2
2
  import { isAbsolute, resolve } from "node:path";
3
3
  import { Context, Effect, Layer } from "effect";
4
4
  import { ConfigLoadError, OdooCommandError, tail } from "../errors/errors.js";
5
- import { copyFilestoreArgs, createDatabaseSql, createFromTemplateSql, dropDatabaseSql, expandHook, odooInitArgs, odooShellArgs, odooTestArgs, odooUpdateArgs, psqlArgs, removeFilestoreArgs, terminateSessionsSql, } from "../core/command-plan.js";
5
+ import { containerAddonsPath, copyFilestoreArgs, createDatabaseSql, createFromTemplateSql, dropDatabaseSql, expandHook, odooInitArgs, odooShellArgs, odooTestArgs, odooUpdateArgs, psqlArgs, removeFilestoreArgs, terminateSessionsSql, } from "../core/command-plan.js";
6
6
  import { templateDbName } from "../core/environment.js";
7
7
  import { DockerCompose } from "./docker-compose.js";
8
8
  import { CommandRunner, runInheritedOrFail } from "./command-runner.js";
@@ -14,7 +14,7 @@ export const OdooLifecycleLive = Layer.effect(OdooLifecycle, Effect.gen(function
14
14
  const ensureDbReady = (recipe, ref) => compose
15
15
  .stream(ref, ["up", "-d", recipe.odoo.databaseServiceName])
16
16
  .pipe(Effect.andThen(compose.waitForDb(ref, recipe.odoo.databaseServiceName)));
17
- const runShellCode = (recipe, ctx, ref, code) => compose.run(ref, odooShellArgs(recipe.odoo.serviceName, ctx.databaseName), code);
17
+ const runShellCode = (recipe, ctx, ref, code) => compose.run(ref, odooShellArgs(recipe.odoo.serviceName, ctx.databaseName, containerAddonsPath(recipe)), code);
18
18
  return {
19
19
  resetDatabase: (recipe, ctx, options) => Effect.gen(function* () {
20
20
  const ref = yield* compose.prepareComposeFile(recipe, ctx);
@@ -24,7 +24,7 @@ export const OdooLifecycleLive = Layer.effect(OdooLifecycle, Effect.gen(function
24
24
  yield* compose.run(ref, psqlArgs(db, dropDatabaseSql(ctx.databaseName)));
25
25
  yield* compose.run(ref, psqlArgs(db, createDatabaseSql(ctx.databaseName)));
26
26
  yield* compose.run(ref, removeFilestoreArgs(recipe.odoo.serviceName, ctx.databaseName));
27
- const initArgs = odooInitArgs(recipe.odoo.serviceName, ctx.databaseName, options.modules ?? recipe.database.initialModules, options.withoutDemo ?? recipe.database.withoutDemo);
27
+ const initArgs = odooInitArgs(recipe.odoo.serviceName, ctx.databaseName, containerAddonsPath(recipe), options.modules ?? recipe.database.initialModules, options.withoutDemo ?? recipe.database.withoutDemo);
28
28
  yield* compose.stream(ref, initArgs).pipe(Effect.mapError(toOdooError));
29
29
  }),
30
30
  runPostInitHooks: (recipe, ctx) => Effect.gen(function* () {
@@ -88,7 +88,7 @@ export const OdooLifecycleLive = Layer.effect(OdooLifecycle, Effect.gen(function
88
88
  yield* ensureDbReady(recipe, ref);
89
89
  yield* compose.stream(ref, ["stop", recipe.odoo.serviceName]);
90
90
  yield* compose
91
- .stream(ref, odooUpdateArgs(recipe.odoo.serviceName, ctx.databaseName, modules))
91
+ .stream(ref, odooUpdateArgs(recipe.odoo.serviceName, ctx.databaseName, containerAddonsPath(recipe), modules))
92
92
  .pipe(Effect.mapError(toOdooError));
93
93
  if (options.restart) {
94
94
  yield* compose.stream(ref, ["up", "-d", recipe.odoo.serviceName]);
@@ -97,7 +97,7 @@ export const OdooLifecycleLive = Layer.effect(OdooLifecycle, Effect.gen(function
97
97
  runTests: (recipe, ctx, options) => Effect.gen(function* () {
98
98
  const ref = yield* compose.prepareComposeFile(recipe, ctx);
99
99
  yield* ensureDbReady(recipe, ref);
100
- const result = yield* compose.tryRun(ref, odooTestArgs(recipe.odoo.serviceName, ctx.databaseName, options));
100
+ const result = yield* compose.tryRun(ref, odooTestArgs(recipe.odoo.serviceName, ctx.databaseName, containerAddonsPath(recipe), options));
101
101
  return {
102
102
  exitCode: result.exitCode,
103
103
  stdoutTail: tail(result.stdout, 200),
@@ -1 +1 @@
1
- {"version":3,"file":"odoo-lifecycle.js","sourceRoot":"","sources":["../../src/platform/odoo-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAI9E,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,EACf,UAAU,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AA6CxE,MAAM,WAAW,GAAG,CAAC,CAAsB,EAAoB,EAAE,CAC/D,IAAI,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;AAEzF,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAmB,gCAAgC,CAAC,CAAC;AAEjG,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAC3C,aAAa,EACb,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC;IACrC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC;IAEpC,MAAM,aAAa,GAAG,CAAC,MAA4B,EAAE,GAAe,EAAE,EAAE,CACtE,OAAO;SACJ,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;SAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAEnF,MAAM,YAAY,GAAG,CACnB,MAA4B,EAC5B,GAAoB,EACpB,GAAe,EACf,IAAY,EACZ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;IAEtF,OAAO;QACL,aAAa,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,CACtC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3D,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC3C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC9E,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC3E,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;YACxF,MAAM,QAAQ,GAAG,YAAY,CAC3B,MAAM,CAAC,IAAI,CAAC,WAAW,EACvB,GAAG,CAAC,YAAY,EAChB,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,EACjD,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CACnD,CAAC;YACF,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC;QAEJ,gBAAgB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAChC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAClD,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3C,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACtB,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,KAAK,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;wBACrD,MAAM;oBACR,CAAC;oBACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;wBACvB,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;4BACpC,CAAC,CAAC,QAAQ,CAAC,IAAI;4BACf,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;wBACxC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;4BAC7B,GAAG,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC;4BACrC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;yBACvE,CAAC,CAAC;wBACH,KAAK,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;wBAC5C,MAAM;oBACR,CAAC;oBACD,KAAK,cAAc,CAAC,CAAC,CAAC;wBACpB,MAAM,GAAG,GACP,QAAQ,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;wBAChF,KAAK,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;4BAChC,OAAO,EAAE,QAAQ,CAAC,OAAO;4BACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,GAAG;4BACH,GAAG,EAAE,GAAG,CAAC,GAAG;4BACZ,MAAM,EAAE,SAAS,QAAQ,CAAC,OAAO,IAAI;yBACtC,CAAC,CAAC;wBACH,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEJ,gBAAgB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAChC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3D,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC3C,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC9E,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5D,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpF,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,GAAG,EACH,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,CAClE,CAAC;QACJ,CAAC,CAAC;QAEJ,mBAAmB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CACnC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3D,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC3C,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7C,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC9E,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,EAAE,qBAAqB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACpF,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAChB,GAAG,EACH,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,CAClE,CAAC;QACJ,CAAC,CAAC;QAEJ,aAAa,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3D,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC9D,KAAK,CAAC,CAAC,OAAO;iBACX,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;iBAC/E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;YACtC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC,CAAC;QAEJ,QAAQ,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,CACjC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC3D,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAClC,GAAG,EACH,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CACjE,CAAC;YACF,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;aACrC,CAAC;QACJ,CAAC,CAAC;KACL,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
1
+ {"version":3,"file":"odoo-lifecycle.js","sourceRoot":"","sources":["../../src/platform/odoo-lifecycle.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basaltbytes/odoo-agentic-dev",
3
- "version": "0.1.0-beta.1",
3
+ "version": "0.1.0-beta.2",
4
4
  "description": "Agent-friendly local Odoo development runtime: worktree-isolated databases, ports, and Docker Compose stacks",
5
5
  "keywords": [
6
6
  "agentic",