Skip to content
This repository was archived by the owner on Aug 30, 2021. It is now read-only.

Commit 2f8e20e

Browse files
committed
Merge pull request #659 from lirantal/bugfix/secure-mode-fix
Fixing up SSL support
2 parents e1605b6 + 03b7f6f commit 2f8e20e

File tree

3 files changed

+23
-2
lines changed

3 files changed

+23
-2
lines changed

config/config.js

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,16 +56,34 @@ var validateEnvironmentVariable = function() {
5656
console.log();
5757
if (!environmentFiles.length) {
5858
if (process.env.NODE_ENV) {
59-
console.error(chalk.red('No configuration file found for "' + process.env.NODE_ENV + '" environment using development instead'));
59+
console.error(chalk.red('+ Error: No configuration file found for "' + process.env.NODE_ENV + '" environment using development instead'));
6060
} else {
61-
console.error(chalk.red('NODE_ENV is not defined! Using default development environment'));
61+
console.error(chalk.red('+ Error: NODE_ENV is not defined! Using default development environment'));
6262
}
6363
process.env.NODE_ENV = 'development';
6464
}
6565
// Reset console color
6666
console.log(chalk.white(''));
6767
};
6868

69+
/**
70+
* Validate Secure=true parameter can actually be turned on
71+
* because it requires certs and key files to be available
72+
*/
73+
var validateSecureMode = function(config) {
74+
75+
if (config.secure !== true)
76+
return true;
77+
78+
var privateKey = fs.existsSync('./config/sslcerts/key.pem');
79+
var certificate = fs.existsSync('./config/sslcerts/cert.pem');
80+
81+
if (!privateKey || !certificate) {
82+
chalk.red(console.log('+ Error: Certificate file or key file is missing, falling back to non-SSL mode'));
83+
config.secure = false;
84+
}
85+
};
86+
6987
/**
7088
* Initialize global configuration files
7189
*/
@@ -148,6 +166,9 @@ var initGlobalConfig = function() {
148166
// Initialize global globbed folders
149167
initGlobalConfigFolders(config, assets);
150168

169+
// Validate Secure SSL mode can be used
170+
validateSecureMode(config);
171+
151172
// Expose configuration utilities
152173
config.utils = {
153174
getGlobbedPaths: getGlobbedPaths

scripts/generate-ssl-certs.sh

100644100755
File mode changed.

scripts/reset-password.js

100644100755
File mode changed.

0 commit comments

Comments
 (0)