@start9labs/start-sdk 0.4.0-beta.45 → 0.4.0-beta.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/base/lib/Effects.d.ts +6 -1
  2. package/base/lib/actions/input/inputSpecTypes.js.map +1 -1
  3. package/base/lib/exver/exver.d.ts +5 -5
  4. package/base/lib/exver/exver.js +42 -73
  5. package/base/lib/exver/exver.js.map +1 -1
  6. package/base/lib/exver/index.js +2 -2
  7. package/base/lib/exver/index.js.map +1 -1
  8. package/base/lib/osBindings/AddPackageSignerParams.d.ts +7 -0
  9. package/base/lib/osBindings/AddPackageSignerParams.js +3 -0
  10. package/base/lib/osBindings/AddPackageSignerParams.js.map +1 -0
  11. package/base/lib/osBindings/GetServiceManifestParams.d.ts +6 -0
  12. package/base/lib/osBindings/GetServiceManifestParams.js +3 -0
  13. package/base/lib/osBindings/GetServiceManifestParams.js.map +1 -0
  14. package/base/lib/osBindings/NamedHealthCheckResult.d.ts +3 -0
  15. package/base/lib/osBindings/PackageInfo.d.ts +3 -1
  16. package/base/lib/osBindings/RemovePackageSignerParams.d.ts +6 -0
  17. package/base/lib/osBindings/RemovePackageSignerParams.js +3 -0
  18. package/base/lib/osBindings/RemovePackageSignerParams.js.map +1 -0
  19. package/base/lib/osBindings/SetHealth.d.ts +3 -0
  20. package/base/lib/osBindings/index.d.ts +3 -1
  21. package/base/lib/types/ManifestTypes.d.ts +15 -4
  22. package/base/lib/util/GetSystemSmtp.d.ts +1 -1
  23. package/base/lib/util/GetSystemSmtp.js +1 -0
  24. package/base/lib/util/GetSystemSmtp.js.map +1 -1
  25. package/base/lib/util/deepEqual.d.ts +1 -1
  26. package/base/lib/util/deepEqual.js +2 -2
  27. package/base/lib/util/deepEqual.js.map +1 -1
  28. package/base/lib/util/getServiceInterface.d.ts +18 -10
  29. package/base/lib/util/getServiceInterface.js +37 -21
  30. package/base/lib/util/getServiceInterface.js.map +1 -1
  31. package/base/lib/util/getServiceInterfaces.d.ts +16 -8
  32. package/base/lib/util/getServiceInterfaces.js +29 -16
  33. package/base/lib/util/getServiceInterfaces.js.map +1 -1
  34. package/base/lib/util/index.d.ts +1 -1
  35. package/base/lib/util/index.js +2 -1
  36. package/base/lib/util/index.js.map +1 -1
  37. package/base/lib/util/ip.d.ts +8 -6
  38. package/base/lib/util/ip.js +44 -5
  39. package/base/lib/util/ip.js.map +1 -1
  40. package/package/lib/StartSdk.d.ts +16 -15
  41. package/package/lib/StartSdk.js +11 -8
  42. package/package/lib/StartSdk.js.map +1 -1
  43. package/package/lib/backup/Backups.js +2 -2
  44. package/package/lib/backup/Backups.js.map +1 -1
  45. package/package/lib/mainFn/Daemons.js +1 -1
  46. package/package/lib/mainFn/Daemons.js.map +1 -1
  47. package/package/lib/mainFn/HealthDaemon.d.ts +0 -1
  48. package/package/lib/mainFn/HealthDaemon.js +21 -22
  49. package/package/lib/mainFn/HealthDaemon.js.map +1 -1
  50. package/package/lib/test/output.sdk.d.ts +46 -10
  51. package/package/lib/util/GetServiceManifest.d.ts +36 -0
  52. package/package/lib/util/GetServiceManifest.js +113 -0
  53. package/package/lib/util/GetServiceManifest.js.map +1 -0
  54. package/package/lib/util/GetSslCertificate.d.ts +1 -1
  55. package/package/lib/util/GetSslCertificate.js +1 -0
  56. package/package/lib/util/GetSslCertificate.js.map +1 -1
  57. package/package/lib/util/SubContainer.d.ts +31 -1
  58. package/package/lib/util/SubContainer.js +29 -0
  59. package/package/lib/util/SubContainer.js.map +1 -1
  60. package/package/lib/util/Volume.d.ts +48 -0
  61. package/package/lib/util/Volume.js +91 -0
  62. package/package/lib/util/Volume.js.map +1 -0
  63. package/package/lib/util/fileHelper.d.ts +3 -2
  64. package/package/lib/util/fileHelper.js +10 -34
  65. package/package/lib/util/fileHelper.js.map +1 -1
  66. package/package/lib/util/index.d.ts +2 -0
  67. package/package/lib/util/index.js +6 -1
  68. package/package/lib/util/index.js.map +1 -1
  69. package/package/package.json +1 -1
  70. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Daemons.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/Daemons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Daemons.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/Daemons.ts"],"names":[],"mappings":"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"}
