python-gitlab
is a Python package providing access to the GitLab server API.
It supports the v3 api of GitLab, and provides a CLI tool (gitlab
).
python-gitlab depends on:
pip install python-gitlab
Please report bugs and feature requests at https://github.com/gpocentek/python-gitlab/issues.
The full documentation for CLI and API is available on readthedocs.
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
Provide your patches as github pull requests. Thanks!
Before submitting a pull request make sure that the tests still succeed with your change. Unit tests will run using the travis service and passin 5F7E g tests are mandatory.
You need to install tox
to run unit tests and documentation builds:
# 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 docker container. You need to have docker installed on the test machine, and your user must 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 at
http://localhost:8080 (login root
/ password 5iveL!fe
). A configuration
for python-gitlab will be written in /tmp/python-gitlab.cfg
.
To cleanup the environement delete the container:
docker rm -f gitlab-test