Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A python wrapper for the GitLab API.

License

NotificationsYou must be signed in to change notification settings

python-gitlab/python-gitlab

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

https://readthedocs.org/projects/python-gitlab/badge/?version=latesthttps://codecov.io/github/python-gitlab/python-gitlab/coverage.svg?branch=master

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

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:latest <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 athttps://github.com/python-gitlab/python-gitlab/issues.

Gitter Community Chat

There is agitter community chatavailable athttps://gitter.im/python-gitlab/Lobby

Documentation

The full documentation for CLI and API is available onreadthedocs.

Build the docs

You can build the documentation usingsphinx:

pip install sphinxpython 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

Development workflow

Before contributing, please make sure you havepre-commitinstalled and configured. This will help automate adhering to code style and commitmessage guidelines described below:

cd python-gitlab/pip3 install --user pre-commitpre-commit install -t pre-commit -t commit-msg --install-hooks

Please provide your patches as GitHub pull requests. Thanks!

Commit message guidelines

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.

Code-Style

We use black as code formatter, so you'll need to format your changes using theblack code formatter. Pre-commit hooks will validate/format your codewhen committing. You can then stage any changesblack added if the commit failed.

To format your code according to our guidelines before committing, run:

cd python-gitlab/pip3 install --user blackblack.

Running unit tests

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.

We're currently in a restructing phase for the unit tests. If you're changing existingtests, feel free to keep the current format. Otherwise please write new tests with pytest andusingresponses.An example for new tests can be found in tests/objects/test_runner.py

You need to installtox to run unit tests and documentation builds locally:

# run the unit tests for all supported python3 versions, and the pep8 tests:tox# run tests in one environment only:tox -epy38# build the documentation, the result will be generated in# build/sphinx/html/tox -edocs

Running integration tests

Integration tests run 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:tox -e cli_func_v4# run the python API tests:tox -e py_func_v4

By default, the tests run against the latest version of thegitlab/gitlab-ceimage. You can override both the image and tag by providing either theGITLAB_IMAGE orGITLAB_TAG environment variables.

This way you can run tests against different versions, such asnightly forfeatures in an upcoming release, or an older release (e.g.12.8.0-ce.0).The tag must match an exact tag on Docker Hub:

# run tests against `nightly` or specific tagGITLAB_TAG=nightly tox -e py_func_v4GITLAB_TAG=12.8.0-ce.0 tox -e py_func_v4# run tests against the latest gitlab EE imageGITLAB_IMAGE=gitlab/gitlab-ee tox -e py_func_v4

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-testdocker rm -f gitlab-runner-test

[8]ページ先頭

©2009-2025 Movatter.jp