@@ -41,5 +41,4 @@ export declare class HealthDaemon<Manifest extends SDKManifest> {
41
41
  get isReady(): boolean;
42
42
  private setHealth;
43
43
  updateStatus(): Promise<void>;
44
- init(): Promise<void>;
45
44
  }
@@ -24,7 +24,7 @@ class HealthDaemon {
24
24
  this.id = id;
25
25
  this.ready = ready;
26
26
  this.effects = effects;
27
- this._health = { result: "starting", message: null };
27
+ this._health = { result: "waiting", message: null };
28
28
  this.healthWatchers = [];
29
29
  this.running = false;
30
30
  this.resolvedReady = false;
@@ -58,18 +58,17 @@ class HealthDaemon {
58
58
  if (newStatus) {
59
59
  console.debug(`Launching ${this.id}...`);
60
60
  this.setupHealthCheck();
61
- (await this.daemon)?.start();
61
+ this.daemon?.start();
62
62
  this.started = performance.now();
63
63
  }
64
64
  else {
65
65
  console.debug(`Stopping ${this.id}...`);
66
- (await this.daemon)?.term();
67
- this.turnOffHealthCheck();
68
- this.setHealth({ result: "starting", message: null });
66
+ this.daemon?.term();
67
+ await this.turnOffHealthCheck();
69
68
  }
70
69
  }
71
- turnOffHealthCheck() {
72
- this.healthCheckCleanup?.();
70
+ async turnOffHealthCheck() {
71
+ await this.healthCheckCleanup?.();
73
72
  this.resolvedReady = false;
74
73
  this.readyPromise = new Promise((resolve) => (this.resolveReady = () => {
75
74
  resolve();
@@ -77,8 +76,7 @@ class HealthDaemon {
77
76
  }));
78
77
  }
79
78
  async setupHealthCheck() {
80
- const daemon = await this.daemon;
81
- daemon?.onExit((success) => {
79
+ this.daemon?.onExit((success) => {
82
80
  if (success && this.ready === "EXIT_SUCCESS") {
83
81
  this.setHealth({ result: "success", message: null });
84
82
  }
@@ -88,7 +86,7 @@ class HealthDaemon {
88
86
  message: `${this.id} daemon crashed`,
89
87
  });
90
88
  }
91
- else if (!daemon.isOneshot()) {
89
+ else if (!this.daemon?.isOneshot()) {
92
90
  this.setHealth({
93
91
  result: "failure",
94
92
  message: `${this.id} daemon exited`,
@@ -103,6 +101,7 @@ class HealthDaemon {
103
101
  lastResult: this._health.result,
104
102
  }));
105
103
  const { promise: status, resolve: setStatus } = oncePromise();
104
+ const { promise: exited, resolve: setExited } = oncePromise();
106
105
  new Promise(async () => {
107
106
  if (this.ready === "EXIT_SUCCESS")
108
107
  return;
@@ -115,9 +114,11 @@ class HealthDaemon {
115
114
  });
116
115
  await this.setHealth(response);
117
116
  }
117
+ setExited(null);
118
118
  }).catch((err) => console.error(`Daemon ${this.id} failed: ${err}`));
119
- this.healthCheckCleanup = () => {
119
+ this.healthCheckCleanup = async () => {
120
120
  setStatus({ done: true });
121
+ await exited;
121
122
  this.healthCheckCleanup = null;
122
123
  return null;
123
124
  };
@@ -161,22 +162,20 @@ class HealthDaemon {
161
162
  const healths = this.dependencies.map((d) => ({
162
163
  health: d.running && d._health,
163
164
  id: d.id,
165
+ display: typeof d.ready === "object" ? d.ready.display : null,
164
166
  }));
165
167
  const waitingOn = healths.filter((h) => !h.health || h.health.result !== "success");
166
168
  if (waitingOn.length)
167
169
  console.debug(`daemon ${this.id} waiting on ${waitingOn.map((w) => w.id)}`);
168
- this.changeRunning(!waitingOn.length);
169
- }
170
- async init() {
171
- if (this.ready !== "EXIT_SUCCESS" && this.ready.display) {
172
- this.effects.setHealth({
173
- id: this.id,
174
- message: null,
175
- name: this.ready.display,
176
- result: "starting",
177
- });
170
+ if (waitingOn.length) {
171
+ const waitingOnNames = waitingOn.flatMap((w) => w.display ? [w.display] : []);
172
+ const message = waitingOnNames.length ? waitingOnNames.join(", ") : null;
173
+ await this.setHealth({ result: "waiting", message });
174
+ }
175
+ else {
176
+ await this.setHealth({ result: "starting", message: null });
178
177
  }
179
- await this.updateStatus();
178
+ await this.changeRunning(!waitingOn.length);
180
179
  }
181
180
  }
182
181
  exports.HealthDaemon = HealthDaemon;
@@ -1 +1 @@
1
- {"version":3,"file":"HealthDaemon.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/HealthDaemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HealthDaemon.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/HealthDaemon.ts"],"names":[],"mappings":"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"}
@@ -14,15 +14,10 @@ export declare const sdk: {
14
14
  };
15
15
  checkDependencies: <DependencyId extends "remote-test" = "remote-test">(effects: import("../types").Effects, packageIds?: DependencyId[] | undefined) => Promise<import("../../../base/lib/dependencies/dependencies").CheckDependencies<DependencyId>>;
16
16
  serviceInterface: {
17
- getOwn: <E extends import("../types").Effects>(effects: E, id: import("../types").ServiceInterfaceId) => import("../util").GetServiceInterface;
18
- get: <E extends import("../types").Effects>(effects: E, opts: {
19
- id: import("../types").ServiceInterfaceId;
20
- packageId: import("../types").PackageId;
21
- }) => import("../util").GetServiceInterface;
22
- getAllOwn: <E extends import("../types").Effects>(effects: E) => import("../../../base/lib/util/getServiceInterfaces").GetServiceInterfaces;
23
- getAll: <E extends import("../types").Effects>(effects: E, opts: {
24
- packageId: import("../types").PackageId;
25
- }) => import("../../../base/lib/util/getServiceInterfaces").GetServiceInterfaces;
17
+ getOwn: typeof import("../../../base/lib/util/getServiceInterface").getOwnServiceInterface;
18
+ get: typeof import("../util").getServiceInterface;
19
+ getAllOwn: typeof import("../../../base/lib/util/getServiceInterfaces").getOwnServiceInterfaces;
20
+ getAll: typeof import("../util").getServiceInterfaces;
26
21
  };
27
22
  getContainerIp: (effects: import("../types").Effects, options?: Omit<Parameters<import("../types").Effects["getContainerIp"]>[0], "callback">) => {
28
23
  const: () => Promise<string>;
@@ -96,7 +91,8 @@ export declare const sdk: {
96
91
  masked: boolean;
97
92
  }) => import("../../../base/lib/interfaces/ServiceInterfaceBuilder").ServiceInterfaceBuilder;
98
93
  getSystemSmtp: <E extends import("../types").Effects>(effects: E) => import("../util").GetSystemSmtp;
99
- getSslCerificate: <E extends import("../types").Effects>(effects: E, hostnames: string[], algorithm?: import("../types").Algorithm) => import("../util").GetSslCertificate;
94
+ getSslCertificate: <E extends import("../types").Effects>(effects: E, hostnames: string[], algorithm?: import("../types").Algorithm) => import("../util").GetSslCertificate;
95
+ getServiceManifest: typeof import("../util").getServiceManifest;
100
96
  healthCheck: {
101
97
  checkPortListening: typeof import("../health/checkFns").checkPortListening;
102
98
  checkWebUrl: (effects: import("../types").Effects, url: string, { timeout, successMessage, errorMessage, }?: {
@@ -706,4 +702,44 @@ export declare const sdk: {
706
702
  };
707
703
  };
708
704
  };
705
+ volumes: import("../util").Volumes<{
706
+ id: "testOutput";
707
+ title: string;
708
+ license: string;
709
+ wrapperRepo: string;
710
+ upstreamRepo: string;
711
+ supportSite: string;
712
+ marketingSite: string;
713
+ donationUrl: null;
714
+ docsUrl: string;
715
+ description: {
716
+ short: string;
717
+ long: string;
718
+ };
719
+ images: {
720
+ main: {
721
+ source: {
722
+ dockerTag: string;
723
+ };
724
+ arch: ["aarch64", "x86_64"];
725
+ emulateMissingAs: "aarch64";
726
+ };
727
+ };
728
+ volumes: never[];
729
+ alerts: {
730
+ install: null;
731
+ update: null;
732
+ uninstall: null;
733
+ restore: null;
734
+ start: null;
735
+ stop: null;
736
+ };
737
+ dependencies: {
738
+ "remote-test": {
739
+ description: string;
740
+ optional: false;
741
+ s9pk: string;
742
+ };
743
+ };
744
+ }>;
709
745
  };
@@ -0,0 +1,36 @@
1
+ import { Effects } from "../../../base/lib/Effects";
2
+ import { Manifest, PackageId } from "../../../base/lib/osBindings";
3
+ export declare class GetServiceManifest<Mapped = Manifest> {
4
+ readonly effects: Effects;
5
+ readonly packageId: PackageId;
6
+ readonly map: (manifest: Manifest | null) => Mapped;
7
+ readonly eq: (a: Mapped, b: Mapped) => boolean;
8
+ constructor(effects: Effects, packageId: PackageId, map: (manifest: Manifest | null) => Mapped, eq: (a: Mapped, b: Mapped) => boolean);
9
+ /**
10
+ * Returns the manifest of a service. Reruns the context from which it has been called if the underlying value changes
11
+ */
12
+ const(): Promise<Mapped>;
13
+ /**
14
+ * Returns the manifest of a service. Does nothing if it changes
15
+ */
16
+ once(): Promise<Mapped>;
17
+ private watchGen;
18
+ /**
19
+ * Watches the manifest of a service. Returns an async iterator that yields whenever the value changes
20
+ */
21
+ watch(abort?: AbortSignal): AsyncGenerator<Mapped, never, unknown>;
22
+ /**
23
+ * Watches the manifest of a service. Takes a custom callback function to run whenever it changes
24
+ */
25
+ onChange(callback: (value: Mapped | null, error?: Error) => {
26
+ cancel: boolean;
27
+ } | Promise<{
28
+ cancel: boolean;
29
+ }>): void;
30
+ /**
31
+ * Watches the manifest of a service. Returns when the predicate is true
32
+ */
33
+ waitFor(pred: (value: Mapped) => boolean): Promise<Mapped>;
34
+ }
35
+ export declare function getServiceManifest(effects: Effects, packageId: PackageId): GetServiceManifest<Manifest>;
36
+ export declare function getServiceManifest<Mapped>(effects: Effects, packageId: PackageId, map: (manifest: Manifest | null) => Mapped, eq?: (a: Mapped, b: Mapped) => boolean): GetServiceManifest<Mapped>;
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetServiceManifest = void 0;
4
+ exports.getServiceManifest = getServiceManifest;
5
+ const Drop_1 = require("../../../base/lib/util/Drop");
6
+ const deepEqual_1 = require("../../../base/lib/util/deepEqual");
7
+ class GetServiceManifest {
8
+ constructor(effects, packageId, map, eq) {
9
+ this.effects = effects;
10
+ this.packageId = packageId;
11
+ this.map = map;
12
+ this.eq = eq;
13
+ }
14
+ /**
15
+ * Returns the manifest of a service. Reruns the context from which it has been called if the underlying value changes
16
+ */
17
+ async const() {
18
+ let abort = new AbortController();
19
+ const watch = this.watch(abort.signal);
20
+ const res = await watch.next();
21
+ if (this.effects.constRetry) {
22
+ watch.next().then(() => {
23
+ abort.abort();
24
+ this.effects.constRetry && this.effects.constRetry();
25
+ });
26
+ }
27
+ return res.value;
28
+ }
29
+ /**
30
+ * Returns the manifest of a service. Does nothing if it changes
31
+ */
32
+ async once() {
33
+ const manifest = await this.effects.getServiceManifest({
34
+ packageId: this.packageId,
35
+ });
36
+ return this.map(manifest);
37
+ }
38
+ async *watchGen(abort) {
39
+ let prev = null;
40
+ const resolveCell = { resolve: () => { } };
41
+ this.effects.onLeaveContext(() => {
42
+ resolveCell.resolve();
43
+ });
44
+ abort?.addEventListener("abort", () => resolveCell.resolve());
45
+ while (this.effects.isInContext && !abort?.aborted) {
46
+ let callback = () => { };
47
+ const waitForNext = new Promise((resolve) => {
48
+ callback = resolve;
49
+ resolveCell.resolve = resolve;
50
+ });
51
+ const next = this.map(await this.effects.getServiceManifest({
52
+ packageId: this.packageId,
53
+ callback: () => callback(),
54
+ }));
55
+ if (!prev || !this.eq(prev.value, next)) {
56
+ prev = { value: next };
57
+ yield next;
58
+ }
59
+ await waitForNext;
60
+ }
61
+ return new Promise((_, rej) => rej(new Error("aborted")));
62
+ }
63
+ /**
64
+ * Watches the manifest of a service. Returns an async iterator that yields whenever the value changes
65
+ */
66
+ watch(abort) {
67
+ const ctrl = new AbortController();
68
+ abort?.addEventListener("abort", () => ctrl.abort());
69
+ return Drop_1.DropGenerator.of(this.watchGen(ctrl.signal), () => ctrl.abort());
70
+ }
71
+ /**
72
+ * Watches the manifest of a service. Takes a custom callback function to run whenever it changes
73
+ */
74
+ onChange(callback) {
75
+ ;
76
+ (async () => {
77
+ const ctrl = new AbortController();
78
+ for await (const value of this.watch(ctrl.signal)) {
79
+ try {
80
+ const res = await callback(value);
81
+ if (res.cancel) {
82
+ ctrl.abort();
83
+ break;
84
+ }
85
+ }
86
+ catch (e) {
87
+ console.error("callback function threw an error @ GetServiceManifest.onChange", e);
88
+ }
89
+ }
90
+ })()
91
+ .catch((e) => callback(null, e))
92
+ .catch((e) => console.error("callback function threw an error @ GetServiceManifest.onChange", e));
93
+ }
94
+ /**
95
+ * Watches the manifest of a service. Returns when the predicate is true
96
+ */
97
+ waitFor(pred) {
98
+ const ctrl = new AbortController();
99
+ return Drop_1.DropPromise.of(Promise.resolve().then(async () => {
100
+ for await (const next of this.watchGen(ctrl.signal)) {
101
+ if (pred(next)) {
102
+ return next;
103
+ }
104
+ }
105
+ throw new Error("context left before predicate passed");
106
+ }), () => ctrl.abort());
107
+ }
108
+ }
109
+ exports.GetServiceManifest = GetServiceManifest;
110
+ function getServiceManifest(effects, packageId, map, eq) {
111
+ return new GetServiceManifest(effects, packageId, map ?? ((a) => a), eq ?? ((a, b) => (0, deepEqual_1.deepEqual)(a, b)));
112
+ }
113
+ //# sourceMappingURL=GetServiceManifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetServiceManifest.js","sourceRoot":"","sources":["../../../../package/lib/util/GetServiceManifest.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ export declare class GetSslCertificate {
17
17
  /**
18
18
  * Watches the SSL Certificate for the given hostnames if permitted. Returns an async iterator that yields whenever the value changes
19
19
  */
20
- watch(abort?: AbortSignal): AsyncGenerator<[string, string, string], void, unknown>;
20
+ watch(abort?: AbortSignal): AsyncGenerator<[string, string, string], never, unknown>;
21
21
  /**
22
22
  * Watches the SSL Certificate for the given hostnames if permitted. Takes a custom callback function to run whenever it changes
23
23
  */
@@ -47,6 +47,7 @@ class GetSslCertificate {
47
47
  });
48
48
  await waitForNext;
49
49
  }
50
+ return new Promise((_, rej) => rej(new Error("aborted")));
50
51
  }
51
52
  /**
52
53
  * Watches the SSL Certificate for the given hostnames if permitted. Returns an async iterator that yields whenever the value changes
@@ -1 +1 @@
1
- {"version":3,"file":"GetSslCertificate.js","sourceRoot":"","sources":["../../../../package/lib/util/GetSslCertificate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GetSslCertificate.js","sourceRoot":"","sources":["../../../../package/lib/util/GetSslCertificate.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,24 @@
1
+ import * as fs from "fs/promises";
1
2
  import * as T from "../../../base/lib/types";
2
3
  import * as cp from "child_process";
3
4
  import { Buffer } from "node:buffer";
4
5
  import { Drop } from "../../../base/lib/util/Drop";
5
6
  import { Mounts } from "../mainFn/Mounts";
6
7
  import { BackupEffects } from "../backup/Backups";
8
+ import { PathBase } from "./Volume";
7
9
  export declare const execFile: typeof cp.execFile.__promisify__;
8
10
  export type ExecOptions = {
9
11
  input?: string | Buffer;
10
12
  };
11
- export interface SubContainer<Manifest extends T.SDKManifest, Effects extends T.Effects = T.Effects> extends Drop {
13
+ export interface SubContainer<Manifest extends T.SDKManifest, Effects extends T.Effects = T.Effects> extends Drop, PathBase {
12
14
  readonly imageId: keyof Manifest["images"] & T.ImageId;
13
15
  readonly rootfs: string;
14
16
  readonly guid: T.Guid;
17
+ /**
18
+ * Get the absolute path to a file or directory within this subcontainer's rootfs
19
+ * @param path Path relative to the rootfs
20
+ */
21
+ subpath(path: string): string;
15
22
  mount(mounts: Effects extends BackupEffects ? Mounts<Manifest, {
16
23
  subpath: string | null;
17
24
  mountpoint: string;
@@ -48,6 +55,13 @@ export interface SubContainer<Manifest extends T.SDKManifest, Effects extends T.
48
55
  }>;
49
56
  launch(command: string[], options?: CommandOptions): Promise<cp.ChildProcessWithoutNullStreams>;
50
57
  spawn(command: string[], options?: CommandOptions & StdioOptions): Promise<cp.ChildProcess>;
58
+ /**
59
+ * @description Write a file to the subcontainer's filesystem
60
+ * @param path Path relative to the subcontainer rootfs (e.g. "/etc/config.json")
61
+ * @param data The data to write
62
+ * @param options Optional write options (same as node:fs/promises writeFile)
63
+ */
64
+ writeFile(path: string, data: string | NodeJS.ArrayBufferView | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: Parameters<typeof fs.writeFile>[2]): Promise<void>;
51
65
  rc(): SubContainerRc<Manifest, Effects>;
52
66
  isOwned(): this is SubContainerOwned<Manifest, Effects>;
53
67
  }
@@ -79,6 +93,7 @@ export declare class SubContainerOwned<Manifest extends T.SDKManifest, Effects e
79
93
  subpath: string | null;
80
94
  mountpoint: string;
81
95
  }> : Mounts<Manifest, never>) | null, name: string, fn: (subContainer: SubContainer<Manifest, Effects>) => Promise<T>): Promise<T>;
