UNPKG

conflutora

Version:

Provider to convert and publish Antora documentation on Confluence

84 lines 2.77 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.configService = exports.createDefaultConfig = void 0; const convict_1 = __importDefault(require("convict")); const Logger_js_1 = require("../utils/Logger.js"); // Pre-process environment variables to keep only non empty values const getNonEmptyEnvVars = () => { return Object.entries(process.env).reduce((acc, [key, value]) => { if (value && value !== '') acc[key] = value; return acc; }, {}); }; const createDefaultConfig = () => { return (0, convict_1.default)({ nodeEnv: { doc: 'The node environment', format: ['production', 'development', 'test'], default: 'development', env: 'NODE_ENV' }, application: { name: { doc: 'The application name', format: String, default: 'Conflutora' }, version: { doc: 'The application version', format: String, default: '1.0.0' } }, confluence: { url: { doc: 'The confluence base url', format: String, default: '', env: 'CONFLUENCE_URL' }, username: { doc: 'The confluence user name', format: String, default: '', env: 'CONFLUENCE_USERNAME' }, password: { doc: 'The confluence password or token', format: String, default: 'https://test.atlassian.net' }, spaceKey: { doc: 'The confluence space key', format: String, default: 'TEST' }, ancestorId: { doc: 'The confluence ancestor id (Page Id)', format: String, default: '', nullable: true }, skipPublish: { doc: 'Skip publishing to confluence', format: Boolean, default: false, env: 'SKIP_CONFLUENCE' } } }, { env: getNonEmptyEnvVars() }); }; exports.createDefaultConfig = createDefaultConfig; exports.configService = (0, exports.createDefaultConfig)(); try { exports.configService.validate({ allowed: 'strict' }); } catch (err) { new Logger_js_1.Logger('Config').error('Error while loading config', err.stack); process.exit(1); } //# sourceMappingURL=config.service.js.map