fix: harden V1 deployment manifests
This commit is contained in:
@@ -2,7 +2,7 @@ import { readFile } from "node:fs/promises";
|
||||
import { join, resolve } from "node:path";
|
||||
import { pathToFileURL } from "node:url";
|
||||
|
||||
import { atomicWrite, networkSpec, readManifest } from "./finalize-manifest.mjs";
|
||||
import { atomicWrite, EDUCATIONAL_WARNING, networkSpec, readManifest } from "./finalize-manifest.mjs";
|
||||
|
||||
export async function selectManifest({ root = process.cwd(), network }) {
|
||||
const spec = networkSpec(network);
|
||||
@@ -14,13 +14,14 @@ export async function selectManifest({ root = process.cwd(), network }) {
|
||||
return { source, active };
|
||||
}
|
||||
|
||||
async function main(argv) {
|
||||
export async function runSelectCli(argv, { root = process.cwd(), log = console.log } = {}) {
|
||||
log(EDUCATIONAL_WARNING);
|
||||
if (argv.length !== 1) throw new Error("usage: select-manifest.mjs <anvil|base-sepolia>");
|
||||
return selectManifest({ network: argv[0] });
|
||||
return selectManifest({ root, network: argv[0] });
|
||||
}
|
||||
|
||||
if (process.argv[1] && pathToFileURL(resolve(process.argv[1])).href === import.meta.url) {
|
||||
main(process.argv.slice(2)).catch((error) => {
|
||||
runSelectCli(process.argv.slice(2)).catch((error) => {
|
||||
console.error(error.message);
|
||||
process.exitCode = 1;
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user