96
+ subpath(path: string): string;
82
97
  mount(mounts: Effects extends BackupEffects ? Mounts<Manifest, {
83
98
  subpath: string | null;
84
99
  mountpoint: string;
@@ -117,6 +132,13 @@ export declare class SubContainerOwned<Manifest extends T.SDKManifest, Effects e
117
132
  }>;
118
133
  launch(command: string[], options?: CommandOptions): Promise<cp.ChildProcessWithoutNullStreams>;
119
134
  spawn(command: string[], options?: CommandOptions & StdioOptions): Promise<cp.ChildProcess>;
135
+ /**
136
+ * @description Write a file to the subcontainer's filesystem
137
+ * @param path Path relative to the subcontainer rootfs (e.g. "/etc/config.json")
138
+ * @param data The data to write
139
+ * @param options Optional write options (same as node:fs/promises writeFile)
140
+ */
141
+ writeFile(path: string, data: string | NodeJS.ArrayBufferView | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: Parameters<typeof fs.writeFile>[2]): Promise<void>;
120
142
  rc(): SubContainerRc<Manifest, Effects>;
121
143
  isOwned(): this is SubContainerOwned<Manifest, Effects>;
122
144
  }
@@ -125,6 +147,7 @@ export declare class SubContainerRc<Manifest extends T.SDKManifest, Effects exte
125
147
  get imageId(): keyof Manifest["images"] & string;
