@sand.ai/vibable-cli 0.3.5 → 0.3.7
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/args.d.ts +9 -2
- package/dist/args.d.ts.map +1 -1
- package/dist/args.js +42 -16
- package/dist/args.js.map +1 -1
- package/dist/command-manifest.d.ts +476 -0
- package/dist/command-manifest.d.ts.map +1 -0
- package/dist/command-manifest.js +338 -0
- package/dist/command-manifest.js.map +1 -0
- package/dist/deployment.d.ts +88 -0
- package/dist/deployment.d.ts.map +1 -0
- package/dist/deployment.js +299 -0
- package/dist/deployment.js.map +1 -0
- package/dist/help.d.ts.map +1 -1
- package/dist/help.js +32 -121
- package/dist/help.js.map +1 -1
- package/dist/hosting.d.ts +1 -17
- package/dist/hosting.d.ts.map +1 -1
- package/dist/hosting.js +15 -233
- package/dist/hosting.js.map +1 -1
- package/dist/index.js +124 -116
- package/dist/index.js.map +1 -1
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +11 -3
- package/dist/sync.js.map +1 -1
- package/dist/workspace-client.d.ts +48 -0
- package/dist/workspace-client.d.ts.map +1 -0
- package/dist/workspace-client.js +112 -0
- package/dist/workspace-client.js.map +1 -0
- package/package.json +6 -5
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { startHostingSync } from "./hosting.js";
|
|
4
|
+
import { deleteRequest, getJson, postJson, putJson, readWorkspaceContext, } from "./workspace-client.js";
|
|
5
|
+
export function createDeploymentOperations(adapter) {
|
|
6
|
+
async function readCurrentDeployment(cwd) {
|
|
7
|
+
const context = await adapter.readContext(cwd);
|
|
8
|
+
const [deployment] = await adapter.listDeployments(context);
|
|
9
|
+
return { context, deployment: deployment ?? null };
|
|
10
|
+
}
|
|
11
|
+
return {
|
|
12
|
+
async status(cwd = process.cwd()) {
|
|
13
|
+
const { context, deployment } = await readCurrentDeployment(cwd);
|
|
14
|
+
adapter.write(`${JSON.stringify({
|
|
15
|
+
project: context.binding.projectSlug,
|
|
16
|
+
feature: context.binding.featureSlug,
|
|
17
|
+
deployment,
|
|
18
|
+
}, null, 2)}\n`);
|
|
19
|
+
},
|
|
20
|
+
async revisions(cwd = process.cwd()) {
|
|
21
|
+
const { context, deployment } = await readCurrentDeployment(cwd);
|
|
22
|
+
if (!deployment) {
|
|
23
|
+
throw new Error("No Deployment exists for this project.");
|
|
24
|
+
}
|
|
25
|
+
const revisions = await adapter.listRevisions(context, deployment.id);
|
|
26
|
+
adapter.write(`${JSON.stringify({
|
|
27
|
+
deployment: {
|
|
28
|
+
id: deployment.id,
|
|
29
|
+
url: deployment.url,
|
|
30
|
+
activeRevisionId: deployment.activeRevision?.id ?? null,
|
|
31
|
+
latestRevisionId: deployment.latestRevision?.id ?? null,
|
|
32
|
+
},
|
|
33
|
+
revisions: revisions.map((revision) => ({
|
|
34
|
+
id: revision.id,
|
|
35
|
+
sequence: revision.sequence,
|
|
36
|
+
sourceCommit: revision.sourceCommit ?? null,
|
|
37
|
+
publishAttempt: revision.publishAttempt ?? null,
|
|
38
|
+
status: revision.status,
|
|
39
|
+
runtimePhase: revision.runtimePhase,
|
|
40
|
+
active: revision.id === deployment.activeRevision?.id,
|
|
41
|
+
latest: revision.id === deployment.latestRevision?.id,
|
|
42
|
+
errorMessage: revision.errorMessage,
|
|
43
|
+
createdAt: revision.createdAt ?? null,
|
|
44
|
+
updatedAt: revision.updatedAt ?? null,
|
|
45
|
+
readyAt: revision.readyAt ?? null,
|
|
46
|
+
failedAt: revision.failedAt ?? null,
|
|
47
|
+
})),
|
|
48
|
+
}, null, 2)}\n`);
|
|
49
|
+
},
|
|
50
|
+
async logs(input) {
|
|
51
|
+
const { context, deployment } = await readCurrentDeployment(input.cwd ?? process.cwd());
|
|
52
|
+
if (!deployment) {
|
|
53
|
+
throw new Error("No Deployment exists for this project.");
|
|
54
|
+
}
|
|
55
|
+
const revision = await resolveDeploymentRevision({
|
|
56
|
+
adapter,
|
|
57
|
+
context,
|
|
58
|
+
deployment,
|
|
59
|
+
...(input.revision ? { selector: input.revision } : {}),
|
|
60
|
+
});
|
|
61
|
+
if (!revision) {
|
|
62
|
+
throw new Error("The Deployment does not have a Revision yet.");
|
|
63
|
+
}
|
|
64
|
+
const seenLogIds = new Set();
|
|
65
|
+
let previousPhase = null;
|
|
66
|
+
while (true) {
|
|
67
|
+
const response = await adapter.readRevisionLogs(context, deployment.id, revision.id);
|
|
68
|
+
if (!response.historyComplete) {
|
|
69
|
+
throw new Error("Vibable did not return the complete Deployment Revision log history.");
|
|
70
|
+
}
|
|
71
|
+
if (response.runtimePhase !== previousPhase) {
|
|
72
|
+
previousPhase = response.runtimePhase;
|
|
73
|
+
adapter.write(`[revision ${revision.sequence}] ${response.status} / ${response.runtimePhase}\n`);
|
|
74
|
+
}
|
|
75
|
+
for (const log of response.logs) {
|
|
76
|
+
if (seenLogIds.has(log.id))
|
|
77
|
+
continue;
|
|
78
|
+
seenLogIds.add(log.id);
|
|
79
|
+
adapter.write(formatDeploymentLog(log));
|
|
80
|
+
}
|
|
81
|
+
if (!input.follow ||
|
|
82
|
+
isTerminalDeploymentRuntimePhase(response.runtimePhase)) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
await adapter.wait(2_000);
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
async stop(cwd = process.cwd()) {
|
|
89
|
+
const { context, deployment } = await readCurrentDeployment(cwd);
|
|
90
|
+
if (!deployment) {
|
|
91
|
+
throw new Error("No Deployment exists for this project.");
|
|
92
|
+
}
|
|
93
|
+
await adapter.stopDeployment(context, deployment.id);
|
|
94
|
+
adapter.write(`Deployment stopped: ${deployment.url}\n`);
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
async function resolveDeploymentRevision(input) {
|
|
99
|
+
if (!input.selector || input.selector === "latest") {
|
|
100
|
+
return input.deployment.latestRevision;
|
|
101
|
+
}
|
|
102
|
+
if (input.selector === "active") {
|
|
103
|
+
return input.deployment.activeRevision;
|
|
104
|
+
}
|
|
105
|
+
const revisions = await input.adapter.listRevisions(input.context, input.deployment.id);
|
|
106
|
+
const sequence = Number(input.selector);
|
|
107
|
+
const revision = revisions.find((candidate) => candidate.id === input.selector ||
|
|
108
|
+
(Number.isSafeInteger(sequence) && candidate.sequence === sequence));
|
|
109
|
+
if (!revision) {
|
|
110
|
+
throw new Error(`Deployment Revision not found: ${input.selector}`);
|
|
111
|
+
}
|
|
112
|
+
return revision;
|
|
113
|
+
}
|
|
114
|
+
export function isTerminalDeploymentRuntimePhase(phase) {
|
|
115
|
+
return phase === "ready" || phase === "stopped" || phase === "failed";
|
|
116
|
+
}
|
|
117
|
+
export function formatDeploymentLog(log) {
|
|
118
|
+
const level = log.level.toUpperCase().padEnd(5);
|
|
119
|
+
return `${log.createdAt} ${level} ${log.source ?? "service"} ${log.message}\n`;
|
|
120
|
+
}
|
|
121
|
+
export async function deployHostedProject(input) {
|
|
122
|
+
const context = await readWorkspaceContext(input.cwd ?? process.cwd());
|
|
123
|
+
process.stdout.write("Synchronizing and checkpointing the latest local code.\n");
|
|
124
|
+
await startHostingSync(context.binding.root);
|
|
125
|
+
const deployments = await listHostedDeployments(context);
|
|
126
|
+
const response = await postJson({
|
|
127
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
128
|
+
token: context.auth.token,
|
|
129
|
+
path: `/api/workspace/features/${encodeURIComponent(context.binding.featureSlug)}/deployments/apply`,
|
|
130
|
+
body: {
|
|
131
|
+
spec: {
|
|
132
|
+
...(input.subdomain || deployments.length === 0
|
|
133
|
+
? {
|
|
134
|
+
subdomain: input.subdomain ?? context.binding.projectSlug,
|
|
135
|
+
}
|
|
136
|
+
: {}),
|
|
137
|
+
...(input.accessMode
|
|
138
|
+
? { accessMode: input.accessMode }
|
|
139
|
+
: {}),
|
|
140
|
+
},
|
|
141
|
+
release: { source: "feature-worktree" },
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
process.stdout.write(`Deployment queued: ${response.deployment.url}\n`);
|
|
145
|
+
await waitForDeploymentReady({
|
|
146
|
+
context,
|
|
147
|
+
deploymentId: response.deployment.id,
|
|
148
|
+
revisionId: response.revision.id,
|
|
149
|
+
});
|
|
150
|
+
process.stdout.write(`Deployment URL: ${response.deployment.url}\n`);
|
|
151
|
+
process.stdout.write(`Deployment access: ${input.accessMode ?? response.deployment.accessMode}\n`);
|
|
152
|
+
}
|
|
153
|
+
export async function setDeploymentEnvironment(input) {
|
|
154
|
+
const value = await readEnvironmentValue(input);
|
|
155
|
+
await ensureHostedDeployment();
|
|
156
|
+
const { context, deployment } = await requireCurrentDeployment();
|
|
157
|
+
await putJson({
|
|
158
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
159
|
+
token: context.auth.token,
|
|
160
|
+
path: `/api/workspace/deployments/${encodeURIComponent(deployment.id)}/env/${encodeURIComponent(input.key)}`,
|
|
161
|
+
body: { value, secret: input.secret },
|
|
162
|
+
});
|
|
163
|
+
process.stdout.write(`Deployment environment variable ${input.key} saved.\n`);
|
|
164
|
+
if (input.redeploy) {
|
|
165
|
+
await deployHostedProject({});
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
process.stdout.write("Run vibable deploy to apply this change to a new Revision.\n");
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
export async function listDeploymentEnvironment(_input) {
|
|
172
|
+
const { context, deployment } = await requireCurrentDeployment();
|
|
173
|
+
const response = await getJson({
|
|
174
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
175
|
+
token: context.auth.token,
|
|
176
|
+
path: `/api/workspace/deployments/${encodeURIComponent(deployment.id)}/env`,
|
|
177
|
+
});
|
|
178
|
+
for (const variable of response.variables) {
|
|
179
|
+
process.stdout.write(`${variable.key}\t${variable.secret ? "secret" : "plain"}\t${variable.scope}\t${variable.updatedAt}\n`);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
export async function unsetDeploymentEnvironment(input) {
|
|
183
|
+
const { context, deployment } = await requireCurrentDeployment();
|
|
184
|
+
await deleteRequest({
|
|
185
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
186
|
+
token: context.auth.token,
|
|
187
|
+
path: `/api/workspace/deployments/${encodeURIComponent(deployment.id)}/env/${encodeURIComponent(input.key)}`,
|
|
188
|
+
});
|
|
189
|
+
process.stdout.write(`Deployment environment variable ${input.key} removed.\n`);
|
|
190
|
+
if (input.redeploy) {
|
|
191
|
+
await deployHostedProject({});
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
process.stdout.write("Run vibable deploy to apply this change to a new Revision.\n");
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
async function requireCurrentDeployment(cwd = process.cwd()) {
|
|
198
|
+
const context = await readWorkspaceContext(cwd);
|
|
199
|
+
const [deployment] = await listHostedDeployments(context);
|
|
200
|
+
if (!deployment) {
|
|
201
|
+
throw new Error("Create the Deployment first with vibable deploy, then configure its environment variables.");
|
|
202
|
+
}
|
|
203
|
+
return { context, deployment };
|
|
204
|
+
}
|
|
205
|
+
async function ensureHostedDeployment(cwd = process.cwd()) {
|
|
206
|
+
const context = await readWorkspaceContext(cwd);
|
|
207
|
+
await postJson({
|
|
208
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
209
|
+
token: context.auth.token,
|
|
210
|
+
path: `/api/workspace/features/${encodeURIComponent(context.binding.featureSlug)}/deployments/ensure`,
|
|
211
|
+
body: {
|
|
212
|
+
subdomain: context.binding.projectSlug,
|
|
213
|
+
visibility: "public",
|
|
214
|
+
},
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
async function listHostedDeployments(context) {
|
|
218
|
+
return (await getJson({
|
|
219
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
220
|
+
token: context.auth.token,
|
|
221
|
+
path: `/api/workspace/features/${encodeURIComponent(context.binding.featureSlug)}/deployments`,
|
|
222
|
+
})).deployments;
|
|
223
|
+
}
|
|
224
|
+
async function waitForDeploymentReady(input) {
|
|
225
|
+
const deadline = Date.now() + 10 * 60 * 1000;
|
|
226
|
+
while (Date.now() < deadline) {
|
|
227
|
+
const revision = (await getJson({
|
|
228
|
+
apiBaseUrl: input.context.binding.apiBaseUrl,
|
|
229
|
+
token: input.context.auth.token,
|
|
230
|
+
path: `/api/workspace/deployments/${encodeURIComponent(input.deploymentId)}/revisions`,
|
|
231
|
+
})).revisions.find((candidate) => candidate.id === input.revisionId);
|
|
232
|
+
if (!revision) {
|
|
233
|
+
throw new Error("Deployment revision disappeared while publishing.");
|
|
234
|
+
}
|
|
235
|
+
if (revision.status === "ready")
|
|
236
|
+
return;
|
|
237
|
+
if (revision.status === "failed") {
|
|
238
|
+
throw new Error(revision.errorMessage ?? "Deployment failed.");
|
|
239
|
+
}
|
|
240
|
+
await new Promise((resolve) => setTimeout(resolve, 2_000));
|
|
241
|
+
}
|
|
242
|
+
throw new Error("Timed out waiting for the Deployment to become ready.");
|
|
243
|
+
}
|
|
244
|
+
async function readEnvironmentValue(input) {
|
|
245
|
+
if (input.stdin)
|
|
246
|
+
return readStandardInput();
|
|
247
|
+
if (input.fromFile) {
|
|
248
|
+
if (path.basename(input.fromFile) === ".env") {
|
|
249
|
+
throw new Error("Refusing to upload .env by default. Pass the value through --stdin instead.");
|
|
250
|
+
}
|
|
251
|
+
return readFile(input.fromFile, "utf8");
|
|
252
|
+
}
|
|
253
|
+
return input.value ?? "";
|
|
254
|
+
}
|
|
255
|
+
async function readStandardInput() {
|
|
256
|
+
const chunks = [];
|
|
257
|
+
for await (const chunk of process.stdin) {
|
|
258
|
+
chunks.push(Buffer.from(chunk));
|
|
259
|
+
}
|
|
260
|
+
return Buffer.concat(chunks).toString("utf8").replace(/\r?\n$/u, "");
|
|
261
|
+
}
|
|
262
|
+
const defaultAdapter = {
|
|
263
|
+
readContext: readWorkspaceContext,
|
|
264
|
+
listDeployments: listHostedDeployments,
|
|
265
|
+
listRevisions: (context, deploymentId) => getJson({
|
|
266
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
267
|
+
token: context.auth.token,
|
|
268
|
+
path: `/api/workspace/deployments/${encodeURIComponent(deploymentId)}/revisions`,
|
|
269
|
+
}).then((response) => response.revisions),
|
|
270
|
+
readRevisionLogs: (context, deploymentId, revisionId) => getJson({
|
|
271
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
272
|
+
token: context.auth.token,
|
|
273
|
+
path: `/api/workspace/deployments/${encodeURIComponent(deploymentId)}/revisions/${encodeURIComponent(revisionId)}/logs?history=all`,
|
|
274
|
+
}),
|
|
275
|
+
stopDeployment: async (context, deploymentId) => {
|
|
276
|
+
await postJson({
|
|
277
|
+
apiBaseUrl: context.binding.apiBaseUrl,
|
|
278
|
+
token: context.auth.token,
|
|
279
|
+
path: `/api/workspace/deployments/${encodeURIComponent(deploymentId)}/stop`,
|
|
280
|
+
body: {},
|
|
281
|
+
});
|
|
282
|
+
},
|
|
283
|
+
write: (value) => process.stdout.write(value),
|
|
284
|
+
wait: (durationMs) => new Promise((resolve) => setTimeout(resolve, durationMs)),
|
|
285
|
+
};
|
|
286
|
+
const deploymentOperations = createDeploymentOperations(defaultAdapter);
|
|
287
|
+
export async function showDeploymentStatus(cwd = process.cwd()) {
|
|
288
|
+
await deploymentOperations.status(cwd);
|
|
289
|
+
}
|
|
290
|
+
export async function showDeploymentRevisions(cwd = process.cwd()) {
|
|
291
|
+
await deploymentOperations.revisions(cwd);
|
|
292
|
+
}
|
|
293
|
+
export async function showDeploymentLogs(input) {
|
|
294
|
+
await deploymentOperations.logs(input);
|
|
295
|
+
}
|
|
296
|
+
export async function stopDeployment(cwd = process.cwd()) {
|
|
297
|
+
await deploymentOperations.stop(cwd);
|
|
298
|
+
}
|
|
299
|
+
//# sourceMappingURL=deployment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../src/deployment.ts"],"names":[],"mappings":"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"}
|
package/dist/help.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"AAQA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAW5D"}
|
package/dist/help.js
CHANGED
|
@@ -1,134 +1,45 @@
|
|
|
1
|
-
|
|
2
|
-
[
|
|
3
|
-
"",
|
|
4
|
-
`Vibable CLI
|
|
5
|
-
|
|
6
|
-
Usage:
|
|
7
|
-
vibable <command> [options]
|
|
8
|
-
|
|
9
|
-
Commands:
|
|
10
|
-
auth login Authorize the CLI through Vibable Web
|
|
11
|
-
guide Read the Agent Skill catalog or one Skill
|
|
12
|
-
dev Create and manage a local development session
|
|
13
|
-
config apply Apply vibable.yaml and rebuild Preview
|
|
14
|
-
deploy Build and publish a Deployment
|
|
15
|
-
env Manage Deployment environment variables
|
|
16
|
-
status Show Feature runtime status and service URL
|
|
17
|
-
logs Read or follow Feature logs
|
|
18
|
-
exec Run a command in the Feature Pod
|
|
19
|
-
data migrate Apply a Managed Data schema operation
|
|
20
|
-
app-auth enable Enable Vibable App Auth
|
|
21
|
-
|
|
22
|
-
Run 'vibable <command> --help' for command details.`,
|
|
23
|
-
],
|
|
24
|
-
[
|
|
25
|
-
"auth",
|
|
26
|
-
`Usage:
|
|
27
|
-
vibable auth login --api <url>`,
|
|
28
|
-
],
|
|
29
|
-
[
|
|
30
|
-
"auth login",
|
|
31
|
-
`Authorize the CLI through the user's existing Vibable Web login.
|
|
32
|
-
|
|
33
|
-
Usage:
|
|
34
|
-
vibable auth login --api <url>`,
|
|
35
|
-
],
|
|
36
|
-
[
|
|
37
|
-
"guide",
|
|
38
|
-
`Read the public Agent Skill catalog or one Skill. Authentication is not required.
|
|
39
|
-
|
|
40
|
-
Usage:
|
|
41
|
-
vibable guide [skill] [--api <url>]
|
|
42
|
-
|
|
43
|
-
Examples:
|
|
44
|
-
vibable guide
|
|
45
|
-
vibable guide vibable-runtime`,
|
|
46
|
-
],
|
|
47
|
-
[
|
|
48
|
-
"dev",
|
|
49
|
-
`Create and manage a CLI-backed local development session.
|
|
50
|
-
|
|
51
|
-
Usage:
|
|
52
|
-
vibable dev init [--api <url>] [--config <path>] <directory>
|
|
53
|
-
vibable dev connect --api <url> --session <id> --token <token> <directory>
|
|
54
|
-
vibable dev start
|
|
55
|
-
vibable dev status
|
|
56
|
-
vibable dev stop`,
|
|
57
|
-
],
|
|
58
|
-
[
|
|
59
|
-
"dev init",
|
|
60
|
-
`Upload a local project, create or resume its Feature, and start synchronization.
|
|
61
|
-
|
|
62
|
-
Usage:
|
|
63
|
-
vibable dev init [--api <url>] [--config <path>] <directory>`,
|
|
64
|
-
],
|
|
65
|
-
[
|
|
66
|
-
"dev connect",
|
|
67
|
-
`Connect to an existing Feature using the command generated by Vibable.
|
|
68
|
-
|
|
69
|
-
Usage:
|
|
70
|
-
vibable dev connect --api <url> --session <id> --token <token> <directory>`,
|
|
71
|
-
],
|
|
72
|
-
["dev start", "Usage:\n vibable dev start"],
|
|
73
|
-
["dev status", "Usage:\n vibable dev status"],
|
|
74
|
-
["dev stop", "Usage:\n vibable dev stop"],
|
|
75
|
-
["config", "Usage:\n vibable config apply [--config <path>]"],
|
|
76
|
-
["deploy", "Usage:\n vibable deploy [--subdomain <subdomain>]"],
|
|
77
|
-
["env", "Usage:\n vibable env <set|list|unset> --deployment"],
|
|
78
|
-
["env set", "Usage:\n vibable env set KEY=value --deployment [--secret] [--redeploy]\n vibable env set KEY --deployment --stdin [--secret] [--redeploy]\n vibable env set KEY --deployment --from-file <path> [--secret] [--redeploy]"],
|
|
79
|
-
["env list", "Usage:\n vibable env list --deployment"],
|
|
80
|
-
["env unset", "Usage:\n vibable env unset KEY --deployment [--redeploy]"],
|
|
81
|
-
[
|
|
82
|
-
"config apply",
|
|
83
|
-
`Apply the local Vibable runtime configuration and rebuild the Feature Pod.
|
|
84
|
-
|
|
85
|
-
Usage:
|
|
86
|
-
vibable config apply [--config <path>]`,
|
|
87
|
-
],
|
|
88
|
-
["status", "Usage:\n vibable status"],
|
|
89
|
-
["logs", "Usage:\n vibable logs [--follow]"],
|
|
90
|
-
[
|
|
91
|
-
"exec",
|
|
92
|
-
`Run a command in the active Feature Pod.
|
|
93
|
-
|
|
94
|
-
Usage:
|
|
95
|
-
vibable exec [--api <url> --session <id> --token <token>] [--shell] -- <command>`,
|
|
96
|
-
],
|
|
97
|
-
["data", "Usage:\n vibable data migrate [--wait] <operation.json|->"],
|
|
98
|
-
[
|
|
99
|
-
"data migrate",
|
|
100
|
-
`Apply a Managed Data schema operation from a file or stdin.
|
|
101
|
-
|
|
102
|
-
Usage:
|
|
103
|
-
vibable data migrate [--wait] <operation.json|->`,
|
|
104
|
-
],
|
|
105
|
-
["app-auth", "Usage:\n vibable app-auth enable"],
|
|
106
|
-
[
|
|
107
|
-
"app-auth enable",
|
|
108
|
-
`Enable Vibable App Auth for the bound project.
|
|
109
|
-
|
|
110
|
-
Usage:
|
|
111
|
-
vibable app-auth enable`,
|
|
112
|
-
],
|
|
113
|
-
]);
|
|
1
|
+
import { cliCommandManifest, findCliCommandForHelp, } from "./command-manifest.js";
|
|
114
2
|
const helpFlags = new Set(["-h", "--help"]);
|
|
115
3
|
export function resolveCliHelp(args) {
|
|
116
4
|
const separatorIndex = args.indexOf("--");
|
|
117
5
|
const cliArgs = separatorIndex >= 0 ? args.slice(0, separatorIndex) : args;
|
|
118
6
|
if (cliArgs[0] === "help") {
|
|
119
|
-
return
|
|
7
|
+
return renderCliHelp(findCliCommandForHelp(cliArgs.slice(1)));
|
|
120
8
|
}
|
|
121
9
|
const helpIndex = cliArgs.findIndex((argument) => helpFlags.has(argument));
|
|
122
10
|
if (helpIndex < 0)
|
|
123
11
|
return null;
|
|
124
|
-
return
|
|
12
|
+
return renderCliHelp(findCliCommandForHelp(cliArgs.slice(0, helpIndex)));
|
|
125
13
|
}
|
|
126
|
-
function
|
|
127
|
-
|
|
128
|
-
const
|
|
129
|
-
|
|
130
|
-
|
|
14
|
+
function renderCliHelp(command) {
|
|
15
|
+
if (command.path.length === 0) {
|
|
16
|
+
const summaries = cliCommandManifest.flatMap((candidate) => "rootSummary" in candidate
|
|
17
|
+
? [{ label: candidate.path.join(" "), summary: candidate.rootSummary }]
|
|
18
|
+
: []);
|
|
19
|
+
const labelWidth = Math.max(...summaries.map(({ label }) => label.length));
|
|
20
|
+
return `Vibable CLI
|
|
21
|
+
|
|
22
|
+
Usage:
|
|
23
|
+
${command.usage?.[0]}
|
|
24
|
+
|
|
25
|
+
Commands:
|
|
26
|
+
${summaries
|
|
27
|
+
.map(({ label, summary }) => ` ${label.padEnd(labelWidth)} ${summary}`)
|
|
28
|
+
.join("\n")}
|
|
29
|
+
|
|
30
|
+
Run 'vibable <command> --help' for command details.\n`;
|
|
131
31
|
}
|
|
132
|
-
|
|
32
|
+
const sections = [
|
|
33
|
+
command.description,
|
|
34
|
+
command.usage && command.usage.length > 0
|
|
35
|
+
? `Usage:\n${command.usage.map((usage) => ` ${usage}`).join("\n")}`
|
|
36
|
+
: undefined,
|
|
37
|
+
command.examples && command.examples.length > 0
|
|
38
|
+
? `Examples:\n${command.examples
|
|
39
|
+
.map((example) => ` ${example}`)
|
|
40
|
+
.join("\n")}`
|
|
41
|
+
: undefined,
|
|
42
|
+
].filter((section) => Boolean(section));
|
|
43
|
+
return `${sections.join("\n\n")}\n`;
|
|
133
44
|
}
|
|
134
45
|
//# sourceMappingURL=help.js.map
|
package/dist/help.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.js","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,qBAAqB,GAEtB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;AAE5C,MAAM,UAAU,cAAc,CAAC,IAAc;IAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3E,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,aAAa,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3E,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/B,OAAO,aAAa,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,aAAa,CAAC,OAA6B;IAClD,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CACzD,aAAa,IAAI,SAAS;YACxB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC;YACvE,CAAC,CAAC,EAAE,CACP,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3E,OAAO;;;IAGP,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;;;EAGpB,SAAS;aACR,GAAG,CACF,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CACrB,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,OAAO,EAAE,CAC9C;aACA,IAAI,CAAC,IAAI,CAAC;;sDAEyC,CAAC;IACrD,CAAC;IAED,MAAM,QAAQ,GAAG;QACf,OAAO,CAAC,WAAW;QACnB,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YACvC,CAAC,CAAC,WAAW,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpE,CAAC,CAAC,SAAS;QACb,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC7C,CAAC,CAAC,cAAc,OAAO,CAAC,QAAQ;iBAC3B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,OAAO,EAAE,CAAC;iBAChC,IAAI,CAAC,IAAI,CAAC,EAAE;YACjB,CAAC,CAAC,SAAS;KACd,CAAC,MAAM,CAAC,CAAC,OAAO,EAAqB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AACtC,CAAC"}
|
package/dist/hosting.d.ts
CHANGED
|
@@ -16,25 +16,9 @@ export declare function applyHostingConfig(input: {
|
|
|
16
16
|
cwd?: string;
|
|
17
17
|
}): Promise<void>;
|
|
18
18
|
export declare function showHostingStatus(cwd?: string): Promise<void>;
|
|
19
|
-
export declare function deployHostedProject(input: {
|
|
20
|
-
subdomain?: string;
|
|
21
|
-
cwd?: string;
|
|
22
|
-
}): Promise<void>;
|
|
23
|
-
export declare function setDeploymentEnvironment(input: {
|
|
24
|
-
key: string;
|
|
25
|
-
value?: string;
|
|
26
|
-
secret: boolean;
|
|
27
|
-
stdin: boolean;
|
|
28
|
-
fromFile?: string;
|
|
29
|
-
redeploy: boolean;
|
|
30
|
-
}): Promise<void>;
|
|
31
|
-
export declare function listDeploymentEnvironment(_input: Record<string, never>): Promise<void>;
|
|
32
|
-
export declare function unsetDeploymentEnvironment(input: {
|
|
33
|
-
key: string;
|
|
34
|
-
redeploy: boolean;
|
|
35
|
-
}): Promise<void>;
|
|
36
19
|
export declare function showHostingLogs(input: {
|
|
37
20
|
follow: boolean;
|
|
38
21
|
cwd?: string;
|
|
39
22
|
}): Promise<void>;
|
|
23
|
+
export declare function parseCompleteLogSnapshot(data: string): boolean;
|
|
40
24
|
//# sourceMappingURL=hosting.d.ts.map
|
package/dist/hosting.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosting.d.ts","sourceRoot":"","sources":["../src/hosting.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hosting.d.ts","sourceRoot":"","sources":["../src/hosting.ts"],"names":[],"mappings":"AAmDA,wBAAsB,QAAQ,CAAC,KAAK,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,iBA2B3D;AAmCD,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,iBAmEA;AAED,wBAAsB,gBAAgB,CAAC,GAAG,SAAgB,iBAiBzD;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,iBA8BA;AA2BD,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,iBAsDA;AAwDD,wBAAsB,iBAAiB,CAAC,GAAG,SAAgB,iBAwB1D;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,iBA4EA;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,WAGpD"}
|