MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / run

Function run

scripts/validate-release-ref.ts:35–56  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

33};
34
35const run = (): void => {
36 const args = process.argv.slice(2);
37 const tagEnv = readOption(args, "--tag-env");
38 const versionEnv = readOption(args, "--version-env");
39 const writeEnv = readOption(args, "--write-env");
40 const outputName = readOption(args, "--output");
41
42 if (tagEnv && versionEnv) {
43 throw new Error("Use either --tag-env or --version-env, not both");
44 }
45 if (!tagEnv && !versionEnv) {
46 throw new Error("Expected --tag-env or --version-env");
47 }
48
49 const tag = tagEnv
50 ? validateReleaseTag(readEnv(tagEnv))
51 : `v${validateReleaseVersion(readEnv(versionEnv!))}`;
52
53 appendGitHubFile(process.env.GITHUB_ENV, writeEnv ? `${writeEnv}=${tag}` : "");
54 appendGitHubFile(process.env.GITHUB_OUTPUT, outputName ? `${outputName}=${tag}` : "");
55 console.log(`Validated release tag ${tag}`);
56};
57
58const readOption = (args: ReadonlyArray<string>, name: string): string | undefined => {
59 const index = args.indexOf(name);

Callers 1

Calls 6

readOptionFunction · 0.85
validateReleaseTagFunction · 0.85
readEnvFunction · 0.85
validateReleaseVersionFunction · 0.85
appendGitHubFileFunction · 0.85
logMethod · 0.80

Tested by

no test coverage detected