ice.fo.utils
Version:
32 lines (25 loc) • 990 B
JavaScript
const fs = require('fs')
const path = require('path')
const YAML = require('yaml')
if (process.client) {
throw new Error('Config should not be included in frontend. Please use this.$config instead.')
}
/**
* Read configurations in yaml files and also add ICE configurations
*
* @param {*} dir
* @returns
*/
exports.getConfig = function (dir) {
const filePath = path.join(dir, `${process.env.CONFIG_LEVEL}.yaml`)
const file = fs.readFileSync(filePath, 'utf8')
const config = YAML.parse(file)
config.configLevel = process.env.CONFIG_LEVEL
config.apiUrl = `${config.protocol}://${config.apiHost}`
config.frontUrl = `${config.protocol}://${config.baseHost}`
config.backOfficeUrl = `${config.protocol}://${config.backOfficeHost}`
config.serverApiUrl = `${config.serverProtocol || config.protocol}://${config.apiHost}`
config.fileHost = (config.fileHost || '').trim() || config.apiHost
config.fileUrl = `${config.protocol}://${config.fileHost}`
return config
}