UNPKG

unbag

Version:

一个专门用来开发npm工具的包

73 lines (72 loc) 1.99 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.branch = exports.ReleaseBranchConfigDefault = void 0; var _git = require("./../../utils/git.cjs"); var _log = require("./../../utils/log.cjs"); var _index = require("../../utils/message/index.cjs"); const ReleaseBranchConfigDefault = exports.ReleaseBranchConfigDefault = { mainName: "main", mainCheckDisable: false, cleanCheckDisable: false }; const branch = async params => { const { finalUserConfig } = params; const { release: { branch: { mainCheckDisable, mainName, cleanCheckDisable } } } = finalUserConfig; const log = (0, _log.useLog)({ finalUserConfig }); const message = (0, _index.useMessage)({ locale: finalUserConfig.locale }); const { currentBranchGet, currentBranchStatusGet } = (0, _git.useGit)(); const currentBranchName = await currentBranchGet(); if (!currentBranchName) { throw new Error(message.releaseCurrentBranchUndefined()); } log.info(message.releaseCurrentBranchName({ currentBranchName })); if (!mainCheckDisable) { log.info(message.releaseMainBranchChecking()); if (currentBranchName !== mainName) { throw new Error(message.releaseMainBranchCheckFail({ currentBranchName, mainBranchName: mainName })); } log.info(message.releaseMainBranchCheckSuccess()); } else { log.warn(message.releaseMainBranchCheckDisable()); } if (!cleanCheckDisable) { log.info(message.releaseBranchCleanChecking()); const currentBranchStatus = await currentBranchStatusGet(); if (currentBranchStatus) { throw new Error(message.releaseBranchCleanCheckFail({ branchStatusInfo: currentBranchStatus })); } log.info(message.releaseBranchCleanCheckSuccess()); } else { log.warn(message.releaseBranchCleanCheckDisable()); } return { currentBranchName }; }; exports.branch = branch;