@inquir/compute-cli 0.4.3 → 0.4.4

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 (66) hide show
  1. package/README.md +57 -2
  2. package/dist/commands/admin-tenants.d.ts.map +1 -1
  3. package/dist/commands/admin-tenants.js +8 -7
  4. package/dist/commands/admin-tenants.js.map +1 -1
  5. package/dist/commands/admin.js +2 -2
  6. package/dist/commands/admin.js.map +1 -1
  7. package/dist/commands/apps-replicas.d.ts +27 -0
  8. package/dist/commands/apps-replicas.d.ts.map +1 -0
  9. package/dist/commands/apps-replicas.js +278 -0
  10. package/dist/commands/apps-replicas.js.map +1 -0
  11. package/dist/commands/apps.d.ts +5 -3
  12. package/dist/commands/apps.d.ts.map +1 -1
  13. package/dist/commands/apps.js +58 -15
  14. package/dist/commands/apps.js.map +1 -1
  15. package/dist/commands/compose.d.ts +29 -0
  16. package/dist/commands/compose.d.ts.map +1 -0
  17. package/dist/commands/compose.js +159 -0
  18. package/dist/commands/compose.js.map +1 -0
  19. package/dist/commands/logout.js +1 -1
  20. package/dist/commands/logout.js.map +1 -1
  21. package/dist/commands/mcp.d.ts.map +1 -1
  22. package/dist/commands/mcp.js +9 -1
  23. package/dist/commands/mcp.js.map +1 -1
  24. package/dist/commands/sandbox.d.ts +58 -0
  25. package/dist/commands/sandbox.d.ts.map +1 -0
  26. package/dist/commands/sandbox.js +462 -0
  27. package/dist/commands/sandbox.js.map +1 -0
  28. package/dist/index.js +9 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/lib/mcp-replica-tools.d.ts +10 -0
  31. package/dist/lib/mcp-replica-tools.d.ts.map +1 -0
  32. package/dist/lib/mcp-replica-tools.js +77 -0
  33. package/dist/lib/mcp-replica-tools.js.map +1 -0
  34. package/dist/lib/mcp-sandbox-tools.d.ts +30 -0
  35. package/dist/lib/mcp-sandbox-tools.d.ts.map +1 -0
  36. package/dist/lib/mcp-sandbox-tools.js +211 -0
  37. package/dist/lib/mcp-sandbox-tools.js.map +1 -0
  38. package/dist/lib/replica-roles.d.ts +22 -0
  39. package/dist/lib/replica-roles.d.ts.map +1 -0
  40. package/dist/lib/replica-roles.js +39 -0
  41. package/dist/lib/replica-roles.js.map +1 -0
  42. package/dist/lib/sandbox-api.d.ts +165 -0
  43. package/dist/lib/sandbox-api.d.ts.map +1 -0
  44. package/dist/lib/sandbox-api.js +241 -0
  45. package/dist/lib/sandbox-api.js.map +1 -0
  46. package/dist/lib/tar-safety.d.ts +17 -0
  47. package/dist/lib/tar-safety.d.ts.map +1 -0
  48. package/dist/lib/tar-safety.js +135 -0
  49. package/dist/lib/tar-safety.js.map +1 -0
  50. package/dist/utils/api.d.ts +31 -2
  51. package/dist/utils/api.d.ts.map +1 -1
  52. package/dist/utils/api.js +61 -2
  53. package/dist/utils/api.js.map +1 -1
  54. package/dist/utils/auth.d.ts.map +1 -1
  55. package/dist/utils/auth.js +2 -4
  56. package/dist/utils/auth.js.map +1 -1
  57. package/dist/utils/context.d.ts +7 -0
  58. package/dist/utils/context.d.ts.map +1 -1
  59. package/dist/utils/context.js +23 -1
  60. package/dist/utils/context.js.map +1 -1
  61. package/dist/utils/errors.d.ts +11 -0
  62. package/dist/utils/errors.d.ts.map +1 -1
  63. package/dist/utils/errors.js +42 -7
  64. package/dist/utils/errors.js.map +1 -1
  65. package/dist/utils/package-metadata.js +1 -1
  66. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apps-replicas.js","sourceRoot":"","sources":["../../src/commands/apps-replicas.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type AppNetworkPolicy, type AppPortSpec, type AppRuntimeSpec, type AppScalingPolicy, type ApiRequestOptions, type ApplicationDetail, type AppLocationStatus, type AppVolumeBackup, type AppBackupPolicy, type Build, type Release } from '../utils/api.js';
