UNPKG

@digital-ai/plugin-dai-release-backend

Version:

Backend functionalities for the dai-release backstage plugin

42 lines (38 loc) 1.22 kB
'use strict'; var responseUtil = require('../api/responseUtil.cjs.js'); class ReleaseConfig { constructor(instances) { this.instances = instances; } static instanceList; /** * Read all Release instance configurations. * @param config - Root configuration * @returns A ReleaseConfig that contains all configured Release instances. */ static fromConfig(config) { const releaseConfig = config.getConfig("daiRelease"); this.instanceList = releaseConfig.getOptionalConfigArray("instances")?.map((c) => ({ name: responseUtil.readValues(c, "name"), host: responseUtil.readValues(c, "host"), token: responseUtil.readValues(c, "token") })) || []; return new ReleaseConfig(this.instanceList); } getInstanceConfig(instanceName) { const instanceConfig = ReleaseConfig.instanceList.find( (c) => c.name === instanceName ); if (!instanceConfig) { throw new Error( `Couldn't find a release instance '${instanceName}' in the config` ); } return instanceConfig; } getInstanceList() { return ReleaseConfig.instanceList; } } exports.ReleaseConfig = ReleaseConfig; //# sourceMappingURL=releaseInstanceConfig.cjs.js.map