Files
purpur-potato/scripts/publish-release.ts
T
dmg 6b07d3bf87
Release / release (push) Successful in 9m13s
CI / build (push) Successful in 50s
feat(potato): add native poisonous potato throws and releases
2026-09-18 08:06:50 -04:00

22 lines
1016 B
TypeScript

import { readFile } from "node:fs/promises";
import { publishRelease } from "./release-client.js";
try {
const version = process.env.VERSION ?? "";
const credential = process.env.RELEASE_CREDENTIAL ?? "";
const commit = process.env.RELEASE_COMMIT ?? "";
// Check path components and required inputs before opening an artifact or contacting Gitea.
if (!/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/.test(version)
|| !credential || !/^[a-f0-9]{40}$/.test(commit)) throw new Error("Invalid input");
const jar = await readFile(`build/libs/purpur-potato-${version}.jar`);
await publishRelease({
credential, version, commit, jar,
notes: process.env.RELEASE_NOTES ?? "See the source history for changes.",
}, fetch);
console.log(`Published purpur-potato v${version}.`);
} catch {
// Never echo credentials, upstream error bodies, transport diagnostics or the environment.
console.error("Release publication failed; inspect the release state before retrying.");
process.exitCode = 1;
}