我有两个Jenkins管道,分别名为 A 和 B 。两者都使用同一个名为 C1 的Docker容器。作业 A 看起来像这样:
>>> all_fans = ','.join(test).lower()
>>> test2 = [team for team in words if team in all_fans]
>>> test2
['liverpool', 'arsenal']
唯一的区别是作业 B 。在发布操作中,该操作总是将其称为作业 A ,如下所示:
pipeline {
agent {
node {
label 'c1'
}
}
stages {
...
}
post {
always {
script {
echo "always"
}
}
success {
script {
echo "success"
}
}
failure {
script {
echo "failure"
}
}
unstable {
script {
echo "unstable"
}
}
}
}
通过启动作业 A 会发生错误,说:
build job: 'A/master', parameters: [ string(name: 'p1', value: params["p1"]) ]
而且,通过列出父文件夹,很明显,没有用于作业 A 的文件夹。
我该如何解决这个问题?
KI
答案 0 :(得分:0)
此问题的解决方案是这些作业所在的文件夹名称。因此,工作的名称是 test / A / master 。
答案 1 :(得分:0)
从您的评论中,我读到您正在使用Gitea插件来接收来自Gitea实例的存储库。 Gitea储存库像Github一样按用户/组织进行组织。
一旦您通过Jenkins插件添加了Gitea项目(用户/组织),则其中一项工作的全名将是:
<user_or_orga>/<repository_name>/<branch>
例如,对于用户名“ crash”(存储库“ stackoverflow”所属的用户名),它应该是(对于master分支):
crash/stackoverflow/master
要获取所有项目的列表,包括所有完整职位名称,您可以在脚本控制台中(在Manage Jenkins下)运行它:
Jenkins.instance.getAllItems(AbstractItem.class).each {
println(it.fullName)
};
P.S。对于Bitbucket插件,其他规则相同。