@lightningai/sdk 2026.5.12 → 2026.5.21
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/README.md +90 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lightning_cloud/openapi/SandboxesService.d.ts +119 -1
- package/dist/lightning_cloud/openapi/SandboxesService.d.ts.map +1 -1
- package/dist/lightning_cloud/openapi/SandboxesService.js +158 -0
- package/dist/lightning_cloud/openapi/SandboxesService.js.map +1 -1
- package/dist/lightning_cloud/openapi/data-contracts.d.ts +214 -0
- package/dist/lightning_cloud/openapi/data-contracts.d.ts.map +1 -1
- package/dist/process.d.ts +115 -0
- package/dist/process.d.ts.map +1 -0
- package/dist/process.js +254 -0
- package/dist/process.js.map +1 -0
- package/dist/pty.d.ts +121 -0
- package/dist/pty.d.ts.map +1 -0
- package/dist/pty.js +264 -0
- package/dist/pty.js.map +1 -0
- package/dist/sandbox.d.ts +17 -0
- package/dist/sandbox.d.ts.map +1 -1
- package/dist/sandbox.js +29 -0
- package/dist/sandbox.js.map +1 -1
- package/dist/types.d.ts +67 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -50,6 +50,96 @@ Environment variables read by the SDK:
|
|
|
50
50
|
| ------------------- | --------------------------------------------------------- |
|
|
51
51
|
| `LIGHTNING_API_KEY` | API key if not passed via `configure()` / request options |
|
|
52
52
|
|
|
53
|
+
## PTY sessions
|
|
54
|
+
|
|
55
|
+
For interactive shells (REPLs, build watchers, anything that needs `stdin`/window-resize/ANSI), use the `sandbox.process` namespace instead of `runCommand`. PTY sessions are bridged over a WebSocket from the controlplane down to the in-sandbox SSH server, with the same xterm wire protocol the Lightning UI's web terminal uses.
|
|
56
|
+
|
|
57
|
+
PTY support requires Node 22+ (for the built-in `WebSocket` global).
|
|
58
|
+
|
|
59
|
+
### Create a session
|
|
60
|
+
|
|
61
|
+
```ts
|
|
62
|
+
const pty = await sandbox.process.createPty({
|
|
63
|
+
sessionName: "build",
|
|
64
|
+
clusterId: sandbox.clusterId,
|
|
65
|
+
cwd: "/app",
|
|
66
|
+
cols: 120,
|
|
67
|
+
rows: 30,
|
|
68
|
+
envs: { TERM: "xterm-256color" },
|
|
69
|
+
onData: (chunk) => process.stdout.write(chunk),
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
await pty.waitForConnection();
|
|
73
|
+
await pty.sendInput("npm test\n");
|
|
74
|
+
await pty.sendInput("exit\n");
|
|
75
|
+
|
|
76
|
+
const result = await pty.wait();
|
|
77
|
+
console.log(`exit code: ${result.exitCode}`);
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
| Option | Type | Description |
|
|
81
|
+
| ------------- | --------------------------- | ---------------------------------------------------------------------- |
|
|
82
|
+
| `sessionName` | `string` | Session identifier (used by `connectPty`) |
|
|
83
|
+
| `clusterId` | `string` | Cluster the sandbox runs on (`sandbox.clusterId`) |
|
|
84
|
+
| `cwd` | `string` | Initial working directory |
|
|
85
|
+
| `envs` | `Record<string, string>` | Environment variables exported into the session |
|
|
86
|
+
| `cols` | `number` | Initial terminal columns (default 80) |
|
|
87
|
+
| `rows` | `number` | Initial terminal rows (default 24) |
|
|
88
|
+
| `onData` | `(chunk: Uint8Array)=>void` | Callback for every chunk of shell output (defaults to `writeToStdout`) |
|
|
89
|
+
|
|
90
|
+
If `onData` is omitted, the SDK uses the exported `writeToStdout` helper, which forwards raw shell bytes to `process.stdout`. Pass `onData: () => {}` to suppress.
|
|
91
|
+
|
|
92
|
+
### Reconnect to a session
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
const pty = await sandbox.process.connectPty("build", sandbox.clusterId, {
|
|
96
|
+
onData: (chunk) => process.stdout.write(chunk),
|
|
97
|
+
});
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### List, inspect, and kill sessions
|
|
101
|
+
|
|
102
|
+
```ts
|
|
103
|
+
const sessions = await sandbox.process.listPtySessions();
|
|
104
|
+
for (const s of sessions) {
|
|
105
|
+
console.log(s.id, s.active, s.cols, s.rows);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
const info = await sandbox.process.getPtySessionInfo("build");
|
|
109
|
+
await sandbox.process.killPtySession("build");
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Resize
|
|
113
|
+
|
|
114
|
+
Resize from a handle (preferred — works without a server round-trip):
|
|
115
|
+
|
|
116
|
+
```ts
|
|
117
|
+
await pty.resize(150, 40);
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Or via the namespace, which finds the live handle in this process:
|
|
121
|
+
|
|
122
|
+
```ts
|
|
123
|
+
await sandbox.process.resizePtySession("build", 150, 40);
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
### `PtyHandle` reference
|
|
127
|
+
|
|
128
|
+
| Member | Description |
|
|
129
|
+
| --------------------------------- | -------------------------------------------------------- |
|
|
130
|
+
| `sendInput(string \| Uint8Array)` | Send raw bytes to the shell (e.g. `"\u0003"` for Ctrl+C) |
|
|
131
|
+
| `resize(cols, rows)` | Send a resize control frame |
|
|
132
|
+
| `wait()` | Resolve when the WebSocket closes; returns `PtyResult` |
|
|
133
|
+
| `waitForConnection(timeoutMs?)` | Resolve when the WebSocket opens |
|
|
134
|
+
| `kill()` | Send Ctrl+C and disconnect |
|
|
135
|
+
| `disconnect()` | Close the WebSocket without killing the shell |
|
|
136
|
+
| `isConnected()` | Whether the WebSocket is OPEN |
|
|
137
|
+
| `exitCode` | `0` on clean close, `-1` on abnormal, `null` while alive |
|
|
138
|
+
| `error` | Termination reason on abnormal close, otherwise `null` |
|
|
139
|
+
| `size` | Most recent `{ cols, rows }` |
|
|
140
|
+
|
|
141
|
+
> **Note on cross-process persistence.** Within a single SDK process, every PTY method works against an in-process registry. Reattaching from a *different* process to a session that's still running on the sandbox requires the runtime image to ship `screen` (or similar) and the in-sandbox SSH login shell to honor `LAI_TERM_SESSION_NAME` / `LAI_TERM_RESTORE` — both of which are tracked as a follow-up to this initial parity work. The API surface above does not change either way.
|
|
142
|
+
|
|
53
143
|
## License
|
|
54
144
|
|
|
55
145
|
Apache-2.0
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { Sandbox } from "./sandbox.js";
|
|
2
2
|
export { FileSystem } from "./filesystem.js";
|
|
3
3
|
export { Command } from "./command.js";
|
|
4
|
-
export
|
|
4
|
+
export { SandboxProcess } from "./process.js";
|
|
5
|
+
export { PtyHandle, writeToStdout } from "./pty.js";
|
|
6
|
+
export type { SandboxConfig, SandboxData, CreateSandboxParams, GetSandboxParams, ListSandboxesParams, ListSandboxesResponse, RunCommandOpts, CommandStatus, CommandLog, WaitForCommandOptions, WriteFileParams, ReadFileParams, CreateDirectoryParams, FileStat, PtySize, PtyCreateOpts, PtyConnectOpts, PtyResult, PtySessionInfo, } from "./types.js";
|
|
5
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EACV,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACpD,YAAY,EACV,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,OAAO,EACP,aAAa,EACb,cAAc,EACd,SAAS,EACT,cAAc,GACf,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SandboxesServiceCreateSandboxDirectoryBody, SandboxesServiceExtendSandboxTimeoutBody, SandboxesServiceRunSandboxCommandBody, SandboxesServiceWriteSandboxFileBody, V1CreateSandboxRequest } from "./data-contracts";
|
|
1
|
+
import { SandboxesServiceCreateSandboxDirectoryBody, SandboxesServiceCreateSandboxSnapshotBody, SandboxesServiceExtendSandboxTimeoutBody, SandboxesServiceFinalizeSandboxSnapshotBody, SandboxesServiceGetSandboxSnapshotBlobDownloadUrlsBody, SandboxesServiceGetSandboxSnapshotBlobUploadUrlsBody, SandboxesServiceRunSandboxCommandBody, SandboxesServiceStopSandboxBody, SandboxesServiceUpdateSandboxBody, SandboxesServiceWriteSandboxFileBody, V1CreateSandboxRequest } from "./data-contracts";
|
|
2
2
|
import { HttpClient, RequestParams } from "./http-client";
|
|
3
3
|
export declare class SandboxesService<SecurityDataType = unknown> extends HttpClient<SecurityDataType> {
|
|
4
4
|
/**
|
|
@@ -6,6 +6,7 @@ export declare class SandboxesService<SecurityDataType = unknown> extends HttpCl
|
|
|
6
6
|
*
|
|
7
7
|
* @tags SandboxesService
|
|
8
8
|
* @name SandboxesServiceListSandboxes
|
|
9
|
+
* @summary Sandboxes
|
|
9
10
|
* @request GET:/v1/core/sandboxes
|
|
10
11
|
*/
|
|
11
12
|
sandboxesServiceListSandboxes: (query?: {
|
|
@@ -13,6 +14,14 @@ export declare class SandboxesService<SecurityDataType = unknown> extends HttpCl
|
|
|
13
14
|
pageToken?: string;
|
|
14
15
|
/** @format int64 */
|
|
15
16
|
limit?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Optional teamspace/project scoping. When set, only sandboxes belonging
|
|
19
|
+
* to this project are returned. Mirrors `ListSandboxSnapshotsRequest`.
|
|
20
|
+
* Sandboxes created before this field landed have no `project_id`
|
|
21
|
+
* persisted server-side, so filtering will return an empty set until
|
|
22
|
+
* sandboxes are recreated with a project context.
|
|
23
|
+
*/
|
|
24
|
+
projectId?: string;
|
|
16
25
|
}, params?: RequestParams) => any;
|
|
17
26
|
/**
|
|
18
27
|
* No description
|
|
@@ -22,6 +31,79 @@ export declare class SandboxesService<SecurityDataType = unknown> extends HttpCl
|
|
|
22
31
|
* @request POST:/v1/core/sandboxes
|
|
23
32
|
*/
|
|
24
33
|
sandboxesServiceCreateSandbox: (body: V1CreateSandboxRequest, params?: RequestParams) => any;
|
|
34
|
+
/**
|
|
35
|
+
* No description
|
|
36
|
+
*
|
|
37
|
+
* @tags SandboxesService
|
|
38
|
+
* @name SandboxesServiceListSandboxSnapshots
|
|
39
|
+
* @summary Snapshots
|
|
40
|
+
* @request GET:/v1/core/sandboxes/snapshots
|
|
41
|
+
*/
|
|
42
|
+
sandboxesServiceListSandboxSnapshots: (query?: {
|
|
43
|
+
organizationId?: string;
|
|
44
|
+
pageToken?: string;
|
|
45
|
+
/** @format int64 */
|
|
46
|
+
limit?: string;
|
|
47
|
+
projectId?: string;
|
|
48
|
+
name?: string;
|
|
49
|
+
sortOrder?: string;
|
|
50
|
+
}, params?: RequestParams) => any;
|
|
51
|
+
/**
|
|
52
|
+
* No description
|
|
53
|
+
*
|
|
54
|
+
* @tags SandboxesService
|
|
55
|
+
* @name SandboxesServiceGetSandboxSnapshot
|
|
56
|
+
* @request GET:/v1/core/sandboxes/snapshots/{snapshotId}
|
|
57
|
+
*/
|
|
58
|
+
sandboxesServiceGetSandboxSnapshot: (snapshotId: string, query?: {
|
|
59
|
+
organizationId?: string;
|
|
60
|
+
}, params?: RequestParams) => any;
|
|
61
|
+
/**
|
|
62
|
+
* No description
|
|
63
|
+
*
|
|
64
|
+
* @tags SandboxesService
|
|
65
|
+
* @name SandboxesServiceDeleteSandboxSnapshot
|
|
66
|
+
* @request DELETE:/v1/core/sandboxes/snapshots/{snapshotId}
|
|
67
|
+
*/
|
|
68
|
+
sandboxesServiceDeleteSandboxSnapshot: (snapshotId: string, query?: {
|
|
69
|
+
organizationId?: string;
|
|
70
|
+
}, params?: RequestParams) => any;
|
|
71
|
+
/**
|
|
72
|
+
* No description
|
|
73
|
+
*
|
|
74
|
+
* @tags SandboxesService
|
|
75
|
+
* @name SandboxesServiceGetSandboxSnapshotBlobDownloadUrls
|
|
76
|
+
* @summary GetSandboxSnapshotBlobDownloadUrls mints presigned GET URLs for a
|
|
77
|
+
batch of sha256 digests so the restoring agent can pull missing
|
|
78
|
+
blobs from S3 directly. One URL per digest, in request order.
|
|
79
|
+
* @request POST:/v1/core/sandboxes/snapshots/{snapshotId}/blobs/download-urls
|
|
80
|
+
*/
|
|
81
|
+
sandboxesServiceGetSandboxSnapshotBlobDownloadUrls: (snapshotId: string, body: SandboxesServiceGetSandboxSnapshotBlobDownloadUrlsBody, params?: RequestParams) => any;
|
|
82
|
+
/**
|
|
83
|
+
* No description
|
|
84
|
+
*
|
|
85
|
+
* @tags SandboxesService
|
|
86
|
+
* @name SandboxesServiceGetSandboxSnapshotBlobUploadUrls
|
|
87
|
+
* @summary GetSandboxSnapshotBlobUploadUrls performs an existence check on
|
|
88
|
+
the supplied sha256 digests in the cluster blob store and returns
|
|
89
|
+
presigned PUT URLs only for those not already present. Existing
|
|
90
|
+
digests are echoed back in `existing_digests` so the caller can
|
|
91
|
+
skip uploading them.
|
|
92
|
+
* @request POST:/v1/core/sandboxes/snapshots/{snapshotId}/blobs/upload-urls
|
|
93
|
+
*/
|
|
94
|
+
sandboxesServiceGetSandboxSnapshotBlobUploadUrls: (snapshotId: string, body: SandboxesServiceGetSandboxSnapshotBlobUploadUrlsBody, params?: RequestParams) => any;
|
|
95
|
+
/**
|
|
96
|
+
* No description
|
|
97
|
+
*
|
|
98
|
+
* @tags SandboxesService
|
|
99
|
+
* @name SandboxesServiceFinalizeSandboxSnapshot
|
|
100
|
+
* @summary FinalizeSandboxSnapshot flips the row from "saving" to "ready"
|
|
101
|
+
after the agent has uploaded every blob and the manifest body to
|
|
102
|
+
`object_key`. The controlplane records final size_bytes +
|
|
103
|
+
rootfs_digest from the manifest.
|
|
104
|
+
* @request POST:/v1/core/sandboxes/snapshots/{snapshotId}/finalize
|
|
105
|
+
*/
|
|
106
|
+
sandboxesServiceFinalizeSandboxSnapshot: (snapshotId: string, body: SandboxesServiceFinalizeSandboxSnapshotBody, params?: RequestParams) => any;
|
|
25
107
|
/**
|
|
26
108
|
* No description
|
|
27
109
|
*
|
|
@@ -42,6 +124,20 @@ export declare class SandboxesService<SecurityDataType = unknown> extends HttpCl
|
|
|
42
124
|
sandboxesServiceDeleteSandbox: (id: string, query?: {
|
|
43
125
|
organizationId?: string;
|
|
44
126
|
}, params?: RequestParams) => any;
|
|
127
|
+
/**
|
|
128
|
+
* No description
|
|
129
|
+
*
|
|
130
|
+
* @tags SandboxesService
|
|
131
|
+
* @name SandboxesServiceUpdateSandbox
|
|
132
|
+
* @summary UpdateSandbox updates a sandbox in place. Currently the only
|
|
133
|
+
supported mutation is `resume = true`, which resumes a previously
|
|
134
|
+
stopped persistent sandbox from its most recent auto-snapshot while
|
|
135
|
+
preserving the sandbox id. Modelled on Vercel's update-sandbox
|
|
136
|
+
endpoint:
|
|
137
|
+
https://vercel.com/docs/rest-api/sandboxes-v2-beta/update-a-sandbox.
|
|
138
|
+
* @request PATCH:/v1/core/sandboxes/{id}
|
|
139
|
+
*/
|
|
140
|
+
sandboxesServiceUpdateSandbox: (id: string, body: SandboxesServiceUpdateSandboxBody, params?: RequestParams) => any;
|
|
45
141
|
/**
|
|
46
142
|
* No description
|
|
47
143
|
*
|
|
@@ -115,5 +211,27 @@ export declare class SandboxesService<SecurityDataType = unknown> extends HttpCl
|
|
|
115
211
|
* @request POST:/v1/core/sandboxes/{id}/files
|
|
116
212
|
*/
|
|
117
213
|
sandboxesServiceWriteSandboxFile: (id: string, body: SandboxesServiceWriteSandboxFileBody, params?: RequestParams) => any;
|
|
214
|
+
/**
|
|
215
|
+
* No description
|
|
216
|
+
*
|
|
217
|
+
* @tags SandboxesService
|
|
218
|
+
* @name SandboxesServiceCreateSandboxSnapshot
|
|
219
|
+
* @request POST:/v1/core/sandboxes/{id}/snapshot
|
|
220
|
+
*/
|
|
221
|
+
sandboxesServiceCreateSandboxSnapshot: (id: string, body: SandboxesServiceCreateSandboxSnapshotBody, params?: RequestParams) => any;
|
|
222
|
+
/**
|
|
223
|
+
* No description
|
|
224
|
+
*
|
|
225
|
+
* @tags SandboxesService
|
|
226
|
+
* @name SandboxesServiceStopSandbox
|
|
227
|
+
* @summary StopSandbox stops a running sandbox. For sandboxes created with
|
|
228
|
+
`persistent = true`, the controlplane first captures an auto-snapshot
|
|
229
|
+
keyed to the sandbox id (returned in `auto_snapshot_id`) so the
|
|
230
|
+
sandbox can later be brought back via UpdateSandbox(resume=true)
|
|
231
|
+
without losing filesystem state. For non-persistent sandboxes the
|
|
232
|
+
server is simply stopped and no snapshot is taken.
|
|
233
|
+
* @request POST:/v1/core/sandboxes/{id}/stop
|
|
234
|
+
*/
|
|
235
|
+
sandboxesServiceStopSandbox: (id: string, body: SandboxesServiceStopSandboxBody, params?: RequestParams) => any;
|
|
118
236
|
}
|
|
119
237
|
//# sourceMappingURL=SandboxesService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxesService.d.ts","sourceRoot":"","sources":["../../../src/lightning_cloud/openapi/SandboxesService.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,0CAA0C,EAC1C,wCAAwC,EACxC,qCAAqC,EACrC,oCAAoC,EAEpC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"SandboxesService.d.ts","sourceRoot":"","sources":["../../../src/lightning_cloud/openapi/SandboxesService.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ export class SandboxesService extends HttpClient {
|
|
|
16
16
|
*
|
|
17
17
|
* @tags SandboxesService
|
|
18
18
|
* @name SandboxesServiceListSandboxes
|
|
19
|
+
* @summary Sandboxes
|
|
19
20
|
* @request GET:/v1/core/sandboxes
|
|
20
21
|
*/
|
|
21
22
|
sandboxesServiceListSandboxes = (query, params = {}) => this.request({
|
|
@@ -40,6 +41,106 @@ export class SandboxesService extends HttpClient {
|
|
|
40
41
|
format: "json",
|
|
41
42
|
...params,
|
|
42
43
|
});
|
|
44
|
+
/**
|
|
45
|
+
* No description
|
|
46
|
+
*
|
|
47
|
+
* @tags SandboxesService
|
|
48
|
+
* @name SandboxesServiceListSandboxSnapshots
|
|
49
|
+
* @summary Snapshots
|
|
50
|
+
* @request GET:/v1/core/sandboxes/snapshots
|
|
51
|
+
*/
|
|
52
|
+
sandboxesServiceListSandboxSnapshots = (query, params = {}) => this.request({
|
|
53
|
+
path: `/v1/core/sandboxes/snapshots`,
|
|
54
|
+
method: "GET",
|
|
55
|
+
query: query,
|
|
56
|
+
format: "json",
|
|
57
|
+
...params,
|
|
58
|
+
});
|
|
59
|
+
/**
|
|
60
|
+
* No description
|
|
61
|
+
*
|
|
62
|
+
* @tags SandboxesService
|
|
63
|
+
* @name SandboxesServiceGetSandboxSnapshot
|
|
64
|
+
* @request GET:/v1/core/sandboxes/snapshots/{snapshotId}
|
|
65
|
+
*/
|
|
66
|
+
sandboxesServiceGetSandboxSnapshot = (snapshotId, query, params = {}) => this.request({
|
|
67
|
+
path: `/v1/core/sandboxes/snapshots/${snapshotId}`,
|
|
68
|
+
method: "GET",
|
|
69
|
+
query: query,
|
|
70
|
+
format: "json",
|
|
71
|
+
...params,
|
|
72
|
+
});
|
|
73
|
+
/**
|
|
74
|
+
* No description
|
|
75
|
+
*
|
|
76
|
+
* @tags SandboxesService
|
|
77
|
+
* @name SandboxesServiceDeleteSandboxSnapshot
|
|
78
|
+
* @request DELETE:/v1/core/sandboxes/snapshots/{snapshotId}
|
|
79
|
+
*/
|
|
80
|
+
sandboxesServiceDeleteSandboxSnapshot = (snapshotId, query, params = {}) => this.request({
|
|
81
|
+
path: `/v1/core/sandboxes/snapshots/${snapshotId}`,
|
|
82
|
+
method: "DELETE",
|
|
83
|
+
query: query,
|
|
84
|
+
format: "json",
|
|
85
|
+
...params,
|
|
86
|
+
});
|
|
87
|
+
/**
|
|
88
|
+
* No description
|
|
89
|
+
*
|
|
90
|
+
* @tags SandboxesService
|
|
91
|
+
* @name SandboxesServiceGetSandboxSnapshotBlobDownloadUrls
|
|
92
|
+
* @summary GetSandboxSnapshotBlobDownloadUrls mints presigned GET URLs for a
|
|
93
|
+
batch of sha256 digests so the restoring agent can pull missing
|
|
94
|
+
blobs from S3 directly. One URL per digest, in request order.
|
|
95
|
+
* @request POST:/v1/core/sandboxes/snapshots/{snapshotId}/blobs/download-urls
|
|
96
|
+
*/
|
|
97
|
+
sandboxesServiceGetSandboxSnapshotBlobDownloadUrls = (snapshotId, body, params = {}) => this.request({
|
|
98
|
+
path: `/v1/core/sandboxes/snapshots/${snapshotId}/blobs/download-urls`,
|
|
99
|
+
method: "POST",
|
|
100
|
+
body: body,
|
|
101
|
+
type: ContentType.Json,
|
|
102
|
+
format: "json",
|
|
103
|
+
...params,
|
|
104
|
+
});
|
|
105
|
+
/**
|
|
106
|
+
* No description
|
|
107
|
+
*
|
|
108
|
+
* @tags SandboxesService
|
|
109
|
+
* @name SandboxesServiceGetSandboxSnapshotBlobUploadUrls
|
|
110
|
+
* @summary GetSandboxSnapshotBlobUploadUrls performs an existence check on
|
|
111
|
+
the supplied sha256 digests in the cluster blob store and returns
|
|
112
|
+
presigned PUT URLs only for those not already present. Existing
|
|
113
|
+
digests are echoed back in `existing_digests` so the caller can
|
|
114
|
+
skip uploading them.
|
|
115
|
+
* @request POST:/v1/core/sandboxes/snapshots/{snapshotId}/blobs/upload-urls
|
|
116
|
+
*/
|
|
117
|
+
sandboxesServiceGetSandboxSnapshotBlobUploadUrls = (snapshotId, body, params = {}) => this.request({
|
|
118
|
+
path: `/v1/core/sandboxes/snapshots/${snapshotId}/blobs/upload-urls`,
|
|
119
|
+
method: "POST",
|
|
120
|
+
body: body,
|
|
121
|
+
type: ContentType.Json,
|
|
122
|
+
format: "json",
|
|
123
|
+
...params,
|
|
124
|
+
});
|
|
125
|
+
/**
|
|
126
|
+
* No description
|
|
127
|
+
*
|
|
128
|
+
* @tags SandboxesService
|
|
129
|
+
* @name SandboxesServiceFinalizeSandboxSnapshot
|
|
130
|
+
* @summary FinalizeSandboxSnapshot flips the row from "saving" to "ready"
|
|
131
|
+
after the agent has uploaded every blob and the manifest body to
|
|
132
|
+
`object_key`. The controlplane records final size_bytes +
|
|
133
|
+
rootfs_digest from the manifest.
|
|
134
|
+
* @request POST:/v1/core/sandboxes/snapshots/{snapshotId}/finalize
|
|
135
|
+
*/
|
|
136
|
+
sandboxesServiceFinalizeSandboxSnapshot = (snapshotId, body, params = {}) => this.request({
|
|
137
|
+
path: `/v1/core/sandboxes/snapshots/${snapshotId}/finalize`,
|
|
138
|
+
method: "POST",
|
|
139
|
+
body: body,
|
|
140
|
+
type: ContentType.Json,
|
|
141
|
+
format: "json",
|
|
142
|
+
...params,
|
|
143
|
+
});
|
|
43
144
|
/**
|
|
44
145
|
* No description
|
|
45
146
|
*
|
|
@@ -68,6 +169,27 @@ export class SandboxesService extends HttpClient {
|
|
|
68
169
|
format: "json",
|
|
69
170
|
...params,
|
|
70
171
|
});
|
|
172
|
+
/**
|
|
173
|
+
* No description
|
|
174
|
+
*
|
|
175
|
+
* @tags SandboxesService
|
|
176
|
+
* @name SandboxesServiceUpdateSandbox
|
|
177
|
+
* @summary UpdateSandbox updates a sandbox in place. Currently the only
|
|
178
|
+
supported mutation is `resume = true`, which resumes a previously
|
|
179
|
+
stopped persistent sandbox from its most recent auto-snapshot while
|
|
180
|
+
preserving the sandbox id. Modelled on Vercel's update-sandbox
|
|
181
|
+
endpoint:
|
|
182
|
+
https://vercel.com/docs/rest-api/sandboxes-v2-beta/update-a-sandbox.
|
|
183
|
+
* @request PATCH:/v1/core/sandboxes/{id}
|
|
184
|
+
*/
|
|
185
|
+
sandboxesServiceUpdateSandbox = (id, body, params = {}) => this.request({
|
|
186
|
+
path: `/v1/core/sandboxes/${id}`,
|
|
187
|
+
method: "PATCH",
|
|
188
|
+
body: body,
|
|
189
|
+
type: ContentType.Json,
|
|
190
|
+
format: "json",
|
|
191
|
+
...params,
|
|
192
|
+
});
|
|
71
193
|
/**
|
|
72
194
|
* No description
|
|
73
195
|
*
|
|
@@ -184,5 +306,41 @@ export class SandboxesService extends HttpClient {
|
|
|
184
306
|
format: "json",
|
|
185
307
|
...params,
|
|
186
308
|
});
|
|
309
|
+
/**
|
|
310
|
+
* No description
|
|
311
|
+
*
|
|
312
|
+
* @tags SandboxesService
|
|
313
|
+
* @name SandboxesServiceCreateSandboxSnapshot
|
|
314
|
+
* @request POST:/v1/core/sandboxes/{id}/snapshot
|
|
315
|
+
*/
|
|
316
|
+
sandboxesServiceCreateSandboxSnapshot = (id, body, params = {}) => this.request({
|
|
317
|
+
path: `/v1/core/sandboxes/${id}/snapshot`,
|
|
318
|
+
method: "POST",
|
|
319
|
+
body: body,
|
|
320
|
+
type: ContentType.Json,
|
|
321
|
+
format: "json",
|
|
322
|
+
...params,
|
|
323
|
+
});
|
|
324
|
+
/**
|
|
325
|
+
* No description
|
|
326
|
+
*
|
|
327
|
+
* @tags SandboxesService
|
|
328
|
+
* @name SandboxesServiceStopSandbox
|
|
329
|
+
* @summary StopSandbox stops a running sandbox. For sandboxes created with
|
|
330
|
+
`persistent = true`, the controlplane first captures an auto-snapshot
|
|
331
|
+
keyed to the sandbox id (returned in `auto_snapshot_id`) so the
|
|
332
|
+
sandbox can later be brought back via UpdateSandbox(resume=true)
|
|
333
|
+
without losing filesystem state. For non-persistent sandboxes the
|
|
334
|
+
server is simply stopped and no snapshot is taken.
|
|
335
|
+
* @request POST:/v1/core/sandboxes/{id}/stop
|
|
336
|
+
*/
|
|
337
|
+
sandboxesServiceStopSandbox = (id, body, params = {}) => this.request({
|
|
338
|
+
path: `/v1/core/sandboxes/${id}/stop`,
|
|
339
|
+
method: "POST",
|
|
340
|
+
body: body,
|
|
341
|
+
type: ContentType.Json,
|
|
342
|
+
format: "json",
|
|
343
|
+
...params,
|
|
344
|
+
});
|
|
187
345
|
}
|
|
188
346
|
//# sourceMappingURL=SandboxesService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxesService.js","sourceRoot":"","sources":["../../../src/lightning_cloud/openapi/SandboxesService.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,oBAAoB;AACpB,cAAc;AACd;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"SandboxesService.js","sourceRoot":"","sources":["../../../src/lightning_cloud/openapi/SandboxesService.ts"],"names":[],"mappings":"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"}
|