container-superposition 0.1.9 → 0.1.11

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.
Files changed (50) hide show
  1. package/README.md +3 -0
  2. package/dist/scripts/generate-schema.d.ts +14 -0
  3. package/dist/scripts/generate-schema.d.ts.map +1 -0
  4. package/dist/scripts/generate-schema.js +406 -0
  5. package/dist/scripts/generate-schema.js.map +1 -0
  6. package/dist/tool/cli/args.d.ts.map +1 -1
  7. package/dist/tool/cli/args.js +1 -1
  8. package/dist/tool/cli/args.js.map +1 -1
  9. package/dist/tool/commands/adopt.d.ts.map +1 -1
  10. package/dist/tool/commands/adopt.js +14 -20
  11. package/dist/tool/commands/adopt.js.map +1 -1
  12. package/dist/tool/questionnaire/composer.d.ts.map +1 -1
  13. package/dist/tool/questionnaire/composer.js +186 -2
  14. package/dist/tool/questionnaire/composer.js.map +1 -1
  15. package/dist/tool/readme/readme-generator.d.ts.map +1 -1
  16. package/dist/tool/readme/readme-generator.js +1 -1
  17. package/dist/tool/readme/readme-generator.js.map +1 -1
  18. package/dist/tool/schema/project-config.d.ts +8 -1
  19. package/dist/tool/schema/project-config.d.ts.map +1 -1
  20. package/dist/tool/schema/project-config.js +180 -6
  21. package/dist/tool/schema/project-config.js.map +1 -1
  22. package/dist/tool/schema/types.d.ts +51 -1
  23. package/dist/tool/schema/types.d.ts.map +1 -1
  24. package/docs/README.md +1 -0
  25. package/docs/overlays.md +40 -0
  26. package/docs/specs/019-project-mounts/spec.md +176 -0
  27. package/docs/specs/020-superposition-yml-schema.md +83 -0
  28. package/docs/specs/021-deterministic-generated-readme/spec.md +70 -0
  29. package/docs/superposition-yml.md +481 -0
  30. package/overlays/ansible/README.md +163 -0
  31. package/overlays/ansible/devcontainer.patch.json +14 -0
  32. package/overlays/ansible/overlay.yml +18 -0
  33. package/overlays/argocd/README.md +158 -0
  34. package/overlays/argocd/devcontainer.patch.json +9 -0
  35. package/overlays/argocd/overlay.yml +17 -0
  36. package/overlays/argocd/setup.sh +29 -0
  37. package/overlays/argocd/verify.sh +14 -0
  38. package/overlays/pi/README.md +141 -0
  39. package/overlays/pi/devcontainer.patch.json +6 -0
  40. package/overlays/pi/overlay.yml +15 -0
  41. package/overlays/pi/setup.sh +28 -0
  42. package/overlays/pi/verify.sh +23 -0
  43. package/overlays/task/README.md +47 -0
  44. package/overlays/task/devcontainer.patch.json +9 -0
  45. package/overlays/task/overlay.yml +16 -0
  46. package/overlays/task/setup.sh +29 -0
  47. package/overlays/task/verify.sh +14 -0
  48. package/package.json +2 -1
  49. package/tool/schema/config.schema.json +77 -2
  50. package/tool/schema/superposition.schema.json +569 -0
package/README.md CHANGED
@@ -27,6 +27,8 @@ database:
27
27
  - postgres
28
28
  env:
29
29
  APP_ENV: development
30
+ mounts:
31
+ - "./local-tools:/workspace/tools"
30
32
  customizations:
31
33
  envTemplate:
32
34
  POSTGRES_PASSWORD: postgres
@@ -90,6 +92,7 @@ npx container-superposition migrate
90
92
  Start here:
91
93
 
