@start9labs/start-sdk 0.3.6-alpha4 → 0.3.6-alpha6
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/cjs/lib/Dependency.d.ts +5 -5
- package/cjs/lib/StartSdk.d.ts +31 -68
- package/cjs/lib/StartSdk.js +29 -22
- package/cjs/lib/StartSdk.js.map +1 -1
- package/cjs/lib/actions/createAction.d.ts +7 -7
- package/cjs/lib/actions/createAction.js.map +1 -1
- package/cjs/lib/actions/setupActions.d.ts +2 -2
- package/cjs/lib/backup/Backups.d.ts +5 -6
- package/cjs/lib/backup/Backups.js +98 -68
- package/cjs/lib/backup/Backups.js.map +1 -1
- package/cjs/lib/backup/setupBackups.d.ts +5 -6
- package/cjs/lib/backup/setupBackups.js +2 -2
- package/cjs/lib/backup/setupBackups.js.map +1 -1
- package/cjs/lib/config/builder/list.d.ts +0 -34
- package/cjs/lib/config/builder/list.js +0 -50
- package/cjs/lib/config/builder/list.js.map +1 -1
- package/cjs/lib/config/builder/variants.d.ts +2 -2
- package/cjs/lib/config/builder/variants.js +2 -2
- package/cjs/lib/config/builder/variants.js.map +1 -1
- package/cjs/lib/config/configConstants.d.ts +6 -6
- package/cjs/lib/config/configDependencies.d.ts +5 -6
- package/cjs/lib/config/configDependencies.js.map +1 -1
- package/cjs/lib/config/configTypes.d.ts +93 -62
- package/cjs/lib/config/configTypes.js +1 -3
- package/cjs/lib/config/configTypes.js.map +1 -1
- package/cjs/lib/config/setupConfig.d.ts +7 -8
- package/cjs/lib/config/setupConfig.js.map +1 -1
- package/cjs/lib/dependencies/DependencyConfig.d.ts +9 -10
- package/cjs/lib/dependencies/DependencyConfig.js.map +1 -1
- package/cjs/lib/dependencies/dependencies.d.ts +8 -6
- package/cjs/lib/dependencies/dependencies.js +12 -5
- package/cjs/lib/dependencies/dependencies.js.map +1 -1
- package/cjs/lib/dependencies/setupDependencyConfig.d.ts +3 -4
- package/cjs/lib/emverLite/mod.d.ts +4 -4
- package/cjs/lib/exver/exver.d.ts +130 -0
- package/cjs/lib/exver/exver.js +2358 -0
- package/cjs/lib/exver/exver.js.map +1 -0
- package/cjs/lib/exver/index.d.ts +62 -0
- package/cjs/lib/exver/index.js +366 -0
- package/cjs/lib/exver/index.js.map +1 -0
- package/cjs/lib/health/HealthCheck.d.ts +4 -4
- package/cjs/lib/health/HealthCheck.js.map +1 -1
- package/cjs/lib/index.browser.d.ts +3 -5
- package/cjs/lib/index.browser.js +8 -9
- package/cjs/lib/index.browser.js.map +1 -1
- package/cjs/lib/index.d.ts +2 -1
- package/cjs/lib/index.js +7 -3
- package/cjs/lib/index.js.map +1 -1
- package/cjs/lib/inits/migrations/Migration.d.ts +15 -15
- package/cjs/lib/inits/migrations/Migration.js.map +1 -1
- package/cjs/lib/inits/migrations/setupMigrations.d.ts +7 -8
- package/cjs/lib/inits/migrations/setupMigrations.js +9 -7
- package/cjs/lib/inits/migrations/setupMigrations.js.map +1 -1
- package/cjs/lib/inits/setupInit.d.ts +5 -6
- package/cjs/lib/inits/setupInstall.d.ts +7 -8
- package/cjs/lib/inits/setupInstall.js.map +1 -1
- package/cjs/lib/inits/setupUninstall.d.ts +7 -8
- package/cjs/lib/inits/setupUninstall.js.map +1 -1
- package/cjs/lib/interfaces/setupInterfaces.d.ts +5 -6
- package/cjs/lib/mainFn/CommandController.d.ts +7 -6
- package/cjs/lib/mainFn/CommandController.js +10 -4
- package/cjs/lib/mainFn/CommandController.js.map +1 -1
- package/cjs/lib/mainFn/Daemon.d.ts +5 -5
- package/cjs/lib/mainFn/Daemon.js.map +1 -1
- package/cjs/lib/mainFn/Daemons.d.ts +12 -11
- package/cjs/lib/mainFn/Daemons.js +5 -8
- package/cjs/lib/mainFn/Daemons.js.map +1 -1
- package/cjs/lib/mainFn/HealthDaemon.d.ts +2 -1
- package/cjs/lib/mainFn/HealthDaemon.js +9 -4
- package/cjs/lib/mainFn/HealthDaemon.js.map +1 -1
- package/cjs/lib/mainFn/Mounts.d.ts +4 -4
- package/cjs/lib/mainFn/Mounts.js.map +1 -1
- package/cjs/lib/mainFn/index.d.ts +4 -4
- package/cjs/lib/mainFn/index.js +2 -1
- package/cjs/lib/mainFn/index.js.map +1 -1
- package/cjs/lib/manifest/ManifestTypes.d.ts +37 -32
- package/cjs/lib/manifest/setupManifest.d.ts +8 -6
- package/cjs/lib/manifest/setupManifest.js +40 -1
- package/cjs/lib/manifest/setupManifest.js.map +1 -1
- package/cjs/lib/osBindings/AddAssetParams.d.ts +1 -2
- package/cjs/lib/osBindings/AddVersionParams.d.ts +1 -2
- package/cjs/lib/osBindings/AddVersionParams.js +1 -0
- package/cjs/lib/osBindings/AddVersionParams.js.map +1 -1
- package/cjs/lib/osBindings/AttachParams.d.ts +5 -0
- package/cjs/lib/osBindings/AttachParams.js +3 -0
- package/cjs/lib/osBindings/AttachParams.js.map +1 -0
- package/cjs/lib/osBindings/BackupTargetFS.d.ts +7 -0
- package/cjs/lib/osBindings/BackupTargetFS.js +3 -0
- package/cjs/lib/osBindings/BackupTargetFS.js.map +1 -0
- package/cjs/lib/osBindings/BlockDev.d.ts +3 -0
- package/cjs/lib/osBindings/BlockDev.js +4 -0
- package/cjs/lib/osBindings/BlockDev.js.map +1 -0
- package/cjs/lib/osBindings/CallbackId.d.ts +1 -0
- package/cjs/lib/osBindings/CallbackId.js +4 -0
- package/cjs/lib/osBindings/CallbackId.js.map +1 -0
- package/cjs/lib/osBindings/CheckDependenciesResult.d.ts +5 -1
- package/cjs/lib/osBindings/Cifs.d.ts +6 -0
- package/cjs/lib/osBindings/Cifs.js +4 -0
- package/cjs/lib/osBindings/Cifs.js.map +1 -0
- package/cjs/lib/osBindings/CurrentDependencyInfo.d.ts +3 -4
- package/cjs/lib/osBindings/DepInfo.d.ts +2 -0
- package/cjs/lib/osBindings/DepInfo.js +0 -1
- package/cjs/lib/osBindings/DepInfo.js.map +1 -1
- package/cjs/lib/osBindings/DependencyMetadata.d.ts +7 -0
- package/cjs/lib/osBindings/DependencyMetadata.js +3 -0
- package/cjs/lib/osBindings/DependencyMetadata.js.map +1 -0
- package/cjs/lib/osBindings/DependencyRequirement.d.ts +2 -4
- package/cjs/lib/osBindings/ExecuteAction.d.ts +3 -1
- package/cjs/lib/osBindings/ExecuteAction.js +0 -1
- package/cjs/lib/osBindings/ExecuteAction.js.map +1 -1
- package/cjs/lib/osBindings/FullIndex.d.ts +1 -0
- package/cjs/lib/osBindings/GetHostInfoParams.d.ts +2 -2
- package/cjs/lib/osBindings/GetOsAssetParams.d.ts +1 -2
- package/cjs/lib/osBindings/GetOsAssetParams.js +1 -0
- package/cjs/lib/osBindings/GetOsAssetParams.js.map +1 -1
- package/cjs/lib/osBindings/GetOsVersionParams.d.ts +6 -0
- package/cjs/lib/osBindings/GetOsVersionParams.js +4 -0
- package/cjs/lib/osBindings/GetOsVersionParams.js.map +1 -0
- package/cjs/lib/osBindings/GetPackageParams.d.ts +3 -2
- package/cjs/lib/osBindings/GetPrimaryUrlParams.d.ts +2 -2
- package/cjs/lib/osBindings/GetServiceInterfaceParams.d.ts +2 -2
- package/cjs/lib/osBindings/GetSslCertificateParams.d.ts +4 -3
- package/cjs/lib/osBindings/GetSslKeyParams.d.ts +2 -3
- package/cjs/lib/osBindings/GetStoreParams.d.ts +2 -0
- package/cjs/lib/osBindings/GetStoreParams.js +0 -1
- package/cjs/lib/osBindings/GetStoreParams.js.map +1 -1
- package/cjs/lib/osBindings/GetSystemSmtpParams.d.ts +2 -2
- package/cjs/lib/osBindings/GetVersionParams.d.ts +2 -0
- package/cjs/lib/osBindings/HardwareRequirements.d.ts +2 -1
- package/cjs/lib/osBindings/HostAddress.d.ts +3 -0
- package/cjs/lib/osBindings/InitProgressRes.d.ts +6 -0
- package/cjs/lib/osBindings/InitProgressRes.js +3 -0
- package/cjs/lib/osBindings/InitProgressRes.js.map +1 -0
- package/cjs/lib/osBindings/InstallParams.d.ts +7 -0
- package/cjs/lib/osBindings/InstallParams.js +3 -0
- package/cjs/lib/osBindings/InstallParams.js.map +1 -0
- package/cjs/lib/osBindings/InstalledVersionParams.d.ts +4 -0
- package/cjs/lib/osBindings/InstalledVersionParams.js +3 -0
- package/cjs/lib/osBindings/InstalledVersionParams.js.map +1 -0
- package/cjs/lib/osBindings/ListServiceInterfacesParams.d.ts +2 -2
- package/cjs/lib/osBindings/ListVersionSignersParams.d.ts +1 -2
- package/cjs/lib/osBindings/ListVersionSignersParams.js +1 -0
- package/cjs/lib/osBindings/ListVersionSignersParams.js.map +1 -1
- package/cjs/lib/osBindings/MainStatus.d.ts +0 -2
- package/cjs/lib/osBindings/Manifest.d.ts +2 -1
- package/cjs/lib/osBindings/OsIndex.d.ts +2 -5
- package/cjs/lib/osBindings/OsVersionInfoMap.d.ts +4 -0
- package/cjs/lib/osBindings/OsVersionInfoMap.js +3 -0
- package/cjs/lib/osBindings/OsVersionInfoMap.js.map +1 -0
- package/cjs/lib/osBindings/PackageDetailLevel.d.ts +1 -1
- package/cjs/lib/osBindings/PackageVersionInfo.d.ts +9 -2
- package/cjs/lib/osBindings/PathOrUrl.d.ts +1 -0
- package/cjs/lib/osBindings/PathOrUrl.js +4 -0
- package/cjs/lib/osBindings/PathOrUrl.js.map +1 -0
- package/cjs/lib/osBindings/ProcedureId.d.ts +4 -0
- package/cjs/lib/osBindings/ProcedureId.js +3 -0
- package/cjs/lib/osBindings/ProcedureId.js.map +1 -0
- package/cjs/lib/osBindings/Public.d.ts +1 -1
- package/cjs/lib/osBindings/RecoverySource.d.ts +10 -0
- package/cjs/lib/osBindings/RecoverySource.js +3 -0
- package/cjs/lib/osBindings/RecoverySource.js.map +1 -0
- package/cjs/lib/osBindings/RegistryAsset.d.ts +1 -0
- package/cjs/lib/osBindings/RegistryInfo.d.ts +9 -0
- package/cjs/lib/osBindings/RegistryInfo.js +3 -0
- package/cjs/lib/osBindings/RegistryInfo.js.map +1 -0
- package/cjs/lib/osBindings/RemoveVersionParams.d.ts +1 -2
- package/cjs/lib/osBindings/RemoveVersionParams.js +1 -0
- package/cjs/lib/osBindings/RemoveVersionParams.js.map +1 -1
- package/cjs/lib/osBindings/ServerInfo.d.ts +3 -3
- package/cjs/lib/osBindings/SetDependenciesParams.d.ts +2 -0
- package/cjs/lib/osBindings/SetMainStatusStatus.d.ts +1 -1
- package/cjs/lib/osBindings/SetupExecuteParams.d.ts +7 -0
- package/cjs/lib/osBindings/SetupExecuteParams.js +3 -0
- package/cjs/lib/osBindings/SetupExecuteParams.js.map +1 -0
- package/cjs/lib/osBindings/SetupProgress.d.ts +6 -0
- package/cjs/lib/osBindings/SetupProgress.js +3 -0
- package/cjs/lib/osBindings/SetupProgress.js.map +1 -0
- package/cjs/lib/osBindings/SetupResult.d.ts +5 -0
- package/cjs/lib/osBindings/SetupResult.js +4 -0
- package/cjs/lib/osBindings/SetupResult.js.map +1 -0
- package/cjs/lib/osBindings/SetupStatusRes.d.ts +7 -0
- package/cjs/lib/osBindings/SetupStatusRes.js +3 -0
- package/cjs/lib/osBindings/SetupStatusRes.js.map +1 -0
- package/cjs/lib/osBindings/SignAssetParams.d.ts +1 -2
- package/cjs/lib/osBindings/SmtpValue.d.ts +7 -0
- package/cjs/lib/osBindings/SmtpValue.js +4 -0
- package/cjs/lib/osBindings/SmtpValue.js.map +1 -0
- package/cjs/lib/osBindings/VerifyCifsParams.d.ts +7 -0
- package/cjs/lib/osBindings/VerifyCifsParams.js +3 -0
- package/cjs/lib/osBindings/VerifyCifsParams.js.map +1 -0
- package/cjs/lib/osBindings/VersionSignerParams.d.ts +1 -2
- package/cjs/lib/osBindings/index.d.ts +21 -3
- package/cjs/lib/s9pk/index.d.ts +11 -0
- package/cjs/lib/s9pk/index.js +50 -0
- package/cjs/lib/s9pk/index.js.map +1 -0
- package/cjs/lib/s9pk/merkleArchive/directoryContents.d.ts +11 -0
- package/cjs/lib/s9pk/merkleArchive/directoryContents.js +72 -0
- package/cjs/lib/s9pk/merkleArchive/directoryContents.js.map +1 -0
- package/cjs/lib/s9pk/merkleArchive/fileContents.d.ts +7 -0
- package/cjs/lib/s9pk/merkleArchive/fileContents.js +23 -0
- package/cjs/lib/s9pk/merkleArchive/fileContents.js.map +1 -0
- package/cjs/lib/s9pk/merkleArchive/index.d.ts +33 -0
- package/cjs/lib/s9pk/merkleArchive/index.js +119 -0
- package/cjs/lib/s9pk/merkleArchive/index.js.map +1 -0
- package/cjs/lib/s9pk/merkleArchive/varint.d.ts +9 -0
- package/cjs/lib/s9pk/merkleArchive/varint.js +60 -0
- package/cjs/lib/s9pk/merkleArchive/varint.js.map +1 -0
- package/cjs/lib/store/getStore.js +0 -1
- package/cjs/lib/store/getStore.js.map +1 -1
- package/cjs/lib/test/configBuilder.test.js +6 -31
- package/cjs/lib/test/configBuilder.test.js.map +1 -1
- package/cjs/lib/test/configTypes.test.js +1 -4
- package/cjs/lib/test/configTypes.test.js.map +1 -1
- package/cjs/lib/test/emverList.test.js +0 -9
- package/cjs/lib/test/emverList.test.js.map +1 -1
- package/cjs/lib/test/exverList.test.d.ts +1 -0
- package/cjs/lib/test/exverList.test.js +219 -0
- package/cjs/lib/test/exverList.test.js.map +1 -0
- package/cjs/lib/test/output.d.ts +16 -16
- package/cjs/lib/test/output.sdk.d.ts +185 -155
- package/cjs/lib/test/output.sdk.js +3 -2
- package/cjs/lib/test/output.sdk.js.map +1 -1
- package/cjs/lib/test/output.test.js +3 -4
- package/cjs/lib/test/output.test.js.map +1 -1
- package/cjs/lib/test/setupDependencyConfig.test.js +1 -1
- package/cjs/lib/test/setupDependencyConfig.test.js.map +1 -1
- package/cjs/lib/test/startosTypeValidation.test.js +1 -0
- package/cjs/lib/test/startosTypeValidation.test.js.map +1 -1
- package/cjs/lib/types.d.ts +32 -30
- package/cjs/lib/types.js.map +1 -1
- package/cjs/lib/util/GetSslCertificate.d.ts +20 -0
- package/cjs/lib/util/GetSslCertificate.js +48 -0
- package/cjs/lib/util/GetSslCertificate.js.map +1 -0
- package/cjs/lib/util/GetSystemSmtp.d.ts +3 -3
- package/cjs/lib/util/GetSystemSmtp.js +1 -3
- package/cjs/lib/util/GetSystemSmtp.js.map +1 -1
- package/cjs/lib/util/Overlay.js +17 -21
- package/cjs/lib/util/Overlay.js.map +1 -1
- package/cjs/lib/util/fileHelper.js +2 -2
- package/cjs/lib/util/fileHelper.js.map +1 -1
- package/cjs/lib/util/getRandomCharInSet.js +1 -25
- package/cjs/lib/util/getRandomCharInSet.js.map +1 -1
- package/cjs/lib/util/getServiceInterface.d.ts +5 -5
- package/cjs/lib/util/getServiceInterface.js +10 -9
- package/cjs/lib/util/getServiceInterface.js.map +1 -1
- package/cjs/lib/util/getServiceInterfaces.js +3 -2
- package/cjs/lib/util/getServiceInterfaces.js.map +1 -1
- package/cjs/lib/util/inMs.d.ts +1 -0
- package/cjs/lib/util/inMs.js +42 -0
- package/cjs/lib/util/inMs.js.map +1 -0
- package/cjs/lib/util/inMs.test.d.ts +1 -0
- package/cjs/lib/util/inMs.test.js +36 -0
- package/cjs/lib/util/inMs.test.js.map +1 -0
- package/cjs/lib/util/index.browser.d.ts +3 -14
- package/cjs/lib/util/index.browser.js +24 -5
- package/cjs/lib/util/index.browser.js.map +1 -1
- package/cjs/lib/util/index.d.ts +2 -14
- package/cjs/lib/util/index.js +18 -3
- package/cjs/lib/util/index.js.map +1 -1
- package/cjs/lib/util/splitCommand.js +1 -7
- package/cjs/lib/util/splitCommand.js.map +1 -1
- package/cjs/lib/util/typeHelpers.d.ts +15 -0
- package/cjs/lib/util/typeHelpers.js +6 -0
- package/cjs/lib/util/typeHelpers.js.map +1 -0
- package/cjs/scripts/oldSpecToBuilder.js +30 -26
- package/cjs/scripts/oldSpecToBuilder.js.map +1 -1
- package/mjs/lib/Dependency.d.ts +5 -5
- package/mjs/lib/StartSdk.d.ts +31 -68
- package/mjs/lib/StartSdk.js +28 -21
- package/mjs/lib/StartSdk.js.map +1 -1
- package/mjs/lib/actions/createAction.d.ts +7 -7
- package/mjs/lib/actions/createAction.js.map +1 -1
- package/mjs/lib/actions/setupActions.d.ts +2 -2
- package/mjs/lib/backup/Backups.d.ts +5 -6
- package/mjs/lib/backup/Backups.js +74 -68
- package/mjs/lib/backup/Backups.js.map +1 -1
- package/mjs/lib/backup/setupBackups.d.ts +5 -6
- package/mjs/lib/backup/setupBackups.js +2 -2
- package/mjs/lib/backup/setupBackups.js.map +1 -1
- package/mjs/lib/config/builder/list.d.ts +0 -34
- package/mjs/lib/config/builder/list.js +1 -51
- package/mjs/lib/config/builder/list.js.map +1 -1
- package/mjs/lib/config/builder/variants.d.ts +2 -2
- package/mjs/lib/config/builder/variants.js +2 -2
- package/mjs/lib/config/builder/variants.js.map +1 -1
- package/mjs/lib/config/configConstants.d.ts +6 -6
- package/mjs/lib/config/configDependencies.d.ts +5 -6
- package/mjs/lib/config/configDependencies.js.map +1 -1
- package/mjs/lib/config/configTypes.d.ts +93 -62
- package/mjs/lib/config/configTypes.js +0 -2
- package/mjs/lib/config/configTypes.js.map +1 -1
- package/mjs/lib/config/setupConfig.d.ts +7 -8
- package/mjs/lib/config/setupConfig.js.map +1 -1
- package/mjs/lib/dependencies/DependencyConfig.d.ts +9 -10
- package/mjs/lib/dependencies/DependencyConfig.js.map +1 -1
- package/mjs/lib/dependencies/dependencies.d.ts +8 -6
- package/mjs/lib/dependencies/dependencies.js +12 -5
- package/mjs/lib/dependencies/dependencies.js.map +1 -1
- package/mjs/lib/dependencies/setupDependencyConfig.d.ts +3 -4
- package/mjs/lib/emverLite/mod.d.ts +4 -4
- package/mjs/lib/exver/exver.d.ts +130 -0
- package/mjs/lib/exver/exver.js +2355 -0
- package/mjs/lib/exver/exver.js.map +1 -0
- package/mjs/lib/exver/index.d.ts +62 -0
- package/mjs/lib/exver/index.js +340 -0
- package/mjs/lib/exver/index.js.map +1 -0
- package/mjs/lib/health/HealthCheck.d.ts +4 -4
- package/mjs/lib/health/HealthCheck.js.map +1 -1
- package/mjs/lib/index.browser.d.ts +3 -5
- package/mjs/lib/index.browser.js +3 -5
- package/mjs/lib/index.browser.js.map +1 -1
- package/mjs/lib/index.d.ts +2 -1
- package/mjs/lib/index.js +2 -1
- package/mjs/lib/index.js.map +1 -1
- package/mjs/lib/inits/migrations/Migration.d.ts +15 -15
- package/mjs/lib/inits/migrations/Migration.js.map +1 -1
- package/mjs/lib/inits/migrations/setupMigrations.d.ts +7 -8
- package/mjs/lib/inits/migrations/setupMigrations.js +9 -7
- package/mjs/lib/inits/migrations/setupMigrations.js.map +1 -1
- package/mjs/lib/inits/setupInit.d.ts +5 -6
- package/mjs/lib/inits/setupInstall.d.ts +7 -8
- package/mjs/lib/inits/setupInstall.js.map +1 -1
- package/mjs/lib/inits/setupUninstall.d.ts +7 -8
- package/mjs/lib/inits/setupUninstall.js.map +1 -1
- package/mjs/lib/interfaces/setupInterfaces.d.ts +5 -6
- package/mjs/lib/mainFn/CommandController.d.ts +7 -6
- package/mjs/lib/mainFn/CommandController.js +11 -4
- package/mjs/lib/mainFn/CommandController.js.map +1 -1
- package/mjs/lib/mainFn/Daemon.d.ts +5 -5
- package/mjs/lib/mainFn/Daemon.js.map +1 -1
- package/mjs/lib/mainFn/Daemons.d.ts +12 -11
- package/mjs/lib/mainFn/Daemons.js +5 -8
- package/mjs/lib/mainFn/Daemons.js.map +1 -1
- package/mjs/lib/mainFn/HealthDaemon.d.ts +2 -1
- package/mjs/lib/mainFn/HealthDaemon.js +10 -4
- package/mjs/lib/mainFn/HealthDaemon.js.map +1 -1
- package/mjs/lib/mainFn/Mounts.d.ts +4 -4
- package/mjs/lib/mainFn/Mounts.js.map +1 -1
- package/mjs/lib/mainFn/index.d.ts +4 -4
- package/mjs/lib/mainFn/index.js +1 -0
- package/mjs/lib/mainFn/index.js.map +1 -1
- package/mjs/lib/manifest/ManifestTypes.d.ts +37 -32
- package/mjs/lib/manifest/setupManifest.d.ts +8 -6
- package/mjs/lib/manifest/setupManifest.js +39 -1
- package/mjs/lib/manifest/setupManifest.js.map +1 -1
- package/mjs/lib/osBindings/AddAssetParams.d.ts +1 -2
- package/mjs/lib/osBindings/AddVersionParams.d.ts +1 -2
- package/mjs/lib/osBindings/AddVersionParams.js +1 -0
- package/mjs/lib/osBindings/AddVersionParams.js.map +1 -1
- package/mjs/lib/osBindings/AttachParams.d.ts +5 -0
- package/mjs/lib/osBindings/AttachParams.js +2 -0
- package/mjs/lib/osBindings/AttachParams.js.map +1 -0
- package/mjs/lib/osBindings/BackupTargetFS.d.ts +7 -0
- package/mjs/lib/osBindings/BackupTargetFS.js +2 -0
- package/mjs/lib/osBindings/BackupTargetFS.js.map +1 -0
- package/mjs/lib/osBindings/BlockDev.d.ts +3 -0
- package/mjs/lib/osBindings/BlockDev.js +3 -0
- package/mjs/lib/osBindings/BlockDev.js.map +1 -0
- package/mjs/lib/osBindings/CallbackId.d.ts +1 -0
- package/mjs/lib/osBindings/CallbackId.js +3 -0
- package/mjs/lib/osBindings/CallbackId.js.map +1 -0
- package/mjs/lib/osBindings/CheckDependenciesResult.d.ts +5 -1
- package/mjs/lib/osBindings/Cifs.d.ts +6 -0
- package/mjs/lib/osBindings/Cifs.js +3 -0
- package/mjs/lib/osBindings/Cifs.js.map +1 -0
- package/mjs/lib/osBindings/CurrentDependencyInfo.d.ts +3 -4
- package/mjs/lib/osBindings/DepInfo.d.ts +2 -0
- package/mjs/lib/osBindings/DepInfo.js +0 -1
- package/mjs/lib/osBindings/DepInfo.js.map +1 -1
- package/mjs/lib/osBindings/DependencyMetadata.d.ts +7 -0
- package/mjs/lib/osBindings/DependencyMetadata.js +2 -0
- package/mjs/lib/osBindings/DependencyMetadata.js.map +1 -0
- package/mjs/lib/osBindings/DependencyRequirement.d.ts +2 -4
- package/mjs/lib/osBindings/ExecuteAction.d.ts +3 -1
- package/mjs/lib/osBindings/ExecuteAction.js +0 -1
- package/mjs/lib/osBindings/ExecuteAction.js.map +1 -1
- package/mjs/lib/osBindings/FullIndex.d.ts +1 -0
- package/mjs/lib/osBindings/GetHostInfoParams.d.ts +2 -2
- package/mjs/lib/osBindings/GetOsAssetParams.d.ts +1 -2
- package/mjs/lib/osBindings/GetOsAssetParams.js +1 -0
- package/mjs/lib/osBindings/GetOsAssetParams.js.map +1 -1
- package/mjs/lib/osBindings/GetOsVersionParams.d.ts +6 -0
- package/mjs/lib/osBindings/GetOsVersionParams.js +3 -0
- package/mjs/lib/osBindings/GetOsVersionParams.js.map +1 -0
- package/mjs/lib/osBindings/GetPackageParams.d.ts +3 -2
- package/mjs/lib/osBindings/GetPrimaryUrlParams.d.ts +2 -2
- package/mjs/lib/osBindings/GetServiceInterfaceParams.d.ts +2 -2
- package/mjs/lib/osBindings/GetSslCertificateParams.d.ts +4 -3
- package/mjs/lib/osBindings/GetSslKeyParams.d.ts +2 -3
- package/mjs/lib/osBindings/GetStoreParams.d.ts +2 -0
- package/mjs/lib/osBindings/GetStoreParams.js +0 -1
- package/mjs/lib/osBindings/GetStoreParams.js.map +1 -1
- package/mjs/lib/osBindings/GetSystemSmtpParams.d.ts +2 -2
- package/mjs/lib/osBindings/GetVersionParams.d.ts +2 -0
- package/mjs/lib/osBindings/HardwareRequirements.d.ts +2 -1
- package/mjs/lib/osBindings/HostAddress.d.ts +3 -0
- package/mjs/lib/osBindings/InitProgressRes.d.ts +6 -0
- package/mjs/lib/osBindings/InitProgressRes.js +2 -0
- package/mjs/lib/osBindings/InitProgressRes.js.map +1 -0
- package/mjs/lib/osBindings/InstallParams.d.ts +7 -0
- package/mjs/lib/osBindings/InstallParams.js +2 -0
- package/mjs/lib/osBindings/InstallParams.js.map +1 -0
- package/mjs/lib/osBindings/InstalledVersionParams.d.ts +4 -0
- package/mjs/lib/osBindings/InstalledVersionParams.js +2 -0
- package/mjs/lib/osBindings/InstalledVersionParams.js.map +1 -0
- package/mjs/lib/osBindings/ListServiceInterfacesParams.d.ts +2 -2
- package/mjs/lib/osBindings/ListVersionSignersParams.d.ts +1 -2
- package/mjs/lib/osBindings/ListVersionSignersParams.js +1 -0
- package/mjs/lib/osBindings/ListVersionSignersParams.js.map +1 -1
- package/mjs/lib/osBindings/MainStatus.d.ts +0 -2
- package/mjs/lib/osBindings/Manifest.d.ts +2 -1
- package/mjs/lib/osBindings/OsIndex.d.ts +2 -5
- package/mjs/lib/osBindings/OsVersionInfoMap.d.ts +4 -0
- package/mjs/lib/osBindings/OsVersionInfoMap.js +2 -0
- package/mjs/lib/osBindings/OsVersionInfoMap.js.map +1 -0
- package/mjs/lib/osBindings/PackageDetailLevel.d.ts +1 -1
- package/mjs/lib/osBindings/PackageVersionInfo.d.ts +9 -2
- package/mjs/lib/osBindings/PathOrUrl.d.ts +1 -0
- package/mjs/lib/osBindings/PathOrUrl.js +3 -0
- package/mjs/lib/osBindings/PathOrUrl.js.map +1 -0
- package/mjs/lib/osBindings/ProcedureId.d.ts +4 -0
- package/mjs/lib/osBindings/ProcedureId.js +2 -0
- package/mjs/lib/osBindings/ProcedureId.js.map +1 -0
- package/mjs/lib/osBindings/Public.d.ts +1 -1
- package/mjs/lib/osBindings/RecoverySource.d.ts +10 -0
- package/mjs/lib/osBindings/RecoverySource.js +2 -0
- package/mjs/lib/osBindings/RecoverySource.js.map +1 -0
- package/mjs/lib/osBindings/RegistryAsset.d.ts +1 -0
- package/mjs/lib/osBindings/RegistryInfo.d.ts +9 -0
- package/mjs/lib/osBindings/RegistryInfo.js +2 -0
- package/mjs/lib/osBindings/RegistryInfo.js.map +1 -0
- package/mjs/lib/osBindings/RemoveVersionParams.d.ts +1 -2
- package/mjs/lib/osBindings/RemoveVersionParams.js +1 -0
- package/mjs/lib/osBindings/RemoveVersionParams.js.map +1 -1
- package/mjs/lib/osBindings/ServerInfo.d.ts +3 -3
- package/mjs/lib/osBindings/SetDependenciesParams.d.ts +2 -0
- package/mjs/lib/osBindings/SetMainStatusStatus.d.ts +1 -1
- package/mjs/lib/osBindings/SetupExecuteParams.d.ts +7 -0
- package/mjs/lib/osBindings/SetupExecuteParams.js +2 -0
- package/mjs/lib/osBindings/SetupExecuteParams.js.map +1 -0
- package/mjs/lib/osBindings/SetupProgress.d.ts +6 -0
- package/mjs/lib/osBindings/SetupProgress.js +2 -0
- package/mjs/lib/osBindings/SetupProgress.js.map +1 -0
- package/mjs/lib/osBindings/SetupResult.d.ts +5 -0
- package/mjs/lib/osBindings/SetupResult.js +3 -0
- package/mjs/lib/osBindings/SetupResult.js.map +1 -0
- package/mjs/lib/osBindings/SetupStatusRes.d.ts +7 -0
- package/mjs/lib/osBindings/SetupStatusRes.js +2 -0
- package/mjs/lib/osBindings/SetupStatusRes.js.map +1 -0
- package/mjs/lib/osBindings/SignAssetParams.d.ts +1 -2
- package/mjs/lib/osBindings/SmtpValue.d.ts +7 -0
- package/mjs/lib/osBindings/SmtpValue.js +3 -0
- package/mjs/lib/osBindings/SmtpValue.js.map +1 -0
- package/mjs/lib/osBindings/VerifyCifsParams.d.ts +7 -0
- package/mjs/lib/osBindings/VerifyCifsParams.js +2 -0
- package/mjs/lib/osBindings/VerifyCifsParams.js.map +1 -0
- package/mjs/lib/osBindings/VersionSignerParams.d.ts +1 -2
- package/mjs/lib/osBindings/index.d.ts +21 -3
- package/mjs/lib/s9pk/index.d.ts +11 -0
- package/mjs/lib/s9pk/index.js +45 -0
- package/mjs/lib/s9pk/index.js.map +1 -0
- package/mjs/lib/s9pk/merkleArchive/directoryContents.d.ts +11 -0
- package/mjs/lib/s9pk/merkleArchive/directoryContents.js +70 -0
- package/mjs/lib/s9pk/merkleArchive/directoryContents.js.map +1 -0
- package/mjs/lib/s9pk/merkleArchive/fileContents.d.ts +7 -0
- package/mjs/lib/s9pk/merkleArchive/fileContents.js +20 -0
- package/mjs/lib/s9pk/merkleArchive/fileContents.js.map +1 -0
- package/mjs/lib/s9pk/merkleArchive/index.d.ts +33 -0
- package/mjs/lib/s9pk/merkleArchive/index.js +120 -0
- package/mjs/lib/s9pk/merkleArchive/index.js.map +1 -0
- package/mjs/lib/s9pk/merkleArchive/varint.d.ts +9 -0
- package/mjs/lib/s9pk/merkleArchive/varint.js +57 -0
- package/mjs/lib/s9pk/merkleArchive/varint.js.map +1 -0
- package/mjs/lib/store/getStore.js +0 -1
- package/mjs/lib/store/getStore.js.map +1 -1
- package/mjs/lib/test/configBuilder.test.js +6 -31
- package/mjs/lib/test/configBuilder.test.js.map +1 -1
- package/mjs/lib/test/configTypes.test.js +2 -5
- package/mjs/lib/test/configTypes.test.js.map +1 -1
- package/mjs/lib/test/emverList.test.js +0 -9
- package/mjs/lib/test/emverList.test.js.map +1 -1
- package/mjs/lib/test/exverList.test.d.ts +1 -0
- package/mjs/lib/test/exverList.test.js +217 -0
- package/mjs/lib/test/exverList.test.js.map +1 -0
- package/mjs/lib/test/output.d.ts +16 -16
- package/mjs/lib/test/output.sdk.d.ts +185 -155
- package/mjs/lib/test/output.sdk.js +3 -2
- package/mjs/lib/test/output.sdk.js.map +1 -1
- package/mjs/lib/test/output.test.js +3 -4
- package/mjs/lib/test/output.test.js.map +1 -1
- package/mjs/lib/test/setupDependencyConfig.test.js +1 -1
- package/mjs/lib/test/setupDependencyConfig.test.js.map +1 -1
- package/mjs/lib/test/startosTypeValidation.test.js +1 -0
- package/mjs/lib/test/startosTypeValidation.test.js.map +1 -1
- package/mjs/lib/types.d.ts +32 -30
- package/mjs/lib/types.js.map +1 -1
- package/mjs/lib/util/GetSslCertificate.d.ts +20 -0
- package/mjs/lib/util/GetSslCertificate.js +47 -0
- package/mjs/lib/util/GetSslCertificate.js.map +1 -0
- package/mjs/lib/util/GetSystemSmtp.d.ts +3 -3
- package/mjs/lib/util/GetSystemSmtp.js +1 -3
- package/mjs/lib/util/GetSystemSmtp.js.map +1 -1
- package/mjs/lib/util/Overlay.js +17 -21
- package/mjs/lib/util/Overlay.js.map +1 -1
- package/mjs/lib/util/fileHelper.js +2 -2
- package/mjs/lib/util/fileHelper.js.map +1 -1
- package/mjs/lib/util/getRandomCharInSet.js +1 -2
- package/mjs/lib/util/getRandomCharInSet.js.map +1 -1
- package/mjs/lib/util/getServiceInterface.d.ts +5 -5
- package/mjs/lib/util/getServiceInterface.js +10 -9
- package/mjs/lib/util/getServiceInterface.js.map +1 -1
- package/mjs/lib/util/getServiceInterfaces.js +3 -2
- package/mjs/lib/util/getServiceInterfaces.js.map +1 -1
- package/mjs/lib/util/inMs.d.ts +1 -0
- package/mjs/lib/util/inMs.js +38 -0
- package/mjs/lib/util/inMs.js.map +1 -0
- package/mjs/lib/util/inMs.test.d.ts +1 -0
- package/mjs/lib/util/inMs.test.js +34 -0
- package/mjs/lib/util/inMs.test.js.map +1 -0
- package/mjs/lib/util/index.browser.d.ts +3 -14
- package/mjs/lib/util/index.browser.js +5 -1
- package/mjs/lib/util/index.browser.js.map +1 -1
- package/mjs/lib/util/index.d.ts +2 -14
- package/mjs/lib/util/index.js +2 -1
- package/mjs/lib/util/index.js.map +1 -1
- package/mjs/lib/util/splitCommand.js +1 -7
- package/mjs/lib/util/splitCommand.js.map +1 -1
- package/mjs/lib/util/typeHelpers.d.ts +15 -0
- package/mjs/lib/util/typeHelpers.js +2 -0
- package/mjs/lib/util/typeHelpers.js.map +1 -0
- package/mjs/scripts/oldSpecToBuilder.js +20 -16
- package/mjs/scripts/oldSpecToBuilder.js.map +1 -1
- package/package.json +10 -5
package/mjs/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEhE,OAAO,KAAK,OAAO,MAAM,WAAW,CAAA;AACpC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1C,OAAO,KAAK,gBAAgB,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAA;AAClC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAA;AAChC,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAA;AAC/B,OAAO,KAAK,OAAO,MAAM,YAAY,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA"}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
export declare class Migration<Manifest extends
|
|
1
|
+
import { ValidateExVer } from "../../exver";
|
|
2
|
+
import * as T from "../../types";
|
|
3
|
+
export declare class Migration<Manifest extends T.Manifest, Store, Version extends string> {
|
|
4
4
|
readonly options: {
|
|
5
|
-
version: Version
|
|
5
|
+
version: Version & ValidateExVer<Version>;
|
|
6
6
|
up: (opts: {
|
|
7
|
-
effects: Effects;
|
|
7
|
+
effects: T.Effects;
|
|
8
8
|
}) => Promise<void>;
|
|
9
9
|
down: (opts: {
|
|
10
|
-
effects: Effects;
|
|
10
|
+
effects: T.Effects;
|
|
11
11
|
}) => Promise<void>;
|
|
12
12
|
};
|
|
13
13
|
constructor(options: {
|
|
14
|
-
version: Version
|
|
14
|
+
version: Version & ValidateExVer<Version>;
|
|
15
15
|
up: (opts: {
|
|
16
|
-
effects: Effects;
|
|
16
|
+
effects: T.Effects;
|
|
17
17
|
}) => Promise<void>;
|
|
18
18
|
down: (opts: {
|
|
19
|
-
effects: Effects;
|
|
19
|
+
effects: T.Effects;
|
|
20
20
|
}) => Promise<void>;
|
|
21
21
|
});
|
|
22
|
-
static of<Manifest extends
|
|
23
|
-
version: Version
|
|
22
|
+
static of<Manifest extends T.Manifest, Store, Version extends string>(options: {
|
|
23
|
+
version: Version & ValidateExVer<Version>;
|
|
24
24
|
up: (opts: {
|
|
25
|
-
effects: Effects;
|
|
25
|
+
effects: T.Effects;
|
|
26
26
|
}) => Promise<void>;
|
|
27
27
|
down: (opts: {
|
|
28
|
-
effects: Effects;
|
|
28
|
+
effects: T.Effects;
|
|
29
29
|
}) => Promise<void>;
|
|
30
30
|
}): Migration<Manifest, Store, Version>;
|
|
31
31
|
up(opts: {
|
|
32
|
-
effects: Effects;
|
|
32
|
+
effects: T.Effects;
|
|
33
33
|
}): Promise<void>;
|
|
34
34
|
down(opts: {
|
|
35
|
-
effects: Effects;
|
|
35
|
+
effects: T.Effects;
|
|
36
36
|
}): Promise<void>;
|
|
37
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Migration.js","sourceRoot":"","sources":["../../../../../lib/inits/migrations/Migration.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,SAAS;IAMT;IADX,YACW,OAIR;QAJQ,YAAO,GAAP,OAAO,CAIf;IACA,CAAC;IACJ,MAAM,CAAC,EAAE,CAIP,OAID;QACC,OAAO,IAAI,SAAS,CAA2B,OAAO,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"Migration.js","sourceRoot":"","sources":["../../../../../lib/inits/migrations/Migration.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,SAAS;IAMT;IADX,YACW,OAIR;QAJQ,YAAO,GAAP,OAAO,CAIf;IACA,CAAC;IACJ,MAAM,CAAC,EAAE,CAIP,OAID;QACC,OAAO,IAAI,SAAS,CAA2B,OAAO,CAAC,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,EAAE,CAAC,IAA4B;QACnC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAA4B;QACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjB,CAAC;CACF"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { ExpectedExports } from "../../types";
|
|
1
|
+
import * as T from "../../types";
|
|
3
2
|
import { Migration } from "./Migration";
|
|
4
|
-
export declare class Migrations<Manifest extends
|
|
5
|
-
readonly manifest:
|
|
3
|
+
export declare class Migrations<Manifest extends T.Manifest, Store> {
|
|
4
|
+
readonly manifest: T.Manifest;
|
|
6
5
|
readonly migrations: Array<Migration<Manifest, Store, any>>;
|
|
7
6
|
private constructor();
|
|
8
7
|
private sortedMigrations;
|
|
9
8
|
private currentVersion;
|
|
10
|
-
static of<Manifest extends
|
|
11
|
-
init({ effects, previousVersion, }: Parameters<ExpectedExports.init>[0]): Promise<void>;
|
|
12
|
-
uninit({ effects, nextVersion, }: Parameters<ExpectedExports.uninit>[0]): Promise<void>;
|
|
9
|
+
static of<Manifest extends T.Manifest, Store, Migrations extends Array<Migration<Manifest, Store, any>>>(manifest: T.Manifest, ...migrations: EnsureUniqueId<Migrations>): import("./setupMigrations").Migrations<Manifest, Store>;
|
|
10
|
+
init({ effects, previousVersion, }: Parameters<T.ExpectedExports.init>[0]): Promise<void>;
|
|
11
|
+
uninit({ effects, nextVersion, }: Parameters<T.ExpectedExports.uninit>[0]): Promise<void>;
|
|
13
12
|
}
|
|
14
|
-
export declare function setupMigrations<Manifest extends
|
|
13
|
+
export declare function setupMigrations<Manifest extends T.Manifest, Store, Migrations extends Array<Migration<Manifest, Store, any>>>(manifest: T.Manifest, ...migrations: EnsureUniqueId<Migrations>): import("./setupMigrations").Migrations<Manifest, Store>;
|
|
15
14
|
export type EnsureUniqueId<A, B = A, ids = never> = B extends [] ? A : B extends [Migration<any, any, infer id>, ...infer Rest] ? (id extends ids ? "One of the ids are not unique"[] : EnsureUniqueId<A, Rest, id | ids>) : "There exists a migration that is not a Migration"[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ExtendedVersion } from "../../exver";
|
|
2
2
|
import { once } from "../../util/once";
|
|
3
3
|
export class Migrations {
|
|
4
4
|
manifest;
|
|
@@ -8,19 +8,21 @@ export class Migrations {
|
|
|
8
8
|
this.migrations = migrations;
|
|
9
9
|
}
|
|
10
10
|
sortedMigrations = once(() => {
|
|
11
|
-
const migrationsAsVersions = this.migrations
|
|
11
|
+
const migrationsAsVersions = this.migrations
|
|
12
|
+
.map((x) => [ExtendedVersion.parse(x.options.version), x])
|
|
13
|
+
.filter(([v, _]) => v.flavor === this.currentVersion().flavor);
|
|
12
14
|
migrationsAsVersions.sort((a, b) => a[0].compareForSort(b[0]));
|
|
13
15
|
return migrationsAsVersions;
|
|
14
16
|
});
|
|
15
|
-
currentVersion = once(() =>
|
|
17
|
+
currentVersion = once(() => ExtendedVersion.parse(this.manifest.version));
|
|
16
18
|
static of(manifest, ...migrations) {
|
|
17
19
|
return new Migrations(manifest, migrations);
|
|
18
20
|
}
|
|
19
21
|
async init({ effects, previousVersion, }) {
|
|
20
22
|
if (!!previousVersion) {
|
|
21
|
-
const
|
|
23
|
+
const previousVersionExVer = ExtendedVersion.parse(previousVersion);
|
|
22
24
|
for (const [_, migration] of this.sortedMigrations()
|
|
23
|
-
.filter((x) => x[0].greaterThan(
|
|
25
|
+
.filter((x) => x[0].greaterThan(previousVersionExVer))
|
|
24
26
|
.filter((x) => x[0].lessThanOrEqual(this.currentVersion()))) {
|
|
25
27
|
await migration.up({ effects });
|
|
26
28
|
}
|
|
@@ -28,10 +30,10 @@ export class Migrations {
|
|
|
28
30
|
}
|
|
29
31
|
async uninit({ effects, nextVersion, }) {
|
|
30
32
|
if (!!nextVersion) {
|
|
31
|
-
const
|
|
33
|
+
const nextVersionExVer = ExtendedVersion.parse(nextVersion);
|
|
32
34
|
const reversed = [...this.sortedMigrations()].reverse();
|
|
33
35
|
for (const [_, migration] of reversed
|
|
34
|
-
.filter((x) => x[0].greaterThan(
|
|
36
|
+
.filter((x) => x[0].greaterThan(nextVersionExVer))
|
|
35
37
|
.filter((x) => x[0].lessThanOrEqual(this.currentVersion()))) {
|
|
36
38
|
await migration.down({ effects });
|
|
37
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupMigrations.js","sourceRoot":"","sources":["../../../../../lib/inits/migrations/setupMigrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"setupMigrations.js","sourceRoot":"","sources":["../../../../../lib/inits/migrations/setupMigrations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import { DependenciesReceipt } from "../config/setupConfig";
|
|
2
2
|
import { SetInterfaces } from "../interfaces/setupInterfaces";
|
|
3
|
-
import { SDKManifest } from "../manifest/ManifestTypes";
|
|
4
3
|
import { ExposedStorePaths } from "../store/setupExposeStore";
|
|
5
|
-
import
|
|
4
|
+
import * as T from "../types";
|
|
6
5
|
import { Migrations } from "./migrations/setupMigrations";
|
|
7
6
|
import { Install } from "./setupInstall";
|
|
8
7
|
import { Uninstall } from "./setupUninstall";
|
|
9
|
-
export declare function setupInit<Manifest extends
|
|
10
|
-
effects: Effects;
|
|
8
|
+
export declare function setupInit<Manifest extends T.Manifest, Store>(migrations: Migrations<Manifest, Store>, install: Install<Manifest, Store>, uninstall: Uninstall<Manifest, Store>, setInterfaces: SetInterfaces<Manifest, Store, any, any>, setDependencies: (options: {
|
|
9
|
+
effects: T.Effects;
|
|
11
10
|
input: any;
|
|
12
11
|
}) => Promise<DependenciesReceipt>, exposedStore: ExposedStorePaths): {
|
|
13
|
-
init: ExpectedExports.init;
|
|
14
|
-
uninit: ExpectedExports.uninit;
|
|
12
|
+
init: T.ExpectedExports.init;
|
|
13
|
+
uninit: T.ExpectedExports.uninit;
|
|
15
14
|
};
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
effects: Effects;
|
|
1
|
+
import * as T from "../types";
|
|
2
|
+
export type InstallFn<Manifest extends T.Manifest, Store> = (opts: {
|
|
3
|
+
effects: T.Effects;
|
|
5
4
|
}) => Promise<void>;
|
|
6
|
-
export declare class Install<Manifest extends
|
|
5
|
+
export declare class Install<Manifest extends T.Manifest, Store> {
|
|
7
6
|
readonly fn: InstallFn<Manifest, Store>;
|
|
8
7
|
private constructor();
|
|
9
|
-
static of<Manifest extends
|
|
10
|
-
init({ effects, previousVersion, }: Parameters<ExpectedExports.init>[0]): Promise<void>;
|
|
8
|
+
static of<Manifest extends T.Manifest, Store>(fn: InstallFn<Manifest, Store>): Install<Manifest, Store>;
|
|
9
|
+
init({ effects, previousVersion, }: Parameters<T.ExpectedExports.init>[0]): Promise<void>;
|
|
11
10
|
}
|
|
12
|
-
export declare function setupInstall<Manifest extends
|
|
11
|
+
export declare function setupInstall<Manifest extends T.Manifest, Store>(fn: InstallFn<Manifest, Store>): Install<Manifest, Store>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupInstall.js","sourceRoot":"","sources":["../../../../lib/inits/setupInstall.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setupInstall.js","sourceRoot":"","sources":["../../../../lib/inits/setupInstall.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,OAAO;IACW;IAA7B,YAA6B,EAA8B;QAA9B,OAAE,GAAF,EAAE,CAA4B;IAAG,CAAC;IAC/D,MAAM,CAAC,EAAE,CACP,EAA8B;QAE9B,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EACT,OAAO,EACP,eAAe,GACuB;QACtC,IAAI,CAAC,eAAe;YAClB,MAAM,IAAI,CAAC,EAAE,CAAC;gBACZ,OAAO;aACR,CAAC,CAAA;IACN,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAC1B,EAA8B;IAE9B,OAAO,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AACvB,CAAC"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
effects: Effects;
|
|
1
|
+
import * as T from "../types";
|
|
2
|
+
export type UninstallFn<Manifest extends T.Manifest, Store> = (opts: {
|
|
3
|
+
effects: T.Effects;
|
|
5
4
|
}) => Promise<void>;
|
|
6
|
-
export declare class Uninstall<Manifest extends
|
|
5
|
+
export declare class Uninstall<Manifest extends T.Manifest, Store> {
|
|
7
6
|
readonly fn: UninstallFn<Manifest, Store>;
|
|
8
7
|
private constructor();
|
|
9
|
-
static of<Manifest extends
|
|
10
|
-
uninit({ effects, nextVersion, }: Parameters<ExpectedExports.uninit>[0]): Promise<void>;
|
|
8
|
+
static of<Manifest extends T.Manifest, Store>(fn: UninstallFn<Manifest, Store>): Uninstall<Manifest, Store>;
|
|
9
|
+
uninit({ effects, nextVersion, }: Parameters<T.ExpectedExports.uninit>[0]): Promise<void>;
|
|
11
10
|
}
|
|
12
|
-
export declare function setupUninstall<Manifest extends
|
|
11
|
+
export declare function setupUninstall<Manifest extends T.Manifest, Store>(fn: UninstallFn<Manifest, Store>): Uninstall<Manifest, Store>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupUninstall.js","sourceRoot":"","sources":["../../../../lib/inits/setupUninstall.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setupUninstall.js","sourceRoot":"","sources":["../../../../lib/inits/setupUninstall.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,SAAS;IACS;IAA7B,YAA6B,EAAgC;QAAhC,OAAE,GAAF,EAAE,CAA8B;IAAG,CAAC;IACjE,MAAM,CAAC,EAAE,CACP,EAAgC;QAEhC,OAAO,IAAI,SAAS,CAAC,EAAE,CAAC,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EACX,OAAO,EACP,WAAW,GAC6B;QACxC,IAAI,CAAC,WAAW;YACd,MAAM,IAAI,CAAC,EAAE,CAAC;gBACZ,OAAO;aACR,CAAC,CAAA;IACN,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAC5B,EAAgC;IAEhC,OAAO,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AACzB,CAAC"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { Config } from "../config/builder/config";
|
|
2
|
-
import
|
|
3
|
-
import { AddressInfo, Effects } from "../types";
|
|
2
|
+
import * as T from "../types";
|
|
4
3
|
import { AddressReceipt } from "./AddressReceipt";
|
|
5
|
-
export type InterfacesReceipt = Array<AddressInfo[] & AddressReceipt>;
|
|
6
|
-
export type SetInterfaces<Manifest extends
|
|
7
|
-
effects: Effects;
|
|
4
|
+
export type InterfacesReceipt = Array<T.AddressInfo[] & AddressReceipt>;
|
|
5
|
+
export type SetInterfaces<Manifest extends T.Manifest, Store, ConfigInput extends Record<string, any>, Output extends InterfacesReceipt> = (opts: {
|
|
6
|
+
effects: T.Effects;
|
|
8
7
|
input: null | ConfigInput;
|
|
9
8
|
}) => Promise<Output>;
|
|
10
|
-
export type SetupInterfaces = <Manifest extends
|
|
9
|
+
export type SetupInterfaces = <Manifest extends T.Manifest, Store, ConfigInput extends Record<string, any>, Output extends InterfacesReceipt>(config: Config<ConfigInput, Store>, fn: SetInterfaces<Manifest, Store, ConfigInput, Output>) => SetInterfaces<Manifest, Store, ConfigInput, Output>;
|
|
11
10
|
export declare const NO_INTERFACE_CHANGES: InterfacesReceipt;
|
|
12
11
|
export declare const setupInterfaces: SetupInterfaces;
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
import
|
|
4
|
-
import { Effects, ImageId, ValidIfNoStupidEscape } from "../types";
|
|
3
|
+
import * as T from "../types";
|
|
5
4
|
import { MountOptions, Overlay } from "../util/Overlay";
|
|
6
5
|
export declare class CommandController {
|
|
7
6
|
readonly runningAnswer: Promise<unknown>;
|
|
8
7
|
readonly overlay: Overlay;
|
|
9
8
|
readonly pid: number | undefined;
|
|
9
|
+
readonly sigtermTimeout: number;
|
|
10
10
|
private constructor();
|
|
11
|
-
static of<Manifest extends
|
|
12
|
-
id: keyof Manifest["images"] & ImageId;
|
|
11
|
+
static of<Manifest extends T.Manifest>(): <A extends string>(effects: T.Effects, imageId: {
|
|
12
|
+
id: keyof Manifest["images"] & T.ImageId;
|
|
13
13
|
sharedRun?: boolean;
|
|
14
|
-
}, command:
|
|
14
|
+
}, command: T.CommandType, options: {
|
|
15
|
+
sigtermTimeout?: number | undefined;
|
|
15
16
|
mounts?: {
|
|
16
17
|
path: string;
|
|
17
18
|
options: MountOptions;
|
|
@@ -25,7 +26,7 @@ export declare class CommandController {
|
|
|
25
26
|
onStdout?: ((x: Buffer) => void) | undefined;
|
|
26
27
|
onStderr?: ((x: Buffer) => void) | undefined;
|
|
27
28
|
}) => Promise<CommandController>;
|
|
28
|
-
wait(): Promise<unknown>;
|
|
29
|
+
wait(timeout?: number): Promise<unknown>;
|
|
29
30
|
term({ signal, timeout }?: {
|
|
30
31
|
signal?: NodeJS.Signals | undefined;
|
|
31
32
|
timeout?: number | undefined;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DEFAULT_SIGTERM_TIMEOUT } from ".";
|
|
1
2
|
import { NO_TIMEOUT, SIGTERM } from "../StartSdk";
|
|
2
3
|
import { Overlay } from "../util/Overlay";
|
|
3
4
|
import { splitCommand } from "../util/splitCommand";
|
|
@@ -6,10 +7,12 @@ export class CommandController {
|
|
|
6
7
|
runningAnswer;
|
|
7
8
|
overlay;
|
|
8
9
|
pid;
|
|
9
|
-
|
|
10
|
+
sigtermTimeout;
|
|
11
|
+
constructor(runningAnswer, overlay, pid, sigtermTimeout = DEFAULT_SIGTERM_TIMEOUT) {
|
|
10
12
|
this.runningAnswer = runningAnswer;
|
|
11
13
|
this.overlay = overlay;
|
|
12
14
|
this.pid = pid;
|
|
15
|
+
this.sigtermTimeout = sigtermTimeout;
|
|
13
16
|
}
|
|
14
17
|
static of() {
|
|
15
18
|
return async (effects, imageId, command, options) => {
|
|
@@ -38,10 +41,14 @@ export class CommandController {
|
|
|
38
41
|
});
|
|
39
42
|
});
|
|
40
43
|
const pid = childProcess.pid;
|
|
41
|
-
return new CommandController(answer, overlay, pid);
|
|
44
|
+
return new CommandController(answer, overlay, pid, options.sigtermTimeout);
|
|
42
45
|
};
|
|
43
46
|
}
|
|
44
|
-
async wait() {
|
|
47
|
+
async wait(timeout = NO_TIMEOUT) {
|
|
48
|
+
if (timeout > 0)
|
|
49
|
+
setTimeout(() => {
|
|
50
|
+
this.term();
|
|
51
|
+
}, timeout);
|
|
45
52
|
try {
|
|
46
53
|
return await this.runningAnswer;
|
|
47
54
|
}
|
|
@@ -52,7 +59,7 @@ export class CommandController {
|
|
|
52
59
|
await this.overlay.destroy().catch((_) => { });
|
|
53
60
|
}
|
|
54
61
|
}
|
|
55
|
-
async term({ signal = SIGTERM, timeout =
|
|
62
|
+
async term({ signal = SIGTERM, timeout = this.sigtermTimeout } = {}) {
|
|
56
63
|
if (this.pid === undefined)
|
|
57
64
|
return;
|
|
58
65
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandController.js","sourceRoot":"","sources":["../../../../lib/mainFn/CommandController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAW,OAAO,EAAE,MAAM,aAAa,CAAA;AAG1D,OAAO,EAAgB,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAU,MAAM,WAAW,CAAA;AAE9C,MAAM,OAAO,iBAAiB;IAEjB;IACA;IACA;
|
|
1
|
+
{"version":3,"file":"CommandController.js","sourceRoot":"","sources":["../../../../lib/mainFn/CommandController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
import
|
|
4
|
-
import { Effects, ImageId, ValidIfNoStupidEscape } from "../types";
|
|
3
|
+
import * as T from "../types";
|
|
5
4
|
import { MountOptions, Overlay } from "../util/Overlay";
|
|
6
5
|
/**
|
|
7
6
|
* This is a wrapper around CommandController that has a state of off, where the command shouldn't be running
|
|
@@ -12,10 +11,10 @@ export declare class Daemon {
|
|
|
12
11
|
private commandController;
|
|
13
12
|
private shouldBeRunning;
|
|
14
13
|
private constructor();
|
|
15
|
-
static of<Manifest extends
|
|
16
|
-
id: keyof Manifest["images"] & ImageId;
|
|
14
|
+
static of<Manifest extends T.Manifest>(): <A extends string>(effects: T.Effects, imageId: {
|
|
15
|
+
id: keyof Manifest["images"] & T.ImageId;
|
|
17
16
|
sharedRun?: boolean;
|
|
18
|
-
}, command:
|
|
17
|
+
}, command: T.CommandType, options: {
|
|
19
18
|
mounts?: {
|
|
20
19
|
path: string;
|
|
21
20
|
options: MountOptions;
|
|
@@ -28,6 +27,7 @@ export declare class Daemon {
|
|
|
28
27
|
user?: string | undefined;
|
|
29
28
|
onStdout?: ((x: Buffer) => void) | undefined;
|
|
30
29
|
onStderr?: ((x: Buffer) => void) | undefined;
|
|
30
|
+
sigtermTimeout?: number | undefined;
|
|
31
31
|
}) => Promise<Daemon>;
|
|
32
32
|
start(): Promise<void>;
|
|
33
33
|
term(termOptions?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daemon.js","sourceRoot":"","sources":["../../../../lib/mainFn/Daemon.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Daemon.js","sourceRoot":"","sources":["../../../../lib/mainFn/Daemon.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,oBAAoB,GAAG,IAAI,CAAA;AACjC,MAAM,cAAc,GAAG,KAAK,CAAA;AAC5B;;;GAGG;AAEH,MAAM,OAAO,MAAM;IAGW;IAFpB,iBAAiB,GAA6B,IAAI,CAAA;IAClD,eAAe,GAAG,KAAK,CAAA;IAC/B,YAA4B,YAA8C;QAA9C,iBAAY,GAAZ,YAAY,CAAkC;IAAG,CAAC;IAC9E,MAAM,CAAC,EAAE;QACP,OAAO,KAAK,EACV,OAAkB,EAClB,OAGC,EACD,OAAsB,EACtB,OAaC,EACD,EAAE;YACF,MAAM,YAAY,GAAG,GAAG,EAAE,CACxB,iBAAiB,CAAC,EAAE,EAAY,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YACtE,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,CAAA;QACjC,CAAC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,OAAM;SACP;QACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;QAC3B,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE;YACrB,OAAO,IAAI,CAAC,eAAe,EAAE;gBAC3B,IAAI,CAAC,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;gBAClD,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;gBACtE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAA;gBACnE,cAAc,IAAI,oBAAoB,CAAA;gBACtC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,cAAc,CAAC,CAAA;aAC1D;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,WAGV;QACC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC/B,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,WAGV;QACC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;QAC5B,MAAM,IAAI,CAAC,iBAAiB;YAC1B,EAAE,IAAI,CAAC,WAAW,CAAC;aAClB,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACjC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAA;IAC/B,CAAC;CACF"}
|
|
@@ -3,9 +3,8 @@
|
|
|
3
3
|
import { Signals } from "../StartSdk";
|
|
4
4
|
import { HealthReceipt } from "../health/HealthReceipt";
|
|
5
5
|
import { CheckResult } from "../health/checkFns";
|
|
6
|
-
import { SDKManifest } from "../manifest/ManifestTypes";
|
|
7
6
|
import { Trigger } from "../trigger";
|
|
8
|
-
import
|
|
7
|
+
import * as T from "../types";
|
|
9
8
|
import { Mounts } from "./Mounts";
|
|
10
9
|
import { MountOptions, Overlay } from "../util/Overlay";
|
|
11
10
|
import * as CP from "node:child_process";
|
|
@@ -21,22 +20,24 @@ export type Ready = {
|
|
|
21
20
|
fn: () => Promise<CheckResult> | CheckResult;
|
|
22
21
|
trigger?: Trigger;
|
|
23
22
|
};
|
|
24
|
-
type DaemonsParams<Manifest extends
|
|
25
|
-
command:
|
|
23
|
+
type DaemonsParams<Manifest extends T.Manifest, Ids extends string, Command extends string, Id extends string> = {
|
|
24
|
+
command: T.CommandType;
|
|
26
25
|
image: {
|
|
27
|
-
id: keyof Manifest["images"] & ImageId;
|
|
26
|
+
id: keyof Manifest["images"] & T.ImageId;
|
|
28
27
|
sharedRun?: boolean;
|
|
29
28
|
};
|
|
30
29
|
mounts: Mounts<Manifest>;
|
|
31
30
|
env?: Record<string, string>;
|
|
32
31
|
ready: Ready;
|
|
33
32
|
requires: Exclude<Ids, Id>[];
|
|
33
|
+
sigtermTimeout?: number;
|
|
34
34
|
};
|
|
35
35
|
type ErrorDuplicateId<Id extends string> = `The id '${Id}' is already used`;
|
|
36
|
-
export declare const runCommand: <Manifest extends
|
|
36
|
+
export declare const runCommand: <Manifest extends T.Manifest>() => <A extends string>(effects: T.Effects, imageId: {
|
|
37
37
|
id: keyof Manifest["images"] & string;
|
|
38
38
|
sharedRun?: boolean | undefined;
|
|
39
|
-
}, command:
|
|
39
|
+
}, command: T.CommandType, options: {
|
|
40
|
+
sigtermTimeout?: number | undefined;
|
|
40
41
|
mounts?: {
|
|
41
42
|
path: string;
|
|
42
43
|
options: MountOptions;
|
|
@@ -73,8 +74,8 @@ Daemons.of({
|
|
|
73
74
|
})
|
|
74
75
|
```
|
|
75
76
|
*/
|
|
76
|
-
export declare class Daemons<Manifest extends
|
|
77
|
-
readonly effects: Effects;
|
|
77
|
+
export declare class Daemons<Manifest extends T.Manifest, Ids extends string> {
|
|
78
|
+
readonly effects: T.Effects;
|
|
78
79
|
readonly started: (onTerm: () => PromiseLike<void>) => PromiseLike<void>;
|
|
79
80
|
readonly daemons: Promise<Daemon>[];
|
|
80
81
|
readonly ids: Ids[];
|
|
@@ -90,8 +91,8 @@ export declare class Daemons<Manifest extends SDKManifest, Ids extends string> {
|
|
|
90
91
|
* @param config
|
|
91
92
|
* @returns
|
|
92
93
|
*/
|
|
93
|
-
static of<Manifest extends
|
|
94
|
-
effects: Effects;
|
|
94
|
+
static of<Manifest extends T.Manifest>(config: {
|
|
95
|
+
effects: T.Effects;
|
|
95
96
|
started: (onTerm: () => PromiseLike<void>) => PromiseLike<void>;
|
|
96
97
|
healthReceipts: HealthReceipt[];
|
|
97
98
|
}): Daemons<Manifest, never>;
|
|
@@ -74,7 +74,7 @@ export class Daemons {
|
|
|
74
74
|
const healthDaemon = new HealthDaemon(daemon, daemonIndex, options.requires
|
|
75
75
|
.map((x) => this.ids.indexOf(id))
|
|
76
76
|
.filter((x) => x >= 0)
|
|
77
|
-
.map((id) => this.healthDaemons[id]), id, this.ids, options.ready, this.effects);
|
|
77
|
+
.map((id) => this.healthDaemons[id]), id, this.ids, options.ready, this.effects, options.sigtermTimeout);
|
|
78
78
|
const daemons = this.daemons.concat(daemon);
|
|
79
79
|
const ids = [...this.ids, id];
|
|
80
80
|
const healthDaemons = [...this.healthDaemons, healthDaemon];
|
|
@@ -83,7 +83,7 @@ export class Daemons {
|
|
|
83
83
|
async build() {
|
|
84
84
|
this.updateMainHealth();
|
|
85
85
|
this.healthDaemons.forEach((x) => x.addWatcher(() => this.updateMainHealth()));
|
|
86
|
-
|
|
86
|
+
const built = {
|
|
87
87
|
term: async (options) => {
|
|
88
88
|
try {
|
|
89
89
|
await Promise.all(this.healthDaemons.map((x) => x.term(options)));
|
|
@@ -93,14 +93,11 @@ export class Daemons {
|
|
|
93
93
|
}
|
|
94
94
|
},
|
|
95
95
|
};
|
|
96
|
+
this.started(() => built.term());
|
|
97
|
+
return built;
|
|
96
98
|
}
|
|
97
99
|
updateMainHealth() {
|
|
98
|
-
|
|
99
|
-
this.effects.setMainStatus({ status: "running" });
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
this.effects.setMainStatus({ status: "starting" });
|
|
103
|
-
}
|
|
100
|
+
this.effects.setMainStatus({ status: "running" });
|
|
104
101
|
}
|
|
105
102
|
}
|
|
106
103
|
//# sourceMappingURL=Daemons.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daemons.js","sourceRoot":"","sources":["../../../../lib/mainFn/Daemons.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Daemons.js","sourceRoot":"","sources":["../../../../lib/mainFn/Daemons.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,8 @@ export declare class HealthDaemon {
|
|
|
19
19
|
readonly ids: string[];
|
|
20
20
|
readonly ready: Ready;
|
|
21
21
|
readonly effects: Effects;
|
|
22
|
-
|
|
22
|
+
readonly sigtermTimeout: number;
|
|
23
|
+
constructor(daemon: Promise<Daemon>, daemonIndex: number, dependencies: HealthDaemon[], id: string, ids: string[], ready: Ready, effects: Effects, sigtermTimeout?: number);
|
|
23
24
|
/** Run after we want to do cleanup */
|
|
24
25
|
term(termOptions?: {
|
|
25
26
|
signal?: NodeJS.Signals | undefined;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { defaultTrigger } from "../trigger/defaultTrigger";
|
|
2
|
+
import { DEFAULT_SIGTERM_TIMEOUT } from ".";
|
|
2
3
|
const oncePromise = () => {
|
|
3
4
|
let resolve;
|
|
4
5
|
const promise = new Promise((res) => {
|
|
@@ -21,11 +22,12 @@ export class HealthDaemon {
|
|
|
21
22
|
ids;
|
|
22
23
|
ready;
|
|
23
24
|
effects;
|
|
25
|
+
sigtermTimeout;
|
|
24
26
|
#health = { status: "starting", message: null };
|
|
25
27
|
#healthWatchers = [];
|
|
26
28
|
#running = false;
|
|
27
29
|
#hadSuccess = false;
|
|
28
|
-
constructor(daemon, daemonIndex, dependencies, id, ids, ready, effects) {
|
|
30
|
+
constructor(daemon, daemonIndex, dependencies, id, ids, ready, effects, sigtermTimeout = DEFAULT_SIGTERM_TIMEOUT) {
|
|
29
31
|
this.daemon = daemon;
|
|
30
32
|
this.daemonIndex = daemonIndex;
|
|
31
33
|
this.dependencies = dependencies;
|
|
@@ -33,6 +35,7 @@ export class HealthDaemon {
|
|
|
33
35
|
this.ids = ids;
|
|
34
36
|
this.ready = ready;
|
|
35
37
|
this.effects = effects;
|
|
38
|
+
this.sigtermTimeout = sigtermTimeout;
|
|
36
39
|
this.updateStatus();
|
|
37
40
|
this.dependencies.forEach((d) => d.addWatcher(() => this.updateStatus()));
|
|
38
41
|
}
|
|
@@ -41,7 +44,10 @@ export class HealthDaemon {
|
|
|
41
44
|
this.#healthWatchers = [];
|
|
42
45
|
this.#running = false;
|
|
43
46
|
this.#healthCheckCleanup?.();
|
|
44
|
-
await this.daemon.then((d) => d.stop(
|
|
47
|
+
await this.daemon.then((d) => d.stop({
|
|
48
|
+
timeout: this.sigtermTimeout,
|
|
49
|
+
...termOptions,
|
|
50
|
+
}));
|
|
45
51
|
}
|
|
46
52
|
/** Want to add another notifier that the health might have changed */
|
|
47
53
|
addWatcher(watcher) {
|
|
@@ -112,7 +118,7 @@ export class HealthDaemon {
|
|
|
112
118
|
this.effects.setHealth({
|
|
113
119
|
result: status,
|
|
114
120
|
message: health.message,
|
|
115
|
-
id:
|
|
121
|
+
id: this.id,
|
|
116
122
|
name: display,
|
|
117
123
|
});
|
|
118
124
|
}
|
|
@@ -120,7 +126,7 @@ export class HealthDaemon {
|
|
|
120
126
|
this.effects.setHealth({
|
|
121
127
|
result: health.status,
|
|
122
128
|
message: health.message || "",
|
|
123
|
-
id:
|
|
129
|
+
id: this.id,
|
|
124
130
|
name: display,
|
|
125
131
|
});
|
|
126
132
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HealthDaemon.js","sourceRoot":"","sources":["../../../../lib/mainFn/HealthDaemon.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"HealthDaemon.js","sourceRoot":"","sources":["../../../../lib/mainFn/HealthDaemon.ts"],"names":[],"mappings":"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"}
|