#!/usr/bin/python3
# encoding: utf-8
#filename: harbor-image-delete.py
#author: gaohaixiang
#writetime:202501241712
import re
import requests
from urllib.parse import quote
from requests.auth import HTTPBasicAuth
from datetime import datetime, timezone, timedelta
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
# # Harbor 的地址
url = "http://10.8.5.86:8088"
authorization = "Basic YWRtaW46SGFyYm9yMTIzNDVIYXJib3I="
# 获取所有项目
def get_projects():
return f"{
url}/api/v2.0/projects"
# 获取指定项目下的仓库
def get_repositories(project_name):
return f"{
url}/api/v2.0/projects/{
project_name}/repositories"
# 获取对应镜像的sha256
def get_artifacts(project_name,repository_name):
encoded_repository_name = quote(repository_name, safe='')
return f"{
url}/api/v2.0/projects/{
project_name}/repositories/{
encoded_repository_name}/artifacts"
# 获取仓库中的所有镜像标签
def get_tags(project_name, repo_name, reference):
# 对项目名称、仓库名称和引用进行URL编码
encoded_project_name = quote(project_name, safe='')
encoded_repo_name = quote(repo_name, safe='')
encoded_reference = quote(reference, safe='')
# 构建获取标签的完整URL
tags_url = f"{
url}/api/v2.0/projects/{
encoded_project_name}/repositories/{
encoded_repo_name}/artifacts/{
encoded_reference}/tags"
return tags_url
# 删除仓库中的某个镜像标签
harbor镜像清理
于 2025-01-24 17:15:11 首次发布

最低0.47元/天 解锁文章
788

被折叠的 条评论
为什么被折叠?



