Auto generate ssl cert and download spritesheet on npm install

This commit is contained in:
Danielv123 committed 2018-01-14 21:50:47 +01:00
1 parent 071a2e6dbe
commit a307cd63a3
2 files changed
+39 -4

No files matched your search

+2 -3
View File
@@ -7,13 +7,12 @@ var pki = forge.pki;
var rsa = forge.pki.rsa;
var startTime, endTime;
var doLogging = true;
if(!doLogging) console.log = function(){};
module.exports = function({
bits = 2048,
certificatePath = "database/certificate",
doLogging = false,
} = {}){
if(!doLogging) console.log = function(){};
console.log("Generating SSL certificate with "+bits+" bits at "+certificatePath);
startTime = Date.now();
+37 -1
View File
@@ -1,4 +1,6 @@
var mkdirp = require("mkdirp");
var http = require('http');
var fs = require('fs');
var directories = [
"database/linvodb",
@@ -15,4 +17,38 @@ directories.forEach(path => {
console.log("mkdirp "+path);
}
});
})
});
function download(url, file){
var writeStream = fs.createWriteStream(file);
var request = http.get(url, function(response) {
response.pipe(writeStream);
response.on("end", () => {
console.log("Downloaded "+file+" from "+url)
});
});
}
let downloadList = [
{
url: "http://fbpviewer.trakos.pl/images/spritesheet.json",
file: "static/pictures/spritesheet.json",
},
{
url: "http://fbpviewer.trakos.pl/images/spritesheet.png",
file: "static/pictures/spritesheet.png",
},
]
downloadList.forEach(item => {
download(item.url, item.file);
});
// generate SSL certificates if they are missing
if(!fs.existsSync("database/certificates") || !fs.existsSync("database/certificates/cert.crt") || !fs.existsSync("database/certificates/cert.key")){
var generateSSLcert = require("./generateSSLcert.js");
generateSSLcert({
certificatePath: "database/certificates",
doLogging: true,
});
}