mirror of https://github.com/tycrek/ass.git
moved all `.js` files into `src/` & removed TLog socket plugin
This commit is contained in:
parent
9c07e84b34
commit
2aadafe37b
2
ass-x
2
ass-x
|
@ -1 +1 @@
|
|||
Subproject commit ac4fbe6d850919a4c347cf3bb69c8d2cb60cd87d
|
||||
Subproject commit 7c7eb2a5b3b8e644f2a6b8caf7e8041cf7b5e42e
|
11
package.json
11
package.json
|
@ -8,15 +8,14 @@
|
|||
"npm": ">=7.x.x"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "node ass.js",
|
||||
"setup": "node setup.js",
|
||||
"metrics": "node metrics.js",
|
||||
"new-token": "node generators/token.js",
|
||||
"start": "node src/ass.js",
|
||||
"setup": "node src/setup.js",
|
||||
"metrics": "node src/metrics.js",
|
||||
"new-token": "node src/generators/token.js",
|
||||
"restart": "systemctl restart ass.service",
|
||||
"engine-check": "node checkEngine.js",
|
||||
"engine-check": "node src/checkEngine.js",
|
||||
"prestart": "npm run engine-check",
|
||||
"presetup": "npm run engine-check",
|
||||
"logs": "node ./node_modules/@tycrek/log/socketClient.js",
|
||||
"docker-logs": "docker-compose logs -f --tail=50 --no-log-prefix ass",
|
||||
"docker-update": "git pull && docker-compose up --force-recreate --build -d && docker image prune -f",
|
||||
"docker-resetup": "docker-compose exec ass npm run setup && docker-compose restart"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
let doSetup = null;
|
||||
try {
|
||||
// Check if config.json exists
|
||||
require('./config.json');
|
||||
require('../config.json');
|
||||
} catch (err) {
|
||||
doSetup = require('./setup').doSetup;
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ if (doSetup) {
|
|||
}
|
||||
|
||||
// Load the config
|
||||
const { host, port, useSsl, isProxied, s3enabled, frontendName, indexFile } = require('./config.json');
|
||||
const { host, port, useSsl, isProxied, s3enabled, frontendName, indexFile } = require('../config.json');
|
||||
|
||||
//#region Imports
|
||||
const fs = require('fs-extra');
|
||||
|
@ -24,8 +24,8 @@ const marked = require('marked');
|
|||
const uploadRouter = require('./routers/upload');
|
||||
const resourceRouter = require('./routers/resource');
|
||||
const { path, log, getTrueHttp, getTrueDomain } = require('./utils');
|
||||
const { CODE_INTERNAL_SERVER_ERROR } = require('./MagicNumbers.json');
|
||||
const { name: ASS_NAME, version: ASS_VERSION } = require('./package.json');
|
||||
const { CODE_INTERNAL_SERVER_ERROR } = require('../MagicNumbers.json');
|
||||
const { name: ASS_NAME, version: ASS_VERSION } = require('../package.json');
|
||||
//#endregion
|
||||
|
||||
// Welcome :D
|
||||
|
@ -66,7 +66,7 @@ useSsl && app.use(helmet.hsts({ preload: true })); // skipcq: JS-0093
|
|||
app.use(nofavicon);
|
||||
|
||||
// Use custom index, otherwise render README.md
|
||||
const ASS_INDEX = indexFile !== '' && fs.existsSync(`./${indexFile}`) && require(`./${indexFile}`);
|
||||
const ASS_INDEX = indexFile !== '' && fs.existsSync(`../${indexFile}`) && require(`../${indexFile}`);
|
||||
app.get('/', (req, res, next) => ASS_INDEX // skipcq: JS-0229
|
||||
? ASS_INDEX(req, res, next)
|
||||
: fs.readFile(path('README.md'))
|
||||
|
@ -79,7 +79,7 @@ app.get('/', (req, res, next) => ASS_INDEX // skipcq: JS-0229
|
|||
app.use('/', ROUTERS.upload);
|
||||
|
||||
// Set up custom frontend
|
||||
const ASS_FRONTEND = fs.existsSync(`./${frontendName}/package.json`) ? (require('submodule'), require(`./${frontendName}`)) : { enabled: false };
|
||||
const ASS_FRONTEND = fs.existsSync(path(`./${frontendName}/package.json`)) ? (require('submodule'), require(`../${frontendName}`)) : { enabled: false }; // todo: update with src/
|
||||
ASS_FRONTEND.enabled && app.use(ASS_FRONTEND.endpoint, ASS_FRONTEND.router); // skipcq: JS-0093
|
||||
|
||||
// '/:resouceId' always needs to be LAST since it's a catch-all route
|
|
@ -5,7 +5,7 @@
|
|||
const fs = require('fs-extra');
|
||||
const { log, path, arrayEquals } = require('./utils');
|
||||
|
||||
const users = require('./auth.json').users || {};
|
||||
const users = require('../auth.json').users || {};
|
||||
|
||||
// Monitor auth.json for changes (triggered by running 'npm run new-token')
|
||||
fs.watch(path('auth.json'), { persistent: false },
|
|
@ -1,5 +1,5 @@
|
|||
const check = require("check-node-version");
|
||||
const ENGINES = require('./package.json').engines;
|
||||
const ENGINES = require('../package.json').engines;
|
||||
|
||||
const TLog = require('@tycrek/log');
|
||||
const logger = new TLog();
|
|
@ -1,6 +1,4 @@
|
|||
const fs = require('fs-extra');
|
||||
const adjectives = fs.readFileSync('./generators/gfycat/adjectives.txt').toString().split('\n');
|
||||
const animals = fs.readFileSync('./generators/gfycat/animals.txt').toString().split('\n');
|
||||
|
||||
// Don't trigger circular dependency during setup
|
||||
if (!require.main.filename.includes('setup.js'))
|
||||
|
@ -11,6 +9,11 @@ function getWord(list, delim = '') {
|
|||
}
|
||||
|
||||
function genString(count = MIN_LENGTH) {
|
||||
// For some reason these 3 lines MUST be inside the function
|
||||
const { path } = require('../utils');
|
||||
const adjectives = fs.readFileSync(path('./gfycat/adjectives.txt')).toString().split('\n');
|
||||
const animals = fs.readFileSync(path('./gfycat/animals.txt')).toString().split('\n');
|
||||
|
||||
let gfycat = '';
|
||||
for (let i = 0; i < (count < MIN_LENGTH ? MIN_LENGTH : count); i++)
|
||||
gfycat += getWord(adjectives, '-');
|
|
@ -12,7 +12,7 @@ module.exports = () => uuid().replace(/-/g, '');
|
|||
// If directly called on the command line, generate a new token
|
||||
if (require.main === module) {
|
||||
const token = module.exports();
|
||||
const authPath = path.join(__dirname, '..', 'auth.json');
|
||||
const authPath = path.join(process.cwd(), 'auth.json');
|
||||
let name = '';
|
||||
|
||||
fs.readJson(authPath)
|
|
@ -1,6 +1,6 @@
|
|||
const fs = require('fs-extra');
|
||||
const path = require('path');
|
||||
const { s3enabled } = require('./config.json');
|
||||
const { s3enabled } = require('../config.json');
|
||||
const { formatBytes } = require('./utils');
|
||||
const { bucketSize } = require('./storage');
|
||||
|
||||
|
@ -9,7 +9,7 @@ const log = new TLog({ level: 'debug', timestamp: { enabled: false } });
|
|||
|
||||
module.exports = () => {
|
||||
const data = require('./data');
|
||||
const { users } = fs.readJsonSync(path.join(__dirname, 'auth.json'));
|
||||
const { users } = fs.readJsonSync(path.join(process.cwd(), 'auth.json'));
|
||||
Object.keys(users).forEach((token) => users[token].count = 0);
|
||||
|
||||
let totalSize = 0;
|
|
@ -2,9 +2,9 @@ const fs = require('fs-extra');
|
|||
const escape = require('escape-html');
|
||||
const fetch = require('node-fetch');
|
||||
const { deleteS3 } = require('../storage');
|
||||
const { diskFilePath, s3enabled, viewDirect } = require('../config.json');
|
||||
const { diskFilePath, s3enabled, viewDirect } = require('../../config.json');
|
||||
const { path, log, getTrueHttp, getTrueDomain, formatBytes, formatTimestamp, getS3url, getDirectUrl, getResourceColor, replaceholder } = require('../utils');
|
||||
const { CODE_UNAUTHORIZED, CODE_NOT_FOUND, } = require('../MagicNumbers.json');
|
||||
const { CODE_UNAUTHORIZED, CODE_NOT_FOUND, } = require('../../MagicNumbers.json');
|
||||
const data = require('../data');
|
||||
const users = require('../auth');
|
||||
|
|
@ -3,9 +3,9 @@ const fs = require('fs-extra');
|
|||
const { DateTime } = require('luxon');
|
||||
const { WebhookClient, MessageEmbed } = require('discord.js');
|
||||
const { doUpload, processUploaded } = require('../storage');
|
||||
const { maxUploadSize, resourceIdSize, gfyIdSize, resourceIdType } = require('../config.json');
|
||||
const { maxUploadSize, resourceIdSize, gfyIdSize, resourceIdType } = require('../../config.json');
|
||||
const { path, log, verify, getTrueHttp, getTrueDomain, generateId, formatBytes } = require('../utils');
|
||||
const { CODE_UNAUTHORIZED, CODE_PAYLOAD_TOO_LARGE } = require('../MagicNumbers.json');
|
||||
const { CODE_UNAUTHORIZED, CODE_PAYLOAD_TOO_LARGE } = require('../../MagicNumbers.json');
|
||||
const data = require('../data');
|
||||
const users = require('../auth');
|
||||
|
|
@ -53,7 +53,7 @@ function getConfirmSchema(description) {
|
|||
|
||||
// If directly called on the command line, run setup script
|
||||
function doSetup() {
|
||||
const path = (...paths) => require('path').join(__dirname, ...paths);
|
||||
const path = (...paths) => require('path').join(process.cwd(), ...paths);
|
||||
const TLog = require('@tycrek/log');
|
||||
const fs = require('fs-extra');
|
||||
const prompt = require('prompt');
|
||||
|
@ -64,7 +64,7 @@ function doSetup() {
|
|||
// Override default configs with existing configs to allow migrating configs
|
||||
// Now that's a lot of configs!
|
||||
try {
|
||||
const existingConfig = require('./config.json');
|
||||
const existingConfig = require('../config.json');
|
||||
Object.entries(existingConfig).forEach(([key, value]) => {
|
||||
Object.prototype.hasOwnProperty.call(config, key) && (config[key] = value); // skipcq: JS-0093
|
||||
Object.prototype.hasOwnProperty.call(s3config, key) && (s3config[key] = value); // skipcq: JS-0093
|
|
@ -8,8 +8,8 @@ const Thumbnail = require('./thumbnails');
|
|||
const Vibrant = require('./vibrant');
|
||||
const Hash = require('./hash');
|
||||
const { getDatedDirname, sanitize, generateId, formatBytes, log } = require('./utils');
|
||||
const { s3enabled, s3endpoint, s3bucket, s3usePathStyle, s3accessKey, s3secretKey, saveAsOriginal, maxUploadSize, mediaStrict } = require('./config.json');
|
||||
const { CODE_UNSUPPORTED_MEDIA_TYPE } = require('./MagicNumbers.json');
|
||||
const { s3enabled, s3endpoint, s3bucket, s3usePathStyle, s3accessKey, s3secretKey, saveAsOriginal, maxUploadSize, mediaStrict } = require('../config.json');
|
||||
const { CODE_UNSUPPORTED_MEDIA_TYPE } = require('../MagicNumbers.json');
|
||||
|
||||
const ID_GEN_LENGTH = 32;
|
||||
const ALLOWED_MIMETYPES = /(image)|(video)|(audio)\//;
|
|
@ -3,7 +3,7 @@ const Jimp = require('jimp');
|
|||
const shell = require('any-shell-escape');
|
||||
const { exec } = require('child_process');
|
||||
const { isProd, path } = require('./utils');
|
||||
const { diskFilePath } = require('./config.json');
|
||||
const { diskFilePath } = require('../config.json');
|
||||
|
||||
// Thumbnail parameters
|
||||
const THUMBNAIL = {
|
|
@ -8,11 +8,11 @@ const token = require('./generators/token');
|
|||
const zwsGen = require('./generators/zws');
|
||||
const randomGen = require('./generators/random');
|
||||
const gfyGen = require('./generators/gfycat');
|
||||
const { HTTP, HTTPS, KILOBYTES } = require('./MagicNumbers.json');
|
||||
const { HTTP, HTTPS, KILOBYTES } = require('../MagicNumbers.json');
|
||||
|
||||
// Catch config.json not existing when running setup script
|
||||
try {
|
||||
var { useSsl, port, domain, isProxied, diskFilePath, saveWithDate, s3bucket, s3endpoint, s3usePathStyle } = require('./config.json'); // skipcq: JS-0239, JS-0102
|
||||
var { useSsl, port, domain, isProxied, diskFilePath, saveWithDate, s3bucket, s3endpoint, s3usePathStyle } = require('../config.json'); // skipcq: JS-0239, JS-0102
|
||||
} catch (ex) {
|
||||
if (ex.code !== 'MODULE_NOT_FOUND') console.error(ex);
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ function getDatedDirname() {
|
|||
}
|
||||
|
||||
// Set up pathing & the logger
|
||||
const path = (...paths) => Path.join(process.cwd(), ...paths);
|
||||
const path = (...paths) => Path.join(process.cwd(), ...paths); // '..' was added to make it easier to run files after moving the project to src/
|
||||
const logger = new TLog({
|
||||
level: process.env.LOG_LEVEL || (process.env.NODE_ENV === 'production' ? 'info' : 'debug'),
|
||||
timestamp: {
|
||||
|
@ -85,11 +85,7 @@ const logger = new TLog({
|
|||
});
|
||||
|
||||
// Enable the Express logger
|
||||
logger
|
||||
.env('ASS_ENV')
|
||||
//.enable.process({ uncaughtException: false }).debug('Plugin enabled', 'Process')
|
||||
.enable.express({ handle500: false }).debug('Plugin enabled', 'Express')
|
||||
.enable.socket().debug('Plugin enabled', 'Socket');
|
||||
logger.enable.express({ handle500: false }).debug('Plugin enabled', 'Express');
|
||||
|
||||
const idModes = {
|
||||
zws: 'zws', // Zero-width spaces (see: https://zws.im/)
|
Loading…
Reference in New Issue