def _configure_connection(connection_params, api): configuration = giteapy.Configuration() configuration.host = connection_params.get('host') configuration.username = connection_params.get('username') configuration.password = connection_params.get('password') if api == "admin": api_instance = giteapy.AdminApi(giteapy.ApiClient(configuration)) elif api == "issue": api_instance = giteapy.IssueApi(giteapy.ApiClient(configuration)) elif api == "misc": api_instance = giteapy.MiscellaneousApi( giteapy.ApiClient(configuration)) elif api == "org": api_instance = giteapy.OrganizationApi( giteapy.ApiClient(configuration)) elif api == "repo": api_instance = giteapy.RepositoryApi(giteapy.ApiClient(configuration)) elif api == "user": api_instance = giteapy.UserApi(giteapy.ApiClient(configuration)) else: raise BaseException("no valid api") return api_instance
def backup_gitea(gitea_url: str, gitea_token: str, gitea_backup_dir: str): configuration = giteapy.Configuration() configuration.host = gitea_url + "/api/v1" configuration.api_key['access_token'] = gitea_token api_instance = giteapy.UserApi(giteapy.ApiClient(configuration)) api_response = api_instance.user_current_list_repos() print(f"{api_response}") for project in api_response: print('----------------------') print("id: %d " % project.id) print("url: " + project.html_url) print("ssh: " + project.ssh_url) print("name: " + project.name) print("path with namespace: " + project.full_name) local_git_path = gitea_backup_dir + '/' + project.full_name + ".git" local_namespace_path = gitea_backup_dir + '/' + project.name if not os.path.exists(local_namespace_path): os.makedirs(local_namespace_path) backup_git_project(local_git_path, project.html_url, project.ssh_url) pass
def get_user_api_instance() -> giteapy.UserApi: configuration = giteapy.Configuration() configuration.api_key['access_token'] = get_gitea_access_token() configuration.host = 'https://git.curiosityworks.org/api/v1' return giteapy.UserApi(giteapy.ApiClient(configuration))
import string def get_random_string(length): # choose from all lowercase letter letters = string.ascii_lowercase result_str = ''.join(random.choice(letters) for i in range(length)) return result_str # Gitea connection configuration = giteapy.Configuration() configuration.api_key['access_token'] = 'superSecret' configuration.host = 'https://gitea.example.com/api/v1' admin_api_instance = giteapy.AdminApi(giteapy.ApiClient(configuration)) user_api_instance = giteapy.UserApi(giteapy.ApiClient(configuration)) org_api_instance = giteapy.OrganizationApi(giteapy.ApiClient(configuration)) # GitLab connection gl = gitlab.Gitlab('https://gitlab.example.com', private_token='superSecret') # inspect GitLab dict_gl_users = dict() # get Gitea users gt_users = admin_api_instance.admin_get_all_users() #pprint(api_response) lg_gt_map = dict() # copy users for gt_user in gt_users: pprint(gt_user) key = None