我使用带有“此项目已参数化”选项形式 jenkins 作业配置的选择参数配置了我的 jenkins 作业(自由式)和 dev/test/prod 环境。
我在我的 github soouce 中将 webhook 设置为https://myjenkins/github-webhook/。当我对 github repo 进行更改时,它总是使用“dev”环境选项触发 jenkins 中的构建。如何根据我的要求选择其他环境?
我用谷歌搜索但没有找到正确的答案。有人能帮我吗?
我使用带有“此项目已参数化”选项形式 jenkins 作业配置的选择参数配置了我的 jenkins 作业(自由式)和 dev/test/prod 环境。
我在我的 github soouce 中将 webhook 设置为https://myjenkins/github-webhook/。当我对 github repo 进行更改时,它总是使用“dev”环境选项触发 jenkins 中的构建。如何根据我的要求选择其他环境?
我用谷歌搜索但没有找到正确的答案。有人能帮我吗?
使用一些分支策略并在您的工作中执行以下操作:
IF BRANCH endsWith RELEASE
deploy to testing
IF BRANCH endsWith SNAPSHOT
deploy to dev
IF BRANCH == MASTER
deploy to production
ETC ...
当开发人员向 Github、Bitbucket 或 Gitlab 执行 git 推送时,这些平台会向您的持续集成服务器(jenkis、travis 等)发送一个 Json,其中包含与推送事件相关的大量信息。最重要的是:
然后在您的持续集成服务器中,您必须解析此 Json 以获取重要值。在 jenkis 中有几个插件,例如:通用 webhook、easy webhook 插件、github 插件等
在提取值之后,您可以使用分支名称、提交消息、提交作者等应用简单或复杂的验证。例如:
你的想象力是你唯一的限制。
有用的链接:
我不知道我是否迟到了,但这适用于那些按日期寻求答案的人。答案是只需在帖子内容参数或任何其他部分(如标题或请求)中分配相同的构建参数变量名称。就像我在 DEPLOY_TO 变量中设置了分支名称并根据该名称创建构建一样。但是现在我们想从 webhook 中获取分支名称,而不是手动选择。我们需要做的就是设置具有相同名称的变量,就像我们将设置 DEPLOY_TO 的值 $.push.changes[0].new.name 一样。它会像冠军一样工作。在帖子参数中 ,看看这个