@rxstack/configuration v0.8.0
The RxStack Configuration
The Configuration component allows you to load different configuration files depending on node environment.
Installation
npm install @rxstack/configuration --saveDocumentation
The configuration.initialize() takes up to two options:
Path to environment folder directory:
configuration.initialize(process.env.AP_DIR + '/dist/src/configs').Files are named
environment.tsorenvironment.testing.ts. You can change the nameconfiguration.initialize(path_to_dir, 'config')then it will becomeconfig.ts
First you need to create environment.ts in the /src/environments folder.
Let’s say we want to load different file in production environment
then we need to create a new file /src/environments/environment.production.ts.
The production environment will inherit all configurations from environment.ts.
Under the hood it uses lodash _.mergeWith to overwrite configurations.
Example
In environments/environment.ts we want to use the local development environment:
export const environment = {
"host": "localhost",
"port": 3000,
"mongodb": "mongodb://localhost:27017/myapp",
};In environments/environment.production.ts we are going to use environment variables:
export const environment = {
"host": "MONGO_HOST",
"port": "MONGO_PORT",
"mongodb": "MONGOHQ_URL",
};Now it can be used in our app.ts like this:
import {configuration} from '@rxstack/configuration';
configuration.initialize('./environments');
import {environment} from './environments/environment';
// in development it will return localhost
environment.hostVariable types
@rxstack/configuration uses the following variable mechanisms:
- If the value is a valid environment variable (e.v. NODE_ENV), use its value instead
- If the value starts with
./or../turn it into an absolute path relative to the application root path
Root path
You get get root path of your application: configuration.getRootPath()
License
Licensed under the MIT license.
1 year ago
4 years ago
5 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago