76 lines
2.0 KiB
JavaScript
76 lines
2.0 KiB
JavaScript
// copy.js
|
|
const fs = require('fs');
|
|
const path = require('path');
|
|
let path1 = path.join("dist", "back");
|
|
if (!fs.existsSync(path1)) {
|
|
fs.mkdirSync(path1);
|
|
}
|
|
|
|
|
|
function updateVersion(major = false, minor = false, patch = true) {
|
|
let obj;
|
|
try {
|
|
obj = JSON.parse(fs.readFileSync('./package.json', 'utf8'));
|
|
let currentVersion = obj.version;
|
|
|
|
let versions = currentVersion.split('.');
|
|
let majorVersion = versions[0];
|
|
let minorVersion = versions[1];
|
|
let patchVersion = versions[2];
|
|
if (major) {
|
|
let number = Number.parseInt(majorVersion);
|
|
number++;
|
|
versions[0] = number;
|
|
versions[1] = 0;
|
|
versions[2] = 0;
|
|
} else if (minor) {
|
|
let number = Number.parseInt(minorVersion);
|
|
number++;
|
|
versions[0] = majorVersion;
|
|
versions[1] = number;
|
|
versions[2] = patchVersion;
|
|
} else if (patch) {
|
|
let number = Number.parseInt(patchVersion);
|
|
number++;
|
|
versions[0] = majorVersion;
|
|
versions[1] = minorVersion;
|
|
versions[2] = number;
|
|
}
|
|
let newVersion = versions.join('.');
|
|
obj.version = newVersion;
|
|
|
|
fs.writeFileSync("./package.json", JSON.stringify(obj, null, "\t"), 'utf8');
|
|
let newVar = {
|
|
oldVersion: currentVersion,
|
|
newVersion: newVersion
|
|
};
|
|
return newVar;
|
|
} catch (e) {
|
|
}
|
|
}
|
|
|
|
function setVersion() {
|
|
let src;
|
|
try {
|
|
src = JSON.parse(fs.readFileSync('./package.json', 'utf8'));
|
|
let versions = src.version;
|
|
target = JSON.parse(fs.readFileSync('./config.json', 'utf8'));
|
|
target.version = versions;
|
|
fs.writeFileSync("./package.json", JSON.stringify(target), 'utf8')
|
|
return versions.join('.');
|
|
} catch (e) {
|
|
}
|
|
}
|
|
|
|
let release = false;
|
|
process.argv.forEach(function (val, index, array) {
|
|
if (val === "-release") {
|
|
release = true;
|
|
}
|
|
});
|
|
|
|
if (release) {
|
|
updateVersion();
|
|
}
|
|
setVersion();
|