@camunda8/cli 3.2.0-alpha.7 → 3.2.0-alpha.9

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 (57) hide show
  1. package/EXAMPLES.md +20 -0
  2. package/README.md +2 -1
  3. package/dist/commands/deploy.d.ts.map +1 -1
  4. package/dist/commands/deploy.js +250 -14
  5. package/dist/commands/deploy.js.map +1 -1
  6. package/dist/commands/helpers/deploy-helpers.d.ts +25 -1
  7. package/dist/commands/helpers/deploy-helpers.d.ts.map +1 -1
  8. package/dist/commands/helpers/deploy-helpers.js +172 -35
  9. package/dist/commands/helpers/deploy-helpers.js.map +1 -1
  10. package/dist/commands/profiles.d.ts.map +1 -1
  11. package/dist/commands/profiles.js +38 -3
  12. package/dist/commands/profiles.js.map +1 -1
  13. package/dist/commands/session.d.ts.map +1 -1
  14. package/dist/commands/session.js +26 -3
  15. package/dist/commands/session.js.map +1 -1
  16. package/dist/commands/watch.d.ts.map +1 -1
  17. package/dist/commands/watch.js +22 -4
  18. package/dist/commands/watch.js.map +1 -1
  19. package/dist/core/config.d.ts +28 -2
  20. package/dist/core/config.d.ts.map +1 -1
  21. package/dist/core/config.js +61 -5
  22. package/dist/core/config.js.map +1 -1
  23. package/dist/default-plugins/cluster/c8ctl-plugin.js +49 -8
  24. package/dist/framework/command-framework.d.ts +2 -0
  25. package/dist/framework/command-framework.d.ts.map +1 -1
  26. package/dist/framework/command-framework.js.map +1 -1
  27. package/dist/framework/command-registry.d.ts +8 -1
  28. package/dist/framework/command-registry.d.ts.map +1 -1
  29. package/dist/framework/command-registry.js +11 -1
  30. package/dist/framework/command-registry.js.map +1 -1
  31. package/dist/framework/index.d.ts +1 -0
  32. package/dist/framework/index.d.ts.map +1 -1
  33. package/dist/framework/index.js +1 -0
  34. package/dist/framework/index.js.map +1 -1
  35. package/dist/framework/plugins/plugin-loader.d.ts +8 -0
  36. package/dist/framework/plugins/plugin-loader.d.ts.map +1 -1
  37. package/dist/framework/plugins/plugin-loader.js.map +1 -1
  38. package/dist/framework/ui/prompt.d.ts +132 -0
  39. package/dist/framework/ui/prompt.d.ts.map +1 -0
  40. package/dist/framework/ui/prompt.js +298 -0
  41. package/dist/framework/ui/prompt.js.map +1 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +4 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/utils/command-local/deploy-version.d.ts +21 -0
  46. package/dist/utils/command-local/deploy-version.d.ts.map +1 -0
  47. package/dist/utils/command-local/deploy-version.js +31 -0
  48. package/dist/utils/command-local/deploy-version.js.map +1 -0
  49. package/dist/utils/index.d.ts +1 -0
  50. package/dist/utils/index.d.ts.map +1 -1
  51. package/dist/utils/index.js +1 -0
  52. package/dist/utils/index.js.map +1 -1
  53. package/dist/utils/shared/ignore.d.ts +12 -0
  54. package/dist/utils/shared/ignore.d.ts.map +1 -1
  55. package/dist/utils/shared/ignore.js +32 -0
  56. package/dist/utils/shared/ignore.js.map +1 -1
  57. package/package.json +1 -1
package/EXAMPLES.md CHANGED
@@ -669,6 +669,26 @@ c8 deploy
669
669
  c8 watch
670
670
  ```
671
671
 
672
+ ### Deploy Confirmation
673
+
674
+ When multiple profiles are configured, `c8 deploy` presents an interactive
675
+ profile picker to prevent deploying to the wrong cluster:
676
+
677
+ ```bash
678
+ # Shows an interactive profile selection menu
679
+ c8 deploy ./process.bpmn
680
+
681
+ # Skip the prompt with --yes / -y (uses active profile)
682
+ c8 deploy ./process.bpmn --yes
683
+ c8 deploy ./process.bpmn -y
684
+
685
+ # Explicit --profile also skips the prompt (target is unambiguous)
686
+ c8 deploy ./process.bpmn --profile=staging
687
+ ```
688
+
689
+ In non-interactive environments (CI, piped input), the deploy fails with
690
+ guidance to use `--profile` or `--yes` to make the target explicit.
691
+
672
692
  ### Run (Deploy + Start)
673
693
 
674
694
  ```bash
