Jenkins:常春藤构建随机触发其他项目
Jenkins: Ivy build randomly triggering other projects
我正在使用 Jenkins 在 GitHub 中构建一些 Ivy 项目(每个项目都有几个组件)。
比方说,我有 Ivy 项目 A(组件 a1、a2、a3)、B(组件 b1 和 b2)和 C(组件 c1、c2、c3、c4)。每个组件都有自己的 ivy.xml
文件。
我在 Jenkins 中创建了一个 Ivy 作业,我有一个变量,我在其中设置了 GitHub 项目的名称,然后作业克隆了存储库。
例如,在作业的"GitHub project"字段中我有:https://mygithub.com/myorg/${project}
,而project
是一个作业参数,可以是A
,B
或 C
.
当我触发作业时,比方说传递 ${project} = A
,我希望构建组件 a1、a2 和 a3。那确实发生了。
但是,我还在控制台输出的末尾得到以下几行:
Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectB.b1
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c1
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c3
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c4
Finished: SUCCESS
(ps.: 这些只是例子)
...并且构建了组件 b1、c1、c3 和 c4!
我不知道为什么 Jenkins 要构建其他组件,因为我只要求构建 A。这些组件甚至不是 A.
组件的依赖项
顺便说一下,构建的组件集是随机的 - 它甚至不一致。我认为它与第一行的警告有关。
有什么想法吗?
作业的问题是参数化的 GitHub 项目名称。
我使用 Jenkinsfile
(管道插件)将配置替换为 DSL 作业,现在每个项目都有一个作业,问题消失了。
我正在使用 Jenkins 在 GitHub 中构建一些 Ivy 项目(每个项目都有几个组件)。
比方说,我有 Ivy 项目 A(组件 a1、a2、a3)、B(组件 b1 和 b2)和 C(组件 c1、c2、c3、c4)。每个组件都有自己的 ivy.xml
文件。
我在 Jenkins 中创建了一个 Ivy 作业,我有一个变量,我在其中设置了 GitHub 项目的名称,然后作业克隆了存储库。
例如,在作业的"GitHub project"字段中我有:https://mygithub.com/myorg/${project}
,而project
是一个作业参数,可以是A
,B
或 C
.
当我触发作业时,比方说传递 ${project} = A
,我希望构建组件 a1、a2 和 a3。那确实发生了。
但是,我还在控制台输出的末尾得到以下几行:
Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectB.b1
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c1
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c3
Triggering a new build of Build_and_JUnit » Build-develop » myorg.projectC.c4
Finished: SUCCESS
(ps.: 这些只是例子)
...并且构建了组件 b1、c1、c3 和 c4!
我不知道为什么 Jenkins 要构建其他组件,因为我只要求构建 A。这些组件甚至不是 A.
组件的依赖项顺便说一下,构建的组件集是随机的 - 它甚至不一致。我认为它与第一行的警告有关。
有什么想法吗?
作业的问题是参数化的 GitHub 项目名称。
我使用 Jenkinsfile
(管道插件)将配置替换为 DSL 作业,现在每个项目都有一个作业,问题消失了。