126
148
  get rootfs(): string;
127
149
  get guid(): string;
150
+ subpath(path: string): string;
128
151
  private destroyed;
129
152
  private destroying;
130
153
  constructor(subcontainer: SubContainerOwned<Manifest, Effects>);
@@ -179,6 +202,13 @@ export declare class SubContainerRc<Manifest extends T.SDKManifest, Effects exte
179
202
  }>;
180
203
  launch(command: string[], options?: CommandOptions): Promise<cp.ChildProcessWithoutNullStreams>;
181
204
  spawn(command: string[], options?: CommandOptions & StdioOptions): Promise<cp.ChildProcess>;
205
+ /**
206
+ * @description Write a file to the subcontainer's filesystem
207
+ * @param path Path relative to the subcontainer rootfs (e.g. "/etc/config.json")
208
+ * @param data The data to write
209
+ * @param options Optional write options (same as node:fs/promises writeFile)
210
+ */
211
+ writeFile(path: string, data: string | NodeJS.ArrayBufferView | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: Parameters<typeof fs.writeFile>[2]): Promise<void>;
182
212
  rc(): SubContainerRc<Manifest, Effects>;
183
213
  isOwned(): this is SubContainerOwned<Manifest, Effects>;
184
214
  }
@@ -152,6 +152,11 @@ class SubContainerOwned extends Drop_1.Drop {
152
152
  await subContainer.destroy();
153
153
  }
