53 lines
2.0 KiB
TypeScript
53 lines
2.0 KiB
TypeScript
|
const { writeFile } = require('fs');
|
||
|
const { argv } = require('yargs');
|
||
|
const colors = require('colors');
|
||
|
require('dotenv').config();
|
||
|
|
||
|
const environment = argv.environment;
|
||
|
const isProduction = environment === 'prod';
|
||
|
|
||
|
const targetPath = isProduction ? `./src/environments/environment.prod.ts` : `./src/environments/environment.ts`;
|
||
|
|
||
|
const environmentVars = `import {NgxLoggerLevel} from 'ngx-logger';
|
||
|
|
||
|
export const environment = {
|
||
|
production: ${isProduction},
|
||
|
bloxbergChainId: ${process.env.CHAIN_ID || 8996},
|
||
|
level: ${process.env.LOG_LEVEL || 'NgxLoggerLevel.OFF'},
|
||
|
serverLogLevel: ${process.env.SERVER_LEVEL || 'NgxLoggerLevel.OFF'},
|
||
|
loggingUrl: '${process.env.LOGGING_URL || 'http://localhost:8000'}',
|
||
|
cicMetaUrl: '${process.env.META_URL || 'https://meta.dev.grassrootseconomics.net'}',
|
||
|
publicKeysUrl: '${process.env.KEYS_URL || 'http://localhost:8000/keys.asc'}',
|
||
|
cicCacheUrl: '${process.env.CACHE_URL || 'https://cache.dev.grassrootseconomics.net'}',
|
||
|
web3Provider: '${process.env.WEB3_PROVIDER || 'ws://localhost:63546'}',
|
||
|
cicUssdUrl: '${process.env.USSD_URL || 'https://ussd.dev.grassrootseconomics.net'}',
|
||
|
registryAddress: '${process.env.REGISTRY_ADDRESS || '0x6Ca3cB14aA6F761712E1C18646AfBA4d5Ae249E8'}',
|
||
|
trustedDeclaratorAddress: '${process.env.TRUSTED_ADDRESS || '0xEb3907eCad74a0013c259D5874AE7f22DcBcC95C'}'
|
||
|
};
|
||
|
`;
|
||
|
|
||
|
function setConfigs(configs): void {
|
||
|
writeFile(targetPath, configs, err => {
|
||
|
if (err) {
|
||
|
throw console.error(err);
|
||
|
} else {
|
||
|
console.log(colors.cyan(`Wrote variables to '${targetPath}`));
|
||
|
}
|
||
|
});
|
||
|
}
|
||
|
|
||
|
if (!process.env.REGISTRY_ADDRESS) {
|
||
|
console.error(colors.redBright('All the required environment variables were not provided!'));
|
||
|
process.exit(-1);
|
||
|
}
|
||
|
|
||
|
console.log(colors.yellow(process.env.REGISTRY_ADDRESS));
|
||
|
if (isProduction) {
|
||
|
console.log(colors.magenta('Running in production environment!'));
|
||
|
setConfigs(environmentVars);
|
||
|
} else {
|
||
|
console.log(colors.green('Running in development environment!'));
|
||
|
setConfigs(environmentVars);
|
||
|
}
|
||
|
|