iut-hapi/server/manifest.js

73 lines
2.0 KiB
JavaScript

'use strict';
const Dotenv = require('dotenv');
const Confidence = require('@hapipal/confidence');
const Toys = require('@hapipal/toys');
const Schwifty = require('@hapipal/schwifty');
// Pull .env into process.env
Dotenv.config({ path: `${__dirname}/.env` });
// Glue manifest as a confidence store
module.exports = new Confidence.Store({
server: {
host: 'localhost',
port: {
$param: 'PORT',
$coerce: 'number',
$default: 4000
},
debug: {
$filter: 'NODE_ENV',
$default: {
log: ['error', 'start'],
request: ['error']
},
production: {
request: ['implementation']
}
}
},
register: {
plugins: [
{
plugin: '../lib', // Main plugin
options: {}
},
{
plugin: './plugins/swagger'
},
{
plugin : '@hapipal/schwifty',
options : {
$filter : 'NODE_ENV',
$default : {},
$base : {
migrateOnStart : true,
knex : {
client : 'mysql',
connection : {
host : 'localhost',
user : 'root',
password : 'hapi',
database : 'user',
port : 3307
}
}
},
production : {
migrateOnStart : false
}
}
},
{
plugin: {
$filter: 'NODE_ENV',
$default: '@hapipal/hpal-debug',
production: Toys.noop
}
}
]
}
});