如何通过Jenkins脚本控制台获取所有任务的完整访问URL
Jenkins脚本控制台获取任务完整URL解决方案
修改后可用脚本
// 获取Jenkins系统配置的根域名 def jenkinsRoot = Jenkins.instance.getRootUrl() Jenkins.instance.getAllItems(org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject).each { job -> // 拼接得到完整访问链接 def fullUrl = jenkinsRoot + job.getUrl() println fullUrl // 如需直接输出配置页链接,打开下方注释 // println fullUrl + "configure" }
原理解释
Jenkins.instance.getRootUrl()会直接读取Jenkins系统配置中预设的根地址,不需要手动硬编码域名,只要你的Jenkins配置过该字段就能正常获取。job.getUrl()会自动输出符合Jenkins路径规则的相对地址,格式为job/一级目录/job/二级目录/job/任务名/,不需要你自行从fullName转换格式。
异常处理
如果运行时发现根地址返回为空,说明你的Jenkins未配置根URL,可手动替换根地址变量即可:
// 手动填写你的Jenkins实际根地址,注意末尾保留斜杠 def jenkinsRoot = "https://jenkinsmy.aa.com/"
内容的提问来源于stack exchange,提问作者10raw
相关产品推荐
相关产品推荐

