@start9labs/start-sdk 0.4.0-beta.50 → 0.4.0-beta.52
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/base/lib/Effects.d.ts +4 -0
- package/base/lib/actions/input/builder/inputSpec.d.ts +129 -8
- package/base/lib/actions/input/builder/inputSpec.js +223 -13
- package/base/lib/actions/input/builder/inputSpec.js.map +1 -1
- package/base/lib/actions/input/builder/inputSpecTools.d.ts +3 -3
- package/base/lib/actions/input/builder/list.d.ts +24 -3
- package/base/lib/actions/input/builder/list.js +26 -5
- package/base/lib/actions/input/builder/list.js.map +1 -1
- package/base/lib/actions/input/builder/value.d.ts +70 -16
- package/base/lib/actions/input/builder/value.js +89 -34
- package/base/lib/actions/input/builder/value.js.map +1 -1
- package/base/lib/actions/input/builder/variants.d.ts +14 -3
- package/base/lib/actions/input/builder/variants.js +22 -7
- package/base/lib/actions/input/builder/variants.js.map +1 -1
- package/base/lib/actions/input/inputSpecConstants.d.ts +203 -5
- package/base/lib/actions/input/inputSpecConstants.js +118 -38
- package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
- package/base/lib/actions/input/inputSpecTypes.d.ts +99 -0
- package/base/lib/actions/input/inputSpecTypes.js +6 -1
- package/base/lib/actions/input/inputSpecTypes.js.map +1 -1
- package/base/lib/actions/setupActions.d.ts +6 -3
- package/base/lib/actions/setupActions.js +7 -4
- package/base/lib/actions/setupActions.js.map +1 -1
- package/base/lib/exver/index.d.ts +233 -2
- package/base/lib/exver/index.js +197 -3
- package/base/lib/exver/index.js.map +1 -1
- package/base/lib/index.d.ts +23 -1
- package/base/lib/index.js +4 -2
- package/base/lib/index.js.map +1 -1
- package/base/lib/inits/setupInit.d.ts +17 -0
- package/base/lib/inits/setupInit.js +7 -0
- package/base/lib/inits/setupInit.js.map +1 -1
- package/base/lib/inits/setupUninit.d.ts +12 -0
- package/base/lib/inits/setupUninit.js +7 -0
- package/base/lib/inits/setupUninit.js.map +1 -1
- package/base/lib/interfaces/Host.js +2 -4
- package/base/lib/interfaces/Host.js.map +1 -1
- package/base/lib/osBindings/GetOutboundGatewayParams.d.ts +4 -0
- package/base/lib/osBindings/GetOutboundGatewayParams.js +3 -0
- package/base/lib/osBindings/GetOutboundGatewayParams.js.map +1 -0
- package/base/lib/osBindings/ServerHostname.d.ts +1 -0
- package/base/lib/osBindings/ServerHostname.js +4 -0
- package/base/lib/osBindings/ServerHostname.js.map +1 -0
- package/base/lib/osBindings/ServerInfo.d.ts +1 -0
- package/base/lib/osBindings/SetServerHostnameParams.d.ts +4 -0
- package/base/lib/osBindings/SetServerHostnameParams.js +4 -0
- package/base/lib/osBindings/SetServerHostnameParams.js.map +1 -0
- package/base/lib/osBindings/SetupExecuteParams.d.ts +3 -1
- package/base/lib/osBindings/SmtpSecurity.d.ts +1 -0
- package/base/lib/osBindings/SmtpSecurity.js +4 -0
- package/base/lib/osBindings/SmtpSecurity.js.map +1 -0
- package/base/lib/osBindings/SmtpValue.d.ts +4 -2
- package/base/lib/osBindings/SmtpValue.js +0 -1
- package/base/lib/osBindings/SmtpValue.js.map +1 -1
- package/base/lib/osBindings/StartOsRecoveryInfo.d.ts +2 -2
- package/base/lib/osBindings/TestSmtpParams.d.ts +4 -2
- package/base/lib/osBindings/TestSmtpParams.js +0 -1
- package/base/lib/osBindings/TestSmtpParams.js.map +1 -1
- package/base/lib/osBindings/index.d.ts +4 -1
- package/base/lib/s9pk/index.d.ts +66 -0
- package/base/lib/s9pk/index.js +70 -1
- package/base/lib/s9pk/index.js.map +1 -1
- package/base/lib/types.d.ts +68 -2
- package/base/lib/types.js +14 -0
- package/base/lib/types.js.map +1 -1
- package/base/lib/util/GetOutboundGateway.d.ts +30 -0
- package/base/lib/util/GetOutboundGateway.js +90 -0
- package/base/lib/util/GetOutboundGateway.js.map +1 -0
- package/base/lib/util/asError.d.ts +8 -0
- package/base/lib/util/asError.js +8 -0
- package/base/lib/util/asError.js.map +1 -1
- package/base/lib/util/deepEqual.d.ts +15 -0
- package/base/lib/util/deepEqual.js +16 -2
- package/base/lib/util/deepEqual.js.map +1 -1
- package/base/lib/util/deepMerge.d.ts +18 -0
- package/base/lib/util/deepMerge.js +18 -0
- package/base/lib/util/deepMerge.js.map +1 -1
- package/base/lib/util/getDefaultString.d.ts +8 -0
- package/base/lib/util/getDefaultString.js +8 -0
- package/base/lib/util/getDefaultString.js.map +1 -1
- package/base/lib/util/graph.d.ts +57 -0
- package/base/lib/util/graph.js +47 -0
- package/base/lib/util/graph.js.map +1 -1
- package/base/lib/util/inMs.d.ts +15 -0
- package/base/lib/util/inMs.js +15 -0
- package/base/lib/util/inMs.js.map +1 -1
- package/base/lib/util/index.d.ts +1 -0
- package/base/lib/util/index.js +3 -1
- package/base/lib/util/index.js.map +1 -1
- package/base/lib/util/ip.d.ts +81 -0
- package/base/lib/util/ip.js +81 -0
- package/base/lib/util/ip.js.map +1 -1
- package/base/lib/util/once.d.ts +13 -0
- package/base/lib/util/once.js +13 -0
- package/base/lib/util/once.js.map +1 -1
- package/base/lib/util/patterns.d.ts +11 -0
- package/base/lib/util/patterns.js +11 -0
- package/base/lib/util/patterns.js.map +1 -1
- package/base/lib/util/regexes.d.ts +38 -0
- package/base/lib/util/regexes.js +38 -0
- package/base/lib/util/regexes.js.map +1 -1
- package/base/lib/util/splitCommand.d.ts +14 -0
- package/base/lib/util/splitCommand.js +15 -2
- package/base/lib/util/splitCommand.js.map +1 -1
- package/base/lib/util/stringFromStdErrOut.d.ts +7 -0
- package/base/lib/util/stringFromStdErrOut.js +7 -0
- package/base/lib/util/stringFromStdErrOut.js.map +1 -1
- package/base/lib/util/typeHelpers.d.ts +35 -0
- package/base/lib/util/typeHelpers.js +7 -0
- package/base/lib/util/typeHelpers.js.map +1 -1
- package/package/lib/StartSdk.d.ts +330 -3
- package/package/lib/StartSdk.js +143 -1
- package/package/lib/StartSdk.js.map +1 -1
- package/package/lib/backup/Backups.d.ts +71 -0
- package/package/lib/backup/Backups.js +69 -0
- package/package/lib/backup/Backups.js.map +1 -1
- package/package/lib/backup/setupBackups.d.ts +14 -0
- package/package/lib/backup/setupBackups.js +9 -0
- package/package/lib/backup/setupBackups.js.map +1 -1
- package/package/lib/health/HealthCheck.d.ts +16 -0
- package/package/lib/health/HealthCheck.js +16 -2
- package/package/lib/health/HealthCheck.js.map +1 -1
- package/package/lib/health/checkFns/HealthCheckResult.d.ts +6 -0
- package/package/lib/health/checkFns/index.d.ts +8 -0
- package/package/lib/health/checkFns/index.js +8 -0
- package/package/lib/health/checkFns/index.js.map +1 -1
- package/package/lib/index.d.ts +2 -2
- package/package/lib/index.js +2 -2
- package/package/lib/index.js.map +1 -1
- package/package/lib/mainFn/CommandController.d.ts +29 -0
- package/package/lib/mainFn/CommandController.js +29 -0
- package/package/lib/mainFn/CommandController.js.map +1 -1
- package/package/lib/mainFn/Daemon.d.ts +38 -2
- package/package/lib/mainFn/Daemon.js +38 -2
- package/package/lib/mainFn/Daemon.js.map +1 -1
- package/package/lib/mainFn/Daemons.d.ts +31 -0
- package/package/lib/mainFn/Daemons.js +13 -0
- package/package/lib/mainFn/Daemons.js.map +1 -1
- package/package/lib/mainFn/Mounts.d.ts +38 -0
- package/package/lib/mainFn/Mounts.js +38 -0
- package/package/lib/mainFn/Mounts.js.map +1 -1
- package/package/lib/mainFn/index.d.ts +1 -0
- package/package/lib/mainFn/index.js +1 -0
- package/package/lib/mainFn/index.js.map +1 -1
- package/package/lib/manifest/setupManifest.d.ts +9 -0
- package/package/lib/manifest/setupManifest.js +9 -0
- package/package/lib/manifest/setupManifest.js.map +1 -1
- package/package/lib/test/output.d.ts +2 -2
- package/package/lib/test/output.js +418 -329
- package/package/lib/test/output.js.map +1 -1
- package/package/lib/test/output.sdk.d.ts +193 -2
- package/package/lib/util/SubContainer.d.ts +46 -0
- package/package/lib/util/SubContainer.js +10 -0
- package/package/lib/util/SubContainer.js.map +1 -1
- package/package/lib/util/fileHelper.d.ts +43 -10
- package/package/lib/util/fileHelper.js +13 -11
- package/package/lib/util/fileHelper.js.map +1 -1
- package/package/lib/version/VersionGraph.d.ts +64 -13
- package/package/lib/version/VersionGraph.js +64 -18
- package/package/lib/version/VersionGraph.js.map +1 -1
- package/package/lib/version/VersionInfo.d.ts +17 -0
- package/package/lib/version/VersionInfo.js +12 -0
- package/package/lib/version/VersionInfo.js.map +1 -1
- package/package/package.json +9 -8
- package/package.json +9 -8
package/package/lib/StartSdk.js
CHANGED
|
@@ -74,14 +74,33 @@ const Drop_1 = require("../../base/lib/util/Drop");
|
|
|
74
74
|
const getServiceInterface_1 = require("../../base/lib/util/getServiceInterface");
|
|
75
75
|
const getServiceInterfaces_1 = require("../../base/lib/util/getServiceInterfaces");
|
|
76
76
|
const Volume_1 = require("./util/Volume");
|
|
77
|
+
/** The minimum StartOS version required by this SDK release */
|
|
77
78
|
exports.OSVersion = (0, exver_1.testTypeVersion)('0.4.0-alpha.20');
|
|
79
|
+
/**
|
|
80
|
+
* The top-level SDK facade for building StartOS service packages.
|
|
81
|
+
*
|
|
82
|
+
* Use `StartSdk.of()` to create an uninitialized instance, then call `.withManifest()`
|
|
83
|
+
* to bind it to a manifest, and finally `.build()` to obtain the full toolkit of helpers
|
|
84
|
+
* for actions, daemons, backups, interfaces, health checks, and more.
|
|
85
|
+
*
|
|
86
|
+
* @typeParam Manifest - The service manifest type; starts as `never` until `.withManifest()` is called.
|
|
87
|
+
*/
|
|
78
88
|
class StartSdk {
|
|
79
89
|
constructor(manifest) {
|
|
80
90
|
this.manifest = manifest;
|
|
81
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Create an uninitialized StartSdk instance. Call `.withManifest()` next.
|
|
94
|
+
* @returns A new StartSdk with no manifest bound.
|
|
95
|
+
*/
|
|
82
96
|
static of() {
|
|
83
97
|
return new StartSdk(null);
|
|
84
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Bind a manifest to the SDK, producing a typed SDK instance.
|
|
101
|
+
* @param manifest - The service manifest definition
|
|
102
|
+
* @returns A new StartSdk instance parameterized by the given manifest type
|
|
103
|
+
*/
|
|
85
104
|
withManifest(manifest) {
|
|
86
105
|
return new StartSdk(manifest);
|
|
87
106
|
}
|
|
@@ -90,6 +109,14 @@ class StartSdk {
|
|
|
90
109
|
return value;
|
|
91
110
|
return null;
|
|
92
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Finalize the SDK and return the full set of helpers for building a StartOS service.
|
|
114
|
+
*
|
|
115
|
+
* This method is only callable after `.withManifest()` has been called (enforced at the type level).
|
|
116
|
+
*
|
|
117
|
+
* @param isReady - Type-level gate; resolves to `true` only when a manifest is bound.
|
|
118
|
+
* @returns An object containing all SDK utilities: actions, daemons, backups, interfaces, health checks, volumes, triggers, and more.
|
|
119
|
+
*/
|
|
93
120
|
build(isReady) {
|
|
94
121
|
const startSdkEffectWrapper = {
|
|
95
122
|
restart: (effects, ...args) => effects.restart(...args),
|
|
@@ -107,13 +134,19 @@ class StartSdk {
|
|
|
107
134
|
setHealth: (effects, ...args) => effects.setHealth(...args),
|
|
108
135
|
};
|
|
109
136
|
return {
|
|
137
|
+
/** The bound service manifest */
|
|
110
138
|
manifest: this.manifest,
|
|
139
|
+
/** Volume path helpers derived from the manifest volume definitions */
|
|
111
140
|
volumes: (0, Volume_1.createVolumes)(this.manifest),
|
|
112
141
|
...startSdkEffectWrapper,
|
|
142
|
+
/** Persist the current data version to the StartOS effect system */
|
|
113
143
|
setDataVersion: version_1.setDataVersion,
|
|
144
|
+
/** Retrieve the current data version from the StartOS effect system */
|
|
114
145
|
getDataVersion: version_1.getDataVersion,
|
|
115
146
|
action: {
|
|
147
|
+
/** Execute an action by its ID, optionally providing input */
|
|
116
148
|
run: actions.runAction,
|
|
149
|
+
/** Create a task notification for a specific package's action */
|
|
117
150
|
createTask: (effects, packageId, action, severity, options) => actions.createTask({
|
|
118
151
|
effects,
|
|
119
152
|
packageId,
|
|
@@ -121,6 +154,7 @@ class StartSdk {
|
|
|
121
154
|
severity,
|
|
122
155
|
options: options,
|
|
123
156
|
}),
|
|
157
|
+
/** Create a task notification for this service's own action (uses manifest.id automatically) */
|
|
124
158
|
createOwnTask: (effects, action, severity, options) => actions.createTask({
|
|
125
159
|
effects,
|
|
126
160
|
packageId: this.manifest.id,
|
|
@@ -128,15 +162,40 @@ class StartSdk {
|
|
|
128
162
|
severity,
|
|
129
163
|
options: options,
|
|
130
164
|
}),
|
|
165
|
+
/**
|
|
166
|
+
* Clear one or more task notifications by their replay IDs
|
|
167
|
+
* @param effects - The effects context
|
|
168
|
+
* @param replayIds - One or more replay IDs of the tasks to clear
|
|
169
|
+
*/
|
|
131
170
|
clearTask: (effects, ...replayIds) => effects.action.clearTasks({ only: replayIds }),
|
|
132
171
|
},
|
|
172
|
+
/**
|
|
173
|
+
* Check whether the specified (or all) dependencies are satisfied.
|
|
174
|
+
* @param effects - The effects context
|
|
175
|
+
* @param packageIds - Optional subset of dependency IDs to check; defaults to all
|
|
176
|
+
* @returns An object describing which dependencies are satisfied and which are not
|
|
177
|
+
*/
|
|
133
178
|
checkDependencies: dependencies_1.checkDependencies,
|
|
134
179
|
serviceInterface: {
|
|
180
|
+
/** Retrieve a single service interface belonging to this package by its ID */
|
|
135
181
|
getOwn: getServiceInterface_1.getOwnServiceInterface,
|
|
182
|
+
/** Retrieve a single service interface from any package */
|
|
136
183
|
get: util_3.getServiceInterface,
|
|
184
|
+
/** Retrieve all service interfaces belonging to this package */
|
|
137
185
|
getAllOwn: getServiceInterfaces_1.getOwnServiceInterfaces,
|
|
186
|
+
/** Retrieve all service interfaces, optionally filtering by package */
|
|
138
187
|
getAll: util_3.getServiceInterfaces,
|
|
139
188
|
},
|
|
189
|
+
/**
|
|
190
|
+
* Get the container IP address with reactive subscription support.
|
|
191
|
+
*
|
|
192
|
+
* Returns an object with multiple read strategies: `const()` for a value
|
|
193
|
+
* that retries on change, `once()` for a single read, `watch()` for an async
|
|
194
|
+
* generator, `onChange()` for a callback, and `waitFor()` to block until a predicate is met.
|
|
195
|
+
*
|
|
196
|
+
* @param effects - The effects context
|
|
197
|
+
* @param options - Optional filtering options (e.g. `containerId`)
|
|
198
|
+
*/
|
|
140
199
|
getContainerIp: (effects, options = {}) => {
|
|
141
200
|
async function* watch(abort) {
|
|
142
201
|
const resolveCell = { resolve: () => { } };
|
|
@@ -209,9 +268,22 @@ class StartSdk {
|
|
|
209
268
|
};
|
|
210
269
|
},
|
|
211
270
|
MultiHost: {
|
|
271
|
+
/**
|
|
272
|
+
* Create a new MultiHost instance for binding ports and exporting interfaces.
|
|
273
|
+
* @param effects - The effects context
|
|
274
|
+
* @param id - A unique identifier for this multi-host group
|
|
275
|
+
*/
|
|
212
276
|
of: (effects, id) => new Host_1.MultiHost({ id, effects }),
|
|
213
277
|
},
|
|
278
|
+
/**
|
|
279
|
+
* Return `null` if the given string is empty, otherwise return the string unchanged.
|
|
280
|
+
* Useful for converting empty user input into explicit null values.
|
|
281
|
+
*/
|
|
214
282
|
nullIfEmpty: util_2.nullIfEmpty,
|
|
283
|
+
/**
|
|
284
|
+
* Indicate that a daemon should use the container image's configured entrypoint.
|
|
285
|
+
* @param overrideCmd - Optional command arguments to append after the entrypoint
|
|
286
|
+
*/
|
|
215
287
|
useEntrypoint: (overrideCmd) => new T.UseEntrypoint(overrideCmd),
|
|
216
288
|
/**
|
|
217
289
|
* @description Use this class to create an Action. By convention, each Action should receive its own file.
|
|
@@ -321,7 +393,12 @@ class StartSdk {
|
|
|
321
393
|
*/
|
|
322
394
|
withoutInput: (id, metadata, run) => setupActions_1.Action.withoutInput(id, metadata, run),
|
|
323
395
|
},
|
|
324
|
-
inputSpecConstants: {
|
|
396
|
+
inputSpecConstants: {
|
|
397
|
+
smtpInputSpec: inputSpecConstants_1.smtpInputSpec,
|
|
398
|
+
systemSmtpSpec: inputSpecConstants_1.systemSmtpSpec,
|
|
399
|
+
customSmtp: inputSpecConstants_1.customSmtp,
|
|
400
|
+
smtpProviderVariants: inputSpecConstants_1.smtpProviderVariants,
|
|
401
|
+
},
|
|
325
402
|
/**
|
|
326
403
|
* @description Use this function to create a service interface.
|
|
327
404
|
* @param effects
|
|
@@ -344,14 +421,31 @@ class StartSdk {
|
|
|
344
421
|
* ```
|
|
345
422
|
*/
|
|
346
423
|
createInterface: (effects, options) => new ServiceInterfaceBuilder_1.ServiceInterfaceBuilder({ ...options, effects }),
|
|
424
|
+
/**
|
|
425
|
+
* Get the system SMTP configuration with reactive subscription support.
|
|
426
|
+
* @param effects - The effects context
|
|
427
|
+
*/
|
|
347
428
|
getSystemSmtp: (effects) => new util_1.GetSystemSmtp(effects),
|
|
429
|
+
/**
|
|
430
|
+
* Get the outbound network gateway address with reactive subscription support.
|
|
431
|
+
* @param effects - The effects context
|
|
432
|
+
*/
|
|
433
|
+
getOutboundGateway: (effects) => new util_1.GetOutboundGateway(effects),
|
|
434
|
+
/**
|
|
435
|
+
* Get an SSL certificate for the given hostnames with reactive subscription support.
|
|
436
|
+
* @param effects - The effects context
|
|
437
|
+
* @param hostnames - The hostnames to obtain a certificate for
|
|
438
|
+
* @param algorithm - Optional algorithm preference (e.g. Ed25519)
|
|
439
|
+
*/
|
|
348
440
|
getSslCertificate: (effects, hostnames, algorithm) => new util_5.GetSslCertificate(effects, hostnames, algorithm),
|
|
441
|
+
/** Retrieve the manifest of any installed service package by its ID */
|
|
349
442
|
getServiceManifest: util_5.getServiceManifest,
|
|
350
443
|
healthCheck: {
|
|
351
444
|
checkPortListening: checkPortListening_1.checkPortListening,
|
|
352
445
|
checkWebUrl: checkFns_1.checkWebUrl,
|
|
353
446
|
runHealthScript: checkFns_1.runHealthScript,
|
|
354
447
|
},
|
|
448
|
+
/** Common utility patterns (e.g. hostname regex, port validators) */
|
|
355
449
|
patterns,
|
|
356
450
|
/**
|
|
357
451
|
* @description Use this function to list every Action offered by the service. Actions will be displayed in the provided order.
|
|
@@ -530,19 +624,45 @@ class StartSdk {
|
|
|
530
624
|
* ```
|
|
531
625
|
*/
|
|
532
626
|
setupInterfaces: setupInterfaces_1.setupServiceInterfaces,
|
|
627
|
+
/**
|
|
628
|
+
* Define the main entrypoint for the service. The provided function should
|
|
629
|
+
* configure and return a `Daemons` instance describing all long-running processes.
|
|
630
|
+
* @param fn - Async function that receives `effects` and returns a `Daemons` instance
|
|
631
|
+
*/
|
|
533
632
|
setupMain: (fn) => (0, mainFn_1.setupMain)(fn),
|
|
633
|
+
/** Built-in trigger strategies for controlling health-check polling intervals */
|
|
534
634
|
trigger: {
|
|
635
|
+
/** Default trigger: polls at a fixed interval */
|
|
535
636
|
defaultTrigger: defaultTrigger_1.defaultTrigger,
|
|
637
|
+
/** Trigger with a cooldown period between checks */
|
|
536
638
|
cooldownTrigger: trigger_1.cooldownTrigger,
|
|
639
|
+
/** Switches to a different interval after the first successful check */
|
|
537
640
|
changeOnFirstSuccess: trigger_1.changeOnFirstSuccess,
|
|
641
|
+
/** Uses different intervals based on success vs failure results */
|
|
538
642
|
successFailure: successFailure_1.successFailure,
|
|
539
643
|
},
|
|
540
644
|
Mounts: {
|
|
645
|
+
/**
|
|
646
|
+
* Create an empty Mounts builder for declaring volume, asset, dependency, and backup mounts.
|
|
647
|
+
* @returns A new Mounts instance with no mounts configured
|
|
648
|
+
*/
|
|
541
649
|
of: (Mounts_1.Mounts.of),
|
|
542
650
|
},
|
|
543
651
|
Backups: {
|
|
652
|
+
/**
|
|
653
|
+
* Create a Backups configuration that backs up entire volumes by name.
|
|
654
|
+
* @param volumeNames - Volume IDs from the manifest to include in backups
|
|
655
|
+
*/
|
|
544
656
|
ofVolumes: (Backups_1.Backups.ofVolumes),
|
|
657
|
+
/**
|
|
658
|
+
* Create a Backups configuration from explicit sync path pairs.
|
|
659
|
+
* @param syncs - Array of `{ dataPath, backupPath }` objects
|
|
660
|
+
*/
|
|
545
661
|
ofSyncs: (Backups_1.Backups.ofSyncs),
|
|
662
|
+
/**
|
|
663
|
+
* Create a Backups configuration with custom rsync options (e.g. exclude patterns).
|
|
664
|
+
* @param options - Partial sync options to override defaults
|
|
665
|
+
*/
|
|
546
666
|
withOptions: (Backups_1.Backups.withOptions),
|
|
547
667
|
},
|
|
548
668
|
InputSpec: {
|
|
@@ -576,11 +696,20 @@ class StartSdk {
|
|
|
576
696
|
of: (spec) => inputSpec_1.InputSpec.of(spec),
|
|
577
697
|
},
|
|
578
698
|
Daemon: {
|
|
699
|
+
/**
|
|
700
|
+
* Create a single Daemon that wraps a long-running process with automatic restart logic.
|
|
701
|
+
* Returns a curried function: call with `(effects, subcontainer, exec)`.
|
|
702
|
+
*/
|
|
579
703
|
get of() {
|
|
580
704
|
return Daemons_1.Daemon.of();
|
|
581
705
|
},
|
|
582
706
|
},
|
|
583
707
|
Daemons: {
|
|
708
|
+
/**
|
|
709
|
+
* Create a new Daemons builder for defining the service's daemon topology.
|
|
710
|
+
* Chain `.addDaemon()` calls to register each long-running process.
|
|
711
|
+
* @param effects - The effects context
|
|
712
|
+
*/
|
|
584
713
|
of(effects) {
|
|
585
714
|
return Daemons_1.Daemons.of({ effects });
|
|
586
715
|
},
|
|
@@ -627,6 +756,19 @@ class StartSdk {
|
|
|
627
756
|
}
|
|
628
757
|
}
|
|
629
758
|
exports.StartSdk = StartSdk;
|
|
759
|
+
/**
|
|
760
|
+
* Run a one-shot command inside a temporary subcontainer.
|
|
761
|
+
*
|
|
762
|
+
* Creates a subcontainer, executes the command, and destroys the subcontainer when finished.
|
|
763
|
+
* Throws an {@link ExitError} if the command exits with a non-zero code or signal.
|
|
764
|
+
*
|
|
765
|
+
* @param effects - The effects context
|
|
766
|
+
* @param image - The container image to use
|
|
767
|
+
* @param command - The command to execute (string array or UseEntrypoint)
|
|
768
|
+
* @param options - Mount and command options
|
|
769
|
+
* @param name - Optional human-readable name for debugging
|
|
770
|
+
* @returns The stdout and stderr output of the command
|
|
771
|
+
*/
|
|
630
772
|
async function runCommand(effects, image, command, options, name) {
|
|
631
773
|
let commands;
|
|
632
774
|
if (T.isUseEntrypoint(command)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StartSdk.js","sourceRoot":"","sources":["../../../package/lib/StartSdk.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StartSdk.js","sourceRoot":"","sources":["../../../package/lib/StartSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import * as T from '../../../base/lib/types';
|
|
2
2
|
import { Affine } from '../util';
|
|
3
3
|
import { InitKind, InitScript } from '../../../base/lib/inits';
|
|
4
|
+
/** Default rsync options used for backup and restore operations */
|
|
4
5
|
export declare const DEFAULT_OPTIONS: T.SyncOptions;
|
|
6
|
+
/** A single source-to-destination sync pair for backup and restore */
|
|
5
7
|
export type BackupSync<Volumes extends string> = {
|
|
6
8
|
dataPath: `/media/startos/volumes/${Volumes}/${string}`;
|
|
7
9
|
backupPath: `/media/startos/backup/${string}`;
|
|
@@ -9,7 +11,17 @@ export type BackupSync<Volumes extends string> = {
|
|
|
9
11
|
backupOptions?: Partial<T.SyncOptions>;
|
|
10
12
|
restoreOptions?: Partial<T.SyncOptions>;
|
|
11
13
|
};
|
|
14
|
+
/** Effects type narrowed for backup/restore contexts, preventing reuse outside that scope */
|
|
12
15
|
export type BackupEffects = T.Effects & Affine<'Backups'>;
|
|
16
|
+
/**
|
|
17
|
+
* Configures backup and restore operations using rsync.
|
|
18
|
+
*
|
|
19
|
+
* Supports syncing entire volumes or custom path pairs, with optional pre/post hooks
|
|
20
|
+
* for both backup and restore phases. Implements {@link InitScript} so it can be used
|
|
21
|
+
* as a restore-init step in `setupInit`.
|
|
22
|
+
*
|
|
23
|
+
* @typeParam M - The service manifest type
|
|
24
|
+
*/
|
|
13
25
|
export declare class Backups<M extends T.SDKManifest> implements InitScript {
|
|
14
26
|
private options;
|
|
15
27
|
private restoreOptions;
|
|
@@ -20,23 +32,82 @@ export declare class Backups<M extends T.SDKManifest> implements InitScript {
|
|
|
20
32
|
private preRestore;
|
|
21
33
|
private postRestore;
|
|
22
34
|
private constructor();
|
|
35
|
+
/**
|
|
36
|
+
* Create a Backups configuration that backs up entire volumes by name.
|
|
37
|
+
* Each volume is synced to a corresponding directory under `/media/startos/backup/volumes/`.
|
|
38
|
+
* @param volumeNames - One or more volume IDs from the manifest
|
|
39
|
+
*/
|
|
23
40
|
static ofVolumes<M extends T.SDKManifest = never>(...volumeNames: Array<M['volumes'][number]>): Backups<M>;
|
|
41
|
+
/**
|
|
42
|
+
* Create a Backups configuration from explicit source/destination sync pairs.
|
|
43
|
+
* @param syncs - Array of `{ dataPath, backupPath }` objects with optional per-sync options
|
|
44
|
+
*/
|
|
24
45
|
static ofSyncs<M extends T.SDKManifest = never>(...syncs: BackupSync<M['volumes'][number]>[]): Backups<M>;
|
|
46
|
+
/**
|
|
47
|
+
* Create an empty Backups configuration with custom default rsync options.
|
|
48
|
+
* Chain `.addVolume()` or `.addSync()` to add sync targets.
|
|
49
|
+
* @param options - Partial rsync options to override defaults (e.g. `{ exclude: ['cache'] }`)
|
|
50
|
+
*/
|
|
25
51
|
static withOptions<M extends T.SDKManifest = never>(options?: Partial<T.SyncOptions>): Backups<M>;
|
|
52
|
+
/**
|
|
53
|
+
* Override the default rsync options for both backup and restore.
|
|
54
|
+
* @param options - Partial rsync options to merge with current defaults
|
|
55
|
+
*/
|
|
26
56
|
setOptions(options?: Partial<T.SyncOptions>): this;
|
|
57
|
+
/**
|
|
58
|
+
* Override rsync options used only during backup (not restore).
|
|
59
|
+
* @param options - Partial rsync options for the backup phase
|
|
60
|
+
*/
|
|
27
61
|
setBackupOptions(options?: Partial<T.SyncOptions>): this;
|
|
62
|
+
/**
|
|
63
|
+
* Override rsync options used only during restore (not backup).
|
|
64
|
+
* @param options - Partial rsync options for the restore phase
|
|
65
|
+
*/
|
|
28
66
|
setRestoreOptions(options?: Partial<T.SyncOptions>): this;
|
|
67
|
+
/**
|
|
68
|
+
* Register a hook to run before backup rsync begins (e.g. dump a database).
|
|
69
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
70
|
+
*/
|
|
29
71
|
setPreBackup(fn: (effects: BackupEffects) => Promise<void>): this;
|
|
72
|
+
/**
|
|
73
|
+
* Register a hook to run after backup rsync completes.
|
|
74
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
75
|
+
*/
|
|
30
76
|
setPostBackup(fn: (effects: BackupEffects) => Promise<void>): this;
|
|
77
|
+
/**
|
|
78
|
+
* Register a hook to run before restore rsync begins.
|
|
79
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
80
|
+
*/
|
|
31
81
|
setPreRestore(fn: (effects: BackupEffects) => Promise<void>): this;
|
|
82
|
+
/**
|
|
83
|
+
* Register a hook to run after restore rsync completes.
|
|
84
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
85
|
+
*/
|
|
32
86
|
setPostRestore(fn: (effects: BackupEffects) => Promise<void>): this;
|
|
87
|
+
/**
|
|
88
|
+
* Add a volume to the backup set by its ID.
|
|
89
|
+
* @param volume - The volume ID from the manifest
|
|
90
|
+
* @param options - Optional per-volume rsync overrides
|
|
91
|
+
*/
|
|
33
92
|
addVolume(volume: M['volumes'][number], options?: Partial<{
|
|
34
93
|
options: T.SyncOptions;
|
|
35
94
|
backupOptions: T.SyncOptions;
|
|
36
95
|
restoreOptions: T.SyncOptions;
|
|
37
96
|
}>): this;
|
|
97
|
+
/**
|
|
98
|
+
* Add a custom sync pair to the backup set.
|
|
99
|
+
* @param sync - A `{ dataPath, backupPath }` object with optional per-sync rsync options
|
|
100
|
+
*/
|
|
38
101
|
addSync(sync: BackupSync<M['volumes'][0]>): this;
|
|
102
|
+
/**
|
|
103
|
+
* Execute the backup: runs pre-hook, rsyncs all configured paths, saves the data version, then runs post-hook.
|
|
104
|
+
* @param effects - The effects context
|
|
105
|
+
*/
|
|
39
106
|
createBackup(effects: T.Effects): Promise<void>;
|
|
40
107
|
init(effects: T.Effects, kind: InitKind): Promise<void>;
|
|
108
|
+
/**
|
|
109
|
+
* Execute the restore: runs pre-hook, rsyncs all configured paths from backup to data, restores the data version, then runs post-hook.
|
|
110
|
+
* @param effects - The effects context
|
|
111
|
+
*/
|
|
41
112
|
restoreBackup(effects: T.Effects): Promise<void>;
|
|
42
113
|
}
|
|
@@ -37,10 +37,20 @@ exports.Backups = exports.DEFAULT_OPTIONS = void 0;
|
|
|
37
37
|
const child_process = __importStar(require("child_process"));
|
|
38
38
|
const fs = __importStar(require("fs/promises"));
|
|
39
39
|
const util_1 = require("../util");
|
|
40
|
+
/** Default rsync options used for backup and restore operations */
|
|
40
41
|
exports.DEFAULT_OPTIONS = {
|
|
41
42
|
delete: true,
|
|
42
43
|
exclude: [],
|
|
43
44
|
};
|
|
45
|
+
/**
|
|
46
|
+
* Configures backup and restore operations using rsync.
|
|
47
|
+
*
|
|
48
|
+
* Supports syncing entire volumes or custom path pairs, with optional pre/post hooks
|
|
49
|
+
* for both backup and restore phases. Implements {@link InitScript} so it can be used
|
|
50
|
+
* as a restore-init step in `setupInit`.
|
|
51
|
+
*
|
|
52
|
+
* @typeParam M - The service manifest type
|
|
53
|
+
*/
|
|
44
54
|
class Backups {
|
|
45
55
|
constructor(options = exports.DEFAULT_OPTIONS, restoreOptions = {}, backupOptions = {}, backupSet = [], preBackup = async (effects) => { }, postBackup = async (effects) => { }, preRestore = async (effects) => { }, postRestore = async (effects) => { }) {
|
|
46
56
|
this.options = options;
|
|
@@ -52,18 +62,36 @@ class Backups {
|
|
|
52
62
|
this.preRestore = preRestore;
|
|
53
63
|
this.postRestore = postRestore;
|
|
54
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Create a Backups configuration that backs up entire volumes by name.
|
|
67
|
+
* Each volume is synced to a corresponding directory under `/media/startos/backup/volumes/`.
|
|
68
|
+
* @param volumeNames - One or more volume IDs from the manifest
|
|
69
|
+
*/
|
|
55
70
|
static ofVolumes(...volumeNames) {
|
|
56
71
|
return Backups.ofSyncs(...volumeNames.map((srcVolume) => ({
|
|
57
72
|
dataPath: `/media/startos/volumes/${srcVolume}/`,
|
|
58
73
|
backupPath: `/media/startos/backup/volumes/${srcVolume}/`,
|
|
59
74
|
})));
|
|
60
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Create a Backups configuration from explicit source/destination sync pairs.
|
|
78
|
+
* @param syncs - Array of `{ dataPath, backupPath }` objects with optional per-sync options
|
|
79
|
+
*/
|
|
61
80
|
static ofSyncs(...syncs) {
|
|
62
81
|
return syncs.reduce((acc, x) => acc.addSync(x), new Backups());
|
|
63
82
|
}
|
|
83
|
+
/**
|
|
84
|
+
* Create an empty Backups configuration with custom default rsync options.
|
|
85
|
+
* Chain `.addVolume()` or `.addSync()` to add sync targets.
|
|
86
|
+
* @param options - Partial rsync options to override defaults (e.g. `{ exclude: ['cache'] }`)
|
|
87
|
+
*/
|
|
64
88
|
static withOptions(options) {
|
|
65
89
|
return new Backups({ ...exports.DEFAULT_OPTIONS, ...options });
|
|
66
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Override the default rsync options for both backup and restore.
|
|
93
|
+
* @param options - Partial rsync options to merge with current defaults
|
|
94
|
+
*/
|
|
67
95
|
setOptions(options) {
|
|
68
96
|
this.options = {
|
|
69
97
|
...this.options,
|
|
@@ -71,6 +99,10 @@ class Backups {
|
|
|
71
99
|
};
|
|
72
100
|
return this;
|
|
73
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* Override rsync options used only during backup (not restore).
|
|
104
|
+
* @param options - Partial rsync options for the backup phase
|
|
105
|
+
*/
|
|
74
106
|
setBackupOptions(options) {
|
|
75
107
|
this.backupOptions = {
|
|
76
108
|
...this.backupOptions,
|
|
@@ -78,6 +110,10 @@ class Backups {
|
|
|
78
110
|
};
|
|
79
111
|
return this;
|
|
80
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* Override rsync options used only during restore (not backup).
|
|
115
|
+
* @param options - Partial rsync options for the restore phase
|
|
116
|
+
*/
|
|
81
117
|
setRestoreOptions(options) {
|
|
82
118
|
this.restoreOptions = {
|
|
83
119
|
...this.restoreOptions,
|
|
@@ -85,22 +121,43 @@ class Backups {
|
|
|
85
121
|
};
|
|
86
122
|
return this;
|
|
87
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Register a hook to run before backup rsync begins (e.g. dump a database).
|
|
126
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
127
|
+
*/
|
|
88
128
|
setPreBackup(fn) {
|
|
89
129
|
this.preBackup = fn;
|
|
90
130
|
return this;
|
|
91
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* Register a hook to run after backup rsync completes.
|
|
134
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
135
|
+
*/
|
|
92
136
|
setPostBackup(fn) {
|
|
93
137
|
this.postBackup = fn;
|
|
94
138
|
return this;
|
|
95
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Register a hook to run before restore rsync begins.
|
|
142
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
143
|
+
*/
|
|
96
144
|
setPreRestore(fn) {
|
|
97
145
|
this.preRestore = fn;
|
|
98
146
|
return this;
|
|
99
147
|
}
|
|
148
|
+
/**
|
|
149
|
+
* Register a hook to run after restore rsync completes.
|
|
150
|
+
* @param fn - Async function receiving backup-scoped effects
|
|
151
|
+
*/
|
|
100
152
|
setPostRestore(fn) {
|
|
101
153
|
this.postRestore = fn;
|
|
102
154
|
return this;
|
|
103
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Add a volume to the backup set by its ID.
|
|
158
|
+
* @param volume - The volume ID from the manifest
|
|
159
|
+
* @param options - Optional per-volume rsync overrides
|
|
160
|
+
*/
|
|
104
161
|
addVolume(volume, options) {
|
|
105
162
|
return this.addSync({
|
|
106
163
|
dataPath: `/media/startos/volumes/${volume}/`,
|
|
@@ -108,10 +165,18 @@ class Backups {
|
|
|
108
165
|
...options,
|
|
109
166
|
});
|
|
110
167
|
}
|
|
168
|
+
/**
|
|
169
|
+
* Add a custom sync pair to the backup set.
|
|
170
|
+
* @param sync - A `{ dataPath, backupPath }` object with optional per-sync rsync options
|
|
171
|
+
*/
|
|
111
172
|
addSync(sync) {
|
|
112
173
|
this.backupSet.push(sync);
|
|
113
174
|
return this;
|
|
114
175
|
}
|
|
176
|
+
/**
|
|
177
|
+
* Execute the backup: runs pre-hook, rsyncs all configured paths, saves the data version, then runs post-hook.
|
|
178
|
+
* @param effects - The effects context
|
|
179
|
+
*/
|
|
115
180
|
async createBackup(effects) {
|
|
116
181
|
await this.preBackup(effects);
|
|
117
182
|
for (const item of this.backupSet) {
|
|
@@ -140,6 +205,10 @@ class Backups {
|
|
|
140
205
|
await this.restoreBackup(effects);
|
|
141
206
|
}
|
|
142
207
|
}
|
|
208
|
+
/**
|
|
209
|
+
* Execute the restore: runs pre-hook, rsyncs all configured paths from backup to data, restores the data version, then runs post-hook.
|
|
210
|
+
* @param effects - The effects context
|
|
211
|
+
*/
|
|
143
212
|
async restoreBackup(effects) {
|
|
144
213
|
this.preRestore(effects);
|
|
145
214
|
for (const item of this.backupSet) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Backups.js","sourceRoot":"","sources":["../../../../package/lib/backup/Backups.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6DAA8C;AAC9C,gDAAiC;AACjC,kCAAyC;
|
|
1
|
+
{"version":3,"file":"Backups.js","sourceRoot":"","sources":["../../../../package/lib/backup/Backups.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { Backups } from './Backups';
|
|
2
2
|
import * as T from '../../../base/lib/types';
|
|
3
3
|
import { InitScript } from '../../../base/lib/inits';
|
|
4
|
+
/**
|
|
5
|
+
* Parameters for `setupBackups`. Either:
|
|
6
|
+
* - An array of volume IDs to back up entirely, or
|
|
7
|
+
* - An async factory function that returns a fully configured {@link Backups} instance
|
|
8
|
+
*/
|
|
4
9
|
export type SetupBackupsParams<M extends T.SDKManifest> = M['volumes'][number][] | ((_: {
|
|
5
10
|
effects: T.Effects;
|
|
6
11
|
}) => Promise<Backups<M>>);
|
|
@@ -8,5 +13,14 @@ type SetupBackupsRes = {
|
|
|
8
13
|
createBackup: T.ExpectedExports.createBackup;
|
|
9
14
|
restoreInit: InitScript;
|
|
10
15
|
};
|
|
16
|
+
/**
|
|
17
|
+
* Set up backup and restore exports for the service.
|
|
18
|
+
*
|
|
19
|
+
* Returns `{ createBackup, restoreInit }` which should be exported and wired into
|
|
20
|
+
* the service's init and backup entry points.
|
|
21
|
+
*
|
|
22
|
+
* @param options - Either an array of volume IDs or an async factory returning a Backups instance
|
|
23
|
+
* @returns An object with `createBackup` (the backup export) and `restoreInit` (an InitScript for restore)
|
|
24
|
+
*/
|
|
11
25
|
export declare function setupBackups<M extends T.SDKManifest>(options: SetupBackupsParams<M>): SetupBackupsRes;
|
|
12
26
|
export {};
|
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.setupBackups = setupBackups;
|
|
4
4
|
const Backups_1 = require("./Backups");
|
|
5
|
+
/**
|
|
6
|
+
* Set up backup and restore exports for the service.
|
|
7
|
+
*
|
|
8
|
+
* Returns `{ createBackup, restoreInit }` which should be exported and wired into
|
|
9
|
+
* the service's init and backup entry points.
|
|
10
|
+
*
|
|
11
|
+
* @param options - Either an array of volume IDs or an async factory returning a Backups instance
|
|
12
|
+
* @returns An object with `createBackup` (the backup export) and `restoreInit` (an InitScript for restore)
|
|
13
|
+
*/
|
|
5
14
|
function setupBackups(options) {
|
|
6
15
|
let backupsFactory;
|
|
7
16
|
if (options instanceof Function) {
|