semantic-release - 如果要发布新的主要版本,如何使语义发布中止并失败?
问题描述
我想在语义发布中添加一个检查,只允许它发布次要版本和补丁版本。如果它检测到需要执行新的主要版本,我希望该过程中止并失败(而不是继续执行发布)。我怎样才能做到这一点?
解决方案
现有插件
我为执行此操作的插件创建了一个 npm 包。
npm install --save-dev semantic-release-fail-on-major-bump
.releaserc
{
"plugins": [
"semantic-release-fail-on-major-bump",
]
}
自定义插件
如果发布的包不能解决您的特定需求,您可以创建一个语义发布插件来实现该verifyRelease
步骤并根据下一个发布类型抛出错误。
plugin/index.js
function verifyRelease (pluginConfig, context) {
if (context.nextRelease.type === "major") {
throw new Error("We cannot publish breaking changes at this time.");
}
}
module.exports = {verifyRelease};
推荐阅读
- javascript - 如何使用jquery根据表头动态调整表数据?
- php - 从多个表中选择用户名的php登录
- node.js - 如何设置 Kubernetes 就绪和活跃度探针
- android - SDK Manager 部分许可尚未被接受
- typescript - 以任何对象的数组为参数的通用函数
- javascript - 为什么没有应用 JQuery 脚本是 Asp.net MVC blazor?
- sql - 这是一个有效的 SQL 关系吗?
- google-chrome-extension - 仅启用在 chome 扩展中打开的一个设置页面
- c++ - 如何从矢量中删除所有项目?C++
- laravel - 试图获取非对象 Laravel 的属性“用户”