rightsize 0.7.9 → 0.7.12
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 +6 -4
- package/dist/backend-docker/backend.d.ts +29 -3
- package/dist/backend-docker/backend.d.ts.map +1 -1
- package/dist/backend-docker/backend.js +30 -3
- package/dist/backend-docker/backend.js.map +1 -1
- package/dist/backend-msb/backend.d.ts +657 -83
- package/dist/backend-msb/backend.d.ts.map +1 -1
- package/dist/backend-msb/backend.js +1319 -149
- package/dist/backend-msb/backend.js.map +1 -1
- package/dist/backend-msb/commands.d.ts +162 -16
- package/dist/backend-msb/commands.d.ts.map +1 -1
- package/dist/backend-msb/commands.js +228 -32
- package/dist/backend-msb/commands.js.map +1 -1
- package/dist/backend-msb/network-links.d.ts +86 -1
- package/dist/backend-msb/network-links.d.ts.map +1 -1
- package/dist/backend-msb/network-links.js +119 -4
- package/dist/backend-msb/network-links.js.map +1 -1
- package/dist/backend-msb/provisioner.d.ts +1 -1
- package/dist/backend-msb/provisioner.d.ts.map +1 -1
- package/dist/backend-msb/provisioner.js +1 -1
- package/dist/backend-msb/provisioner.js.map +1 -1
- package/dist/backend-msb/restore-access-denied.d.ts +50 -0
- package/dist/backend-msb/restore-access-denied.d.ts.map +1 -0
- package/dist/backend-msb/restore-access-denied.js +52 -0
- package/dist/backend-msb/restore-access-denied.js.map +1 -0
- package/dist/backend-msb/restore-broker.d.ts +181 -0
- package/dist/backend-msb/restore-broker.d.ts.map +1 -0
- package/dist/backend-msb/restore-broker.js +264 -0
- package/dist/backend-msb/restore-broker.js.map +1 -0
- package/dist/backend-msb/sandbox-already-exists.d.ts +32 -0
- package/dist/backend-msb/sandbox-already-exists.d.ts.map +1 -0
- package/dist/backend-msb/sandbox-already-exists.js +35 -0
- package/dist/backend-msb/sandbox-already-exists.js.map +1 -0
- package/dist/backend-msb/snapshot-create.d.ts +22 -0
- package/dist/backend-msb/snapshot-create.d.ts.map +1 -0
- package/dist/backend-msb/snapshot-create.js +33 -0
- package/dist/backend-msb/snapshot-create.js.map +1 -0
- package/dist/backend-msb/snapshot-import.d.ts +30 -14
- package/dist/backend-msb/snapshot-import.d.ts.map +1 -1
- package/dist/backend-msb/snapshot-import.js +35 -17
- package/dist/backend-msb/snapshot-import.js.map +1 -1
- package/dist/backend-msb/snapshot-rm.d.ts +28 -0
- package/dist/backend-msb/snapshot-rm.d.ts.map +1 -0
- package/dist/backend-msb/snapshot-rm.js +30 -0
- package/dist/backend-msb/snapshot-rm.js.map +1 -0
- package/dist/core/backend.d.ts +68 -23
- package/dist/core/backend.d.ts.map +1 -1
- package/dist/core/checkpoint/api.d.ts +2 -2
- package/dist/core/checkpoint/api.js +2 -2
- package/dist/core/checkpoint/registry.d.ts +46 -0
- package/dist/core/checkpoint/registry.d.ts.map +1 -1
- package/dist/core/checkpoint/registry.js +44 -3
- package/dist/core/checkpoint/registry.js.map +1 -1
- package/dist/core/errors.d.ts +49 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +61 -0
- package/dist/core/errors.js.map +1 -1
- package/dist/core/free-ports.d.ts +18 -0
- package/dist/core/free-ports.d.ts.map +1 -1
- package/dist/core/free-ports.js +61 -0
- package/dist/core/free-ports.js.map +1 -1
- package/dist/core/generic-container.d.ts +101 -12
- package/dist/core/generic-container.d.ts.map +1 -1
- package/dist/core/generic-container.js +399 -71
- package/dist/core/generic-container.js.map +1 -1
- package/dist/core/model.d.ts +40 -3
- package/dist/core/model.d.ts.map +1 -1
- package/dist/core/network.d.ts +6 -2
- package/dist/core/network.d.ts.map +1 -1
- package/dist/core/network.js +4 -1
- package/dist/core/network.js.map +1 -1
- package/dist/core/reuse/hash.d.ts +12 -0
- package/dist/core/reuse/hash.d.ts.map +1 -1
- package/dist/core/reuse/hash.js +1 -0
- package/dist/core/reuse/hash.js.map +1 -1
- package/dist/core/reuse/registry.d.ts +10 -1
- package/dist/core/reuse/registry.d.ts.map +1 -1
- package/dist/core/reuse/registry.js +15 -1
- package/dist/core/reuse/registry.js.map +1 -1
- package/dist/core/sandbox-name.d.ts +3 -0
- package/dist/core/sandbox-name.d.ts.map +1 -0
- package/dist/core/sandbox-name.js +19 -0
- package/dist/core/sandbox-name.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/cassandra.d.ts +12 -12
- package/dist/modules/cassandra.js +13 -13
- package/dist/modules/cassandra.js.map +1 -1
- package/dist/modules/minio.d.ts +5 -3
- package/dist/modules/minio.d.ts.map +1 -1
- package/dist/modules/minio.js +14 -4
- package/dist/modules/minio.js.map +1 -1
- package/dist/modules/postgres.d.ts +2 -2
- package/dist/modules/postgres.d.ts.map +1 -1
- package/dist/modules/postgres.js +11 -9
- package/dist/modules/postgres.js.map +1 -1
- package/package.json +1 -1
- package/dist/backend-msb/snapshot-list.d.ts +0 -43
- package/dist/backend-msb/snapshot-list.d.ts.map +0 -1
- package/dist/backend-msb/snapshot-list.js +0 -53
- package/dist/backend-msb/snapshot-list.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minio.d.ts","sourceRoot":"","sources":["../../src/modules/minio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"minio.d.ts","sourceRoot":"","sources":["../../src/modules/minio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAe/D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,iBAAiB,CAAkB;gBAE/B,KAAK,GAAE,MAAM,GAAG,eAA+B;WAcrC,KAAK,CAAC,KAAK,GAAE,MAAM,GAAG,eAA+B,GAAG,OAAO,CAAC,cAAc,CAAC;IAIrG,wDAAwD;IACxD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKhC,kHAAkH;IAClH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKxC,qDAAqD;IACrD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,6DAA6D;IAC7D,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,uDAAuD;IACvD,IAAI,WAAW,IAAI,MAAM,CAExB;CACF"}
|
package/dist/modules/minio.js
CHANGED
|
@@ -4,7 +4,15 @@ import { DockerImageName } from "../core/docker-image-name.js";
|
|
|
4
4
|
const API_PORT = 9000;
|
|
5
5
|
const CONSOLE_PORT = 9001;
|
|
6
6
|
const EXPECTED_REPOSITORY = "minio/minio";
|
|
7
|
-
|
|
7
|
+
// Docker Hub's `minio/minio` repository has been removed upstream (`docker
|
|
8
|
+
// pull minio/minio` now fails with "repository does not exist") — the
|
|
9
|
+
// default floats to `quay.io/minio/minio:latest`, MinIO's maintained mirror,
|
|
10
|
+
// instead. `requireCompatible` below strips the registry host before
|
|
11
|
+
// comparing against EXPECTED_REPOSITORY, so this is the only line that
|
|
12
|
+
// needed to change: a caller-supplied `minio/minio:<tag>` override (from a
|
|
13
|
+
// mirror that still serves it, or a private registry) and a
|
|
14
|
+
// `quay.io/minio/minio:<tag>` override are both still accepted, unchanged.
|
|
15
|
+
const DEFAULT_IMAGE = "quay.io/minio/minio:latest";
|
|
8
16
|
/**
|
|
9
17
|
* A single-node MinIO container — an S3-compatible object store. Requires
|
|
10
18
|
* an explicit command: the image's default ENTRYPOINT alone does not serve,
|
|
@@ -22,9 +30,11 @@ const DEFAULT_IMAGE = "minio/minio:latest";
|
|
|
22
30
|
* Readiness is a protocol-aware HTTP check against `/minio/health/live` on
|
|
23
31
|
* the API port — verified answering 200 on the very first poll after boot.
|
|
24
32
|
*
|
|
25
|
-
* No-arg construction floats to `minio/minio:latest
|
|
26
|
-
*
|
|
27
|
-
*
|
|
33
|
+
* No-arg construction floats to `quay.io/minio/minio:latest` (Docker Hub's
|
|
34
|
+
* `minio/minio` repository was removed upstream — see `DEFAULT_IMAGE`'s own
|
|
35
|
+
* comment), so the version tracks upstream rather than this library's
|
|
36
|
+
* release cycle (verified against `minio/minio:RELEASE.2025-09-07T16-13-09Z`,
|
|
37
|
+
* before the Docker Hub removal).
|
|
28
38
|
*/
|
|
29
39
|
export class MinIOContainer extends GenericContainer {
|
|
30
40
|
rootUserState = "testuser";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"minio.js","sourceRoot":"","sources":["../../src/modules/minio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAC1C,MAAM,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"minio.js","sourceRoot":"","sources":["../../src/modules/minio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,QAAQ,GAAG,IAAI,CAAC;AACtB,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAC1C,2EAA2E;AAC3E,sEAAsE;AACtE,6EAA6E;AAC7E,qEAAqE;AACrE,uEAAuE;AACvE,2EAA2E;AAC3E,4DAA4D;AAC5D,2EAA2E;AAC3E,MAAM,aAAa,GAAG,4BAA4B,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,cAAe,SAAQ,gBAAgB;IAC1C,aAAa,GAAG,UAAU,CAAC;IAC3B,iBAAiB,GAAG,cAAc,CAAC;IAE3C,YAAY,QAAkC,aAAa;QACzD,KAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC;aAC1C,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,CAAC;aAC5D,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC;aAC9C,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,iBAAiB,CAAC;aACtD,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpE,wEAAwE;QACxE,mEAAmE;QACnE,mEAAmE;QACnE,mEAAmE;QACnE,wDAAwD;IAC1D,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,KAAK,CAAC,QAAkC,aAAa;QACzE,OAAO,CAAC,MAAM,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAmB,CAAC;IACrE,CAAC;IAED,wDAAwD;IACxD,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,kHAAkH;IAClH,gBAAgB,CAAC,QAAgB;QAC/B,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAED,qDAAqD;IACrD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,6DAA6D;IAC7D,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,uDAAuD;IACvD,IAAI,WAAW;QACb,OAAO,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC/D,CAAC;CACF"}
|
|
@@ -11,8 +11,8 @@ import { DockerImageName } from "../core/docker-image-name.js";
|
|
|
11
11
|
* `postgres:18-alpine`, including the wait-strategy and `DOCKER_PG_LLVM_DEPS`
|
|
12
12
|
* facts below). `latest` is Debian-based rather than Alpine — functionally
|
|
13
13
|
* equivalent, larger to pull. The `DOCKER_PG_LLVM_DEPS` override stays in
|
|
14
|
-
* place regardless:
|
|
15
|
-
*
|
|
14
|
+
* place regardless: a harmless no-op on the pinned msb either way, and a
|
|
15
|
+
* guard for anyone running against an older msb.
|
|
16
16
|
*/
|
|
17
17
|
export declare class PostgresContainer extends GenericContainer {
|
|
18
18
|
private usernameState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../src/modules/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAM/D;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;IACrD,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,aAAa,CAAU;gBAEnB,KAAK,GAAE,MAAM,GAAG,eAA+B;
|
|
1
|
+
{"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../src/modules/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAM/D;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAkB,SAAQ,gBAAgB;IACrD,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,aAAa,CAAU;gBAEnB,KAAK,GAAE,MAAM,GAAG,eAA+B;WA2BrC,KAAK,CAAC,KAAK,GAAE,MAAM,GAAG,eAA+B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIxG,kDAAkD;IAClD,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKpC,sDAAsD;IACtD,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKpC,gDAAgD;IAChD,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKpC,qDAAqD;IACrD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,yDAAyD;IACzD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,qDAAqD;IACrD,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,oFAAoF;IACpF,IAAI,gBAAgB,IAAI,MAAM,CAE7B;CACF"}
|
package/dist/modules/postgres.js
CHANGED
|
@@ -15,8 +15,8 @@ const DEFAULT_IMAGE = "postgres:latest";
|
|
|
15
15
|
* `postgres:18-alpine`, including the wait-strategy and `DOCKER_PG_LLVM_DEPS`
|
|
16
16
|
* facts below). `latest` is Debian-based rather than Alpine — functionally
|
|
17
17
|
* equivalent, larger to pull. The `DOCKER_PG_LLVM_DEPS` override stays in
|
|
18
|
-
* place regardless:
|
|
19
|
-
*
|
|
18
|
+
* place regardless: a harmless no-op on the pinned msb either way, and a
|
|
19
|
+
* guard for anyone running against an older msb.
|
|
20
20
|
*/
|
|
21
21
|
export class PostgresContainer extends GenericContainer {
|
|
22
22
|
usernameState = "test";
|
|
@@ -30,13 +30,15 @@ export class PostgresContainer extends GenericContainer {
|
|
|
30
30
|
.withEnv("POSTGRES_DB", this.databaseState)
|
|
31
31
|
// The official postgres:*-alpine image bakes DOCKER_PG_LLVM_DEPS into
|
|
32
32
|
// its manifest with a literal tab character in the value (a
|
|
33
|
-
// package-list built with `\t\t` continuation). msb
|
|
34
|
-
//
|
|
35
|
-
// guest ever
|
|
36
|
-
// it's the image, not us)
|
|
37
|
-
//
|
|
38
|
-
//
|
|
39
|
-
//
|
|
33
|
+
// package-list built with `\t\t` continuation). On older msb releases
|
|
34
|
+
// (0.6.x) that boot-env value panicked the krun VMM builder with
|
|
35
|
+
// InvalidAscii before the guest ever started (reproduced with zero
|
|
36
|
+
// rightsize-set env vars — it's the image, not us); the pinned msb
|
|
37
|
+
// boots it fine with no override. Docker is unaffected either way.
|
|
38
|
+
// Overriding the var here wins over the image default in both
|
|
39
|
+
// backends' env-merge order and is a no-op for the build the image
|
|
40
|
+
// already baked, so it's a safe, backend-portable guard rather than an
|
|
41
|
+
// msb-only special case.
|
|
40
42
|
.withEnv("DOCKER_PG_LLVM_DEPS", "")
|
|
41
43
|
// The postgres entrypoint starts the server once to run initdb
|
|
42
44
|
// scripts against it, shuts it down, then starts it again for real —
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../src/modules/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,mBAAmB,GAAG,UAAU,CAAC;AACvC,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAExC;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;IAC7C,aAAa,GAAG,MAAM,CAAC;IACvB,aAAa,GAAG,MAAM,CAAC;IACvB,aAAa,GAAG,MAAM,CAAC;IAE/B,YAAY,QAAkC,aAAa;QACzD,KAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;aAC9B,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC;aAC5C,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC;aAChD,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;YAC3C,sEAAsE;YACtE,4DAA4D;YAC5D
|
|
1
|
+
{"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../src/modules/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,UAAU,GAAG,IAAI,CAAC;AACxB,MAAM,mBAAmB,GAAG,UAAU,CAAC;AACvC,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAExC;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;IAC7C,aAAa,GAAG,MAAM,CAAC;IACvB,aAAa,GAAG,MAAM,CAAC;IACvB,aAAa,GAAG,MAAM,CAAC;IAE/B,YAAY,QAAkC,aAAa;QACzD,KAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;aAC9B,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC;aAC5C,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC;aAChD,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC;YAC3C,sEAAsE;YACtE,4DAA4D;YAC5D,sEAAsE;YACtE,iEAAiE;YACjE,mEAAmE;YACnE,mEAAmE;YACnE,mEAAmE;YACnE,8DAA8D;YAC9D,mEAAmE;YACnE,uEAAuE;YACvE,yBAAyB;aACxB,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC;YACnC,+DAA+D;YAC/D,qEAAqE;YACrE,iEAAiE;YACjE,gEAAgE;YAChE,mEAAmE;YACnE,sDAAsD;aACrD,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,oDAAoD,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,KAAK,CAAC,QAAkC,aAAa;QACzE,OAAO,CAAC,MAAM,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAsB,CAAC;IAC3E,CAAC;IAED,kDAAkD;IAClD,YAAY,CAAC,QAAgB;QAC3B,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,sDAAsD;IACtD,YAAY,CAAC,QAAgB;QAC3B,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED,gDAAgD;IAChD,YAAY,CAAC,QAAgB;QAC3B,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,qDAAqD;IACrD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,yDAAyD;IACzD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,qDAAqD;IACrD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,oFAAoF;IACpF,IAAI,gBAAgB;QAClB,OAAO,cAAc,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;IACvI,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* One `msb snapshot list --format json` entry, the fields
|
|
3
|
-
* `importCheckpoint`'s presence check actually reads. The current msb
|
|
4
|
-
* release's shape carries more fields than this (created/size/...); only
|
|
5
|
-
* `digest`, `name`, and `artifact_path` (snake_case on the wire) matter
|
|
6
|
-
* here, so everything else is ignored rather than modeled. `digest` itself
|
|
7
|
-
* is never returned as an effective ref (see `confirmDigestDirNamePresent`)
|
|
8
|
-
* — it is read only to skip a malformed/empty entry.
|
|
9
|
-
*/
|
|
10
|
-
export interface SnapshotListEntry {
|
|
11
|
-
readonly digest: string | undefined;
|
|
12
|
-
readonly name: string | undefined;
|
|
13
|
-
readonly artifactPath: string | undefined;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Parses `msb snapshot list --format json`'s array-of-objects output.
|
|
17
|
-
* Malformed/non-array JSON resolves to an empty list rather than throwing —
|
|
18
|
-
* the caller (`importCheckpoint`) already turns "digest not found" into its
|
|
19
|
-
* own actionable `BackendError`, so a parse failure here degrading to "found
|
|
20
|
-
* nothing" produces the same class of error rather than a confusing crash
|
|
21
|
-
* one level removed from the actual msb output.
|
|
22
|
-
*/
|
|
23
|
-
export declare function parseSnapshotList(json: string): SnapshotListEntry[];
|
|
24
|
-
/**
|
|
25
|
-
* Confirms an imported snapshot's digest-dir basename (e.g.
|
|
26
|
-
* `sha256-b9c0448ee9d54e33`, parsed from `msb snapshot load`'s own
|
|
27
|
-
* output — see `snapshot-import.ts`) actually appears in `msb snapshot
|
|
28
|
-
* list`: an entry whose `name` equals `digestDirName` outright, or whose
|
|
29
|
-
* `artifact_path`'s basename does (`msb snapshot list` was verified to
|
|
30
|
-
* report both shapes depending on how the snapshot was created).
|
|
31
|
-
*
|
|
32
|
-
* Returns `digestDirName` itself once confirmed present — NOT the entry's
|
|
33
|
-
* `digest` field. Live-verified against msb 0.6.8: the full
|
|
34
|
-
* `sha256:<64hex>` digest does not resolve as a snapshot ref at all (`msb
|
|
35
|
-
* snapshot inspect sha256:<full>` fails "snapshot not found" — msb treats
|
|
36
|
-
* it as a literal path). Only the digest-dir name resolves for
|
|
37
|
-
* `inspect`/`rm`/`run --from-snapshot`, so it — not the `digest` field — is the
|
|
38
|
-
* effective ref `importCheckpoint` must hand back. `undefined` means no
|
|
39
|
-
* entry matched — the caller throws rather than returning an unconfirmed
|
|
40
|
-
* ref.
|
|
41
|
-
*/
|
|
42
|
-
export declare function confirmDigestDirNamePresent(entries: readonly SnapshotListEntry[], digestDirName: string): string | undefined;
|
|
43
|
-
//# sourceMappingURL=snapshot-list.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-list.d.ts","sourceRoot":"","sources":["../../src/backend-msb/snapshot-list.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAkBnE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO5H"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import * as path from "node:path";
|
|
2
|
-
/**
|
|
3
|
-
* Parses `msb snapshot list --format json`'s array-of-objects output.
|
|
4
|
-
* Malformed/non-array JSON resolves to an empty list rather than throwing —
|
|
5
|
-
* the caller (`importCheckpoint`) already turns "digest not found" into its
|
|
6
|
-
* own actionable `BackendError`, so a parse failure here degrading to "found
|
|
7
|
-
* nothing" produces the same class of error rather than a confusing crash
|
|
8
|
-
* one level removed from the actual msb output.
|
|
9
|
-
*/
|
|
10
|
-
export function parseSnapshotList(json) {
|
|
11
|
-
let parsed;
|
|
12
|
-
try {
|
|
13
|
-
parsed = JSON.parse(json);
|
|
14
|
-
}
|
|
15
|
-
catch {
|
|
16
|
-
return [];
|
|
17
|
-
}
|
|
18
|
-
if (!Array.isArray(parsed)) {
|
|
19
|
-
return [];
|
|
20
|
-
}
|
|
21
|
-
return parsed.map((raw) => {
|
|
22
|
-
const rec = (typeof raw === "object" && raw !== null ? raw : {});
|
|
23
|
-
return {
|
|
24
|
-
digest: typeof rec["digest"] === "string" ? rec["digest"] : undefined,
|
|
25
|
-
name: typeof rec["name"] === "string" ? rec["name"] : undefined,
|
|
26
|
-
artifactPath: typeof rec["artifact_path"] === "string" ? rec["artifact_path"] : undefined,
|
|
27
|
-
};
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Confirms an imported snapshot's digest-dir basename (e.g.
|
|
32
|
-
* `sha256-b9c0448ee9d54e33`, parsed from `msb snapshot load`'s own
|
|
33
|
-
* output — see `snapshot-import.ts`) actually appears in `msb snapshot
|
|
34
|
-
* list`: an entry whose `name` equals `digestDirName` outright, or whose
|
|
35
|
-
* `artifact_path`'s basename does (`msb snapshot list` was verified to
|
|
36
|
-
* report both shapes depending on how the snapshot was created).
|
|
37
|
-
*
|
|
38
|
-
* Returns `digestDirName` itself once confirmed present — NOT the entry's
|
|
39
|
-
* `digest` field. Live-verified against msb 0.6.8: the full
|
|
40
|
-
* `sha256:<64hex>` digest does not resolve as a snapshot ref at all (`msb
|
|
41
|
-
* snapshot inspect sha256:<full>` fails "snapshot not found" — msb treats
|
|
42
|
-
* it as a literal path). Only the digest-dir name resolves for
|
|
43
|
-
* `inspect`/`rm`/`run --from-snapshot`, so it — not the `digest` field — is the
|
|
44
|
-
* effective ref `importCheckpoint` must hand back. `undefined` means no
|
|
45
|
-
* entry matched — the caller throws rather than returning an unconfirmed
|
|
46
|
-
* ref.
|
|
47
|
-
*/
|
|
48
|
-
export function confirmDigestDirNamePresent(entries, digestDirName) {
|
|
49
|
-
const present = entries.some((entry) => entry.digest !== undefined &&
|
|
50
|
-
(entry.name === digestDirName || (entry.artifactPath !== undefined && path.basename(entry.artifactPath) === digestDirName)));
|
|
51
|
-
return present ? digestDirName : undefined;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=snapshot-list.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-list.js","sourceRoot":"","sources":["../../src/backend-msb/snapshot-list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAiBlC;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAqB,EAAE;QAC3C,MAAM,GAAG,GAAG,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAC;QAC5F,OAAO;YACL,MAAM,EAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;YACrE,IAAI,EAAE,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/D,YAAY,EAAE,OAAO,GAAG,CAAC,eAAe,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS;SAC1F,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAqC,EAAE,aAAqB;IACtG,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAC1B,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,KAAK,SAAS;QAC1B,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,aAAa,CAAC,CAAC,CAC9H,CAAC;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7C,CAAC"}
|