1
+ import { type AppNetworkPolicy, type AppNetworkPolicyInput, type AppPortSpec, type AppRuntimeSpec, type AppScalingPolicy, type ApiRequestOptions, type ApplicationDetail, type AppLocationStatus, type AppVolumeBackup, type AppBackupPolicy, type Build, type Release } from '../utils/api.js';
2
2
  import { type AppLogHistoryResponse, type AppRuntimeLogEntry, type AppRuntimeLogQuery } from '../sdk.js';
3
3
  export declare function appsCommand(args: string[]): Promise<void>;
4
4
  /**
@@ -38,7 +38,7 @@ export declare function parseDurationSeconds(value: string): number;
38
38
  /** Build the partial policy sent by `apps scale`; omitted values remain unchanged server-side. */
39
39
  export declare function buildScalingPatchFromFlags(args: string[], positionalActivation?: string): Partial<AppScalingPolicy>;
40
40
  type AppVolumeSpec = NonNullable<AppRuntimeSpec['volumes']>[number];
41
- /** `--volume name:/absolute/container/path[:ro]`; host paths are never accepted. */
41
+ /** `--volume name:/absolute/container/path[:ro][:size=<MB>]`; host paths are never accepted. */
42
42
  export declare function parseVolumeFlag(value: string): AppVolumeSpec;
43
43
  /** `--drain-grace <seconds>`: whole seconds, 0..3600, as the API's runtime schema. */
44
44
  export declare function parseDrainGraceFlag(value: string): number;
@@ -59,6 +59,8 @@ export declare function formatBackupPolicy(policy: AppBackupPolicy): string;
59
59
  * suggesting it.
60
60
  */
61
61
  export declare function emptyBackupsLines(appName: string, policy: AppBackupPolicy | undefined): string[];
62
+ /** A row's status as the CLI prints it: an empty volume's backup is READY (restorable) and says it is empty. */
63
+ export declare function formatBackupStatus(backup: Pick<AppVolumeBackup, 'status' | 'empty'>): string;
62
64
  /**
63
65
  * The refusals of `apps connect` and `apps connection-url`, told as what to do
64
66
  * next. The server's code and message are kept; the cause, the fix and the
@@ -133,7 +135,7 @@ export declare function buildNetworkPolicyPatch(input: {
133
135
  egress?: string;
134
136
  ingress?: string;
135
137
  current?: AppNetworkPolicy;
136
- }): AppNetworkPolicy | undefined;
138
+ }): AppNetworkPolicyInput | undefined;
137
139
  /** A build-sourced release is best named by its build; a pulled one by its ref. */
138
140
  export declare function describeImage(release: Pick<Release, 'imageSource' | 'buildId' | 'imageRef' | 'imageDigest'>): string;
139
141
  /** One line for a startup probe; defaults as the server applies them (src/apps/startup-probe.ts). */
