From dde6e622a4de07059a417436c42ce4df44aa43f7 Mon Sep 17 00:00:00 2001 From: Wu Cheng-Han Date: Thu, 23 Mar 2017 20:00:48 +0800 Subject: [PATCH] Fix front-end constants generation not getting config properly --- app.js | 10 +++++++--- app.json | 8 ++++++++ lib/config.js | 2 ++ 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/app.js b/app.js index 9f5098e5e..677d3fa56 100644 --- a/app.js +++ b/app.js @@ -30,15 +30,19 @@ var response = require('./lib/response.js') var models = require('./lib/models') // generate front-end constants by template +var configJson = config.raw var constpath = path.join(__dirname, './public/js/lib/common/constant.ejs') +var googleApiKey = (fs.existsSync('/run/secrets/google_apiKey') && config.handleDockerSecret('google_apiKey')) || process.env.HMD_GOOGLE_API_KEY || (configJson.google && configJson.google.apiKey) || '' +var googleClientID = (fs.existsSync('/run/secrets/google_clientID') && config.handleDockerSecret('google_clientID')) || process.env.HMD_GOOGLE_CLIENT_ID || (configJson.google && configJson.google.clientID) || '' +var dropboxAppKey = (fs.existsSync('/run/secrets/dropbox_appKey') && config.handleDockerSecret('dropbox_appKey')) || process.env.HMD_DROPBOX_APP_KEY || (configJson.dropbox && configJson.dropbox.appKey) || '' var data = { domain: config.domain, urlpath: config.urlpath, debug: config.debug, version: config.version, - GOOGLE_API_KEY: config.google ? config.google.GOOGLE_API_KEY : '', - GOOGLE_CLIENT_ID: config.google ? config.google.GOOGLE_CLIENT_ID : '', - DROPBOX_APP_KEY: config.dropbox ? config.dropbox.DROPBOX_APP_KEY : '' + GOOGLE_API_KEY: googleApiKey, + GOOGLE_CLIENT_ID: googleClientID, + DROPBOX_APP_KEY: dropboxAppKey } ejs.renderFile(constpath, data, {}, function (err, str) { if (err) throw new Error(err) diff --git a/app.json b/app.json index d1ec71ff0..0ed11d769 100644 --- a/app.json +++ b/app.json @@ -101,6 +101,10 @@ "description": "Dropbox API client secret", "required": false }, + "HMD_DROPBOX_APP_KEY": { + "description": "Dropbox app key (for import/export)", + "required": false + }, "HMD_GOOGLE_CLIENTID": { "description": "Google API client id", "required": false @@ -109,6 +113,10 @@ "description": "Google API client secret", "required": false }, + "HMD_GOOGLE_API_KEY": { + "description": "Google API key (for import/export)", + "required": false + }, "HMD_IMGUR_CLIENTID": { "description": "Imgur API client id", "required": false diff --git a/lib/config.js b/lib/config.js index 0d5eaf6e4..31999b07b 100644 --- a/lib/config.js +++ b/lib/config.js @@ -170,6 +170,8 @@ var maintenance = true var cwd = path.join(__dirname, '..') module.exports = { + raw: config, + handleDockerSecret: handleDockerSecret, version: version, minimumCompatibleVersion: minimumCompatibleVersion, maintenance: maintenance,