mirror of
https://github.com/balena-os/balena-supervisor.git
synced 2025-02-22 10:21:01 +00:00
Convert lib/constants module to typescript
Change-type: patch Signed-off-by: Cameron Diver <cameron@resin.io>
This commit is contained in:
parent
67b9ec6ca7
commit
c1fbc2dc21
@ -1,43 +0,0 @@
|
|||||||
{ checkString } = require './validation'
|
|
||||||
|
|
||||||
bootMountPointFromEnv = checkString(process.env.BOOT_MOUNTPOINT)
|
|
||||||
rootMountPoint = checkString(process.env.ROOT_MOUNTPOINT) ? '/mnt/root'
|
|
||||||
|
|
||||||
supervisorNetworkInterface = 'supervisor0'
|
|
||||||
|
|
||||||
module.exports =
|
|
||||||
rootMountPoint: rootMountPoint
|
|
||||||
databasePath: checkString(process.env.DATABASE_PATH) ? '/data/database.sqlite'
|
|
||||||
dockerSocket: process.env.DOCKER_SOCKET ? '/var/run/docker.sock'
|
|
||||||
supervisorImage: checkString(process.env.SUPERVISOR_IMAGE) ? 'resin/rpi-supervisor'
|
|
||||||
ledFile: checkString(process.env.LED_FILE) ? '/sys/class/leds/led0/brightness'
|
|
||||||
forceSecret: # Only used for development
|
|
||||||
api: checkString(process.env.RESIN_SUPERVISOR_SECRET) ? null
|
|
||||||
logsChannel: checkString(process.env.RESIN_SUPERVISOR_LOGS_CHANNEL) ? null
|
|
||||||
vpnStatusPath: checkString(process.env.VPN_STATUS_PATH) ? "#{rootMountPoint}/run/openvpn/vpn_status"
|
|
||||||
hostOSVersionPath: checkString(process.env.HOST_OS_VERSION_PATH) ? "#{rootMountPoint}/etc/os-release"
|
|
||||||
privateAppEnvVars: [
|
|
||||||
'RESIN_SUPERVISOR_API_KEY'
|
|
||||||
'RESIN_API_KEY'
|
|
||||||
]
|
|
||||||
dataPath: checkString(process.env.RESIN_DATA_PATH) ? '/resin-data'
|
|
||||||
bootMountPointFromEnv: bootMountPointFromEnv
|
|
||||||
bootMountPoint: bootMountPointFromEnv ? '/boot'
|
|
||||||
configJsonPathOnHost: checkString(process.env.CONFIG_JSON_PATH)
|
|
||||||
proxyvisorHookReceiver: checkString(process.env.RESIN_PROXYVISOR_HOOK_RECEIVER) ? 'http://0.0.0.0:1337'
|
|
||||||
apiEndpointFromEnv: checkString(process.env.API_ENDPOINT)
|
|
||||||
configJsonNonAtomicPath: '/boot/config.json'
|
|
||||||
defaultPubnubSubscribeKey: process.env.DEFAULT_PUBNUB_SUBSCRIBE_KEY
|
|
||||||
defaultPubnubPublishKey: process.env.DEFAULT_PUBNUB_PUBLISH_KEY
|
|
||||||
defaultMixpanelToken: process.env.DEFAULT_MIXPANEL_TOKEN
|
|
||||||
supervisorNetworkInterface: supervisorNetworkInterface
|
|
||||||
allowedInterfaces: ['resin-vpn', 'tun0', 'docker0', 'lo', supervisorNetworkInterface]
|
|
||||||
appsJsonPath: process.env.APPS_JSON_PATH ? '/boot/apps.json'
|
|
||||||
ipAddressUpdateInterval: 30 * 1000
|
|
||||||
imageCleanupErrorIgnoreTimeout: 3600 * 1000
|
|
||||||
maxDeltaDownloads: 3
|
|
||||||
defaultVolumeLabels: {
|
|
||||||
'io.resin.supervised': 'true'
|
|
||||||
}
|
|
||||||
|
|
||||||
process.env.DOCKER_HOST ?= "unix://#{module.exports.dockerSocket}"
|
|
48
src/lib/constants.ts
Normal file
48
src/lib/constants.ts
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
import { checkString } from './validation';
|
||||||
|
|
||||||
|
const bootMountPointFromEnv = checkString(process.env.BOOT_MOUNTPOINT);
|
||||||
|
const rootMountPoint = checkString(process.env.ROOT_MOUNTPOINT) || '/mnt/root';
|
||||||
|
|
||||||
|
const supervisorNetworkInterface = 'supervisor0';
|
||||||
|
|
||||||
|
const constants = {
|
||||||
|
rootMountPoint,
|
||||||
|
databasePath: checkString(process.env.DATABASE_PATH) || '/data/database.sqlite',
|
||||||
|
dockerSocket: process.env.DOCKER_SOCKET || '/var/run/docker.sock',
|
||||||
|
supervisorImage: checkString(process.env.SUPERVISOR_IMAGE) || 'resin/rpi-supervisor',
|
||||||
|
ledFile: checkString(process.env.LED_FILE) || '/sys/class/leds/led0/brightness',
|
||||||
|
vpnStatusPath:
|
||||||
|
checkString(process.env.VPN_STATUS_PATH) || `${rootMountPoint}/run/openvpn/vpn_status`,
|
||||||
|
hostOSVersionPath:
|
||||||
|
checkString(process.env.HOST_OS_VERSION_PATH) || `${rootMountPoint}/etc/os-release`,
|
||||||
|
privateAppEnvVars: [
|
||||||
|
'RESIN_SUPERVISOR_API_KEY',
|
||||||
|
'RESIN_API_KEY',
|
||||||
|
],
|
||||||
|
dataPath: checkString(process.env.RESIN_DATA_PATH) || '/resin-data',
|
||||||
|
bootMountPointFromEnv,
|
||||||
|
bootMountPoint: bootMountPointFromEnv || '/boot',
|
||||||
|
configJsonPathOnHost: checkString(process.env.CONFIG_JSON_PATH),
|
||||||
|
proxyvisorHookReceiver:
|
||||||
|
checkString(process.env.RESIN_PROXYVISOR_HOOK_RECEIVER) || 'http://0.0.0.0:1337',
|
||||||
|
apiEndpointFromEnv: checkString(process.env.API_ENDPOINT),
|
||||||
|
configJsonNonAtomicPath: '/boot/config.json',
|
||||||
|
defaultPubnubSubscribeKey: process.env.DEFAULT_PUBNUB_SUBSCRIBE_KEY,
|
||||||
|
defaultPubnubPublishKey: process.env.DEFAULT_PUBNUB_PUBLISH_KEY,
|
||||||
|
defaultMixpanelToken: process.env.DEFAULT_MIXPANEL_TOKEN,
|
||||||
|
supervisorNetworkInterface: supervisorNetworkInterface,
|
||||||
|
allowedInterfaces: [ 'resin-vpn', 'tun0', 'docker0', 'lo', supervisorNetworkInterface ],
|
||||||
|
appsJsonPath: process.env.APPS_JSON_PATH || '/boot/apps.json',
|
||||||
|
ipAddressUpdateInterval: 30 * 1000,
|
||||||
|
imageCleanupErrorIgnoreTimeout: 3600 * 1000,
|
||||||
|
maxDeltaDownloads: 3,
|
||||||
|
defaultVolumeLabels: {
|
||||||
|
'io.resin.supervised': 'true',
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
|
if (process.env.DOCKER_HOST == null) {
|
||||||
|
process.env.DOCKER_HOST = `unix://${constants.dockerSocket}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
export = constants;
|
Loading…
x
Reference in New Issue
Block a user