@@ -1 +1 @@
1
- {"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/commands/apps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/commands/apps.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { alertsSubcommand, logHistorySubcommand, metricsSubcommand, OBSERVATION_
3
3
  import { RESOURCES_HELP, RESOURCES_VALUE_FLAGS, resourcesSubcommand } from './apps-resources.js';
4
4
  import { DESCRIBE_HELP, describeSubcommand } from './apps-describe.js';
5
5
  import { INSTANCES_HELP, instancesSubcommand, resolveReplicaAllocationId } from './apps-instances.js';
6
+ import { REPLICAS_HELP, REPLICAS_VALUE_FLAGS, replicasSubcommand, rolloutSubcommand, statefulScaleSubcommand } from './apps-replicas.js';
6
7
  import { followPromoteRollout } from './apps-promote.js';
7
8
  import { hasFlag, readFlagValue, readJsonFlag, readLimitFlag, readMultiFlag, readPositionalArgs, } from '../utils/args.js';
8
9
  import { listAppBackups, getAppBackup, createAppBackup, deleteAppBackup, restoreAppBackup, getAppConnectionUrl, connectApps, createApiClient, addApplicationDomain, archiveApplication, cancelBuild, createApplication, getBuild, listApplicationDomains, listBuilds, queueBuild, removeApplicationDomain, createRelease, redeployApplication, execInApplication, getAppLimits, getAppLocation, getApplication, getProject, getProductionReplacement, getRelease, listApplications, promoteRelease, isPromoteAccepted, requireAuth, resolveApplication, rollbackApplication, stopRelease, streamBuildLogs, streamReleaseLogs, updateApplication, wakeApplication, pauseApplication, verifyApplicationDomain, } from '../utils/api.js';
@@ -19,6 +20,7 @@ import { packSourceForUpload } from '../utils/source-pack.js';
19
20
  /** Value flags across every subcommand — readPositionalArgs must know them all. */
20
21
  const VALUE_FLAGS = [
21
22
  ...OBSERVATION_VALUE_FLAGS,
23
+ ...REPLICAS_VALUE_FLAGS,
22
24
  ...RESOURCES_VALUE_FLAGS,
23
25
  '--project',
24
26
  '--template',
@@ -120,6 +122,10 @@ export async function appsCommand(args) {
120
122
  return updateSubcommand(args, rest, apiOptions);
121
123
  case 'scale':
122
124
  return scaleSubcommand(args, rest, apiOptions);
125
+ case 'replicas':
126
+ return replicasSubcommand(args, rest, apiOptions);
127
+ case 'rollout':
128
+ return rolloutSubcommand(args, rest, apiOptions);
123
129
  case 'wake':
124
130
  return wakeSubcommand(args, rest, apiOptions);
125
131
  case 'pause':
@@ -164,6 +170,9 @@ function printAppsHelp() {
164
170
  'exec <app> [--replica <r>] -- <cmd> Run a command in production (one replica: name or index)',
165
171
  'update <app> Change env vars, ports, resources, egress, node selector',
166
172
  'scale <app> [mode] Set always/http/manual scaling (--replicas for always)',
173
+ 'scale <app> --replicas <n> --stateful Ordered replicas, each with its own volume and name (Alpha)',
174
+ 'replicas <app> [rebuild|delete-volume] Replicas of a stateful app: server, volume, release (Alpha)',
175
+ 'rollout <app> [--partition <n>] How a release reaches the replicas of a stateful app (Alpha)',
167
176
  'wake <app> Start a sleeping application',
168
177
  'pause <app> Stop an http/manual app (HTTP wakes only http mode)',
169
178
  "domain <app> [hostname] Bind a hostname (or list them); --verify / --remove; '*.example.com' needs --yes (not recommended)",
@@ -187,8 +196,9 @@ function printAppsHelp() {
187
196
  '--volume-runner <id> Pin volumes (and the container) to a worker runner',
188
197
  '--node-selector KEY=VALUE update: run only on servers with this node label (repeatable),',
189
198
  ' e.g. inquir.io/region=eu; --clear-node-selector removes it',
190
- '--location <id|auto> update (experimental): run in this location, e.g. nl or ru; auto',
191
- ' runs wherever there is capacity. Applies from the next deploy',
199
+ '--location <id|auto> create/update (experimental): run in this location, e.g. nl or ru; auto',
200
+ ' runs wherever there is capacity (inquir.yaml: services.web.location).',
201
+ ' Applies from the next deploy',
192
202
  '--set KEY=VALUE create/update: environment variable (repeatable)',
193
203
  '--unset KEY update: remove an environment variable and its production-only marker (repeatable)',
194
204
  '--memory <mb> Memory ceiling (default 512)',
@@ -427,22 +437,27 @@ const VOLUME_NAME_RE = /^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$/;
427
437
  const MAX_APP_VOLUMES = 16;
428
438
  // eslint-disable-next-line no-control-regex -- Container mount paths must reject control characters.
429
439
  const CONTROL_CHAR_RE = /[\u0000-\u001f\u007f]/;
430
- /** `--volume name:/absolute/container/path[:ro]`; host paths are never accepted. */
440
+ /** `--volume name:/absolute/container/path[:ro][:size=<MB>]`; host paths are never accepted. */
431
441
  export function parseVolumeFlag(value) {
432
442
  const separator = value.indexOf(':');
433
443
  const name = separator > 0 ? value.slice(0, separator) : '';
434
444
  let mountPath = separator > 0 ? value.slice(separator + 1) : '';
435
445
  let readOnly = false;
446
+ let sizeMb;
436
447
  if (/^[A-Za-z]:[\\/]/.test(mountPath)) {
437
448
  throw usageError(`Invalid --volume mount path '${mountPath}'`, `Volume targets are absolute paths inside the Linux container, for example data:/var/lib/data. ${MSYS_PATH_HINT}`);
438
449
  }
439
- const modifierAt = mountPath.lastIndexOf(':');
440
- if (modifierAt >= 0) {
450
+ // Trailing modifiers, each at most once: ro, size=<MB> (the same sizeMb inquir.yaml takes).
451
+ for (let modifierAt = mountPath.lastIndexOf(':'); modifierAt >= 0; modifierAt = mountPath.lastIndexOf(':')) {
441
452
  const modifier = mountPath.slice(modifierAt + 1);
442
- if (modifier !== 'ro') {
443
- throw usageError(`Invalid --volume modifier '${modifier}' in '${value}'`, 'inquir apps deploy <app> --volume data:/var/lib/data[:ro]');
453
+ const size = /^size=(\d{1,7})$/.exec(modifier);
454
+ if (modifier === 'ro' && !readOnly)
455
+ readOnly = true;
456
+ else if (size && sizeMb === undefined && Number(size[1]) >= 64 && Number(size[1]) <= 1048576)
457
+ sizeMb = Number(size[1]);
458
+ else {
459
+ throw usageError(`Invalid --volume modifier '${modifier}' in '${value}'`, 'inquir apps deploy <app> --volume data:/var/lib/data[:ro][:size=1024] (size in MB, 64 to 1048576)');
444
460
  }
445
- readOnly = true;
446
461
  mountPath = mountPath.slice(0, modifierAt);
447
462
  }
448
463
  if (!VOLUME_NAME_RE.test(name)) {
@@ -464,7 +479,7 @@ export function parseVolumeFlag(value) {
464
479
  ['/dev', '/proc', '/sys'].some((root) => normalized === root || normalized.startsWith(`${root}/`))) {
465
480
  throw usageError(`Invalid --volume mount path '${mountPath}'`, 'Mount below an application data directory, for example data:/var/lib/data');
466
481
  }
467
- return { name, mountPath: normalized, ...(readOnly ? { readOnly: true } : {}) };
482
+ return { name, mountPath: normalized, ...(readOnly ? { readOnly: true } : {}), ...(sizeMb !== undefined ? { sizeMb } : {}) };
468
483
  }
469
484
  function assertVolumeSet(volumes) {
470
485
  if (volumes.length > MAX_APP_VOLUMES) {
@@ -610,6 +625,7 @@ async function createAppSubcommand(args, positionals, apiOptions) {
610
625
  egress: readFlagValue(args, '--egress'),
611
626
  ingress: readFlagValue(args, '--ingress'),
612
627
  });
628
+ const location = parseLocationFlag(readFlagValue(args, '--location'));
613
629
  const project = await resolveCreateProject(args, apiOptions);
614
630
  const app = await createApplication({
615
631
  name,
@@ -620,6 +636,7 @@ async function createAppSubcommand(args, positionals, apiOptions) {
620
636
  runtime: buildRuntimeFromFlags(args),
621
637
  ...(Object.keys(envVars).length > 0 ? { envVars } : {}),
622
638
  ...(networkPolicy ? { networkPolicy } : {}),
639
+ ...(location ? { location } : {}),
623
640
  }, project.apiOptions).catch((error) => {
624
641
  // A worker runner pulls only a digest-pinned registry image, and this
625
642
  // installation has no mirror of the template's image yet.
@@ -693,6 +710,7 @@ export const SUBCOMMAND_HELP = {
693
710
  ...RESOURCES_HELP,
694
711
  ...DESCRIBE_HELP,
695
712
  ...INSTANCES_HELP,
713
+ ...REPLICAS_HELP,
696
714
  logs: [
697
715
  'Usage: inquir apps logs <app|release|build> [--tail <n>] [--no-follow] [--replica <name|index|allocation>]',
698
716
  ' Prints the last --tail lines (default 200, at most 2000), then follows new',
@@ -783,6 +801,12 @@ export const SUBCOMMAND_HELP = {
783
801
  'Examples:',
784
802
  ' inquir apps scale web always --replicas 2',
785
803
  ' inquir apps scale web http --idle-timeout 15m',
804
+ '',
805
+ 'Stateful replicas (Alpha: may change and has limits; keep backups of their data)',
806
+ ' An application with a volume: each replica its own volume and name',
807
+ ' inquir apps scale db --replicas 3 --stateful (scale.mode: stateful, as in inquir.yaml)',
808
+ ' inquir apps scale db --stateless back to identical replicas, from one replica',
809
+ ' --override change a scale key the deployed inquir.yaml manages (until the next Git deploy)',
786
810
  ],
787
811
  wake: [
788
812
  'Usage: inquir apps wake <app> [--json]',
@@ -937,13 +961,17 @@ export function emptyBackupsLines(appName, policy) {
937
961
  }
938
962
  return [`No backups for ${appName} yet — create one: inquir apps backups ${appName} create`];
939
963
  }
964
+ /** A row's status as the CLI prints it: an empty volume's backup is READY (restorable) and says it is empty. */
965
+ export function formatBackupStatus(backup) {
966
+ return backup.status === 'READY' && backup.empty === true ? 'READY (empty)' : backup.status;
967
+ }
940
968
  /** The one backup table: `create` prints it too, once the rows settle. */
941
969
  function renderBackupTable(items) {
942
970
  const keeps = items.some((b) => b.retention);
943
971
  printLine(formatTable(items.map((b) => ({
944
972
  id: b.id.slice(0, 8),
945
973
  volume: b.volumeName,
946
- status: b.status,
974
+ status: formatBackupStatus(b),
947
975
  trigger: b.trigger,
948
976
  size: formatBytes(b.sizeBytes ?? b.artifactSizeBytes),
949
977
  created: b.createdAt.replace('T', ' ').slice(0, 19),
@@ -986,7 +1014,7 @@ async function waitForBackups(applicationId, started, apiOptions, json, timeoutM
986
1014
  continue;
987
1015
  settled.set(row.id, current);
988
1016
  const size = current.status === 'READY' ? ` ${formatBytes(current.sizeBytes ?? current.artifactSizeBytes)}` : '';
989
- announce(`— ${current.volumeName} ${current.status}${size} (${formatElapsed(Date.now() - startedAt)}) —`);
1017
+ announce(`— ${current.volumeName} ${formatBackupStatus(current)}${size} (${formatElapsed(Date.now() - startedAt)}) —`);
990
1018
  }
991
1019
  if (settled.size === started.length)
992
1020
  return started.map((row) => settled.get(row.id));
@@ -1066,7 +1094,9 @@ async function backupsSubcommand(args, positionals, apiOptions) {
1066
1094
  const when = match.createdAt.replace('T', ' ').slice(0, 16);
1067
1095
  const summary = `${app.name} volume ${match.volumeName} from the ${when} backup (${formatBytes(match.sizeBytes ?? match.artifactSizeBytes)})`;
1068
1096
  if (!runtime().yes) {
1069
- const approved = await confirm(`Overwrite ${summary}? Everything written since ${when} is lost, and ${app.name} stops during the restore.`, false);
1097
+ // The backup of an empty volume restores as an empty volume: say so, it removes every file.
1098
+ const emptied = match.empty === true ? ` The volume was empty then: the restore removes every file in ${match.volumeName}.` : '';
1099
+ const approved = await confirm(`Overwrite ${summary}? Everything written since ${when} is lost, and ${app.name} stops during the restore.${emptied}`, false);
1070
1100
  if (!approved) {
1071
1101
  throw usageError(`Refusing to restore ${app.name} without confirmation`, `inquir apps backups ${identifier} restore ${match.id.slice(0, 8)} --yes`);
1072
1102
  }
@@ -1323,6 +1353,10 @@ export function printManifestEnvOutcome(queued) {
1323
1353
  const applied = Array.isArray(outcome.manifestEnv?.applied) ? outcome.manifestEnv.applied : [];
1324
1354
  if (applied.length > 0)
1325
1355
  printInfo(dim(` inquir.yaml env applied: ${applied.join(', ')}`));
1356
+ // networkPolicy / scaling / location the deploy applied (deferred and restored keys come as warnings).
1357
+ const settings = Array.isArray(outcome.manifestSettings?.applied) ? outcome.manifestSettings.applied : [];
1358
+ if (settings.length > 0)
1359
+ printInfo(dim(` inquir.yaml settings applied: ${settings.join(', ')}`));
1326
1360
  const warnings = Array.isArray(outcome.warnings) ? outcome.warnings : [];
1327
1361
  for (const warning of warnings)
1328
1362
  printWarning(` warning: ${warning}`);
@@ -1456,9 +1490,15 @@ async function runSourceBuild(applicationId, appName, args, apiOptions) {
1456
1490
  },
1457
1491
  }, apiOptions);
1458
1492
  if (!json) {
1459
- printInfo(queued.deduplicated
1460
- ? `Build ${queued.buildId.slice(0, 8)} reused (identical source already built)`
1461
- : `Build ${queued.buildId.slice(0, 8)} queued for ${appName}`);
1493
+ const image = queued.image === true ? queued.imageRef : undefined;
1494
+ printInfo(image
1495
+ ? `Build ${queued.buildId.slice(0, 8)}: inquir.yaml imageRef, nothing to build (deploys ${image})`
1496
+ : queued.deduplicated
1497
+ ? `Build ${queued.buildId.slice(0, 8)} reused (identical source already built)`
1498
+ : `Build ${queued.buildId.slice(0, 8)} queued for ${appName}`);
1499
+ // inquir.yaml keys the platform ignored (a typo is named, never silent).
1500
+ for (const warning of queued.warnings ?? [])
1501
+ printWarning(` warning: ${warning}`);
1462
1502
  }
1463
1503
  return waitForBuild(queued.buildId, apiOptions, {
1464
1504
  json, initial: queued, noLogs: queued.deduplicated || isTerminalBuildStatus(queued.status),
@@ -2347,6 +2387,9 @@ async function scaleSubcommand(args, positionals, apiOptions) {
2347
2387
  if (!identifier) {
2348
2388
  throw usageError('Missing application', 'inquir apps scale <app> <always|http|manual>');
2349
2389
  }
2390
+ // Stateful replicas: the scale block (scale.mode, scale.replicas), not the stateless policy.
2391
+ if (positionalActivation === undefined && await statefulScaleSubcommand(args, identifier, apiOptions))
2392
+ return;
2350
2393
  if (extra.length > 0) {
2351
2394
  throw usageError(`Unexpected argument '${extra[0]}'`, 'inquir apps scale <app> <always|http|manual>');
2352
2395
  }