当在github中引发PR时,我已经经历了许多关于触发Jenkins构建的帖子。
我已经检查了jenkins工作中的Git hub Pull Request Builder
选项,还提供了${sha1}
作为分支。除此之外,我在我的回购中添加了webhook和jenkins Github插件作为服务。
这里还有其他任何错过的东西。当PR被提升时,我没有看到构建被触发。
你可以使用Generic Webhook Trigger Plugin来做到这一点。
使用表达式$ .action配置带有变量操作的Generic Webhook Trigger Plugin
将过滤器文本配置为$ action,将过滤器regexp配置为:^(打开|重新打开|同步)$
现在,只要打开PR,重新打开或推送新提交,此任务就会运行。
您还可以从webhook中选择其他值,例如:
| variable | expression | expressionType | defaultValue | regexpFilter |
| action | $.action | JSONPath | | |
| pr_id | $.pull_request.id | JSONPath | | |
| pr_state | $.pull_request.state | JSONPath | | |
| pr_title | $.pull_request.title | JSONPath | | |
| pr_from_ref | $.pull_request.head.ref | JSONPath | | |
| pr_from_sha | $.pull_request.head.sha | JSONPath | | |
| pr_from_git_url | $.pull_request.head.repo.git_url | JSONPath | | |
| pr_to_ref | $.pull_request.base.ref | JSONPath | | |
| pr_to_sha | $.pull_request.base.sha | JSONPath | | |
| pr_to_git_url | $.pull_request.base.repo.git_url | JSONPath | | |
| repo_git_url | $.repository.git_url | JSONPath | | |