154
154
  }
155
+ subpath(path) {
156
+ return path.startsWith("/")
157
+ ? `${this.rootfs}${path}`
158
+ : `${this.rootfs}/${path}`;
159
+ }
155
160
  async mount(mounts) {
156
161
  for (let mount of mounts.build()) {
157
162
  let { options, mountpoint } = mount;
@@ -422,6 +427,18 @@ class SubContainerOwned extends Drop_1.Drop {
422
427
  ...command,
423
428
  ], options);
424
429
  }
430
+ /**
431
+ * @description Write a file to the subcontainer's filesystem
432
+ * @param path Path relative to the subcontainer rootfs (e.g. "/etc/config.json")
433
+ * @param data The data to write
434
+ * @param options Optional write options (same as node:fs/promises writeFile)
435
+ */
436
+ async writeFile(path, data, options) {
437
+ const fullPath = this.subpath(path);
438
+ const dir = fullPath.replace(/\/[^/]*\/?$/, "");
439
+ await fs.mkdir(dir, { recursive: true });
440
+ return fs.writeFile(fullPath, data, options);
441
+ }
425
442
  rc() {
426
443
  return new SubContainerRc(this);
427
444
  }
@@ -440,6 +457,9 @@ class SubContainerRc extends Drop_1.Drop {
440
457
  get guid() {
441
458
  return this.subcontainer.guid;
442
459
  }
460
+ subpath(path) {
461
+ return this.subcontainer.subpath(path);
462
+ }
443
463
  constructor(subcontainer) {
444
464
  subcontainer.rcs++;
445
465
  super();
@@ -511,6 +531,15 @@ class SubContainerRc extends Drop_1.Drop {
511
531
  async spawn(command, options = { stdio: "inherit" }) {
512
532
  return this.subcontainer.spawn(command, options);
513
533
  }
534
+ /**
535
+ * @description Write a file to the subcontainer's filesystem
536
+ * @param path Path relative to the subcontainer rootfs (e.g. "/etc/config.json")
537
+ * @param data The data to write
538
+ * @param options Optional write options (same as node:fs/promises writeFile)
539
+ */
540
+ async writeFile(path, data, options) {
541
+ return this.subcontainer.writeFile(path, data, options);
542
+ }
514
543
  rc() {
515
544
  return this.subcontainer.rc();
516
545
  }