jenkins active choise使用
active choise插件使用
jenkins Groovy Script 脚本
def gettags="python3 /data/jenkins/tools/get_images.py $service $env".execute() return gettags.text.readLines()
get_images.py
# import json # import heapq # from tqdm import tqdm # from time import sleep, time # import traceback import requests,sys from requests.auth import HTTPBasicAuth from requests.adapters import HTTPAdapter from requests.packages.urllib3.util.retry import Retry login = HTTPBasicAuth('admin', 'admin') baseurl = "harbor.harbor.com/" harborurl = 'https://harbor.harbor.com/api/v2.0/projects/' # 去除requests 库的ssl忽略证书的告警 requests.packages.urllib3.disable_warnings() # Get the corresponding tags based on the name of the mirror def get_images_tags(servicename,env): tag_url = harborurl + env +'/repositories/' + servicename + "/artifacts" get_tags = requests.get(tag_url, auth=login, verify=False).json() for tag in get_tags: tag = tag["tags"][0]["name"] image_full_name = baseurl + env+'/' + servicename + ":" + tag print(image_full_name) if __name__ == '__main__': #env = str(sys.argv[1]) servicename = str(sys.argv[1]) env = str(sys.argv[2]) get_images_tags(servicename,env)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通