35 lines
1.0 KiB
TypeScript
35 lines
1.0 KiB
TypeScript
import { storeJson } from '../fileModels/storeJson'
|
|
import { sdk } from '../sdk'
|
|
import {
|
|
CERTRELAY_DEFAULT_BOOTSTRAP,
|
|
CERTRELAY_DEFAULT_HEALTHCHECK_HANDLE,
|
|
CERTRELAY_DEFAULT_SELF_URL,
|
|
} from '../utils'
|
|
|
|
export const taskSeedCertrelay = sdk.setupOnInit(async (effects) => {
|
|
const store = await storeJson.read().once()
|
|
|
|
const patch: {
|
|
certrelaySelfUrl?: string
|
|
certrelayBootstrap?: boolean
|
|
certrelayHealthcheckHandle?: string
|
|
} = {}
|
|
|
|
if (store?.certrelaySelfUrl === null || store?.certrelaySelfUrl === undefined)
|
|
patch.certrelaySelfUrl = CERTRELAY_DEFAULT_SELF_URL
|
|
if (
|
|
store?.certrelayBootstrap === null ||
|
|
store?.certrelayBootstrap === undefined
|
|
)
|
|
patch.certrelayBootstrap = CERTRELAY_DEFAULT_BOOTSTRAP
|
|
if (
|
|
store?.certrelayHealthcheckHandle === null ||
|
|
store?.certrelayHealthcheckHandle === undefined
|
|
)
|
|
patch.certrelayHealthcheckHandle = CERTRELAY_DEFAULT_HEALTHCHECK_HANDLE
|
|
|
|
if (Object.keys(patch).length > 0) {
|
|
await storeJson.merge(effects, patch, { allowWriteAfterConst: true })
|
|
}
|
|
})
|