chore: initialize from frontend template 4dc033c
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
import { appendFile } from "node:fs/promises";
|
||||
|
||||
import { verifyCiCandidateArchive } from "./lib/ci-candidate-archive.ts";
|
||||
import {
|
||||
CANDIDATE_ARCHIVE_USAGE,
|
||||
parseCandidateArchiveArguments,
|
||||
} from "./lib/ci-candidate-archive-cli.ts";
|
||||
|
||||
const parsedArguments = parseCandidateArchiveArguments(process.argv.slice(2));
|
||||
if (!parsedArguments) {
|
||||
process.stderr.write(CANDIDATE_ARCHIVE_USAGE);
|
||||
process.exitCode = 2;
|
||||
} else try {
|
||||
const result = await verifyCiCandidateArchive({
|
||||
archivePath: parsedArguments.archivePath,
|
||||
repositoryRoot: process.cwd(),
|
||||
...(process.env.CANDIDATE_ARCHIVE_SHA256
|
||||
? { expectedSha256: process.env.CANDIDATE_ARCHIVE_SHA256 }
|
||||
: {}),
|
||||
...(parsedArguments.extractTo ? { extractTo: parsedArguments.extractTo } : {}),
|
||||
});
|
||||
if (parsedArguments.githubOutput) {
|
||||
await appendFile(
|
||||
parsedArguments.githubOutput,
|
||||
`archive_sha256=${result.archiveSha256}\ndist_sha256=${result.manifest.distSha256}\n`,
|
||||
"utf8",
|
||||
);
|
||||
}
|
||||
process.stdout.write(
|
||||
`Candidate archive: ${result.memberCount} members, sha256=${result.archiveSha256} PASS\n`,
|
||||
);
|
||||
} catch (error) {
|
||||
process.stderr.write(
|
||||
`Candidate archive failed: ${error instanceof Error ? error.message : String(error)}\n`,
|
||||
);
|
||||
process.exitCode = 1;
|
||||
}
|
||||
Reference in New Issue
Block a user