package/README.md CHANGED
@@ -663,6 +663,7 @@ These flags are accepted by every command.
663
663
  | `--verbose` | boolean | | Show verbose output |
664
664
  | `--fields` | string | | Comma-separated list of fields to display |
665
665
  | `--json` | boolean | | Force JSON output for this invocation (does not persist; overrides session state and C8CTL_OUTPUT_MODE) |
666
+ | `--yes` / `-y` | boolean | | Skip confirmation prompts |
666
667
 
667
668
  ### Resource Aliases
668
669
 
@@ -1557,7 +1558,7 @@ Remove a profile (alias: rm)
1557
1558
 
1558
1559
  **Positional arguments:**
1559
1560
 
1560
- - **profile:** `<name>` (required)
1561
+ - **profile:** `<name>` (optional)
1561
1562
 
1562
1563
  **Flags:**
1563
1564
 
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAoDH,eAAO,MAAM,aAAa,0EAkDxB,CAAC"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA2PH,eAAO,MAAM,aAAa,0EAoLxB,CAAC"}
@@ -9,9 +9,12 @@
9
9
  * and the call into the shared `deployResources` helper that watch also
10
10
  * uses for change-triggered re-deploys.
11
11
  */
12
- import { defineCommand } from "../framework/index.js";
13
- import { ALL_DEPLOYABLE_EXTENSIONS, DEPLOYABLE_EXTENSIONS, } from "../utils/index.js";
14
- import { collectResourcesForPaths, deployResources, logSkippedExtensions, } from "./helpers/deploy-helpers.js";
12
+ import { appendFileSync } from "node:fs";
13
+ import { basename, isAbsolute, join, relative, sep } from "node:path";
14
+ import { c8ctl, createClient, DEFAULT_PROFILE, getAllProfiles, getProfileOrModeler, readSkipDeployConfirm, saveSkipDeployConfirm, } from "../core/index.js";
15
+ import { defineCommand, isInteractive, select } from "../framework/index.js";
16
+ import { ALL_DEPLOYABLE_EXTENSIONS, DEPLOYABLE_EXTENSIONS, resolveIgnoreBaseDir, } from "../utils/index.js";
17
+ import { checkServerSupportsExtensions, collectResourcesForPaths, deployResources, logMessage, logSkippedExtensions, } from "./helpers/deploy-helpers.js";
15
18
  // ─── defineCommand ───────────────────────────────────────────────────────────
