- Notifications
You must be signed in to change notification settings - Fork0
Python wrapper for the GitLab API
License
pythonthings/python-gitlab
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
python-gitlab
is a Python package providing access to the GitLab server API.
It supports the v4 API of GitLab, and provides a CLI tool (gitlab
).
python-gitlab depends on:
pip install python-gitlab
docker build -t python-gitlab:TAG .
docker run -it --rm -e GITLAB_PRIVATE_TOKEN=<your token> -v /path/to/python-gitlab.cfg:/python-gitlab.cfg python-gitlab <command> ...
or run it directly from the upstream image:
docker run -it --rm -e GITLAB_PRIVATE_TOKEN=<your token> -v /path/to/python-gitlab.cfg:/python-gitlab.cfg registry.gitlab.com/python-gitlab/python-gitlab:v1.8.0 <command> ...
To change the GitLab URL, use -e GITLAB_URL=<your url>
Bring your own config file:docker run -it --rm -v /path/to/python-gitlab.cfg:/python-gitlab.cfg -e GITLAB_CFG=/python-gitlab.cfg python-gitlab <command> ...
Please report bugs and feature requests athttps://github.com/python-gitlab/python-gitlab/issues.
The full documentation for CLI and API is available onreadthedocs.
You can build the documentation usingsphinx
:
pip install sphinxpython setup.py build_sphinx
You can contribute to the project in multiple ways:
- Write documentation
- Implement features
- Fix bugs
- Add unit and functional tests
- Everything else you can think of
We enforce commit messages to be formatted using theconventional-changelog.This leads to more readable messages that are easy to follow when looking through the project history.
Please provide your patches as github pull requests. Thanks!
We use black as code formatter, so you'll need to format your changes using theblack code formatter.
Just run
cd python-gitlab/pip3 install --user blackblack.
to format your code according to our guidelines.
Before submitting a pull request make sure that the tests still succeed withyour change. Unit tests and functional tests run using the travis service andpassing tests are mandatory to get merge requests accepted.
You need to installtox
to run unit tests and documentation builds locally:
# run the unit tests for python 2/3, and the pep8 tests:tox# run tests in one environment only:tox -epy35# build the documentation, the result will be generated in# build/sphinx/html/tox -edocs
Two scripts run tests against a running gitlab instance, using a dockercontainer. You need to have docker installed on the test machine, and your usermust have the correct permissions to talk to the docker daemon.
To run these tests:
# run the CLI tests:./tools/functional_tests.sh# run the python API tests:./tools/py_functional_tests.sh
You can also build a test environment using the following command:
./tools/build_test_env.sh
A freshly configured gitlab container will be available athttp://localhost:8080 (loginroot
/ password5iveL!fe
). A configurationfor python-gitlab will be written in/tmp/python-gitlab.cfg
.
To cleanup the environment delete the container:
docker rm -f gitlab-test
About
Python wrapper for the GitLab API
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Languages
- Python96.5%
- Shell3.4%
- Dockerfile0.1%