Metadata-Version: 2.1
Name: py-gitea
Version: 0.1.2
Summary: A python wrapper for the Gitea API
Home-page: https://github.com/Langenfeld/py-gitea
Author: Vincent Langenfeld 
Author-email: langenfv@tf.uni-freiburg.de
License: MIT
Download-URL: https://pypi.org/project/py-gitea/
Description: # py-gitea
        
        A very simple API client for Gitea version 1.13.x.
        
        This has been somewhat tested (and used), so most things should work as expected.
        
        Note that not the full Swagger-API is accessible. The whole implementation is focused 
        on making access and working with Organizations, Teams, Repositories and Users as pain
        free as possible.
        
        Originally forked from https://github.com/m301/py-gitea.
        
        ## Usage
        
        First get a `gitea` object wrapping access and authentication (via an api token) for your gitea instance:
        
        ```python
        from gitea import *
        
        gitea = Gitea(URL, TOKEN)
        ```
        
        Operations like requesting the Gitea version or authentication user can be requested directly from the `gitea` object:
        
        ```python
        print("Gitea Version: " + gitea.get_version())
        print("API-Token belongs to user: " + gitea.get_user().username)
        ```
        
        Adding entities like Users, Organizations, ...  also is done via the gitea object.
        
        ```python
        user = gitea.create_user("Test Testson", "test@test.test", "password")
        ```
        
        All operations on entities in gitea are then accomplished via the according wrapper objects for those entities.
        Each of those objects has a `.request` method that creates an entity according to your gitea instance. 
        
        ```python
        other_user = User.request(gitea, "OtherUserName")
        print(other_user.username)
        ```
        
        Note that the fields of the User, Organization,... classes are dynamically created at runtime, and thus not visible during divelopment. Refer to the Gitea-API documentation for the fields names. 
        
        
        Fields that can not be altered via gitea-api, are read only. After altering a field, the `.commit` method of the according object must be called to synchronize the changed fields with your gitea instance.
        
        ```python
        org = Organization.request(gitea, test_org)
        org.description = "some new description"
        org.location = "some new location"
        org.commit()
        ```
        
        An entity in gitea can be deleted by calling delete.
        ```python
        org.delete()
        ```
        
        All entity objects do have methods to execute some of the requests possible though the gitea-api:
        ```python
        org = Organization.request(gitea, ORGNAME)
        teams = org.get_teams()
        for team in teams:
        	repos = team.get_repos()
        	for repo in repos:
        		print(repo.name)
        ```
        
        
        ## Installation
        
        Use ``pip install py-gitea`` to install.
        
        ## Tests
        
        Tests can be run with: 
        
        ```python3 -m pytest test_api.py```
        
        Make sure to have a gitea-instance running on `http://localhost:3000`, and an admin-user token at `.token`. 
        The admin user must be named ``test``, with email ``secondarytest@test.org``.
        
Keywords: Gitea,api,wrapper
Platform: UNKNOWN
Description-Content-Type: text/markdown
