123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #!/usr/bin/env node
- // Copyright 2019-2021 Tauri Programme within The Commons Conservancy
- // SPDX-License-Identifier: Apache-2.0
- // SPDX-License-Identifier: MIT
- /*
- This script is solely intended to be run as part of the `covector version` step to
- keep the `../tooling/cli.rs/metadata.json` up to date with other version bumps. Long term
- we should look to find a more "rusty way" to import / "pin" a version value in our cli.rs
- rust binaries.
- */
- const { readFileSync, writeFileSync } = require("fs");
- const filePath = `../../tooling/cli.rs/metadata.json`;
- const packageNickname = process.argv[2];
- const bump = process.argv[3];
- if (bump !== "prerelease") {
- throw new Error(
- `We don't handle anything except prerelease right now. Exiting.`
- );
- }
- const inc = (version) => {
- const v = version.split("");
- const n = v.pop();
- return [...v, String(Number(n) + 1)].join("");
- };
- // read file into js object
- const metadata = JSON.parse(readFileSync(filePath, "utf-8"));
- // set field version
- let version;
- if (packageNickname === "cli.js") {
- version = inc(metadata[packageNickname].version);
- metadata[packageNickname].version = version;
- } else {
- version = inc(metadata[packageNickname]);
- metadata[packageNickname] = version;
- }
- writeFileSync(filePath, JSON.stringify(metadata, null, 2) + "\n");
- console.log(`wrote ${version} for ${packageNickname} into metadata.json`);
- console.dir(metadata);
|