Skip to main content
https://travis-ci.org/python-gitlab/python-gitlab.svg?branch=master https://badge.fury.io/py/python-gitlab.svg https://readthedocs.org/projects/python-gitlab/badge/?version=latest https://img.shields.io/pypi/pyversions/python-gitlab.svg https://img.shields.io/gitter/room/python-gitlab/Lobby.svg

Python GitLab

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).

Installation

Requirements

python-gitlab depends on:

Install with pip

pip install python-gitlab

Using the python-gitlab docker image

How to build

docker build -t python-gitlab:TAG .

How to use

docker run -it --rm -e GITLAB_PRIVATE_TOKEN=<your token> -v /path/to/python-gitlab.cfg:/python-gitlab.cfg python-gitlab <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> ...

Bug reports

Please report bugs and feature requests at https://github.com/python-gitlab/python-gitlab/issues.

Documentation

The full documentation for CLI and API is available on readthedocs.

Build the docs

You can build the documentation using sphinx:

pip install sphinx
python setup.py build_sphinx

Contributing

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 prefer commit messages to be formatted using the conventional-changelog. This leads to more readable messages that are easy to follow when looking through the project history.

Provide your patches as github pull requests. Thanks!

Running unit tests

Before submitting a pull request make sure that the tests still succeed with your change. Unit tests and functional tests run using the travis service and passing tests are mandatory to get merge requests accepted.

You need to install tox 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

Running integration tests

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 environment delete the container:

docker rm -f gitlab-test

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-gitlab-1.8.0.tar.gz (115.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_gitlab-1.8.0-py2-none-any.whl (64.1 kB view details)

Uploaded Python 2

File details

Details for the file python-gitlab-1.8.0.tar.gz.

File metadata

  • Download URL: python-gitlab-1.8.0.tar.gz
  • Upload date:
  • Size: 115.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/2.7.14

File hashes

Hashes for python-gitlab-1.8.0.tar.gz
Algorithm Hash digest
SHA256 a6b03bc53f6e2e22b88d5ff9772b1bb360570ec82752f1def3d6eb60cda093e7
MD5 784cf0cb6e7492c37d5143fe5c792ca8
BLAKE2b-256 e4797cccb27a38e866a8bb16f7780c96a20d1744d8f2b9d900b60ad31447d569

See more details on using hashes here.

File details

Details for the file python_gitlab-1.8.0-py2-none-any.whl.

File metadata

  • Download URL: python_gitlab-1.8.0-py2-none-any.whl
  • Upload date:
  • Size: 64.1 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/2.7.14

File hashes

Hashes for python_gitlab-1.8.0-py2-none-any.whl
Algorithm Hash digest
SHA256 92041e5d691a8301e39556a61ab429319fa9f968fdaabb502b943863a88ce455
MD5 5902ac430431b2cfd05128ddfb0f82ca
BLAKE2b-256 2716b0fef2d26033b19a1ebd1ca02c3c83cd8e265cbf0806b7574a97b032785f

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page