在语义发布中处理 nextRelease 版本
Handling nextRelease version in semantic release
所以我一直在阅读文档并大致了解了
我应该做什么,但没有真正掌握如何我能做到。
这是我的问题:
- 我正在使用语义发布将我的包发布到 npm
- 我还与 Pact 进行了合同测试。
- 我希望我的契约在发布后发布,如果成功,版本与新版本相同
我怎样才能轻松做到这一点?
我查看了文档,了解到我可以使用 exec
插件,但是,我发现我不清楚我应该如何配置 semantic-release 以与现在完全一样,只是暴露该版本至少是一个环境变量,并且找不到人们这样做的例子。
我可以使用 hooks,但我担心如果 npm publish 由于某些原因没有发生,我仍然会在下一个版本中发布我的协议,这并不完全存在。这里有什么建议吗?
看来我也可以编写自己的 JS 脚本(参见 https://github.com/semantic-release/semantic-release/blob/3cc62f0318ff8917fcdc7cebe890da9dbaa7b3f9/docs/developer-guide/js-api.md)来执行此操作以及处理版本,但我不确定此示例的作用以及它涵盖的当前行为.
我想我也可以编写自己的契约插件,但这更进一步,必须了解语义发布的内部原理。
所以我在进行一些 examples/experience 分享,也许是一个简单易行的解决方案,可以在不到 30 分钟的时间内完成:)
谢谢
PS:很抱歉在这里发帖,但似乎语义释放问题并不是真正为支持问题而设计的。
您可以在 @semantic-release/npm
和 @semantic-release/github
之后的额外发布步骤中简单地使用 @semantic-release/exec
:
{
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
"@semantic-release/npm",
"@semantic-release/github",
["@semantic-release/exec", {
"publishCmd": "publish-pacts ${nextRelease.version}"
}],
]
}
只有当 npm 和 github 发布成功时,脚本 publish-pacts
才会被调用,发布版本作为每个新版本的第一个参数。
所以我一直在阅读文档并大致了解了 我应该做什么,但没有真正掌握如何我能做到。
这是我的问题: - 我正在使用语义发布将我的包发布到 npm - 我还与 Pact 进行了合同测试。 - 我希望我的契约在发布后发布,如果成功,版本与新版本相同
我怎样才能轻松做到这一点?
我查看了文档,了解到我可以使用 exec
插件,但是,我发现我不清楚我应该如何配置 semantic-release 以与现在完全一样,只是暴露该版本至少是一个环境变量,并且找不到人们这样做的例子。
我可以使用 hooks,但我担心如果 npm publish 由于某些原因没有发生,我仍然会在下一个版本中发布我的协议,这并不完全存在。这里有什么建议吗?
看来我也可以编写自己的 JS 脚本(参见 https://github.com/semantic-release/semantic-release/blob/3cc62f0318ff8917fcdc7cebe890da9dbaa7b3f9/docs/developer-guide/js-api.md)来执行此操作以及处理版本,但我不确定此示例的作用以及它涵盖的当前行为.
我想我也可以编写自己的契约插件,但这更进一步,必须了解语义发布的内部原理。
所以我在进行一些 examples/experience 分享,也许是一个简单易行的解决方案,可以在不到 30 分钟的时间内完成:)
谢谢
PS:很抱歉在这里发帖,但似乎语义释放问题并不是真正为支持问题而设计的。
您可以在 @semantic-release/npm
和 @semantic-release/github
之后的额外发布步骤中简单地使用 @semantic-release/exec
:
{
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
"@semantic-release/npm",
"@semantic-release/github",
["@semantic-release/exec", {
"publishCmd": "publish-pacts ${nextRelease.version}"
}],
]
}
只有当 npm 和 github 发布成功时,脚本 publish-pacts
才会被调用,发布版本作为每个新版本的第一个参数。