New build infra

This commit is contained in:
SukkaW
2022-12-08 18:10:59 +08:00
parent 6646a1ec98
commit ffb4e24e8a
14 changed files with 353 additions and 78 deletions

View File

@@ -0,0 +1,35 @@
const { promises: fsPromises } = require('fs');
async function compareAndWriteFile(linesA, filePath) {
const linesB = (await fsPromises.readFile(filePath, { encoding: 'utf-8' })).split('\n');
if (!stringArrayCompare(linesA, linesB)) {
await fsPromises.writeFile(
filePath,
linesA.join('\n'),
{ encoding: 'utf-8' }
)
} else {
console.log(`Same Content, bail out writing: ${filePath}`);
}
}
function stringArrayCompare (linesA, linesB) {
if (linesA.length !== linesB.length) return false;
for (let i = 0; i < linesA.length; i++) {
const lineA = linesA[i];
const lineB = linesB[i];
if (lineA.startsWith('#') && lineB.startsWith('#')) {
continue;
}
if (lineA !== lineB) {
return false;
}
}
return true;
}
module.exports.stringArrayCompare = stringArrayCompare;
module.exports.compareAndWriteFile = compareAndWriteFile;