41 lines
1.0 KiB
Python
41 lines
1.0 KiB
Python
import json
|
|
import requests
|
|
from pprint import pprint
|
|
|
|
gitLabURL = "GITLAB URL"
|
|
private_token = "GITLAB-PRIVATE-TOKEN"
|
|
gitlabUsername = "USERNAME"
|
|
gitlabPassword = "PASSWORD"
|
|
|
|
giteaURL = "GITEA URL"
|
|
giteaAPIKey = "GITEA API KEY"
|
|
|
|
r = requests.get(gitLabURL + "/api/v4/projects", params={"private_token": private_token, "per_page": 100})
|
|
|
|
oldRepoData = json.loads(r.text)
|
|
|
|
repolist = {}
|
|
|
|
for x in oldRepoData:
|
|
repolist[x['name']] = x['http_url_to_repo']
|
|
|
|
for reponame in repolist:
|
|
data = {"auth_password": gitlabUsername,
|
|
"auth_username": gitlabPassword,
|
|
"clone_addr": repolist[reponame],
|
|
"description": reponame,
|
|
"issues": True,
|
|
"labels": True,
|
|
"milestones": True,
|
|
"mirror": False,
|
|
"private": False,
|
|
"pull_requests": True,
|
|
"releases": True,
|
|
"repo_name": reponame,
|
|
"uid": 1,
|
|
"wiki": True,
|
|
'token': giteaAPIKey}
|
|
migrate = requests.post(giteaURL + '/api/v1/repos/migrate/',data = data)
|
|
|
|
print(migrate.text)
|