UNPKG

@142vip/release-version

Version:

通用型版本迭代Cli工具,支持版本迭代更新,Git提交信息、打标记并推送到远程

37 lines (34 loc) 2.57 kB
import { VipCommander, VipNodeJS, VipConsole, vipConfig } from '@142vip/utils'; import { a as versionBumpDryRun, v as versionBump } from './shared/release-version.BAUZrrzf.mjs'; import { bumpConfigDefaults, CONFIG_DEFAULT_NAME } from './utils/index.mjs'; import './enums/index.mjs'; const name = "@142vip/release-version"; const version = "0.0.1-alpha.15"; const description = "通用型版本迭代Cli工具,支持版本迭代更新,Git提交信息、打标记并推送到远程"; async function mergeConfig(cliOptions) { const releaseVersionConfig = await vipConfig.loadCliConfig(CONFIG_DEFAULT_NAME, bumpConfigDefaults); const config = vipConfig.mergeCommanderConfig(releaseVersionConfig, cliOptions); console.log("mergeConfig:", config); return config; } function releaseVersionCliMain() { const vipCommander = new VipCommander(name, version, description); vipCommander.usage("[...files]").option("--preid <preid>", "\u9884\u53D1\u5E03\u6807\u8BB0", "alpha").option("--all", `Include all files`, bumpConfigDefaults.all).option("-c, --commit", "Commit message,also can skip commit", true).option("-t, --tag", "Tag name,also can skip tag", false).option("-p, --push", `Push to remote`, bumpConfigDefaults.push).option("-y, --confirm", `Skip confirmation`, bumpConfigDefaults.confirm).option("-r, --recursive", `Bump package.json files recursively`, bumpConfigDefaults.recursive).option("--skip-git-verify", "Skip git verification").option("--ignore-scripts", `Ignore scripts`, bumpConfigDefaults.ignoreScripts).option("--changelog", "generate CHANGELOG.md", false).option("--current-version <version>", "Current version").option("-x, --execute <command>", "Commands to execute after version bumps").option("--scopeName <scopeName>", "Package name in monorepo").option("--dry-run", "\u8BD5\u8FD0\u884C", false).option("--vip", "@142vip\u7EC4\u7EC7\u4E13\u7528\u529F\u80FD", false).option("--logger", "\u5F00\u542F\u65E5\u5FD7\u8FFD\u8E2A\u6A21\u5F0F", false).action(async (cliOptions) => { const versionBumpOptions = await mergeConfig(cliOptions); console.log(111, cliOptions, versionBumpOptions); try { if (cliOptions.dryRun) { await versionBumpDryRun(versionBumpOptions); VipNodeJS.existSuccessProcess(); } await versionBump(versionBumpOptions); } catch (error) { console.log(error); const message = error.message || String(error); VipConsole.error(message); VipNodeJS.existErrorProcess(); } }); vipCommander.parse(VipNodeJS.getProcessArgv()); } releaseVersionCliMain();