mirror of
https://github.com/spacebarchat/server.git
synced 2024-11-22 02:12:40 +01:00
Update gitignore, push correct version of build script
This commit is contained in:
parent
fca4480c97
commit
11227bb2b3
3
.gitignore
vendored
3
.gitignore
vendored
@ -13,3 +13,6 @@ api/assets/plugins/*.js
|
||||
.idea/
|
||||
*.code-workspace
|
||||
|
||||
|
||||
*.log
|
||||
*.log.ansi
|
@ -3,33 +3,35 @@ const path = require("path");
|
||||
const fs = require("fs");
|
||||
const { getSystemErrorMap } = require("util");
|
||||
const { argv, stdout, exit } = require("process");
|
||||
const { copyRecursiveSync, execIn, parts} = require('./utils');
|
||||
const {copyRecursiveSync,execIn} = require('./utils');
|
||||
|
||||
if(argv.includes("help")) {
|
||||
console.log(`Fosscord build script help:
|
||||
|
||||
Arguments:
|
||||
clean Cleans up previous builds
|
||||
copyonly Only copy source files, don't build (useful for updating assets)
|
||||
verbose Enable verbose logging
|
||||
logerrors Log build errors to console
|
||||
pretty-errors Pretty-print build errors
|
||||
silent No output, no build log`);
|
||||
silent No output to console or files.`);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
let steps = 3, i = 0;
|
||||
if (argv.includes("clean")) steps++;
|
||||
if (argv.includes("copyonly")) steps--;
|
||||
const dirs = ["api", "util", "cdn", "gateway", "bundle"];
|
||||
|
||||
const verbose = argv.includes("verbose") || argv.includes("v");
|
||||
const logerr = argv.includes("logerrors");
|
||||
const pretty = argv.includes("pretty-errors");
|
||||
const silent = argv.includes("silent");
|
||||
|
||||
if(silent) console.log = function() {}
|
||||
if(silent) console.error = console.log = function(){}
|
||||
|
||||
if (argv.includes("clean")) {
|
||||
console.log(`[${++i}/${steps}] Cleaning...`);
|
||||
parts.forEach((a) => {
|
||||
dirs.forEach((a) => {
|
||||
let d = "../" + a + "/dist";
|
||||
if (fs.existsSync(d)) {
|
||||
fs.rmSync(d, { recursive: true });
|
||||
@ -47,7 +49,7 @@ console.log(`[${++i}/${steps}] Copying src files...`);
|
||||
copyRecursiveSync(path.join(__dirname, "..", "..", "api", "assets"), path.join(__dirname, "..", "dist", "api", "assets"));
|
||||
copyRecursiveSync(path.join(__dirname, "..", "..", "api", "client_test"), path.join(__dirname, "..", "dist", "api", "client_test"));
|
||||
copyRecursiveSync(path.join(__dirname, "..", "..", "api", "locales"), path.join(__dirname, "..", "dist", "api", "locales"));
|
||||
parts.forEach((a) => {
|
||||
dirs.forEach((a) => {
|
||||
copyRecursiveSync("../" + a + "/src", "dist/" + a + "/src");
|
||||
if (verbose) console.log(`Copied ${"../" + a + "/dist"} -> ${"dist/" + a + "/src"}!`);
|
||||
});
|
||||
@ -55,13 +57,16 @@ parts.forEach((a) => {
|
||||
if (!argv.includes("copyonly")) {
|
||||
console.log(`[${++i}/${steps}] Compiling src files ...`);
|
||||
|
||||
console.log(
|
||||
let buildFlags = ''
|
||||
if(pretty) buildFlags += '--pretty '
|
||||
|
||||
try {
|
||||
execSync(
|
||||
'node "' +
|
||||
path.join(__dirname, "..", "node_modules", "typescript", "lib", "tsc.js") +
|
||||
'" -p "' +
|
||||
path.join(__dirname, "..") +
|
||||
'"',
|
||||
'" ' + buildFlags,
|
||||
{
|
||||
cwd: path.join(__dirname, ".."),
|
||||
shell: true,
|
||||
@ -69,6 +74,21 @@ if (!argv.includes("copyonly")) {
|
||||
encoding: "utf8"
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
} catch (error) {
|
||||
if(verbose || logerr) {
|
||||
error.stdout.split(/\r?\n/).forEach((line) => {
|
||||
let _line = line.replace('dist/','',1);
|
||||
if(!pretty && _line.includes('.ts(')) {
|
||||
//reformat file path for easy jumping
|
||||
_line = _line.replace('(',':',1).replace(',',':',1).replace(')','',1)
|
||||
}
|
||||
console.error(_line);
|
||||
})
|
||||
}
|
||||
console.error(`Build failed! Please check build.log for info!`);
|
||||
if(!silent){
|
||||
if(pretty) fs.writeFileSync("build.log.ansi", error.stdout);
|
||||
fs.writeFileSync("build.log", error.stdout.replaceAll(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, ''));
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user