Added unique UUIDs as keys

This commit is contained in:
2021-02-11 22:14:27 +11:00
parent 27e0637a2d
commit 0b6c372c55
2 changed files with 16 additions and 9 deletions
+2 -2
View File
@@ -69,8 +69,8 @@ There are external components to this template referred to as "microservices". T
- Chat logs - Chat logs
- Direct Messages & rooms - Direct Messages & rooms
- admin panel banning/unbanning (currently borked) - admin panel banning/unbanning (currently borked)
- Configuraton Script: - ~~Configuraton Script:~~
- Default UUID keys - ~~Default UUID keys~~
- ~~Docker, docker, docker.~~ - ~~Docker, docker, docker.~~
- Better compression for client files - Better compression for client files
- Full tutorial for setting up and using the site - Full tutorial for setting up and using the site
+14 -7
View File
@@ -1,8 +1,11 @@
//setup //setup
const readline = require('readline'); const readline = require('readline');
const fs = require('fs'); const fs = require('fs');
const crypto = require("crypto");
var rl = readline.createInterface({ const uuid = (bytes = 16) => crypto.randomBytes(bytes).toString("hex");
const rl = readline.createInterface({
input: process.stdin, input: process.stdin,
output: process.stdout, output: process.stdout,
terminal: false terminal: false
@@ -25,7 +28,7 @@ const question = (prompt, def) => {
const projectMailSMTP = await question('Project Mail SMTP', 'smtp.example.com'); const projectMailSMTP = await question('Project Mail SMTP', 'smtp.example.com');
const projectMailUser = await question('Project Mail Username', 'foobar@example.com'); const projectMailUser = await question('Project Mail Username', 'foobar@example.com');
const projectMailPass = await question('Project Mail Password', 'foobar'); const projectMailPass = await question('Project Mail Password', 'foobar');
const projectMailPhysical = await question('Project Physical Mailing Address', '[Unknown]'); const projectMailPhysical = await question('Project Physical Mailing Address', '');
const projectDBUser = await question('Project Database Username', projectName); const projectDBUser = await question('Project Database Username', projectName);
const projectDBPass = await question('Project Database Password', 'pikachu'); const projectDBPass = await question('Project Database Password', 'pikachu');
@@ -34,7 +37,7 @@ const question = (prompt, def) => {
const newsWebAddress = await question('News Web Address', 'news.example.com'); const newsWebAddress = await question('News Web Address', 'news.example.com');
const newsDBUser = await question('News Database Username', newsName); const newsDBUser = await question('News Database Username', newsName);
const newsDBPass = await question('News Database Password', 'charizard'); const newsDBPass = await question('News Database Password', 'charizard');
const newsKey = await question('News Query Key', 'key'); const newsKey = await question('News Query Key', uuid());
//TODO: chat configuration //TODO: chat configuration
@@ -45,6 +48,10 @@ const question = (prompt, def) => {
//traefic configuration //traefic configuration
const supportEmail = await question('Support Email', projectMailUser); const supportEmail = await question('Support Email', projectMailUser);
//other random values
const sessionSecret = uuid(); //for session randomness
const sessionAdmin = uuid(128); //for checking if user is admin
const yml = ` const yml = `
version: "3.6" version: "3.6"
services: services:
@@ -65,15 +72,15 @@ services:
- WEB_PORT=3000 - WEB_PORT=3000
- MAIL_SMTP=${projectMailSMTP} - MAIL_SMTP=${projectMailSMTP}
- MAIL_USERNAME=${projectMailUser} - MAIL_USERNAME=${projectMailUser}
- MAIL_PASSWORD=${projectMailPass} - MAIL_PASSWORD=${projectMailPass}
- MAIL_PHYSICAL=${projectMailPhysical} - MAIL_PHYSICAL=${projectMailPhysical}
- DB_HOSTNAME=database - DB_HOSTNAME=database
- DB_DATABASE=${projectName} - DB_DATABASE=${projectName}
- DB_USERNAME=${projectDBUser} - DB_USERNAME=${projectDBUser}
- DB_PASSWORD=${projectDBPass} - DB_PASSWORD=${projectDBPass}
- DB_TIMEZONE=${databaseTimeZone} - DB_TIMEZONE=${databaseTimeZone}
- SESSION_SECRET=secret - SESSION_SECRET=${sessionSecret}
- SESSION_ADMIN=adminsecret - SESSION_ADMIN=${sessionAdmin}
- NEWS_URI=https://${newsWebAddress}/news - NEWS_URI=https://${newsWebAddress}/news
- NEWS_KEY=${newsKey} - NEWS_KEY=${newsKey}
networks: networks: