UNPKG

@elora-cloud/elora-cli

Version:
55 lines (48 loc) 2.24 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var node_child_process = require('node:child_process'); var process = require('node:process'); var prompts = require('prompts'); var releaseIt = require('release-it'); function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; } var process__default = /*#__PURE__*/_interopDefaultCompat(process); var prompts__default = /*#__PURE__*/_interopDefaultCompat(prompts); class EloraCliReleasePlugin extends releaseIt.Plugin { async beforeRelease() { // log an empty line console.log('building.....'); node_child_process.execSync('pnpm build', { stdio: 'inherit' }); node_child_process.execSync('elora changelog', { stdio: 'inherit' }); } async afterRelease() { // 发布完成后,进行版本的最终发布 let registry = 'https://registry.npmjs.org/'; if (process__default.default.env.ELORA_CLI_PUBLISH_REGISTRY) { registry = process__default.default.env.ELORA_CLI_PUBLISH_REGISTRY; } const response = await prompts__default.default({ type: 'confirm', name: 'confirm', message: '需要二次确认吗?', }); let authCodeOpt = ''; // 如果需要二次确认,询问输入确认码 if (response.confirm) { const confirmationCodeResponse = await prompts__default.default({ type: 'text', name: 'confirmationCode', message: '请输入二次确认码', }); // 输出二次确认码,可以在这里添加校验或逻辑 authCodeOpt = ` --otp=${confirmationCodeResponse.confirmationCode}`; } if (process__default.default.env.ELORA_CLI_PUBLISH_TAG) { node_child_process.execSync(`pnpm publish --registry=${registry}${authCodeOpt}--tag=${process__default.default.env.ELORA_CLI_PUBLISH_TAG}`); } else { node_child_process.execSync(`pnpm publish --registry=${registry}${authCodeOpt}`); } } } exports.EloraCliReleasePlugin = EloraCliReleasePlugin; exports.default = EloraCliReleasePlugin;