Jenkinsfile Pipeline(Declarative):在推送提交到Github repo时触发我的管道



我有一个关于触发管道的问题。

Github Repo A:

  • 包含我的Jenkinsfile
  • 签出回购B
  • 执行Repo B中的脚本

Github Repo B:

  • 容器脚本
  • 将作为我的管道的一部分执行

所以我希望每次将提交推送到Repo B时都能触发这个管道,最好的方法是什么?使用Github网络挂钩是最好的方法吗?

我也遇到了类似的问题。我的JenkinsFile不在我想观看并通过BitBucket推送触发的同一SCM中。

SCM CodeBase   JenkinsFile.groovy
SCM SourceCpp  <project>

我尝试使用JenkinsFile.groovy创建声明性管道,以触发推送到SourceCpp。

到目前为止,我已经尝试过:

轮询SCM-不起作用,我无法指定要轮询的SCM。触发器远程构建-明显的安全风险,不能在明文中有API密钥。GitHub-不适用于我的BitBucket。Bitbucket webhook触发器-无法将SCM覆盖到SourceCpp
当将更改推送到Bitbucket时生成-很有希望,但不起作用/触发器,尽管我覆盖了URL。

但有一个解决方案:

  1. 使用SCM SourceCpp创建新的FreeStyle作业Dull_project
  2. 为其SCM更改设置简单的Bitbucket webhook触发器(或您喜欢的任何其他触发器(
  3. 在JenkinsFile作业中,选择触发器在构建其他项目后构建

或作为声明性语法:

*triggers {
// this is a hack to make dependency on SourceCpp.git work
upstream 'Dull_project'
}*

问题解决了。

最新更新