from github import Github
GH_ACCESS_TOKEN = os.environ['GH_ACCESS_TOKEN']
GITEA_ACCESS_TOKEN = os.environ['GITEA_ACCESS_TOKEN']
-TARGET_HOST = "https://git.yourserver.co"
+GITEA_USERNAME = os.environ['GITEA_USERNAME']
+GITEA_PASSWORD = os.environ['GITEA_PASSWORD']
+TARGET_HOST = "https://codeberg.org"
MIGRATE_URI = "/api/v1/repos/migrate"
ENDPOINT = "%s%s" % (TARGET_HOST, MIGRATE_URI)
r['description'] = str(repo.description)
r['private'] = str(repo.private)
def createRepo(source_url,name,description,private):
headers = { "accept": "application/json", "content-type": "application/json" }
headers["Authorization"] = "token %s" % (GITEA_ACCESS_TOKEN)
- migrate_data = { "mirror": "false", "uid": 1 }
- migrate_data["auth_password"] = "%s" % (GITEA_PASS)
- migrate_data["auth_username"] = "%s" % (GITEA_USER)
+ migrate_data = { "mirror": False, "uid": 1 }
+ migrate_data["auth_password"] = "%s" % (GITEA_PASSWORD)
+ migrate_data["auth_username"] = "%s" % (GITEA_USERNAME)
migrate_data["description"] = "%s" % (description)
migrate_data["repo_name"] = "%s" % (name)
- migrate_data["private"] = "%s" % (private)
- migrate_data["clone_url"] = "%s" % (source_url)
+ migrate_data["private"] = bool("%s" % (private))
+ migrate_data["clone_addr"] = "%s" % (source_url)
+ migrate_data["repo_owner"] = GITEA_USERNAME
- r = requests.post(url=ENDPOINT, data=json.dumps(migrate_data), headers=json.dumps(headers))
+ r = requests.post(url=ENDPOINT, data=json.dumps(migrate_data), headers=headers)
return "Non-OK Response: %s" % (r.status_code)
return "Done: %s" % (source_url)
if repo not in exclude_repos:
- print "Working on %s" % (repo['name'])
- print createRepo(repo['url'],repo['name'],repo['description'],repo['private'])
+ print("Working on %s" % (repo['name']))
+ print(createRepo(repo['url'],repo['name'],repo['description'],repo['private']))
- print "Excluding %s" % (repo['name'])
+ print("Excluding %s" % (repo['name']))
if __name__ == '__main__':
- print(runMigration(repos,EXCLUDE))
+ print(runMigration(repos,EXCLUDE))