Jenkins管道-为给定的工作触发新的构建

问题描述

我有两个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

解决方法

此问题的解决方案是这些作业所在的文件夹名称。因此,工作的名称是 test / A / master

,

从您的评论中,我读到您正在使用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插件,其他规则相同。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...