unbag
Version:
一个专门用来开发npm工具的包
51 lines (50 loc) • 1.22 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.push = exports.ReleasePushConfigDefault = void 0;
var _execa = require("execa");
var _log = require("./../../utils/log.cjs");
var _index = require("./../../utils/message/index.cjs");
const ReleasePushConfigDefault = exports.ReleasePushConfigDefault = {};
const push = async params => {
const {
finalUserConfig
} = params;
const log = (0, _log.useLog)({
finalUserConfig
});
const message = (0, _index.useMessage)({
locale: finalUserConfig.locale
});
const {
release: {
dry,
push: {
disable,
force
}
}
} = finalUserConfig;
log.info(message.release.push.processing());
let _disable = disable;
if (dry) {
_disable = true;
log.warn(message.release.dry.push.disable());
}
if (_disable) {
log.warn(message.release.push.disable());
return;
}
try {
if (force) {
log.warn(message.release.push.disable());
}
await (0, _execa.$)`git push --follow-tags ${force ? ["-f"] : []}`;
} catch (err) {
log.warn(message.release.push.fail());
throw err;
}
log.info(message.release.push.success());
};
exports.push = push;