16
19
  /**
17
20
  * Resolve the effective extension allow-list from the deploy flags.
@@ -43,6 +46,151 @@ function resolveExtensionList(flags) {
43
46
  }
44
47
  return DEPLOYABLE_EXTENSIONS;
45
48
  }
49
+ /**
50
+ * Present an interactive menu when files are skipped during deployment
51
+ * due to extension filtering. Returns file paths to include in the
52
+ * deployment (empty if the user chose to ignore).
53
+ */
54
+ async function handleSkippedFiles(skippedFiles, skippedExtensions, basePath) {
55
+ if (skippedFiles.length === 0)
56
+ return [];
57
+ const exts = [...skippedExtensions].sort().join(", ");
58
+ const fileList = skippedFiles
59
+ .map((f) => relative(basePath, f) || basename(f))
60
+ .sort();
61
+ logMessage(`\nFound ${skippedFiles.length} file(s) with extensions not in the allow-list (${exts}):`);
62
+ for (const f of fileList) {
63
+ logMessage(` • ${f}`);
64
+ }
65
+ const result = await select({
66
+ message: "What do you want to do about these files?",
67
+ options: [
68
+ {
69
+ label: "Deploy them",
70
+ description: "include in this deployment only",
71
+ value: "deploy-once",
72
+ },
73
+ {
74
+ label: "Ignore them",
75
+ description: "skip for now",
76
+ value: "ignore",
77
+ },
78
+ {
79
+ label: "Deploy them always",
80
+ description: "remember to deploy these files in .c8ignore",
81
+ value: "deploy-always",
82
+ },
83
+ {
84
+ label: "Ignore them always",
85
+ description: "remember to skip these files in .c8ignore",
86
+ value: "ignore-always",
87
+ },
88
+ {
89
+ label: "Show me how to configure this",
90
+ description: "print instructions and exit",
91
+ value: "instructions",
92
+ },
93
+ ],
94
+ });
95
+ if (result.cancelled) {
96
+ return [];
97
+ }
98
+ const action = result.value;
99
+ if (action === "ignore") {
100
+ return [];
101
+ }
102
+ if (action === "deploy-once") {
103
+ return skippedFiles;
104
+ }
105
+ if (action === "deploy-always") {
106
+ // Guard against writing to a root-level .c8ignore when multiple
107
+ // unrelated deploy paths resolve the base to a filesystem root.
108
+ if (basePath === "/" || /^[A-Za-z]:\\?$/.test(basePath)) {
109
+ logMessage("\nCannot auto-update .c8ignore at the filesystem root." +
110
+ " Run deploy from a single project directory or edit .c8ignore manually.");
111
+ return skippedFiles;
112
+ }
113
+ const c8ignorePath = join(basePath, ".c8ignore");
114
+ // Prefix with "/" to anchor patterns to the .c8ignore base dir.
115
+ // Without anchoring, a root-level file like "notes.md" would
116
+ // match at any depth (e.g. subdir/notes.md).
117
+ // Skip files that are not under basePath — relative() would yield
118
+ // ".." segments or absolute paths that produce invalid patterns.
119
+ const patterns = [];
120
+ for (const f of skippedFiles) {
121
+ const rel = relative(basePath, f);
122
+ if (rel.startsWith("..") || isAbsolute(rel))
123
+ continue;
124
+ patterns.push(`!/${rel.split(sep).join("/")}`);
125
+ }
126
+ if (patterns.length === 0) {
127
+ logMessage("\nSkipped files are outside the project directory." +
128
+ " Edit .c8ignore manually to add negation patterns.");
129
+ return skippedFiles;
130
+ }
131
+ const block = `\n# Auto-added by c8ctl — always deploy these files\n${patterns.join("\n")}\n`;
132
+ appendFileSync(c8ignorePath, block);
133
+ logMessage(`\nAppended to ${relative(process.cwd(), c8ignorePath) || c8ignorePath}:`);
134
+ for (const p of patterns) {
135
+ logMessage(` ${p}`);
136
+ }
137
+ logMessage("\nFuture deploys will include these files automatically.\n");
138
+ // Include the skipped files in this deploy as well — the label
139
+ // says "Deploy them always", which implies "starting now".
140
+ return skippedFiles;
141
+ }
142
+ if (action === "ignore-always") {
143
+ // Guard against writing to a root-level .c8ignore when multiple
144
+ // unrelated deploy paths resolve the base to a filesystem root.
145
+ if (basePath === "/" || /^[A-Za-z]:\\?$/.test(basePath)) {
146
+ logMessage("\nCannot auto-update .c8ignore at the filesystem root." +
147
+ " Run deploy from a single project directory or edit .c8ignore manually.");
148
+ return [];
149
+ }
150
+ const c8ignorePath = join(basePath, ".c8ignore");
151
+ // Filter out the "<no extension>" sentinel — it has no valid glob representation
152
+ const realExtensions = [...skippedExtensions]
153
+ .filter((ext) => ext !== "<no extension>")
154
+ .sort();
155
+ if (realExtensions.length === 0) {
156
+ logMessage("\nAll skipped files have no extension — cannot auto-ignore by extension.");
157
+ logMessage("Add specific file patterns to .c8ignore manually.\n");
158
+ return [];
159
+ }
160
+ const patterns = realExtensions.map((ext) => `*${ext}`);
161
+ const block = `\n# Auto-added by c8ctl — ignore ${realExtensions.join(", ")} files\n${patterns.join("\n")}\n`;
162
+ appendFileSync(c8ignorePath, block);
163
+ logMessage(`\nAppended to ${relative(process.cwd(), c8ignorePath) || c8ignorePath}:`);
164
+ for (const p of patterns) {
165
+ logMessage(` ${p}`);
166
+ }
167
+ logMessage("");
168
+ return [];
169
+ }
170
+ // action === "instructions"
171
+ logMessage(`
172
+ Extension filtering controls which files are included when scanning directories.
173
+
174
+ Default allow-list: .bpmn, .dmn, .form
175
+
176
+ Flags:
177
+ --extensions=<ext> Add specific extensions (merged with defaults)
178
+ Example: c8 deploy --extensions=.md,.txt
179
+
180
+ --all-extensions Include all server-supported types
181
+ (.md, .txt, .xml, .rpa, .json, .config, .yml, .yaml)
182
+
183
+ --force Skip extension filtering entirely
184
+
185
+ Persistence:
186
+ .c8ignore Add *<ext> patterns to exclude files permanently
187
+ Example: echo "*.md" >> .c8ignore
188
+
189
+ Explicit files bypass the allow-list:
190
+ c8 deploy my-file.md (deploys regardless of extension)
191
+ `);
192
+ throw new Error("Exiting. Re-run deploy after configuring extension filtering.");
193
+ }
46
194
  export const deployCommand = defineCommand("deploy", "", async (ctx, flags) => {
47
195
  // Argument shape: `c8 deploy [path...]`. With no positional, default
48
196
  // to cwd. Pinned by tests/unit/deploy-behaviour.test.ts.
@@ -52,13 +200,70 @@ export const deployCommand = defineCommand("deploy", "", async (ctx, flags) => {
52
200
  ? ctx.positionals
53
201
  : ["."];
54
202
  // Resolve the active extension allow-list from flags.
55
- // Priority: --force (no filtering) > --all-extensions > --extensions > default
56
203
  const extensionList = resolveExtensionList(flags);
204
+ // ── Deploy target confirmation (interactive profile selector) ─────
205
+ let deployProfile = ctx.profile;
206
+ const ALWAYS_ACTIVE = Symbol("alwaysActive");
207
+ if (!ctx.yes && !ctx.profile) {
208
+ const profiles = getAllProfiles();
209
+ if (profiles.length > 1) {
210
+ const { activeProfile } = c8ctl;
211
+ const activeConfig = activeProfile != null ? getProfileOrModeler(activeProfile) : undefined;
212
+ const envIsEffectiveTarget = !!process.env.CAMUNDA_BASE_URL && activeConfig == null;
213
+ if (!envIsEffectiveTarget) {
214
+ const skipDeployConfirm = readSkipDeployConfirm();
215
+ if (!skipDeployConfirm) {
216
+ const effectiveName = activeProfile != null && activeConfig != null
217
+ ? activeProfile
218
+ : DEFAULT_PROFILE;
219
+ const defaultIndex = Math.max(0, profiles.findIndex((p) => p.name === effectiveName));
220
+ const profileOptions = profiles.map((p) => ({
221
+ label: p.name,
222
+ description: p.baseUrl,
223
+ value: p.name,
224
+ }));
225
+ profileOptions.push({
226
+ label: `Always use "${effectiveName}" (don't ask again)`,
227
+ description: "Persists to session — reset with: c8 use profile",
228
+ value: ALWAYS_ACTIVE,
229
+ });
230
+ const result = await select({
231
+ message: "Which profile do you want to deploy to?",
232
+ options: profileOptions,
233
+ initialIndex: defaultIndex,
234
+ nonInteractiveHint: "Hint: run interactively to choose, or use --profile=<name> to specify.",
235
+ });
236
+ if (result.cancelled) {
237
+ throw new Error("Deploy cancelled.");
238
+ }
239
+ else if (!result.interactive) {
240
+ throw new Error(`Multiple profiles configured but no profile specified.\n` +
241
+ `Use --profile=<name> or --yes to skip the prompt.\n` +
242
+ `Available profiles: ${profiles.map((p) => p.name).join(", ")}`);
243
+ }
244
+ else if (result.value === ALWAYS_ACTIVE) {
245
+ saveSkipDeployConfirm(true);
246
+ logMessage(`Future deploys will use the active profile without prompting. Reset with: c8 use profile <name>`);
247
+ }
248
+ else if (typeof result.value === "string" &&
249
+ result.value !== effectiveName) {
250
+ deployProfile = result.value;
251
+ }
252
+ }
253
+ }
254
+ }
255
+ }
57
256
  // Dry-run preview. Collect resources first so the preview body
58
257
  // reflects what would actually be sent — and so the empty-paths /
59
258
  // no-files guards still surface as thrown errors before we emit.
60
259
  // Uses `ctx.isDryRun` and `ctx.tenantId` from the framework rather
61
260
  // than reaching into the global runtime/config layer.
261
+ //
262
+ // Note: dry-run runs before the server version check, so on clusters
263
+ // <8.10 the preview may include extended-extension resources or
264
+ // deploy-always negation rules that the real deploy path would
265
+ // exclude. This is acceptable — dry-run is a best-effort preview
266
+ // and avoids an unnecessary HTTP call when only previewing.
62
267
  if (ctx.isDryRun) {
63
268
  const { resources: previewResources, skippedExtensions } = collectResourcesForPaths(paths, flags.force, extensionList);
64
269
  logSkippedExtensions(skippedExtensions);
@@ -66,7 +271,7 @@ export const deployCommand = defineCommand("deploy", "", async (ctx, flags) => {
66
271
  command: "deploy",
67
272
  method: "POST",
68
273
  endpoint: "/deployments",
69
- profile: ctx.profile,
274
+ profile: deployProfile,
70
275
  body: {
71
276
  tenantId: ctx.tenantId,
72
277
  resources: previewResources.map((r) => ({ name: r.name })),
@@ -75,16 +280,47 @@ export const deployCommand = defineCommand("deploy", "", async (ctx, flags) => {
75
280
  if (dr)
76
281
  return dr;
77
282
  }
78
- // Execute path: only reached when not in dry-run mode (the branch
79
- // above returns early). `deployResources` runs its own
80
- // `collectResourcesForPaths` internally and renders the success
81
- // table. Keeping the helper self-contained avoids threading
82
- // pre-collected state between the handler and the shared helper
83
- // used by `watch`.
84
- await deployResources(paths, {
85
- profile: ctx.profile,
283
+ // ── Pre-flight version check ──
284
+ // Skip the topology call when --force is set — extension filtering
285
+ // is bypassed entirely, so the result is unused.
286
+ const serverSupportsExtensions = flags.force
287
+ ? true
288
+ : await checkServerSupportsExtensions(createClient(deployProfile));
289
+ // ── Collect resources and handle skipped files interactively ──
290
+ // Fall back to the default allow-list on servers that don't support
291
+ // extended extensions (<8.10). Note: explicit file paths bypass
292
+ // extension filtering by design, so this only gates directory scans.
293
+ const userRequestedExtensions = !!flags["all-extensions"] ||
294
+ !!(flags.extensions && String(flags.extensions).trim());
295
+ const effectiveExtensions = serverSupportsExtensions
296
+ ? extensionList
297
+ : DEPLOYABLE_EXTENSIONS;
298
+ if (!serverSupportsExtensions && userRequestedExtensions) {
299
+ logMessage(`Warning: server does not support extended extensions (requires 8.10+). ` +
300
+ `Falling back to default extensions (${DEPLOYABLE_EXTENSIONS.join(", ")}). ` +
301
+ `Use --force to deploy all files regardless.`);
302
+ }
303
+ const { skippedFiles, skippedExtensions, effectivePaths: resolvedPaths, } = collectResourcesForPaths(paths, flags.force, effectiveExtensions, serverSupportsExtensions);
304
+ // Use the effective (possibly PA-expanded) paths for .c8ignore and
305
+ // display-path resolution so patterns align with the scan root.
306
+ const basePath = resolveIgnoreBaseDir(resolvedPaths);
307
+ let extraPaths = [];
308
+ if (skippedFiles.length > 0 &&
309
+ !ctx.yes &&
310
+ serverSupportsExtensions &&
311
+ isInteractive()) {
312
+ extraPaths = await handleSkippedFiles(skippedFiles, skippedExtensions, basePath);
313
+ }
314
+ else if (skippedFiles.length > 0) {
315
+ logSkippedExtensions(skippedExtensions);
316
+ }
317
+ await deployResources([...paths, ...extraPaths], {
318
+ profile: deployProfile,
86
319
  force: flags.force,
87
- extensionList,
320
+ extensionList: effectiveExtensions,
321
+ suppressSkippedLog: skippedFiles.length > 0,
322
+ loadDeployAlways: serverSupportsExtensions,
323
+ basePath,
88
324
  verbose: ctx.verbose,
89
325
  });
90
326
  return { kind: "none" };
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,24 @@
6
6
  * - `src/commands/deploy.ts` (the `deployCommand` handler)
7
7
  * - `src/commands/watch.ts` (change-triggered re-deploys)
8
8
  */
9
+ import type { CamundaClient } from "@camunda8/orchestration-cluster-api";
10
+ /**
11
+ * Helper to output messages that respect JSON mode for Unix pipe compatibility
12
+ */
13
+ export declare function logMessage(message: string): void;
9
14
  /**
10
15
  * Format and log a hint about skipped file extensions.
11
16
  * Shared between the dry-run preview and the execute path so the
12
17
  * message stays consistent. See https://github.com/camunda/c8ctl/issues/350
13
18
  */
14
19
  export declare function logSkippedExtensions(skippedExtensions: Set<string>): void;
20
+ /**
21
+ * Check whether the connected Camunda server supports extended file extensions.
22
+ * Returns `true` for 8.10+, `false` for older versions.
23
+ * Falls back to `false` on any error (network, auth, unparseable version)
24
+ * so unsupported resource types are not deployed to older clusters.
25
+ */
26
+ export declare function checkServerSupportsExtensions(client: CamundaClient): Promise<boolean>;
15
27
  interface ResourceFile {
16
28
  path: string;
17
29
  name: string;
@@ -43,6 +55,7 @@ export declare function findProcessApplicationRoot(startDir: string): string | n
43
55
  interface CollectResult {
44
56
  resources: ResourceFile[];
45
57
  skippedExtensions: Set<string>;
58
+ skippedFiles: string[];
46
59
  /** Resolved base paths used for resource collection and display.
47
60
  * When PA detection fires, these are expanded to the PA root(s)
48
61
  * rather than the user-supplied input paths. Used downstream for
@@ -61,7 +74,10 @@ interface CollectResult {
61
74
  * @param extensionList - Active allow-list for directory discovery.
62
75
  * Defaults to `DEPLOYABLE_EXTENSIONS` (.bpmn, .dmn, .form).
63
76
  */
64
- export declare function collectResourcesForPaths(paths: string[], force?: boolean, extensionList?: readonly string[]): CollectResult;
77
+ export declare function collectResourcesForPaths(paths: string[], force?: boolean, extensionList?: readonly string[],
78
+ /** When false, skip loading deploy-always negation rules from .c8ignore.
79
+ * Used to suppress them on servers <8.10 that don't support extended extensions. */
80
+ loadDeployAlways?: boolean): CollectResult;
65
81
  /**
66
82
  * Internal helper: deploy the given paths to the cluster and render the
67
83
  * result table. Used by `deployCommand` (the standard CLI entry point)
@@ -89,6 +105,14 @@ export declare function deployResources(paths: string[], options: {
89
105
  * Callers do not need their own try/catch to suppress aborts.
90
106
  */
91
107
  signal?: AbortSignal;
108
+ /** When true, skip the skipped-extensions log (caller already handled it). */
109
+ suppressSkippedLog?: boolean;
110
+ /** When false, skip loading deploy-always negation rules from .c8ignore.
111
+ * Used to suppress them on servers <8.10 that don't support extended extensions. */
112
+ loadDeployAlways?: boolean;
113
+ /** Override base path for relative path display. When set, used instead
114
+ * of inferring from paths (avoids regression when extra file paths are appended). */
115
+ basePath?: string;
92
116
  /** Whether --verbose was set (surfaces raw errors with stack traces). */
93
117
  verbose?: boolean;
94
118
  }): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/helpers/deploy-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAwCH;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAOzE;AA2BD,UAAU,YAAY;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AA6DD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc1E;AA4KD;;;GAGG;AACH,UAAU,aAAa;IACtB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B;;;2EAGuE;IACvE,cAAc,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,CAAC,EAAE,OAAO,EACf,aAAa,GAAE,SAAS,MAAM,EAA0B,GACtD,aAAa,CAsGf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACpC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,GACC,OAAO,CAAC,IAAI,CAAC,CAsQf"}
1
+ {"version":3,"file":"deploy-helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/helpers/deploy-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAsBzE;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAMhD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAOzE;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CAClD,MAAM,EAAE,aAAa,GACnB,OAAO,CAAC,OAAO,CAAC,CAuBlB;AA2BD,UAAU,YAAY;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AA6DD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc1E;AA+LD;;;GAGG;AACH,UAAU,aAAa;IACtB,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;;;2EAGuE;IACvE,cAAc,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,CAAC,EAAE,OAAO,EACf,aAAa,GAAE,SAAS,MAAM,EAA0B;AACxD;qFACqF;AACrF,gBAAgB,UAAO,GACrB,aAAa,CAyHf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACpC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;yFACqF;IACrF,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;0FACsF;IACtF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,GACC,OAAO,CAAC,IAAI,CAAC,CAwVf"}