harbor镜像清理

#!/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

# 删除仓库中的某个镜像标签
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值