首页 > 解决方案 > 使用 API 在 gitlab 中添加项目头像

问题描述

在从 gitswarm 迁移到 gitlab 的过程中,我们丢失了所有项目的头像。我正在尝试通过 python 脚本恢复它们,但是虽然很清楚如何通过项目设置 API 设置头像的路径,但我不明白如何上传头像。我搜索了 GitLab API 文档,但找不到任何东西。有人能帮助我吗?

PS:GitLab API:上传项目头像没有帮助,因为没有人解释上传命令

标签: pythongitlabgitlab-api

解决方案


最后,我能够通过 api 和 python 请求上传项目的头像。无需先上传文件再设置url,只需使用“编辑项目”api即可:

import requests

filename = 'avatar.png'
baseUrl = 'https://gitlabrepositoryaddress.com'
url = baseUrl + '/api/v4/projects/' + str(id)
up = {'avatar':(filename, open(filename, 'rb'), 'multipart/form-data')}
authHeader = {'PRIVATE-TOKEN': 'XXXXXXXXXX'}
request = requests.put(url, files=up, headers=authHeader)

api的参考在这里:https ://docs.gitlab.com/ee/api/projects.html#edit-project

我希望这可以帮助别人


推荐阅读