import convict from 'convict' ; const convictConfig = convict ( { env : { doc : 'The application environment.' , format : [ 'production' , 'development' , 'staging' , 'test' ] , default : 'default' , env : 'NODE_ENV' } , mongo : { url : { doc : 'The Mongo connection URL' , format : String , env : 'MONGO_URL' , default : 'mongodb://localhost:27017/retention' } } , rabbitMQ : { host : { doc : 'The RabbitMQ connection host' , format : String , env : 'RABBITMQ_HOST' , default : 'localhost' } , user : { doc : 'The RabbitMQ connection user' , format : String , env : 'RABBITMQ_DEFAULT_USER' , default : 'guest' } , password : { doc : 'The RabbitMQ connection password' , format : String , env : 'RABBITMQ_DEFAULT_PASS' , default : 'guest' } , queue : { doc : 'Queue where subscribers listen on' , format : String , env : 'RABBITMQ_QUEUE' , default : 'Mooc-DomainEvents' } , exchange : { doc : 'Exchange where events are published' , format : String , env : 'RABBITMQ_EXCHANGE' , default : 'DomainEvents' } } } ) ; convictConfig . loadFile ( [ __dirname + '/default.json' , __dirname + '/' + convictConfig . get ( 'env' ) + '.json' ] ) ; export default convictConfig ;