diff options
Diffstat (limited to 'tools/release/02_publish_crates.ts')
-rw-r--r-- | tools/release/02_publish_crates.ts | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/release/02_publish_crates.ts b/tools/release/02_publish_crates.ts new file mode 100644 index 000000000..1bb02f460 --- /dev/null +++ b/tools/release/02_publish_crates.ts @@ -0,0 +1,21 @@ +#!/usr/bin/env -S deno run --allow-read --allow-write --allow-run=cargo --allow-net=crates.io +// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. +import { DenoWorkspace } from "./deno_workspace.ts"; +import { getCratesPublishOrder } from "./deps.ts"; + +const workspace = await DenoWorkspace.load(); +const cliCrate = workspace.getCliCrate(); + +const dependencyCrates = getCratesPublishOrder(workspace.getDependencyCrates()); + +try { + for (const [i, crate] of dependencyCrates.entries()) { + await crate.publish(); + console.log(`Published ${i + 1} of ${dependencyCrates.length} crates.`); + } + + await cliCrate.publish(); +} finally { + // system beep to notify error or completion + console.log("\x07"); +} |