use environment variables for configuration

This commit is contained in:
jomo
2020-03-28 23:47:23 +01:00
parent d81e2777d2
commit d967db3ad4
10 changed files with 97 additions and 78 deletions

View File

@@ -1,7 +1,6 @@
var logging = require("./logging");
var node_redis = require("redis");
var config = require("../config");
var url = require("url");
var redis = null;
@@ -9,19 +8,10 @@ var redis = null;
// flushes redis when using ephemeral storage (e.g. Heroku)
function connect_redis() {
logging.log("connecting to redis...");
// parse redis env
var redis_env = process.env.REDISCLOUD_URL || process.env.REDIS_URL;
var redis_url = redis_env ? url.parse(redis_env) : {};
redis_url.port = redis_url.port || 6379;
redis_url.hostname = redis_url.hostname || "localhost";
// connect to redis
redis = node_redis.createClient(redis_url.port, redis_url.hostname);
if (redis_url.auth) {
redis.auth(redis_url.auth.split(":")[1]);
}
redis = node_redis.createClient(config.redis);
redis.on("ready", function() {
logging.log("Redis connection established.");
if (process.env.EPHEMERAL_STORAGE) {
if (config.caching.ephemeral) {
logging.log("Storage is ephemeral, flushing redis");
redis.flushall();
}

View File

@@ -32,7 +32,7 @@ exp.warn = function() {
exp.error = function() {
log("ERROR", arguments, console.error);
};
if (config.server.debug_enabled || process.env.DEBUG === "true") {
if (config.server.debug_enabled) {
exp.debug = function() {
log("DEBUG", arguments);
};

View File

@@ -35,7 +35,6 @@ a.forkme:hover {
a.sponsor {
position: fixed;
z-index: 1041;
width: 48px;
height: 48px;
right: 0px;
@@ -43,6 +42,11 @@ a.sponsor {
margin: 5px;
}
.sponsor img {
width: 100%;
height: 100%;
}
a.sponsor-item {
color: #aa7100 !important;
font-weight: initial;

View File

@@ -136,8 +136,8 @@ function requestHandler(req, res) {
var exp = {};
exp.boot = function(callback) {
var port = process.env.PORT || 3000;
var bind_ip = process.env.BIND || "0.0.0.0";
var port = config.server.port;
var bind_ip = config.server.bind;
server = http.createServer(requestHandler).listen(port, bind_ip, function() {
logging.log("Server running on http://" + bind_ip + ":" + port + "/");
if (callback) {
@@ -149,7 +149,7 @@ exp.boot = function(callback) {
// wait for established connections to finish (30s max),
// then exit
process.on("SIGTERM", function() {
logging.warn("Got SIGTERM, no longer accepting connections!");
logging.warn("Got SIGTERM, no longer accepting new connections!");
setTimeout(function() {
logging.error("Dropping connections after 30s. Force quit.");