| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- /* eslint-disable global-require */
- import fs from "fs";
- import path from "path";
- const hasServerConfig = fs.existsSync(path.resolve(__dirname, "config.js"));
- const hasClientConfig = fs.existsSync(
- path.resolve(__dirname, "../client/config.js")
- );
- if (hasServerConfig && hasClientConfig) {
- const serverConfig = require("./config.js");
- const clientConfig = require("../client/config.js");
- let envTemplate = fs.readFileSync(
- path.resolve(__dirname, "../.template.env"),
- "utf-8"
- );
- const configs = {
- PORT: serverConfig.PORT || 3000,
- DEFAULT_DOMAIN: serverConfig.DEFAULT_DOMAIN || "localhost:3000",
- DB_URI: serverConfig.DB_URI || "bolt://localhost",
- DB_USERNAME: serverConfig.DB_USERNAME,
- DB_PASSWORD: serverConfig.DB_PASSWORD,
- REDIS_DISABLED: serverConfig.REDIS_DISABLED || false,
- REDIS_HOST: serverConfig.REDIS_HOST || "127.0.0.1",
- REDIS_PORT: serverConfig.REDIS_PORT || 6379,
- REDIS_PASSWORD: serverConfig.REDIS_PASSWORD,
- USER_LIMIT_PER_DAY: serverConfig.USER_LIMIT_PER_DAY || 50,
- JWT_SECRET: serverConfig.JWT_SECRET || "securekey",
- ADMIN_EMAILS: serverConfig.ADMIN_EMAILS.join(","),
- RECAPTCHA_SITE_KEY: clientConfig.RECAPTCHA_SITE_KEY,
- RECAPTCHA_SECRET_KEY: serverConfig.RECAPTCHA_SECRET_KEY,
- GOOGLE_SAFE_BROWSING_KEY: serverConfig.GOOGLE_SAFE_BROWSING_KEY,
- GOOGLE_ANALYTICS: clientConfig.GOOGLE_ANALYTICS_ID,
- GOOGLE_ANALYTICS_UNIVERSAL: serverConfig.GOOGLE_ANALYTICS,
- MAIL_HOST: serverConfig.MAIL_HOST,
- MAIL_PORT: serverConfig.MAIL_PORT,
- MAIL_SECURE: serverConfig.MAIL_SECURE,
- MAIL_USER: serverConfig.MAIL_USER,
- MAIL_FROM: serverConfig.MAIL_FROM,
- MAIL_PASSWORD: serverConfig.MAIL_PASSWORD,
- REPORT_MAIL: serverConfig.REPORT_MAIL,
- CONTACT_EMAIL: clientConfig.CONTACT_EMAIL
- };
- Object.keys(configs).forEach(c => {
- envTemplate = envTemplate.replace(
- new RegExp(`{{${c}}}`, "gm"),
- configs[c] || ""
- );
- });
- fs.writeFileSync(path.resolve(__dirname, "../.env"), envTemplate);
- fs.renameSync(
- path.resolve(__dirname, "config.js"),
- path.resolve(__dirname, "old.config.js")
- );
- fs.renameSync(
- path.resolve(__dirname, "../client/config.js"),
- path.resolve(__dirname, "../client/old.config.js")
- );
- }
|