Allow overwriting versions of same name
This commit is contained in:
parent
153c458f9e
commit
bc92942d29
@ -26,15 +26,15 @@ argParser.addArgument("version", {
|
|||||||
});
|
});
|
||||||
argParser.addArgument([ "-f", "--full" ], {
|
argParser.addArgument([ "-f", "--full" ], {
|
||||||
metavar: "<full zip file>", type: isFile, nargs: 1,
|
metavar: "<full zip file>", type: isFile, nargs: 1,
|
||||||
dest: "fullZipFile"
|
dest: "fullZipFileArgs"
|
||||||
});
|
});
|
||||||
argParser.addArgument([ "-i", "--incremental" ], {
|
argParser.addArgument([ "-i", "--incremental" ], {
|
||||||
type: isFile, nargs: 2, dest: "incremental",
|
type: isFile, nargs: 2, dest: "incrementalArgs",
|
||||||
metavar: ["<incremental zip file>", "<file containing list of deleted files>"]
|
metavar: ["<incremental zip file>", "<file containing list of deleted files>"]
|
||||||
});
|
});
|
||||||
argParser.addArgument([ "-e", "--executable" ], {
|
argParser.addArgument([ "-e", "--executable" ], {
|
||||||
metavar: "[executable file]", nargs: 1,
|
metavar: "[executable file]", nargs: 1,
|
||||||
dest: "executable"
|
dest: "executableArgs"
|
||||||
});
|
});
|
||||||
|
|
||||||
const {
|
const {
|
||||||
@ -49,6 +49,12 @@ const [incrementalZipFile, deletionsFile] = incrementalArgs || [];
|
|||||||
const [fullZipFile] = fullZipFileArgs || [];
|
const [fullZipFile] = fullZipFileArgs || [];
|
||||||
const [executable] = executableArgs || [];
|
const [executable] = executableArgs || [];
|
||||||
|
|
||||||
|
// Do one final check
|
||||||
|
if (!incrementalZipFile && !fullZipFile) {
|
||||||
|
console.error("No download archive specified! Abort.");
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
const manifest = JSON.parse(fs.readFileSync(manifestFile));
|
const manifest = JSON.parse(fs.readFileSync(manifestFile));
|
||||||
|
|
||||||
const deleteActions = deletionsFile ? fs.readFileSync(deletionsFile)
|
const deleteActions = deletionsFile ? fs.readFileSync(deletionsFile)
|
||||||
@ -61,7 +67,7 @@ const deleteActions = deletionsFile ? fs.readFileSync(deletionsFile)
|
|||||||
|
|
||||||
const urlBase = "https://s3.wasabisys.com/ao-downloads/";
|
const urlBase = "https://s3.wasabisys.com/ao-downloads/";
|
||||||
|
|
||||||
manifest.versions = [{
|
const versionEntry = {
|
||||||
version,
|
version,
|
||||||
executable,
|
executable,
|
||||||
prev: manifest.versions[0] ? manifest.versions[0].version : undefined,
|
prev: manifest.versions[0] ? manifest.versions[0].version : undefined,
|
||||||
@ -84,6 +90,18 @@ manifest.versions = [{
|
|||||||
.digest("hex")
|
.digest("hex")
|
||||||
}
|
}
|
||||||
] : undefined
|
] : undefined
|
||||||
}, ...manifest.versions];
|
};
|
||||||
|
|
||||||
|
const existingVersion = manifest.versions.filter(v => v.version == version);
|
||||||
|
if (existingVersion) {
|
||||||
|
console.warn(`Warning: version ${version} already exists. Adding new values.`);
|
||||||
|
|
||||||
|
// Don't overwrite prev - it will cause headaches
|
||||||
|
delete versionEntry.prev;
|
||||||
|
|
||||||
|
Object.assign(existingVersion, versionEntry);
|
||||||
|
} else {
|
||||||
|
manifest.versions = [versionEntry, ...manifest.versions];
|
||||||
|
}
|
||||||
|
|
||||||
fs.writeFileSync(manifestFile, JSON.stringify(manifest, null, 4));
|
fs.writeFileSync(manifestFile, JSON.stringify(manifest, null, 4));
|
||||||
|
Loading…
Reference in New Issue
Block a user