使用Python3实现Gitee码云自动化发布

news/2024/11/22 22:28:18/

仓库信息

https://gitee.com/liumou_site/ip

实现代码

import osimport requests
from loguru import loggerdef gitee(ver, message, prerelease: bool = False):"""在 Gitee 上创建发布版本:param ver: 版本号:param message: 发布信息:param prerelease: 是否为预发布版本,默认为 False:return: 无"""# 配置信息GITEE_ACCESS_TOKEN = os.getenv('GITEE_ACCESS_TOKEN')if GITEE_ACCESS_TOKEN is None:print("请设置环境变量 GITEE_ACCESS_TOKEN")exit(1)logger.debug("GITEE_ACCESS_TOKEN: " + GITEE_ACCESS_TOKEN)OWNER = 'liumou_site'REPO = 'ip'TAG_NAME = f'v{ver}'NAME = f'Version {ver}'# 构建请求 URLurl = f'https://gitee.com/api/v5/repos/{OWNER}/{REPO}/releases'# 构建请求体data = {'tag_name': TAG_NAME,'name': NAME,'body': message,'target_commitish': 'master','owner': OWNER,'repo': REPO,'prerelease': prerelease,'access_token': GITEE_ACCESS_TOKEN}# 发送 POST 请求response = requests.post(url, data=data)# 检查响应if response.status_code == 201:logger.info('Release created successfully!')logger.info(response.json())else:logger.error(f'Failed to create release: {response.status_code}')logger.error(response.text)logger.error(response.request)exit(2)if __name__ == '__main__':gitee(ver='1.0.9', message='master', prerelease=False)

效果

"D:\Program Files\Python313\python.exe" D:\code\gitee\go\ip\gitee.py 
2024-11-21 10:36:57.933 | DEBUG    | __main__:gitee:21 - GITEE_ACCESS_TOKEN: 7ac..........
2024-11-21 10:36:58.406 | INFO     | __main__:gitee:48 - Release created successfully!
2024-11-21 10:36:58.407 | INFO     | __main__:gitee:49 - {'id': 450710, 'tag_name': 'v1.0.9', 'target_commitish': '28a5383f0cc7103546c805100b4a0d68e40547c8', 'prerelease': False, 'name': 'Version 1.0.9', 'body': 'master', 'author': {'id': 1785140, 'login': 'liumou_site', 'name': '坐公交也用券', 'avatar_url': 'https://foruda.gitee.com/avatar/1673661977951995067/1785140_liumou_site_1673661977.png', 'url': 'https://gitee.com/api/v5/users/liumou_site', 'html_url': 'https://gitee.com/liumou_site', 'remark': '', 'followers_url': 'https://gitee.com/api/v5/users/liumou_site/followers', 'following_url': 'https://gitee.com/api/v5/users/liumou_site/following_url{/other_user}', 'gists_url': 'https://gitee.com/api/v5/users/liumou_site/gists{/gist_id}', 'starred_url': 'https://gitee.com/api/v5/users/liumou_site/starred{/owner}{/repo}', 'subscriptions_url': 'https://gitee.com/api/v5/users/liumou_site/subscriptions', 'organizations_url': 'https://gitee.com/api/v5/users/liumou_site/orgs', 'repos_url': 'https://gitee.com/api/v5/users/liumou_site/repos', 'events_url': 'https://gitee.com/api/v5/users/liumou_site/events{/privacy}', 'received_events_url': 'https://gitee.com/api/v5/users/liumou_site/received_events', 'type': 'User'}, 'created_at': '2024-11-21T10:36:58+08:00', 'assets': [{'browser_download_url': 'https://gitee.com/liumou_site/ip/archive/refs/tags/v1.0.9.zip', 'name': 'v1.0.9.zip'}, {'browser_download_url': 'https://gitee.com/liumou_site/ip/archive/refs/tags/v1.0.9.tar.gz', 'name': 'v1.0.9.tar.gz'}]}进程已结束,退出代码0

在这里插入图片描述

官方接口

Gitee接口


http://www.ppmy.cn/news/1549142.html

相关文章

Windws MySQL 8.4 LTS的安装(保姆级教程)

Windws MySQL 8.4 LTS的安装(保姆级教程) 一、Mysql版本二、Mysql下载三、Mysql安装3.1 Mysql安装3.2 Mysql配置 四、Mysql环境变量配置五、验证Mysql 一、Mysql版本 美国时间 2024 年 4 月 30 日,Oracle正式发布了MySQL数据库8.0.37版本的更…

使用 LSTM(长短期记忆网络) 模型对时间序列数据(航空旅客人数数据集)进行预测

代码功能 数据准备 加载数据:从公开的航空旅客人数数据集(Airline Passengers Dataset)中读取时间序列数据。 对数变换和平稳化:对数据应用 log1p 函数减少趋势和波动,使模型更容易学习规律。 归一化处理:…

Modern Effective C++ Item 11:优先考虑使用deleted函数而非使用未定义的私有声明

C98 方法:private C98 将特殊成员函数(如拷贝构造函数和拷贝赋值运算符)声明为私有且不定义。这种方法可以防止客户端调用这些函数,但如果在成员函数或友元函数中调用这些函数,会在链接时引发错误。C11 使用 delete …

MongoDB 监控:确保数据库性能和可靠性

MongoDB 监控:确保数据库性能和可靠性 MongoDB 是一个流行的开源 NoSQL 数据库,以其灵活的文档模型和强大的查询语言而闻名。然而,为了确保 MongoDB 的性能和可靠性,监控是至关重要的。本文将讨论 MongoDB 监控的重要性、关键监控…

linux安装TDengine

linux安装TDengine 下载tar.gz安装包,下载地址:使用安装包快速体验 TDengine | TDengine 文档 | 涛思数据 创建TD的安装目录,并将下载好的安装包复制到此目录下。 mkdir /usr/local/tdengine/ 解压安装包 tar -zxvf TDengine-server-3.2.…

[开源] 告别黑苹果!用docker安装MacOS体验苹果系统

没用过苹果电脑的朋友可能会对苹果系统好奇,有人甚至会为了尝鲜MacOS去折腾黑苹果。如果你只是想体验一下MacOS,这里有个更简单更优雅的解决方案,用docker安装MacOS来体验苹果系统。 一、项目简介 项目描述 Docker 容器内的 OSX&#xff08…

labelme格式与yolo格式区别

概述 Labelme格式和YOLO格式是两种用于图像标注的常见格式,主要用于目标检测和图像分割任务。 矩形标注: 矩形标注labelme文件格式(json): { {"version": "2024.11.5.0","flags": {}…

实验室管理解决方案:Spring Boot技术

6系统测试 6.1概念和意义 测试的定义:程序测试是为了发现错误而执行程序的过程。测试(Testing)的任务与目的可以描述为: 目的:发现程序的错误; 任务:通过在计算机上执行程序,暴露程序中潜在的错误。 另一个…