diff --git a/example.py b/example.py index 705e719..1477f64 100644 --- a/example.py +++ b/example.py @@ -1,23 +1,25 @@ +import os + from gitea import * gitea = Gitea("https://test-gitea.something", "api-token") print("Gitea Version: " + gitea.get_version()) print("API-Token belongs to user: " + gitea.get_user().username) -##create Organization that does exist +##get an organization that does exist org = Organization(gitea, "an-org") print(org.username) org.set_value({"location": "a-place"}) -##create organization that does not exist +## try getting an organization that does not exists try: org = Organization(gitea, "non-existent-org") except: pass -##create a User that does exist +##get a User that does exist user = User(gitea, "a-user") print(user.username) -##create organization that does not exist +##try getting organization that does not exist try: user = User(gitea, "non-existent-user") except: @@ -30,10 +32,15 @@ print("org " + org.username + " has repositories " + str(repos)) userRepos = user.get_repositories() print("user " + user.username + " has repositories " + str(repos)) ##get branches -repo = Repository(gitea, org ,"playground") +repo = Repository(gitea, org,"playground") print([b.name for b in repo.get_branches()]) ##create Repository gitea.create_repo(user , "test-repo-api", "this is an api test repo, delete this", True, True) gitea.create_repo(org , "test-repo-api-org", "this is an api test repo, delete this", True, True) +## create user +newUser = gitea.create_user("test-test", "test@testing.de","Torben der Tester", str(os.urandom(32)), False) +print(newUser.username) +newUser.delete() + diff --git a/gitea/Gitea.py b/gitea/Gitea.py index 2a8d8e6..61a666c 100644 --- a/gitea/Gitea.py +++ b/gitea/Gitea.py @@ -37,7 +37,8 @@ class User: USER_REQUEST = """/users/%s""" # USER_REPOS_REQUEST = """/users/%s/repos""" # - USER_PATCH = """/admin/users/%s""" + USER_PATCH = """/admin/users/%s""" # + ADMIN_DELETE_USER = """/admin/users/%s""" # def __init__(self, gitea, userName : str, initJson: json = None): self.gitea = gitea @@ -60,6 +61,9 @@ class User: result = self.gitea.requests_patch(User.USER_PATCH%self.username, data=values) self.__initialize_user(self.username, result) + def delete(self): + result = self.gitea.requests_delete(User.ADMIN_DELETE_USER%self.username) + class Repository: @@ -148,10 +152,9 @@ class Gitea(): def requests_delete(self, endpoint): request = self.requests.delete(self.get_url(endpoint), headers=self.headers) - if request.status_code not in [200,201]: + if request.status_code not in [204]: logging.error("Received status code: %s (%s)"%(request.status_code, request.url)) raise Exception(("Received status code: %s (%s)"%(request.status_code, request.url))) - return self.parse_result(request) def requests_post(self, endpoint, data): request = self.requests.post(self.get_url(endpoint), headers=self.headers, data=data) @@ -253,10 +256,6 @@ class Gitea(): path = '/orgs/' + orgname + '/members' return self.requests_get(path) - def delete_admin_users(self, username): - path = '/admin/users/' + username - return self.requests.delete(path) - def post_admin_users_keys(self, title, key, username): path = '/admin/users/' + username + '/keys' return self.requests_post(path, data={'title': title, 'key': key})