如何从内部触发另一个作业的生成Jenkinsfile
?
我假设这项工作是同一个github组织下的另一个存储库,该存储库已经有自己的Jenkins文件。
我也只想在分支名称为master时执行此操作,因为触发任何本地分支的下游构建都没有意义。
更新:
stage 'test-downstream'
node {
def job = build job: 'some-downtream-job-name'
}
不过,执行时我还是报错
找不到名为some-downtream-job-name的参数化作业
我确定这项工作存在于jenkins中,并且与当前工作位于同一组织文件夹下。这是另一项有自己的工作Jenkinsfile
。
请注意,此问题特定于GitHub Organization Plugin,该插件可自动为GitHub
Organization
中的每个存储库和分支创建和维护作业。
首先,将build
步骤包装进去很浪费执行器插槽node
。您的上游执行者将无故闲着。
其次,在多分支项目中,可以使用环境变量BRANCH_NAME
使逻辑在当前分支上成为条件。
第三,该job
参数采用绝对或相对的作业名称。如果您提供的名称没有任何路径限定,则将引用同一文件夹中的另一个作业,对于多分支项目,这将意味着同一存储库的另一个分支。
因此,您打算写的可能是
if (env.BRANCH_NAME == 'master') {
build '../other-repo/master'
}
是否可以从另一个作业触发Jenkins多分支管道的立即扫描操作?我在将旧版本的Gitlab与Jenkins中的管道作业集成时遇到了某些问题,并遇到了这样的解决方法。 或者,现在可以使用notifyCommit web钩子触发扫描多分支管道吗? 这样做的目的是每当Git存储库中发生更改时扫描多分支管道,以便在这样的更改后检测到新的分支。另一个我无法以其他方式实现的目的(除了对我来说非常邪恶的每个分支
我有一个不包含Jenkinsfile的存储库——我没有办法影响存储库本身。这意味着我既不能在存储库中添加也不能更改任何文件(在本例中,它是Qt-repo)。 我想做的是创建多个jenkinsfile,每个文件都为不同的目标配置和构建Qt库,或者运行不同的附加脚本<所有这些Jenkins文件将收集在不同的存储库中。 现在,我的问题是如何创建一个管道作业,一旦Qt存储库中发生更改,就会触发该作业,但使
问题内容: 我正在为我的组织设计Jenkins CICD管道,但我有以下问题。 我来自一个devops团队,该团队控制着多个开发团队的Jenkins渠道。我基本上想编写一个可以由多个团队运行的具有多个阶段的Jenkins文件。我知道可以将此Jenkins文件检入每个团队的Gitrepo,并且一旦对代码存储库进行更改,它就可以调用完整的管道。 为确保此JenkinsFile是可维护的并且对于此Jen
问题内容: 有任何方法可以从具有参数的另一个管道触发管道作业,我已经尝试过 也尝试过 和 没有运气,它说: 项目类型不支持参数 问题答案: 由于子作业是另一个多分支管道项目,因此我需要指定我要运行的分支 现在可以用了
问题内容: 我有一个名为“ TestPipeline”的詹金斯管道作业。我想在两个不同的从属服务器上触发构建,标记为“ tester1”和“ tester2”,并且管道脚本在这里非常简单: 但是,当我运行TestPipeline作业时,“ test_job”将不会在我分配的节点上运行。但改为在随机节点上运行。 我想知道是否应该在我的“ test_job”上设置“限制可以在哪里运行该项目”。因此,我
我们在Jenkins中使用gerrit-trigger,当一个新的变更集被推送审查时,构建被触发。 现在我们要介绍管道,并在供应链管理中使用定义管道的解决方案 因此我们希望当构建被触发时,下面的管道插件可以工作来检查这个refspec