获取其他工作的描述
Get description of other job
有没有办法使用 groovy 获取除“currentBuild”之外的其他 jenkins 作业的描述?
我在尝试 jenkins.model.Jenkins.instance.getItem(<job_name>).lastBuild.getBuildVariables().get("Description");
但它不起作用。它总是 returns jenkins.model.Jenkins.instance.getItem(<job_name>)
是一个空对象。
更难的是作业在项目(文件夹)中
https://jenkins.xxx/job/FOLDERJOBS/job/JOB_TO_BE_EXTRACTED
谢谢
我刚刚在我的脚本控制台中尝试了这个并且它有效。你能试试这个吗?
text="New Descritption"
def jobName = "test/test1".split("/")
def it=Jenkins.instance
for(name in jobName){
it=it.getItem(name)
}
it.description = text
您可能需要在 Manage Jenkins 中批准一些方法(白名单),以便在它给您权限错误的情况下使其正常工作。
只需使用jenkins.model.Jenkins.instance.getItemByFullName()
instead of getItem()
。
该方法适用于完整的作业名称(包括文件夹),例如 FOLDERJOBS/JOB_TO_BE_EXTRACTED
。
有没有办法使用 groovy 获取除“currentBuild”之外的其他 jenkins 作业的描述?
我在尝试 jenkins.model.Jenkins.instance.getItem(<job_name>).lastBuild.getBuildVariables().get("Description");
但它不起作用。它总是 returns jenkins.model.Jenkins.instance.getItem(<job_name>)
是一个空对象。
更难的是作业在项目(文件夹)中
https://jenkins.xxx/job/FOLDERJOBS/job/JOB_TO_BE_EXTRACTED
谢谢
我刚刚在我的脚本控制台中尝试了这个并且它有效。你能试试这个吗?
text="New Descritption"
def jobName = "test/test1".split("/")
def it=Jenkins.instance
for(name in jobName){
it=it.getItem(name)
}
it.description = text
您可能需要在 Manage Jenkins 中批准一些方法(白名单),以便在它给您权限错误的情况下使其正常工作。
只需使用jenkins.model.Jenkins.instance.getItemByFullName()
instead of getItem()
。
该方法适用于完整的作业名称(包括文件夹),例如 FOLDERJOBS/JOB_TO_BE_EXTRACTED
。