@prisma/compute-cli 0.4.0 → 0.6.0

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/dist/cli.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { parseEnvAssignments, parseEnvFromArgs } from "./commands/helpers.ts";
1
+ export { mergeEnvVars, parseEnvAssignments, parseEnvFromArgs, parseEnvVarsFromArgs, parseUnsetEnvFromArgs, parseUnsetEnvKeys, } from "./commands/helpers.ts";
2
2
  export declare const mainCommand: import("citty").CommandDef<import("citty").ArgsDef>;
3
3
  export declare function runCli(): Promise<void>;
4
4
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,eAAO,MAAM,WAAW,qDActB,CAAC;AAEH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5C"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AASA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,WAAW,qDActB,CAAC;AAEH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5C"}
package/dist/cli.js CHANGED
@@ -6,7 +6,7 @@ import { logoutCommand } from "./commands/logout.js";
6
6
  import { projectsGroup } from "./commands/projects.js";
7
7
  import { servicesGroup } from "./commands/services.js";
8
8
  import { versionsGroup } from "./commands/versions.js";
9
- export { parseEnvAssignments, parseEnvFromArgs } from "./commands/helpers.js";
9
+ export { mergeEnvVars, parseEnvAssignments, parseEnvFromArgs, parseEnvVarsFromArgs, parseUnsetEnvFromArgs, parseUnsetEnvKeys, } from "./commands/helpers.js";
10
10
  export const mainCommand = defineCommand({
11
11
  meta: {
12
12
  name: "compute",
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9E,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;IACvC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,oBAAoB;KAClC;IACD,WAAW,EAAE;QACX,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,aAAa;QACrB,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,aAAa;QACvB,QAAQ,EAAE,aAAa;QACvB,QAAQ,EAAE,aAAa;KACxB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;IACvC,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,oBAAoB;KAClC;IACD,WAAW,EAAE;QACX,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,aAAa;QACrB,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,aAAa;QACvB,QAAQ,EAAE,aAAa;QACvB,QAAQ,EAAE,aAAa;KACxB;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;AAC7B,CAAC"}
@@ -33,6 +33,10 @@ export declare const deployCommand: import("citty").CommandDef<{
33
33
  readonly type: "string";
34
34
  readonly description: "Environment variables (repeat --env KEY=VALUE)";
35
35
  };
36
+ readonly unsetEnv: {
37
+ readonly type: "string";
38
+ readonly description: "Remove environment variables (repeat --unset-env KEY)";
39
+ };
36
40
  readonly httpPort: {
37
41
  readonly type: "string";
38
42
  readonly description: "HTTP port your application listens on";
@@ -47,6 +51,16 @@ export declare const deployCommand: import("citty").CommandDef<{
47
51
  readonly default: "1000";
48
52
  readonly description: "Poll interval in milliseconds";
49
53
  };
54
+ readonly skipPromote: {
55
+ readonly type: "boolean";
56
+ readonly default: false;
57
+ readonly description: "Deploy the new version without promoting it to the service endpoint";
58
+ };
59
+ readonly destroyOldVersion: {
60
+ readonly type: "boolean";
61
+ readonly default: false;
62
+ readonly description: "Delete the old version after stopping it";
63
+ };
50
64
  readonly json: {
51
65
  readonly type: "boolean";
52
66
  readonly default: false;
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0GxB,CAAC"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0HxB,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import path from "node:path";
2
- import { BunBuild, ComputeClient, PreBuilt } from "@prisma/compute-sdk";
2
+ import { BunBuild, ComputeClient, PreBuilt, } from "@prisma/compute-sdk";
3
3
  import { defineCommand } from "citty";
4
4
  import { createDeployInteraction } from "../lib/interaction.js";
5
5
  import { printJsonResult } from "../lib/json-output.js";
6
6
  import { createDeployProgress } from "../lib/progress.js";
7
- import { endFlow, handleError, parseEnvFromArgs, parsePollOptions, parsePortMapping, printServiceIdHint, resolveServiceId, startFlow, withAuthAndSignal, } from "./helpers.js";
7
+ import { endFlow, handleError, parseEnvVarsFromArgs, parsePollOptions, parsePortMapping, resolveServiceId, startFlow, withAuthAndSignal, } from "./helpers.js";
8
8
  export const deployCommand = defineCommand({
9
9
  meta: { name: "deploy", description: "Build and deploy your application" },
10
10
  args: {
@@ -26,6 +26,10 @@ export const deployCommand = defineCommand({
26
26
  type: "string",
27
27
  description: "Environment variables (repeat --env KEY=VALUE)",
28
28
  },
29
+ unsetEnv: {
30
+ type: "string",
31
+ description: "Remove environment variables (repeat --unset-env KEY)",
32
+ },
29
33
  httpPort: {
30
34
  type: "string",
31
35
  description: "HTTP port your application listens on",
@@ -40,6 +44,16 @@ export const deployCommand = defineCommand({
40
44
  default: "1000",
41
45
  description: "Poll interval in milliseconds",
42
46
  },
47
+ skipPromote: {
48
+ type: "boolean",
49
+ default: false,
50
+ description: "Deploy the new version without promoting it to the service endpoint",
51
+ },
52
+ destroyOldVersion: {
53
+ type: "boolean",
54
+ default: false,
55
+ description: "Delete the old version after stopping it",
56
+ },
43
57
  json: { type: "boolean", default: false, description: "Output JSON" },
44
58
  },
45
59
  run: async ({ args, rawArgs }) => {
@@ -48,7 +62,7 @@ export const deployCommand = defineCommand({
48
62
  try {
49
63
  const sdk = new ComputeClient(managementClient);
50
64
  const appPath = path.resolve(process.cwd(), args.path);
51
- const envVars = parseEnvFromArgs(rawArgs);
65
+ const envVars = parseEnvVarsFromArgs(rawArgs);
52
66
  const portMapping = parsePortMapping(args.httpPort);
53
67
  const inputServiceId = resolveServiceId(args);
54
68
  let strategy;
@@ -61,6 +75,9 @@ export const deployCommand = defineCommand({
61
75
  else {
62
76
  strategy = new BunBuild({ appPath, entrypoint: args.entrypoint });
63
77
  }
78
+ if (args.skipPromote && args.destroyOldVersion) {
79
+ throw new Error("--destroy-old-version cannot be combined with --skip-promote");
80
+ }
64
81
  const result = await sdk.deploy({
65
82
  strategy,
66
83
  projectId: args.project,
@@ -73,6 +90,8 @@ export const deployCommand = defineCommand({
73
90
  interaction: args.json ? undefined : createDeployInteraction(),
74
91
  progress: args.json ? undefined : createDeployProgress(),
75
92
  signal,
93
+ skipPromote: args.skipPromote,
94
+ destroyOldVersion: args.destroyOldVersion,
76
95
  });
77
96
  if (args.json) {
78
97
  printJsonResult(result);
@@ -83,13 +102,7 @@ export const deployCommand = defineCommand({
83
102
  console.error(result.error.message);
84
103
  return 1;
85
104
  }
86
- console.log(`Version: ${result.value.versionId}`);
87
- console.log("");
88
- console.log("Deployment URL:");
89
- console.log(result.value.deploymentUrl);
90
- if (!inputServiceId) {
91
- printServiceIdHint(result.value.serviceId);
92
- }
105
+ printDeploySummary(result.value);
93
106
  endFlow(flowStarted, "Deploy flow completed.");
94
107
  return 0;
95
108
  }
@@ -101,4 +114,31 @@ export const deployCommand = defineCommand({
101
114
  process.exit(exitCode);
102
115
  },
103
116
  });
117
+ function printDeploySummary(result) {
118
+ console.log("");
119
+ console.log("─── Deploy Summary ───────────────────────────");
120
+ console.log("");
121
+ console.log(` New version: ${result.versionId} (running)`);
122
+ console.log(` Version URL: ${result.versionEndpointDomain}`);
123
+ if (result.promoted) {
124
+ console.log(` Service URL: ${result.serviceEndpointDomain}`);
125
+ }
126
+ if (result.previousVersionId) {
127
+ const actionLabel = result.previousVersionAction === "destroyed"
128
+ ? "deleted"
129
+ : result.previousVersionAction === "stopped"
130
+ ? "stopped"
131
+ : "still active";
132
+ console.log(` Old version: ${result.previousVersionId} (${actionLabel})`);
133
+ }
134
+ console.log("");
135
+ if (!result.promoted) {
136
+ console.log(" --skip-promote was set: the service endpoint was NOT updated.");
137
+ console.log(" The old version is still serving traffic on the service URL.");
138
+ console.log(" To promote this version later, run:");
139
+ console.log(` compute promote --service ${result.serviceId} --version ${result.versionId}`);
140
+ console.log("");
141
+ }
142
+ console.log("───────────────────────────────────────────────");
143
+ }
104
144
  //# sourceMappingURL=deploy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EACL,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC;IACzC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mCAAmC,EAAE;IAC1E,IAAI,EAAE;QACJ,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE;QACtD,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;QAC9D,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE;QACpE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yBAAyB,EAAE;QACtE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,gCAAgC;SAC9C;QACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE;QAC3E,SAAS,EAAE;YACT,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,uCAAuC;SACrD;QACD,GAAG,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,gDAAgD;SAC9D;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uCAAuC;SACrD;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,yBAAyB;SACvC;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,+BAA+B;SAC7C;QACD,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE;KACtE;IACD,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE;YACjC,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,yBAAyB,CAAC,CAAC;YAEvE,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,gBAAgB,CAAC,CAAC;gBAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC1C,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAEpD,MAAM,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAE9C,IAAI,QAA6B,CAAC;gBAClC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;wBACrB,MAAM,IAAI,KAAK,CACb,wDAAwD,CACzD,CAAC;oBACJ,CAAC;oBACD,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;gBACpE,CAAC;qBAAM,CAAC;oBACN,QAAQ,GAAG,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;gBACpE,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;oBAC9B,QAAQ;oBACR,SAAS,EAAE,IAAI,CAAC,OAAO;oBACvB,SAAS,EAAE,cAAc;oBACzB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,OAAO;oBACP,WAAW;oBACX,GAAG,gBAAgB,CAAC,IAAI,CAAC;oBACzB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,EAAE;oBAC9D,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,EAAE;oBACxD,MAAM;iBACP,CAAC,CAAC;gBAEH,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACd,eAAe,CAAC,MAAM,CAAC,CAAC;oBACxB,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC;gBAED,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;oBACnB,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;oBAC5C,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACpC,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBAExC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAC7C,CAAC;gBAED,OAAO,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC;gBAC/C,OAAO,CAAC,CAAC;YACX,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CACF,CAAC;QAEF,IAAI,QAAQ,KAAK,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"AAqGA,eAAO,MAAM,QAAQ,qDAGnB,CAAC"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"AA+GA,eAAO,MAAM,QAAQ,qDAGnB,CAAC"}
@@ -3,7 +3,7 @@ import { defineCommand } from "citty";
3
3
  import { createDeployInteraction } from "../lib/interaction.js";
4
4
  import { printJsonResult } from "../lib/json-output.js";
5
5
  import { createUpdateEnvProgress } from "../lib/progress.js";
6
- import { endFlow, handleError, parseEnvFromArgs, parsePollOptions, parsePortMapping, printServiceIdHint, resolveServiceId, startFlow, withAuthAndSignal, } from "./helpers.js";
6
+ import { endFlow, handleError, parseEnvVarsFromArgs, parsePollOptions, parsePortMapping, printServiceIdHint, resolveServiceId, startFlow, withAuthAndSignal, } from "./helpers.js";
7
7
  const envUpdateCommand = defineCommand({
8
8
  meta: {
9
9
  name: "update",
@@ -15,7 +15,10 @@ const envUpdateCommand = defineCommand({
15
15
  env: {
16
16
  type: "string",
17
17
  description: "Environment variables (repeat --env KEY=VALUE)",
18
- required: true,
18
+ },
19
+ unsetEnv: {
20
+ type: "string",
21
+ description: "Remove environment variables (repeat --unset-env KEY)",
19
22
  },
20
23
  httpPort: {
21
24
  type: "string",
@@ -38,8 +41,12 @@ const envUpdateCommand = defineCommand({
38
41
  const flowStarted = !args.json && startFlow("Prisma Compute · Env Update");
39
42
  try {
40
43
  const sdk = new ComputeClient(managementClient);
41
- const envVars = parseEnvFromArgs(rawArgs);
44
+ const envVars = parseEnvVarsFromArgs(rawArgs);
42
45
  const portMapping = parsePortMapping(args.httpPort);
46
+ if (!envVars && !portMapping) {
47
+ console.error("Nothing to update: provide --env, --unset-env, or --http-port");
48
+ return 1;
49
+ }
43
50
  const inputServiceId = resolveServiceId(args);
44
51
  const result = await sdk.updateEnv({
45
52
  projectId: args.project,
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/commands/env.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
1
  import type { ManagementApiClient } from "@prisma/management-api-sdk";
2
- import { isInteractiveSession } from "../lib/interaction.ts";
3
2
  export declare const PRISMA_COMPUTE_SERVICE_ID_ENV = "PRISMA_COMPUTE_SERVICE_ID";
4
3
  export declare function parseEnvAssignments(entries: string[]): Record<string, string>;
5
4
  export declare function parseEnvFromArgs(rawArgs: string[]): Record<string, string>;
5
+ export declare function parseUnsetEnvKeys(entries: string[]): string[];
6
+ export declare function parseUnsetEnvFromArgs(rawArgs: string[]): string[];
7
+ export declare function mergeEnvVars(setVars: Record<string, string>, unsetKeys: string[]): Record<string, string | null>;
8
+ export declare function parseEnvVarsFromArgs(rawArgs: string[]): Record<string, string | null> | undefined;
6
9
  export declare function parsePortMapping(httpPort: string | undefined): {
7
10
  http: number;
8
11
  } | undefined;
@@ -25,5 +28,4 @@ export declare function withAuthAndSignal(fn: (client: ManagementApiClient, sign
25
28
  export declare function handleError(error: unknown): number;
26
29
  export declare function startFlow(title: string): boolean;
27
30
  export declare function endFlow(started: boolean, message?: string): void;
28
- export { isInteractiveSession };
29
31
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/commands/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAqB,MAAM,uBAAuB,CAAC;AAEhF,eAAO,MAAM,6BAA6B,8BAA8B,CAAC;AAEzE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAe7E;AA6BD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAI1E;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAO9B;AAUD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;;;EAKA;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,GAAG,SAAS,CAIrB;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,wBAAgB,wBAAwB,IAAI;IAC1C,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,IAAI,IAAI,CAAC;CACjB,CAuBA;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,GACxE,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIlD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIhD;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,SAAU,GAAG,IAAI,CAEjE;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/commands/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAItE,eAAO,MAAM,6BAA6B,8BAA8B,CAAC;AAEzE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAe7E;AA8BD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1E;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAe7D;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAEjE;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,SAAS,EAAE,MAAM,EAAE,GAClB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAa/B;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAO3C;AAUD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAG9B;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;;;EAKA;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,GAAG,SAAS,CAIrB;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAI1D;AAED,wBAAgB,wBAAwB,IAAI;IAC1C,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,IAAI,IAAI,CAAC;CACjB,CAuBA;AAED,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,GACxE,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIlD;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIhD;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,SAAU,GAAG,IAAI,CAEjE"}
@@ -18,44 +18,70 @@ export function parseEnvAssignments(entries) {
18
18
  }
19
19
  return envVars;
20
20
  }
21
- function extractEnvBatches(rawArgs) {
22
- const batches = [];
21
+ function extractFlagValues(rawArgs, flag) {
22
+ const values = [];
23
+ const prefix = `${flag}=`;
23
24
  for (let i = 0; i < rawArgs.length; i++) {
24
25
  const arg = rawArgs[i];
25
26
  if (arg === undefined)
26
27
  continue;
27
28
  if (arg === "--")
28
29
  break;
29
- if (arg === "--env") {
30
+ if (arg === flag) {
30
31
  const value = rawArgs[i + 1];
31
32
  if (value === undefined || value.startsWith("-")) {
32
- batches.push("");
33
+ values.push("");
33
34
  }
34
35
  else {
35
- batches.push(value);
36
+ values.push(value);
36
37
  i++;
37
38
  }
38
39
  continue;
39
40
  }
40
- if (arg.startsWith("--env=")) {
41
- batches.push(arg.slice("--env=".length));
41
+ if (arg.startsWith(prefix)) {
42
+ values.push(arg.slice(prefix.length));
42
43
  }
43
44
  }
44
- return batches;
45
+ return values;
45
46
  }
46
47
  export function parseEnvFromArgs(rawArgs) {
47
- // Citty still collapses repeated string flags, so preserve each --env from raw args.
48
- const batches = extractEnvBatches(rawArgs);
49
- return parseEnvAssignments(batches);
48
+ return parseEnvAssignments(extractFlagValues(rawArgs, "--env"));
50
49
  }
51
- export function parsePortMapping(httpPort) {
52
- if (!httpPort)
50
+ export function parseUnsetEnvKeys(entries) {
51
+ const keys = [];
52
+ for (const raw of entries) {
53
+ const key = raw.trim();
54
+ if (key.length === 0) {
55
+ throw new Error("Invalid --unset-env value; expected a variable name");
56
+ }
57
+ if (key.includes("=")) {
58
+ throw new Error(`Invalid --unset-env value \`${raw}\`; use --env KEY=VALUE to set a value`);
59
+ }
60
+ keys.push(key);
61
+ }
62
+ return keys;
63
+ }
64
+ export function parseUnsetEnvFromArgs(rawArgs) {
65
+ return parseUnsetEnvKeys(extractFlagValues(rawArgs, "--unset-env"));
66
+ }
67
+ export function mergeEnvVars(setVars, unsetKeys) {
68
+ const conflicts = unsetKeys.filter((key) => Object.hasOwn(setVars, key));
69
+ if (conflicts.length > 0) {
70
+ throw new Error(`Conflicting env flags: ${conflicts.map((k) => `\`${k}\``).join(", ")} appear in both --env and --unset-env`);
71
+ }
72
+ const merged = { ...setVars };
73
+ for (const key of unsetKeys) {
74
+ merged[key] = null;
75
+ }
76
+ return merged;
77
+ }
78
+ export function parseEnvVarsFromArgs(rawArgs) {
79
+ const setVars = parseEnvFromArgs(rawArgs);
80
+ const unsetKeys = parseUnsetEnvFromArgs(rawArgs);
81
+ if (Object.keys(setVars).length === 0 && unsetKeys.length === 0) {
53
82
  return undefined;
54
- const port = Number.parseInt(httpPort, 10);
55
- if (Number.isNaN(port)) {
56
- throw new Error(`Invalid --http-port value: ${httpPort}`);
57
83
  }
58
- return { http: port };
84
+ return mergeEnvVars(setVars, unsetKeys);
59
85
  }
60
86
  function parseIntOrThrow(value, flag) {
61
87
  const n = Number.parseInt(value, 10);
@@ -64,6 +90,11 @@ function parseIntOrThrow(value, flag) {
64
90
  }
65
91
  return n;
66
92
  }
93
+ export function parsePortMapping(httpPort) {
94
+ if (!httpPort)
95
+ return undefined;
96
+ return { http: parseIntOrThrow(httpPort, "--http-port") };
97
+ }
67
98
  export function parsePollOptions(args) {
68
99
  return {
69
100
  timeoutSeconds: parseIntOrThrow(args.timeout, "--timeout"),
@@ -125,5 +156,4 @@ export function endFlow(started, message = "Done.") {
125
156
  if (started)
126
157
  outro(message);
127
158
  }
128
- export { isInteractiveSession };
129
159
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/commands/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/commands/helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"versions.d.ts","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"AA0XA,eAAO,MAAM,aAAa,qDAUxB,CAAC"}
1
+ {"version":3,"file":"versions.d.ts","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"AAkdA,eAAO,MAAM,aAAa,qDAWxB,CAAC"}
@@ -3,8 +3,8 @@ import { defineCommand } from "citty";
3
3
  import { formatTable } from "../lib/format.js";
4
4
  import { createDeployInteraction, createDestroyVersionInteraction, } from "../lib/interaction.js";
5
5
  import { printJsonResult } from "../lib/json-output.js";
6
- import { createDestroyVersionProgress } from "../lib/progress.js";
7
- import { endFlow, handleError, parsePollOptions, startFlow, withAuthAndSignal, } from "./helpers.js";
6
+ import { createDestroyVersionProgress, createPromoteProgress, } from "../lib/progress.js";
7
+ import { endFlow, handleError, parsePollOptions, resolveServiceId, startFlow, withAuthAndSignal, } from "./helpers.js";
8
8
  const versionsListCommand = defineCommand({
9
9
  meta: { name: "list", description: "List versions for a compute service" },
10
10
  args: {
@@ -307,6 +307,78 @@ const versionsDestroyCommand = defineCommand({
307
307
  process.exit(exitCode);
308
308
  },
309
309
  });
310
+ const versionsPromoteCommand = defineCommand({
311
+ meta: {
312
+ name: "promote",
313
+ description: "Promote a version to the service endpoint (starts it if not running)",
314
+ },
315
+ args: {
316
+ service: { type: "string", description: "Compute service ID" },
317
+ version: { type: "string", description: "Compute version ID to promote" },
318
+ timeout: {
319
+ type: "string",
320
+ default: "120",
321
+ description: "Poll timeout in seconds while waiting for version to start",
322
+ },
323
+ pollInterval: {
324
+ type: "string",
325
+ default: "1000",
326
+ description: "Poll interval in milliseconds",
327
+ },
328
+ json: { type: "boolean", default: false, description: "Output JSON" },
329
+ },
330
+ run: async ({ args }) => {
331
+ const exitCode = await withAuthAndSignal(async (managementClient, signal) => {
332
+ const flowStarted = !args.json && startFlow("Prisma Compute · Promote");
333
+ try {
334
+ const sdk = new ComputeClient(managementClient);
335
+ const serviceId = resolveServiceId(args);
336
+ if (!serviceId) {
337
+ throw new Error("Missing required flag: --service <id> (or set PRISMA_COMPUTE_SERVICE_ID)");
338
+ }
339
+ const result = await sdk.promote({
340
+ serviceId,
341
+ versionId: args.version,
342
+ ...parsePollOptions(args),
343
+ interaction: args.json
344
+ ? undefined
345
+ : createDestroyVersionInteraction(),
346
+ progress: args.json ? undefined : createPromoteProgress(),
347
+ signal,
348
+ });
349
+ if (args.json) {
350
+ printJsonResult(result);
351
+ return result.isOk() ? 0 : 1;
352
+ }
353
+ if (result.isErr()) {
354
+ endFlow(flowStarted, "Promote flow failed.");
355
+ console.error(result.error.message);
356
+ return 1;
357
+ }
358
+ console.log("");
359
+ console.log("─── Promote Summary ──────────────────────────");
360
+ console.log("");
361
+ console.log(` Version: ${result.value.versionId}`);
362
+ if (result.value.versionStarted) {
363
+ console.log(" Status: started → running");
364
+ }
365
+ else {
366
+ console.log(" Status: already running");
367
+ }
368
+ console.log(` Service URL: ${result.value.serviceEndpointDomain}`);
369
+ console.log("");
370
+ console.log("───────────────────────────────────────────────");
371
+ endFlow(flowStarted, "Promote flow completed.");
372
+ return 0;
373
+ }
374
+ catch (error) {
375
+ return handleError(error);
376
+ }
377
+ });
378
+ if (exitCode !== 0)
379
+ process.exit(exitCode);
380
+ },
381
+ });
310
382
  export const versionsGroup = defineCommand({
311
383
  meta: { name: "versions", description: "Version management" },
312
384
  subCommands: {
@@ -316,6 +388,7 @@ export const versionsGroup = defineCommand({
316
388
  stop: versionsStopCommand,
317
389
  delete: versionsDeleteCommand,
318
390
  destroy: versionsDestroyCommand,
391
+ promote: versionsPromoteCommand,
319
392
  },
320
393
  });
321
394
  //# sourceMappingURL=versions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { DeployProgress, DestroyServiceProgress, DestroyVersionProgress, UpdateEnvProgress } from "@prisma/compute-sdk";
1
+ import type { DeployProgress, DestroyServiceProgress, DestroyVersionProgress, PromoteProgress, UpdateEnvProgress } from "@prisma/compute-sdk";
2
2
  export declare function createDeployProgress(): DeployProgress;
3
+ export declare function createPromoteProgress(): PromoteProgress;
3
4
  export declare function createUpdateEnvProgress(): UpdateEnvProgress;
4
5
  export declare function createDestroyVersionProgress(): DestroyVersionProgress;
5
6
  export declare function createDestroyServiceProgress(): DestroyServiceProgress;
@@ -1 +1 @@
1
- {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/lib/progress.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AA2B7B,wBAAgB,oBAAoB,IAAI,cAAc,CA6CrD;AAED,wBAAgB,uBAAuB,IAAI,iBAAiB,CAoB3D;AAED,wBAAgB,4BAA4B,IAAI,sBAAsB,CAkBrE;AAED,wBAAgB,4BAA4B,IAAI,sBAAsB,CA8BrE"}
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/lib/progress.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AA2B7B,wBAAgB,oBAAoB,IAAI,cAAc,CAoGrD;AAED,wBAAgB,qBAAqB,IAAI,eAAe,CA8BvD;AAED,wBAAgB,uBAAuB,IAAI,iBAAiB,CAoB3D;AAED,wBAAgB,4BAA4B,IAAI,sBAAsB,CAkBrE;AAED,wBAAgB,4BAA4B,IAAI,sBAAsB,CA8BrE"}
@@ -67,6 +67,85 @@ export function createDeployProgress() {
67
67
  currentSpinner?.stop("Version is running.");
68
68
  currentSpinner = null;
69
69
  },
70
+ onPromoteStart() {
71
+ currentSpinner = createTaskSpinner();
72
+ currentSpinner.start("Promoting to service endpoint...");
73
+ },
74
+ onPromoted() {
75
+ currentSpinner?.stop("Service endpoint promoted.");
76
+ currentSpinner = null;
77
+ },
78
+ onPromoteFailed(error) {
79
+ const detail = error?.message ? `: ${error.message}` : ".";
80
+ currentSpinner?.error(`Failed to promote service endpoint${detail}`);
81
+ currentSpinner = null;
82
+ },
83
+ onOldVersionStopping(versionId) {
84
+ currentSpinner = createTaskSpinner();
85
+ currentSpinner.start(`Stopping old version ${versionId}...`);
86
+ },
87
+ onOldVersionStopped(versionId) {
88
+ currentSpinner?.stop(`Old version ${versionId} stopped.`);
89
+ currentSpinner = null;
90
+ },
91
+ onOldVersionStopFailed(versionId) {
92
+ currentSpinner?.error(`Failed to stop old version ${versionId} (best-effort).`);
93
+ currentSpinner = null;
94
+ },
95
+ onOldVersionDeleting(versionId) {
96
+ currentSpinner = createTaskSpinner();
97
+ currentSpinner.start(`Deleting old version ${versionId}...`);
98
+ },
99
+ onOldVersionDeleted(versionId) {
100
+ currentSpinner?.stop(`Old version ${versionId} deleted.`);
101
+ currentSpinner = null;
102
+ },
103
+ onOldVersionDeleteFailed(versionId) {
104
+ currentSpinner?.error(`Failed to delete old version ${versionId} (best-effort).`);
105
+ currentSpinner = null;
106
+ },
107
+ onCleanupDanglingVersion(versionId) {
108
+ currentSpinner = createTaskSpinner();
109
+ currentSpinner.start(`Cleaning up dangling version ${versionId}...`);
110
+ },
111
+ onCleanupDanglingVersionComplete(versionId) {
112
+ currentSpinner?.stop(`Dangling version ${versionId} cleaned up.`);
113
+ currentSpinner = null;
114
+ },
115
+ onCleanupDanglingVersionFailed(versionId) {
116
+ currentSpinner?.error(`Failed to clean up version ${versionId}. Run manually:\n compute versions stop ${versionId}\n compute versions delete ${versionId}`);
117
+ currentSpinner = null;
118
+ },
119
+ };
120
+ }
121
+ export function createPromoteProgress() {
122
+ let currentSpinner = null;
123
+ return {
124
+ onVersionStarting(versionId) {
125
+ currentSpinner = createTaskSpinner();
126
+ currentSpinner.start(`Starting version ${versionId}...`);
127
+ },
128
+ onVersionStartRequested() { },
129
+ onStatusChange(status) {
130
+ printStatus(status);
131
+ },
132
+ onVersionRunning() {
133
+ currentSpinner?.stop("Version is running.");
134
+ currentSpinner = null;
135
+ },
136
+ onPromoteStart() {
137
+ currentSpinner = createTaskSpinner();
138
+ currentSpinner.start("Promoting to service endpoint...");
139
+ },
140
+ onPromoted() {
141
+ currentSpinner?.stop("Service endpoint promoted.");
142
+ currentSpinner = null;
143
+ },
144
+ onPromoteFailed(error) {
145
+ const detail = error?.message ? `: ${error.message}` : ".";
146
+ currentSpinner?.error(`Failed to promote service endpoint${detail}`);
147
+ currentSpinner = null;
148
+ },
70
149
  };
71
150
  }
72
151
  export function createUpdateEnvProgress() {
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/lib/progress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/lib/progress.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prisma/compute-cli",
3
- "version": "0.4.0",
3
+ "version": "0.6.0",
4
4
  "repository": "prisma/project-compute",
5
5
  "type": "module",
6
6
  "bin": {
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "@clack/prompts": "^1.1.0",
34
- "@prisma/compute-sdk": "0.4.0",
34
+ "@prisma/compute-sdk": "0.6.0",
35
35
  "@prisma/credentials-store": "^7.5.0",
36
36
  "@prisma/management-api-sdk": "^1.23.0",
37
37
  "citty": "^0.2.1",
package/src/cli.ts CHANGED
@@ -7,7 +7,14 @@ import { projectsGroup } from "./commands/projects.ts";
7
7
  import { servicesGroup } from "./commands/services.ts";
8
8
  import { versionsGroup } from "./commands/versions.ts";
9
9
 
10
- export { parseEnvAssignments, parseEnvFromArgs } from "./commands/helpers.ts";
10
+ export {
11
+ mergeEnvVars,
12
+ parseEnvAssignments,
13
+ parseEnvFromArgs,
14
+ parseEnvVarsFromArgs,
15
+ parseUnsetEnvFromArgs,
16
+ parseUnsetEnvKeys,
17
+ } from "./commands/helpers.ts";
11
18
 
12
19
  export const mainCommand = defineCommand({
13
20
  meta: {
@@ -1,5 +1,10 @@
1
1
  import path from "node:path";
2
- import { BunBuild, ComputeClient, PreBuilt } from "@prisma/compute-sdk";
2
+ import {
3
+ BunBuild,
4
+ ComputeClient,
5
+ type DeployResult,
6
+ PreBuilt,
7
+ } from "@prisma/compute-sdk";
3
8
  import { defineCommand } from "citty";
4
9
  import { createDeployInteraction } from "../lib/interaction.ts";
5
10
  import { printJsonResult } from "../lib/json-output.ts";
@@ -7,10 +12,9 @@ import { createDeployProgress } from "../lib/progress.ts";
7
12
  import {
8
13
  endFlow,
9
14
  handleError,
10
- parseEnvFromArgs,
15
+ parseEnvVarsFromArgs,
11
16
  parsePollOptions,
12
17
  parsePortMapping,
13
- printServiceIdHint,
14
18
  resolveServiceId,
15
19
  startFlow,
16
20
  withAuthAndSignal,
@@ -37,6 +41,10 @@ export const deployCommand = defineCommand({
37
41
  type: "string",
38
42
  description: "Environment variables (repeat --env KEY=VALUE)",
39
43
  },
44
+ unsetEnv: {
45
+ type: "string",
46
+ description: "Remove environment variables (repeat --unset-env KEY)",
47
+ },
40
48
  httpPort: {
41
49
  type: "string",
42
50
  description: "HTTP port your application listens on",
@@ -51,6 +59,17 @@ export const deployCommand = defineCommand({
51
59
  default: "1000",
52
60
  description: "Poll interval in milliseconds",
53
61
  },
62
+ skipPromote: {
63
+ type: "boolean",
64
+ default: false,
65
+ description:
66
+ "Deploy the new version without promoting it to the service endpoint",
67
+ },
68
+ destroyOldVersion: {
69
+ type: "boolean",
70
+ default: false,
71
+ description: "Delete the old version after stopping it",
72
+ },
54
73
  json: { type: "boolean", default: false, description: "Output JSON" },
55
74
  },
56
75
  run: async ({ args, rawArgs }) => {
@@ -61,7 +80,7 @@ export const deployCommand = defineCommand({
61
80
  try {
62
81
  const sdk = new ComputeClient(managementClient);
63
82
  const appPath = path.resolve(process.cwd(), args.path);
64
- const envVars = parseEnvFromArgs(rawArgs);
83
+ const envVars = parseEnvVarsFromArgs(rawArgs);
65
84
  const portMapping = parsePortMapping(args.httpPort);
66
85
 
67
86
  const inputServiceId = resolveServiceId(args);
@@ -78,6 +97,12 @@ export const deployCommand = defineCommand({
78
97
  strategy = new BunBuild({ appPath, entrypoint: args.entrypoint });
79
98
  }
80
99
 
100
+ if (args.skipPromote && args.destroyOldVersion) {
101
+ throw new Error(
102
+ "--destroy-old-version cannot be combined with --skip-promote",
103
+ );
104
+ }
105
+
81
106
  const result = await sdk.deploy({
82
107
  strategy,
83
108
  projectId: args.project,
@@ -90,6 +115,8 @@ export const deployCommand = defineCommand({
90
115
  interaction: args.json ? undefined : createDeployInteraction(),
91
116
  progress: args.json ? undefined : createDeployProgress(),
92
117
  signal,
118
+ skipPromote: args.skipPromote,
119
+ destroyOldVersion: args.destroyOldVersion,
93
120
  });
94
121
 
95
122
  if (args.json) {
@@ -103,14 +130,7 @@ export const deployCommand = defineCommand({
103
130
  return 1;
104
131
  }
105
132
 
106
- console.log(`Version: ${result.value.versionId}`);
107
- console.log("");
108
- console.log("Deployment URL:");
109
- console.log(result.value.deploymentUrl);
110
-
111
- if (!inputServiceId) {
112
- printServiceIdHint(result.value.serviceId);
113
- }
133
+ printDeploySummary(result.value);
114
134
 
115
135
  endFlow(flowStarted, "Deploy flow completed.");
116
136
  return 0;
@@ -123,3 +143,44 @@ export const deployCommand = defineCommand({
123
143
  if (exitCode !== 0) process.exit(exitCode);
124
144
  },
125
145
  });
146
+
147
+ function printDeploySummary(result: DeployResult): void {
148
+ console.log("");
149
+ console.log("─── Deploy Summary ───────────────────────────");
150
+ console.log("");
151
+
152
+ console.log(` New version: ${result.versionId} (running)`);
153
+ console.log(` Version URL: ${result.versionEndpointDomain}`);
154
+
155
+ if (result.promoted) {
156
+ console.log(` Service URL: ${result.serviceEndpointDomain}`);
157
+ }
158
+
159
+ if (result.previousVersionId) {
160
+ const actionLabel =
161
+ result.previousVersionAction === "destroyed"
162
+ ? "deleted"
163
+ : result.previousVersionAction === "stopped"
164
+ ? "stopped"
165
+ : "still active";
166
+ console.log(` Old version: ${result.previousVersionId} (${actionLabel})`);
167
+ }
168
+
169
+ console.log("");
170
+
171
+ if (!result.promoted) {
172
+ console.log(
173
+ " --skip-promote was set: the service endpoint was NOT updated.",
174
+ );
175
+ console.log(
176
+ " The old version is still serving traffic on the service URL.",
177
+ );
178
+ console.log(" To promote this version later, run:");
179
+ console.log(
180
+ ` compute promote --service ${result.serviceId} --version ${result.versionId}`,
181
+ );
182
+ console.log("");
183
+ }
184
+
185
+ console.log("───────────────────────────────────────────────");
186
+ }
@@ -6,7 +6,7 @@ import { createUpdateEnvProgress } from "../lib/progress.ts";
6
6
  import {
7
7
  endFlow,
8
8
  handleError,
9
- parseEnvFromArgs,
9
+ parseEnvVarsFromArgs,
10
10
  parsePollOptions,
11
11
  parsePortMapping,
12
12
  printServiceIdHint,
@@ -26,7 +26,10 @@ const envUpdateCommand = defineCommand({
26
26
  env: {
27
27
  type: "string",
28
28
  description: "Environment variables (repeat --env KEY=VALUE)",
29
- required: true,
29
+ },
30
+ unsetEnv: {
31
+ type: "string",
32
+ description: "Remove environment variables (repeat --unset-env KEY)",
30
33
  },
31
34
  httpPort: {
32
35
  type: "string",
@@ -52,9 +55,16 @@ const envUpdateCommand = defineCommand({
52
55
 
53
56
  try {
54
57
  const sdk = new ComputeClient(managementClient);
55
- const envVars = parseEnvFromArgs(rawArgs);
58
+ const envVars = parseEnvVarsFromArgs(rawArgs);
56
59
  const portMapping = parsePortMapping(args.httpPort);
57
60
 
61
+ if (!envVars && !portMapping) {
62
+ console.error(
63
+ "Nothing to update: provide --env, --unset-env, or --http-port",
64
+ );
65
+ return 1;
66
+ }
67
+
58
68
  const inputServiceId = resolveServiceId(args);
59
69
 
60
70
  const result = await sdk.updateEnv({
@@ -22,48 +22,86 @@ export function parseEnvAssignments(entries: string[]): Record<string, string> {
22
22
  return envVars;
23
23
  }
24
24
 
25
- function extractEnvBatches(rawArgs: string[]): string[] {
26
- const batches: string[] = [];
25
+ function extractFlagValues(rawArgs: string[], flag: string): string[] {
26
+ const values: string[] = [];
27
+ const prefix = `${flag}=`;
27
28
 
28
29
  for (let i = 0; i < rawArgs.length; i++) {
29
30
  const arg = rawArgs[i];
30
31
  if (arg === undefined) continue;
31
32
  if (arg === "--") break;
32
33
 
33
- if (arg === "--env") {
34
+ if (arg === flag) {
34
35
  const value = rawArgs[i + 1];
35
36
  if (value === undefined || value.startsWith("-")) {
36
- batches.push("");
37
+ values.push("");
37
38
  } else {
38
- batches.push(value);
39
+ values.push(value);
39
40
  i++;
40
41
  }
41
42
  continue;
42
43
  }
43
44
 
44
- if (arg.startsWith("--env=")) {
45
- batches.push(arg.slice("--env=".length));
45
+ if (arg.startsWith(prefix)) {
46
+ values.push(arg.slice(prefix.length));
46
47
  }
47
48
  }
48
49
 
49
- return batches;
50
+ return values;
50
51
  }
51
52
 
52
53
  export function parseEnvFromArgs(rawArgs: string[]): Record<string, string> {
53
- // Citty still collapses repeated string flags, so preserve each --env from raw args.
54
- const batches = extractEnvBatches(rawArgs);
55
- return parseEnvAssignments(batches);
54
+ return parseEnvAssignments(extractFlagValues(rawArgs, "--env"));
56
55
  }
57
56
 
58
- export function parsePortMapping(
59
- httpPort: string | undefined,
60
- ): { http: number } | undefined {
61
- if (!httpPort) return undefined;
62
- const port = Number.parseInt(httpPort, 10);
63
- if (Number.isNaN(port)) {
64
- throw new Error(`Invalid --http-port value: ${httpPort}`);
57
+ export function parseUnsetEnvKeys(entries: string[]): string[] {
58
+ const keys: string[] = [];
59
+ for (const raw of entries) {
60
+ const key = raw.trim();
61
+ if (key.length === 0) {
62
+ throw new Error("Invalid --unset-env value; expected a variable name");
63
+ }
64
+ if (key.includes("=")) {
65
+ throw new Error(
66
+ `Invalid --unset-env value \`${raw}\`; use --env KEY=VALUE to set a value`,
67
+ );
68
+ }
69
+ keys.push(key);
70
+ }
71
+ return keys;
72
+ }
73
+
74
+ export function parseUnsetEnvFromArgs(rawArgs: string[]): string[] {
75
+ return parseUnsetEnvKeys(extractFlagValues(rawArgs, "--unset-env"));
76
+ }
77
+
78
+ export function mergeEnvVars(
79
+ setVars: Record<string, string>,
80
+ unsetKeys: string[],
81
+ ): Record<string, string | null> {
82
+ const conflicts = unsetKeys.filter((key) => Object.hasOwn(setVars, key));
83
+ if (conflicts.length > 0) {
84
+ throw new Error(
85
+ `Conflicting env flags: ${conflicts.map((k) => `\`${k}\``).join(", ")} appear in both --env and --unset-env`,
86
+ );
65
87
  }
66
- return { http: port };
88
+
89
+ const merged: Record<string, string | null> = { ...setVars };
90
+ for (const key of unsetKeys) {
91
+ merged[key] = null;
92
+ }
93
+ return merged;
94
+ }
95
+
96
+ export function parseEnvVarsFromArgs(
97
+ rawArgs: string[],
98
+ ): Record<string, string | null> | undefined {
99
+ const setVars = parseEnvFromArgs(rawArgs);
100
+ const unsetKeys = parseUnsetEnvFromArgs(rawArgs);
101
+ if (Object.keys(setVars).length === 0 && unsetKeys.length === 0) {
102
+ return undefined;
103
+ }
104
+ return mergeEnvVars(setVars, unsetKeys);
67
105
  }
68
106
 
69
107
  function parseIntOrThrow(value: string, flag: string): number {
@@ -74,6 +112,13 @@ function parseIntOrThrow(value: string, flag: string): number {
74
112
  return n;
75
113
  }
76
114
 
115
+ export function parsePortMapping(
116
+ httpPort: string | undefined,
117
+ ): { http: number } | undefined {
118
+ if (!httpPort) return undefined;
119
+ return { http: parseIntOrThrow(httpPort, "--http-port") };
120
+ }
121
+
77
122
  export function parsePollOptions(args: {
78
123
  timeout: string;
79
124
  pollInterval: string;
@@ -154,5 +199,3 @@ export function startFlow(title: string): boolean {
154
199
  export function endFlow(started: boolean, message = "Done."): void {
155
200
  if (started) outro(message);
156
201
  }
157
-
158
- export { isInteractiveSession };
@@ -6,11 +6,15 @@ import {
6
6
  createDestroyVersionInteraction,
7
7
  } from "../lib/interaction.ts";
8
8
  import { printJsonResult } from "../lib/json-output.ts";
9
- import { createDestroyVersionProgress } from "../lib/progress.ts";
9
+ import {
10
+ createDestroyVersionProgress,
11
+ createPromoteProgress,
12
+ } from "../lib/progress.ts";
10
13
  import {
11
14
  endFlow,
12
15
  handleError,
13
16
  parsePollOptions,
17
+ resolveServiceId,
14
18
  startFlow,
15
19
  withAuthAndSignal,
16
20
  } from "./helpers.ts";
@@ -376,6 +380,90 @@ const versionsDestroyCommand = defineCommand({
376
380
  },
377
381
  });
378
382
 
383
+ const versionsPromoteCommand = defineCommand({
384
+ meta: {
385
+ name: "promote",
386
+ description:
387
+ "Promote a version to the service endpoint (starts it if not running)",
388
+ },
389
+ args: {
390
+ service: { type: "string", description: "Compute service ID" },
391
+ version: { type: "string", description: "Compute version ID to promote" },
392
+ timeout: {
393
+ type: "string",
394
+ default: "120",
395
+ description: "Poll timeout in seconds while waiting for version to start",
396
+ },
397
+ pollInterval: {
398
+ type: "string",
399
+ default: "1000",
400
+ description: "Poll interval in milliseconds",
401
+ },
402
+ json: { type: "boolean", default: false, description: "Output JSON" },
403
+ },
404
+ run: async ({ args }) => {
405
+ const exitCode = await withAuthAndSignal(
406
+ async (managementClient, signal) => {
407
+ const flowStarted = !args.json && startFlow("Prisma Compute · Promote");
408
+
409
+ try {
410
+ const sdk = new ComputeClient(managementClient);
411
+
412
+ const serviceId = resolveServiceId(args);
413
+
414
+ if (!serviceId) {
415
+ throw new Error(
416
+ "Missing required flag: --service <id> (or set PRISMA_COMPUTE_SERVICE_ID)",
417
+ );
418
+ }
419
+
420
+ const result = await sdk.promote({
421
+ serviceId,
422
+ versionId: args.version,
423
+ ...parsePollOptions(args),
424
+ interaction: args.json
425
+ ? undefined
426
+ : createDestroyVersionInteraction(),
427
+ progress: args.json ? undefined : createPromoteProgress(),
428
+ signal,
429
+ });
430
+
431
+ if (args.json) {
432
+ printJsonResult(result);
433
+ return result.isOk() ? 0 : 1;
434
+ }
435
+
436
+ if (result.isErr()) {
437
+ endFlow(flowStarted, "Promote flow failed.");
438
+ console.error(result.error.message);
439
+ return 1;
440
+ }
441
+
442
+ console.log("");
443
+ console.log("─── Promote Summary ──────────────────────────");
444
+ console.log("");
445
+ console.log(` Version: ${result.value.versionId}`);
446
+ if (result.value.versionStarted) {
447
+ console.log(" Status: started → running");
448
+ } else {
449
+ console.log(" Status: already running");
450
+ }
451
+ console.log(` Service URL: ${result.value.serviceEndpointDomain}`);
452
+ console.log("");
453
+ console.log("───────────────────────────────────────────────");
454
+
455
+ endFlow(flowStarted, "Promote flow completed.");
456
+ return 0;
457
+ } catch (error) {
458
+ return handleError(error);
459
+ }
460
+ },
461
+ );
462
+
463
+ if (exitCode !== 0) process.exit(exitCode);
464
+ },
465
+ });
466
+
379
467
  export const versionsGroup = defineCommand({
380
468
  meta: { name: "versions", description: "Version management" },
381
469
  subCommands: {
@@ -385,5 +473,6 @@ export const versionsGroup = defineCommand({
385
473
  stop: versionsStopCommand,
386
474
  delete: versionsDeleteCommand,
387
475
  destroy: versionsDestroyCommand,
476
+ promote: versionsPromoteCommand,
388
477
  },
389
478
  });
@@ -3,6 +3,7 @@ import type {
3
3
  DeployProgress,
4
4
  DestroyServiceProgress,
5
5
  DestroyVersionProgress,
6
+ PromoteProgress,
6
7
  UpdateEnvProgress,
7
8
  } from "@prisma/compute-sdk";
8
9
  import { isInteractiveSession } from "./interaction.ts";
@@ -75,6 +76,93 @@ export function createDeployProgress(): DeployProgress {
75
76
  currentSpinner?.stop("Version is running.");
76
77
  currentSpinner = null;
77
78
  },
79
+ onPromoteStart() {
80
+ currentSpinner = createTaskSpinner();
81
+ currentSpinner.start("Promoting to service endpoint...");
82
+ },
83
+ onPromoted() {
84
+ currentSpinner?.stop("Service endpoint promoted.");
85
+ currentSpinner = null;
86
+ },
87
+ onPromoteFailed(error) {
88
+ const detail = error?.message ? `: ${error.message}` : ".";
89
+ currentSpinner?.error(`Failed to promote service endpoint${detail}`);
90
+ currentSpinner = null;
91
+ },
92
+ onOldVersionStopping(versionId) {
93
+ currentSpinner = createTaskSpinner();
94
+ currentSpinner.start(`Stopping old version ${versionId}...`);
95
+ },
96
+ onOldVersionStopped(versionId) {
97
+ currentSpinner?.stop(`Old version ${versionId} stopped.`);
98
+ currentSpinner = null;
99
+ },
100
+ onOldVersionStopFailed(versionId) {
101
+ currentSpinner?.error(
102
+ `Failed to stop old version ${versionId} (best-effort).`,
103
+ );
104
+ currentSpinner = null;
105
+ },
106
+ onOldVersionDeleting(versionId) {
107
+ currentSpinner = createTaskSpinner();
108
+ currentSpinner.start(`Deleting old version ${versionId}...`);
109
+ },
110
+ onOldVersionDeleted(versionId) {
111
+ currentSpinner?.stop(`Old version ${versionId} deleted.`);
112
+ currentSpinner = null;
113
+ },
114
+ onOldVersionDeleteFailed(versionId) {
115
+ currentSpinner?.error(
116
+ `Failed to delete old version ${versionId} (best-effort).`,
117
+ );
118
+ currentSpinner = null;
119
+ },
120
+ onCleanupDanglingVersion(versionId) {
121
+ currentSpinner = createTaskSpinner();
122
+ currentSpinner.start(`Cleaning up dangling version ${versionId}...`);
123
+ },
124
+ onCleanupDanglingVersionComplete(versionId) {
125
+ currentSpinner?.stop(`Dangling version ${versionId} cleaned up.`);
126
+ currentSpinner = null;
127
+ },
128
+ onCleanupDanglingVersionFailed(versionId) {
129
+ currentSpinner?.error(
130
+ `Failed to clean up version ${versionId}. Run manually:\n compute versions stop ${versionId}\n compute versions delete ${versionId}`,
131
+ );
132
+ currentSpinner = null;
133
+ },
134
+ };
135
+ }
136
+
137
+ export function createPromoteProgress(): PromoteProgress {
138
+ let currentSpinner: SpinnerResult | null = null;
139
+
140
+ return {
141
+ onVersionStarting(versionId) {
142
+ currentSpinner = createTaskSpinner();
143
+ currentSpinner.start(`Starting version ${versionId}...`);
144
+ },
145
+ onVersionStartRequested() {},
146
+ onStatusChange(status) {
147
+ printStatus(status);
148
+ },
149
+ onVersionRunning() {
150
+ currentSpinner?.stop("Version is running.");
151
+ currentSpinner = null;
152
+ },
153
+ onPromoteStart() {
154
+ currentSpinner = createTaskSpinner();
155
+ currentSpinner.start("Promoting to service endpoint...");
156
+ },
157
+ onPromoted() {
158
+ currentSpinner?.stop("Service endpoint promoted.");
159
+ currentSpinner = null;
160
+ },
161
+ onPromoteFailed(error) {
162
+ const detail = error?.message ? `: ${error.message}` : ".";
163
+ currentSpinner?.error(`Failed to promote service endpoint${detail}`);
164
+ currentSpinner = null;
165
+ },
78
166
  };
79
167
  }
80
168