92
94
  - [Docs index](https://github.com/veggerby/container-superposition/blob/main/docs/README.md)
95
+ - [**superposition.yml reference**](https://github.com/veggerby/container-superposition/blob/main/docs/superposition-yml.md) ← project file authoring guide
93
96
  - [Quick reference](https://github.com/veggerby/container-superposition/blob/main/docs/quick-reference.md)
94
97
  - [Adopt command](https://github.com/veggerby/container-superposition/blob/main/docs/adopt.md)
95
98
  - [Hash command](https://github.com/veggerby/container-superposition/blob/main/docs/hash.md)
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Auto-generate JSON Schema for superposition.yml.
4
+ *
5
+ * Enum values for stack, baseImage, target and editor are imported directly from the
6
+ * exported constants in tool/schema/project-config.ts so they stay in sync with the
7
+ * runtime validation logic. Overlay IDs are read from the live overlay registry.
8
+ *
9
+ * Output: tool/schema/superposition.schema.json
10
+ *
11
+ * Run via: npm run schema:generate
12
+ */
13
+ export {};
14
+ //# sourceMappingURL=generate-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-schema.d.ts","sourceRoot":"","sources":["../../scripts/generate-schema.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG"}
@@ -0,0 +1,406 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Auto-generate JSON Schema for superposition.yml.
4
+ *
5
+ * Enum values for stack, baseImage, target and editor are imported directly from the
6
+ * exported constants in tool/schema/project-config.ts so they stay in sync with the
7
+ * runtime validation logic. Overlay IDs are read from the live overlay registry.
8
+ *
9
+ * Output: tool/schema/superposition.schema.json
10
+ *
11
+ * Run via: npm run schema:generate
12
+ */
13
+ import * as fs from 'fs';
14
+ import * as path from 'path';
15
+ import { fileURLToPath } from 'url';
16
+ import { loadOverlaysConfig } from '../tool/schema/overlay-loader.js';
17
+ import { STACK_VALUES, BASE_IMAGE_VALUES, TARGET_VALUES, EDITOR_VALUES, PROJECT_ENV_TARGET_VALUES, PROJECT_MOUNT_TARGET_VALUES, } from '../tool/schema/project-config.js';
18
+ const __filename = fileURLToPath(import.meta.url);
19
+ const __dirname = path.dirname(__filename);
20
+ // Resolve repo root from both source (scripts/) and compiled (dist/scripts/) locations
21
+ const REPO_ROOT_CANDIDATES = [
22
+ path.join(__dirname, '..'), // scripts/ -> root
23
+ path.join(__dirname, '..', '..'), // dist/scripts/ -> root
24
+ ];
25
+ const REPO_ROOT = REPO_ROOT_CANDIDATES.find((c) => fs.existsSync(path.join(c, 'overlays')) && fs.existsSync(path.join(c, 'templates'))) ?? REPO_ROOT_CANDIDATES[0];
26
+ const OUTPUT_PATH = path.join(REPO_ROOT, 'tool', 'schema', 'superposition.schema.json');
27
+ function buildSchema(overlays, presetIds) {
28
+ // Non-preset overlay IDs (only these are valid in the `overlays` array field)
29
+ const overlayIds = overlays
30
+ .filter((o) => o.category !== 'preset')
31
+ .map((o) => o.id)
32
+ .sort();
33
+ // Per-category enums matching buildCategoryLookup() rules in project-config.ts:
34
+ // - database includes both 'database' and 'messaging' categories
35
+ const languageIds = overlays
36
+ .filter((o) => o.category === 'language')
37
+ .map((o) => o.id)
38
+ .sort();
39
+ const databaseIds = overlays
40
+ .filter((o) => o.category === 'database' || o.category === 'messaging')
41
+ .map((o) => o.id)
42
+ .sort();
43
+ const observabilityIds = overlays
44
+ .filter((o) => o.category === 'observability')
45
+ .map((o) => o.id)
46
+ .sort();
47
+ const cloudIds = overlays
48
+ .filter((o) => o.category === 'cloud')
49
+ .map((o) => o.id)
50
+ .sort();
51
+ const devIds = overlays
52
+ .filter((o) => o.category === 'dev')
53
+ .map((o) => o.id)
54
+ .sort();
55
+ const mountTargetValues = [...PROJECT_MOUNT_TARGET_VALUES];
56
+ const envTargetValues = [...PROJECT_ENV_TARGET_VALUES];
57
+ const mountEntry = {
58
+ oneOf: [
59
+ {
60
+ type: 'string',
61
+ description: 'Raw mount string (escape hatch)',
62
+ minLength: 1,
63
+ },
64
+ {
65
+ type: 'object',
66
+ description: 'Structured mount using source/destination fields',
67
+ required: ['source', 'destination'],
68
+ additionalProperties: false,
69
+ properties: {
70
+ source: { type: 'string', description: 'Mount source path or volume name' },
71
+ destination: {
72
+ type: 'string',
73
+ description: 'Mount destination path inside the container',
74
+ },
75
+ type: {
76
+ type: 'string',
77
+ enum: ['bind', 'volume', 'tmpfs'],
78
+ description: 'Mount type (default: bind)',
79
+ },
80
+ consistency: {
81
+ type: 'string',
82
+ enum: ['consistent', 'cached', 'delegated'],
83
+ description: 'Mount consistency mode',
84
+ },
85
+ cached: {
86
+ type: 'boolean',
87
+ description: 'Shorthand for consistency: cached',
88
+ },
89
+ readOnly: {
90
+ type: 'boolean',
91
+ description: 'Make the mount read-only',
92
+ },
93
+ target: {
94
+ type: 'string',
95
+ enum: mountTargetValues,
96
+ description: 'Routing target: auto (default) always routes to devcontainer.json mounts[]; composeVolume routes to docker-compose volumes (compose stack only)',
97
+ default: 'auto',
98
+ },
99
+ },
100
+ },
101
+ {
102
+ type: 'object',
103
+ description: 'Raw-value mount with optional routing target',
104
+ required: ['value'],
105
+ additionalProperties: false,
106
+ properties: {
107
+ value: {
108
+ type: 'string',
109
+ description: 'Raw mount string',
110
+ minLength: 1,
111
+ },
112
+ target: {
113
+ type: 'string',
114
+ enum: mountTargetValues,
115
+ description: 'Routing target override',
116
+ default: 'auto',
117
+ },
118
+ },
119
+ },
120
+ ],
121
+ };
122
+ const envVarEntry = {
123
+ oneOf: [
124
+ {
125
+ type: 'string',
126
+ description: 'String shorthand — target is auto-detected based on stack (plain→remoteEnv, compose→docker-compose environment)',
127
+ },
128
+ {
129
+ type: 'object',
130
+ description: 'Long form with explicit routing target',
131
+ required: ['value'],
132
+ additionalProperties: false,
133
+ properties: {
134
+ value: {
135
+ type: 'string',
136
+ description: 'Variable value (supports ${VAR} and ${VAR:-default} syntax)',
137
+ },
138
+ target: {
139
+ type: 'string',
140
+ enum: envTargetValues,
141
+ description: 'auto (default): plain→remoteEnv, compose→docker-compose environment; remoteEnv: always devcontainer.json; composeEnv: always docker-compose (compose only)',
142
+ default: 'auto',
143
+ },
144
+ },
145
+ },
146
+ ],
147
+ };
148
+ return {
149
+ $schema: 'http://json-schema.org/draft-07/schema#',
150
+ $id: 'https://raw.githubusercontent.com/veggerby/container-superposition/main/tool/schema/superposition.schema.json',
151
+ title: 'Superposition Project Configuration',
152
+ description: 'Schema for superposition.yml / .superposition.yml — the project configuration file for container-superposition. See https://github.com/veggerby/container-superposition for documentation.',
153
+ type: 'object',
154
+ additionalProperties: false,
155
+ properties: {
156
+ $schema: {
157
+ type: 'string',
158
+ description: 'JSON Schema reference URI',
159
+ },
160
+ stack: {
161
+ type: 'string',
162
+ enum: [...STACK_VALUES],
163
+ description: 'Base devcontainer template: plain (single image) or compose (multi-service Docker Compose)',
164
+ },
165
+ baseImage: {
166
+ type: 'string',
167
+ enum: [...BASE_IMAGE_VALUES],
168
+ description: 'Base OS image. Use "custom" together with customImage to specify an arbitrary image.',
169
+ default: 'bookworm',
170
+ },
171
+ customImage: {
172
+ type: 'string',
173
+ description: 'Fully-qualified Docker image reference. Only valid when baseImage is "custom".',
174
+ examples: ['ghcr.io/myorg/my-base:latest'],
175
+ },
176
+ containerName: {
177
+ type: 'string',
178
+ description: 'Sets the "name" field in devcontainer.json (displayed by VS Code)',
179
+ examples: ['My Web API'],
180
+ },
181
+ overlays: {
182
+ type: 'array',
183
+ description: 'Flat list of overlay IDs to include. Preferred over the legacy category arrays. Dependency resolution runs automatically.',
184
+ items: {
185
+ type: 'string',
186
+ enum: overlayIds,
187
+ description: 'Overlay identifier',
188
+ },
189
+ uniqueItems: true,
190
+ },
191
+ preset: {
192
+ type: 'string',
193
+ enum: presetIds,
194
+ description: 'ID of a preset (meta-overlay) to expand. Use cs list --presets to browse available presets.',
195
+ },
196
+ presetChoices: {
197
+ type: 'object',
198
+ description: 'Parameter values passed to the selected preset. Keys depend on the preset definition.',
199
+ additionalProperties: { type: 'string' },
200
+ },
201
+ outputPath: {
202
+ type: 'string',
203
+ description: 'Where to write the generated devcontainer files. Default: .devcontainer',
204
+ default: './.devcontainer',
205
+ examples: ['./.devcontainer'],
206
+ },
207
+ portOffset: {
208
+ type: 'integer',
209
+ minimum: 0,
210
+ description: 'Shift all overlay-declared host ports by this integer. Useful for running multiple instances on one machine.',
211
+ examples: [100, 200],
212
+ },
213
+ target: {
214
+ type: 'string',
215
+ enum: [...TARGET_VALUES],
216
+ description: 'Deployment target profile. Applies environment-specific patches during generation.',
217
+ },
218
+ minimal: {
219
+ type: 'boolean',
220
+ description: 'When true, overlays marked with minimal: true in their overlay.yml are excluded. Useful for CI environments.',
221
+ },
222
+ editor: {
223
+ type: 'string',
224
+ enum: [...EDITOR_VALUES],
225
+ description: 'Editor profile: vscode (default, includes extensions/settings), jetbrains (removes VS Code config), none (removes VS Code config)',
226
+ default: 'vscode',
227
+ },
228
+ env: {
229
+ type: 'object',
230
+ description: 'Runtime environment variables. Routed to devcontainer.json remoteEnv or docker-compose environment based on stack and target.',
231
+ additionalProperties: envVarEntry,
232
+ },
233
+ mounts: {
234
+ oneOf: [
235
+ {
236
+ type: 'array',
237
+ description: 'List of filesystem mounts',
238
+ items: mountEntry,
239
+ },
240
+ {
241
+ type: 'object',
242
+ description: 'Named map of filesystem mounts',
243
+ additionalProperties: {
244
+ type: 'object',
245
+ description: 'Structured mount (named form; name is not serialized back)',
246
+ required: ['source', 'destination'],
247
+ additionalProperties: false,
248
+ properties: {
249
+ source: { type: 'string' },
250
+ destination: { type: 'string' },
251
+ type: { type: 'string', enum: ['bind', 'volume', 'tmpfs'] },
252
+ consistency: {
253
+ type: 'string',
254
+ enum: ['consistent', 'cached', 'delegated'],
255
+ },
256
+ cached: { type: 'boolean' },
257
+ readOnly: { type: 'boolean' },
258
+ target: {
259
+ type: 'string',
260
+ enum: mountTargetValues,
261
+ },
262
+ },
263
+ },
264
+ },
265
+ ],
266
+ },
267
+ shell: {
268
+ type: 'object',
269
+ description: 'Declarative shell profile customizations (aliases and snippets). Use env for environment variables.',
270
+ additionalProperties: false,
271
+ properties: {
272
+ aliases: {
273
+ type: 'object',
274
+ description: 'Shell aliases written to .devcontainer/scripts/shell-init.sh',
275
+ additionalProperties: { type: 'string' },
276
+ examples: [{ k: 'kubectl', kgp: 'kubectl get pods' }],
277
+ },
278
+ snippets: {
279
+ type: 'array',
280
+ description: 'Shell snippet lines appended to shell-init.sh. Guard shell-specific syntax with $BASH_VERSION / $ZSH_VERSION.',
281
+ items: { type: 'string' },
282
+ },
283
+ },
284
+ },
285
+ customizations: {
286
+ type: 'object',
287
+ description: 'Inline patches applied during generation (equivalent to .devcontainer/custom/ patches).',
288
+ additionalProperties: false,
289
+ properties: {
290
+ devcontainerPatch: {
291
+ type: 'object',
292
+ description: 'Deep-merged into devcontainer.json after all overlays are applied',
293
+ },
294
+ dockerComposePatch: {
295
+ type: 'object',
296
+ description: 'Deep-merged into docker-compose.yml after all overlays are applied (compose stack only)',
297
+ },
298
+ envTemplate: {
299
+ type: 'object',
300
+ description: 'Key/value pairs written to .devcontainer/.env.example',
301
+ additionalProperties: { type: 'string' },
302
+ },
303
+ environment: {
304
+ type: 'object',
305
+ description: 'Alias for envTemplate (deprecated; prefer envTemplate)',
306
+ additionalProperties: { type: 'string' },
307
+ },
308
+ scripts: {
309
+ type: 'object',
310
+ description: 'Shell commands appended to postCreate / postStart hooks',
311
+ additionalProperties: false,
312
+ properties: {
313
+ postCreate: {
314
+ type: 'array',
315
+ items: { type: 'string' },
316
+ description: 'Commands run once after container creation (postCreateCommand)',
317
+ },
318
+ postStart: {
319
+ type: 'array',
320
+ items: { type: 'string' },
321
+ description: 'Commands run each time the container starts (postStartCommand)',
322
+ },
323
+ },
324
+ },
325
+ files: {
326
+ type: 'array',
327
+ description: 'Extra files to write into the output directory',
328
+ items: {
329
+ type: 'object',
330
+ required: ['path', 'content'],
331
+ additionalProperties: false,
332
+ properties: {
333
+ path: { type: 'string', description: 'Destination path' },
334
+ content: { type: 'string', description: 'File content' },
335
+ },
336
+ },
337
+ },
338
+ },
339
+ },
340
+ parameters: {
341
+ type: 'object',
342
+ description: 'Overlay parameter values. Keys correspond to parameters declared in overlay.yml. Values substitute {{cs.KEY}} tokens throughout generated files.',
343
+ additionalProperties: {
344
+ oneOf: [{ type: 'string' }, { type: 'number' }],
345
+ description: 'Parameter value (strings and numbers are both accepted)',
346
+ },
347
+ },
348
+ // ── Legacy category arrays (deprecated; prefer overlays: [...]) ─────────
349
+ // Per-category enums match buildCategoryLookup() rules in project-config.ts.
350
+ language: {
351
+ type: 'array',
352
+ description: 'Deprecated — use overlays: [...] instead',
353
+ items: { type: 'string', enum: languageIds },
354
+ deprecated: true,
355
+ },
356
+ database: {
357
+ type: 'array',
358
+ description: 'Deprecated — use overlays: [...] instead',
359
+ items: { type: 'string', enum: databaseIds },
360
+ deprecated: true,
361
+ },
362
+ observability: {
363
+ type: 'array',
364
+ description: 'Deprecated — use overlays: [...] instead',
365
+ items: { type: 'string', enum: observabilityIds },
366
+ deprecated: true,
367
+ },
368
+ cloudTools: {
369
+ type: 'array',
370
+ description: 'Deprecated — use overlays: [...] instead',
371
+ items: { type: 'string', enum: cloudIds },
372
+ deprecated: true,
373
+ },
374
+ devTools: {
375
+ type: 'array',
376
+ description: 'Deprecated — use overlays: [...] instead',
377
+ items: { type: 'string', enum: devIds },
378
+ deprecated: true,
379
+ },
380
+ playwright: {
381
+ type: 'boolean',
382
+ description: 'Deprecated — use overlays: [playwright] instead',
383
+ deprecated: true,
384
+ },
385
+ },
386
+ };
387
+ }
388
+ // ── Main ──────────────────────────────────────────────────────────────────────
389
+ const overlaysDir = path.join(REPO_ROOT, 'overlays');
390
+ const indexYmlPath = path.join(overlaysDir, 'index.yml');
391
+ const config = loadOverlaysConfig(overlaysDir, indexYmlPath);
392
+ const nonPresetOverlays = config.overlays.filter((o) => o.category !== 'preset');
393
+ const presetIds = config.overlays
394
+ .filter((o) => o.category === 'preset')
395
+ .map((o) => o.id)
396
+ .sort();
397
+ const schema = buildSchema(nonPresetOverlays, presetIds);
398
+ const schemaJson = JSON.stringify(schema, null, 4) + '\n';
399
+ const outputDir = path.dirname(OUTPUT_PATH);
400
+ if (!fs.existsSync(outputDir)) {
401
+ fs.mkdirSync(outputDir, { recursive: true });
402
+ }
403
+ fs.writeFileSync(OUTPUT_PATH, schemaJson, 'utf8');
404
+ console.log(`✅ Generated superposition.yml schema at ${OUTPUT_PATH}`);
405
+ console.log(` Overlay IDs: ${nonPresetOverlays.length} Preset IDs: ${presetIds.length} Stack values: ${STACK_VALUES.join(', ')} Base images: ${BASE_IMAGE_VALUES.length}`);
406
+ //# sourceMappingURL=generate-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-schema.js","sourceRoot":"","sources":["../../scripts/generate-schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../tool/cli/args.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,oBAAoB,EAQvB,MAAM,oBAAoB,CAAC;AAW5B,MAAM,WAAW,OAAO;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CA+c5D"}
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../tool/cli/args.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,oBAAoB,EAQvB,MAAM,oBAAoB,CAAC;AAW5B,MAAM,WAAW,OAAO;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAkd5D"}
@@ -137,7 +137,7 @@ export async function parseCliArgs() {
137
137
  .description('Analyse an existing .devcontainer/ and suggest an equivalent overlay-based configuration')
138
138
  .option('-d, --dir <path>', 'Path to the existing .devcontainer directory (default: ./.devcontainer)')
139
139
  .option('--dry-run', 'Print analysis and suggested command only; no files written')
140
- .option('--force', 'Overwrite existing superposition.json if present')
140
+ .option('--force', 'Overwrite existing adopt outputs if present (project file, superposition.json, custom patches)')
141
141
  .option('--backup', 'Force backup creation even when inside a git repo (default: backup only outside git repos)')
142
142
  .option('--no-backup', 'Disable backup creation even when it would normally be performed')
143
143
  .option('--backup-dir <path>', 'Custom backup directory location')
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../tool/cli/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../tool/cli/args.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"adopt.d.ts","sourceRoot":"","sources":["../../../tool/commands/adopt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAGR,cAAc,EAGjB,MAAM,oBAAoB,CAAC;AA4B5B,UAAU,eAAe;IACrB,wCAAwC;IACxC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,kEAAkE;IAClE,oBAAoB,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,0CAA0C;IAC1C,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AA0ED,wBAAgB,oBAAoB,CAChC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,GAC/B,eAAe,CAgFjB;AAiCD,KAAK,mBAAmB,GAAG,OAAO,GAAG,WAAW,CAAC;AACjD,KAAK,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAExF,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,mBAAmB,CAAC;IAChC,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,UAAU,aAAa;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iFAAiF;IACjF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IACpD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAC/C,cAAc,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAWD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,CAexF;AAynBD,wBAAgB,mBAAmB,CAC/B,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,eAAe,EACvB,WAAW,EAAE,MAAM,GACpB,cAAc,CAsJhB;AAkDD,wBAAsB,YAAY,CAC9B,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,YAAY,iBA2TxB"}
1
+ {"version":3,"file":"adopt.d.ts","sourceRoot":"","sources":["../../../tool/commands/adopt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAGR,cAAc,EAGjB,MAAM,oBAAoB,CAAC;AA4B5B,UAAU,eAAe;IACrB,wCAAwC;IACxC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,kEAAkE;IAClE,oBAAoB,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,0CAA0C;IAC1C,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AA0ED,wBAAgB,oBAAoB,CAChC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,cAAc,GAC/B,eAAe,CAgFjB;AAiCD,KAAK,mBAAmB,GAAG,OAAO,GAAG,WAAW,CAAC;AACjD,KAAK,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAExF,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,mBAAmB,CAAC;IAChC,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,UAAU,aAAa;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,iFAAiF;IACjF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IACpD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAC/C,cAAc,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAWD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,CAexF;AAynBD,wBAAgB,mBAAmB,CAC/B,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,eAAe,EACvB,WAAW,EAAE,MAAM,GACpB,cAAc,CAsJhB;AAkDD,wBAAsB,YAAY,CAC9B,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,YAAY,iBAsTxB"}
@@ -927,21 +927,19 @@ export async function adoptCommand(overlaysConfig, overlaysDir, options) {
927
927
  return;
928
928
  }
929
929
  // ── Guard: existing files ──────────────────────────────────────────────
930
- // superposition.json and optional project config go to the project root
930
+ // superposition.json and superposition.yml/.superposition.yml go to the project root
931
931
  // (parent of .devcontainer/) so they can be committed alongside app code.
932
932
  const projectRoot = path.dirname(absoluteDir);
933
933
  const manifestPath = path.join(projectRoot, 'superposition.json');
934
934
  const customDir = path.join(absoluteDir, 'custom');
935
935
  const customPatchPath = path.join(customDir, 'devcontainer.patch.json');
936
936
  const customComposePath = path.join(customDir, 'docker-compose.patch.yml');
937
- const discoveredProjectFiles = options.projectFile ? findProjectConfig(projectRoot) : [];
937
+ const discoveredProjectFiles = findProjectConfig(projectRoot);
938
938
  if (discoveredProjectFiles.length > 1) {
939
- console.error(chalk.red(`✗ Found both supported project config files in ${projectRoot}. Keep only one before using --project-file.`));
939
+ console.error(chalk.red(`✗ Found both supported project config files in ${projectRoot}. Keep only one before continuing.`));
940
940
  process.exit(1);
941
941
  }
942
- const projectFilePath = options.projectFile
943
- ? (discoveredProjectFiles[0]?.path ?? path.join(projectRoot, '.superposition.yml'))
944
- : null;
942
+ const projectFilePath = discoveredProjectFiles[0]?.path ?? path.join(projectRoot, '.superposition.yml');
945
943
  const existingFiles = [];
946
944
  if (fs.existsSync(manifestPath))
947
945
  existingFiles.push(path.relative(process.cwd(), manifestPath));
@@ -961,13 +959,11 @@ export async function adoptCommand(overlaysConfig, overlaysDir, options) {
961
959
  }
962
960
  // ── Prompt ────────────────────────────────────────────────────────────
963
961
  const hasCustomFiles = analysis.customDevcontainerPatch || analysis.customComposePatch;
964
- const projectSelection = projectFilePath
965
- ? buildProjectConfigSelection(analysis, overlaysConfig, projectRoot, absoluteDir, devcontainer)
966
- : null;
962
+ const projectSelection = buildProjectConfigSelection(analysis, overlaysConfig, projectRoot, absoluteDir, devcontainer);
967
963
  let confirmed;
968
964
  try {
969
965
  confirmed = await confirm({
970
- message: `Generate superposition.json${projectFilePath ? ', project config' : ''}${hasCustomFiles ? ', and custom/ patch files' : ''} from these suggestions?`,
966
+ message: `Generate project config, superposition.json${hasCustomFiles ? ', and custom/ patch files' : ''} from these suggestions?`,
971
967
  default: true,
972
968
  });
973
969
  }
@@ -1025,15 +1021,13 @@ export async function adoptCommand(overlaysConfig, overlaysDir, options) {
1025
1021
  console.error(chalk.red('✗ Failed to write superposition.json:'), err);
1026
1022
  process.exit(1);
1027
1023
  }
1028
- if (projectFilePath && projectSelection) {
1029
- try {
1030
- writeProjectConfig(projectFilePath, projectSelection);
1031
- console.log(chalk.green(`✓ Written ${path.relative(process.cwd(), projectFilePath)}`));
1032
- }
1033
- catch (err) {
1034
- console.error(chalk.red('✗ Failed to write project config:'), err);
1035
- process.exit(1);
1036
- }
1024
+ try {
1025
+ writeProjectConfig(projectFilePath, projectSelection);
1026
+ console.log(chalk.green(`✓ Written ${path.relative(process.cwd(), projectFilePath)}`));
1027
+ }
1028
+ catch (err) {
1029
+ console.error(chalk.red('✗ Failed to write project config:'), err);
1030
+ process.exit(1);
1037
1031
  }
1038
1032
  // ── Write custom patches ───────────────────────────────────────────────
1039
1033
  if (hasCustomFiles) {
@@ -1069,7 +1063,7 @@ export async function adoptCommand(overlaysConfig, overlaysDir, options) {
1069
1063
  }
1070
1064
  }
1071
1065
  console.log(chalk.dim('\n💡 Next steps:\n' +
1072
- ' 1. Review and adjust superposition.json as needed\n' +
1066
+ ` 1. Review and adjust ${path.basename(projectFilePath)} as needed\n` +
1073
1067
  ' 2. Run: container-superposition regen\n' +
1074
1068
  (hasCustomFiles
1075
1069
  ? ' 3. Review custom/ patches — they will be merged automatically on every regen\n'