python gitlab api

Gitlab API 使用

python下操作gitlab的官方文档如下

http://python-gitlab.readthedocs.io/en/stable/

前期准备

创建Access Tokens

登陆公司Gitlab 平台,以此选择 “用户”-->“settings”-->“Access Tokens” ,按照需求创建Access Tokens。

环境安装

该文档使用python来执行相关操作,需要安装python环境。

使用 python-gitlab模块来进行具体操作。

pip install python-gitlab
  • 使用pip安装最新的稳定版本

pip install --upgrade python-gitlab

  • 开发版本可以在github上找到,使用gitpyhton setup.py来安装

git clone https://github.com/python-gitlab/python-gitlab
cd python-gitlab
python setup.py install

gitlab CLI

python-gitlab提供了一个gitlab命令行工具来与GitLab服务器进行交互,它使用配置文件来定义如何连接到服务器。

配置

gitlab默认情况下查找2个配置文件:

  • /etc/python-gitlab.cfg : 系统范围的配置文件

  • ~/.python-gitlab.cfg: 用户配置文件

可以使用--config-file选项的其他配置文件

其他使用参考官网:http://python-gitlab.readthedocs.io/en/stable/cli.html

API 入门

python-gitlab支持GiaLab v3和v4 API。要使用v3,请确保安装的为python-gitlab 1.4。

gitlab.Gitlab 类

要连接到Gitlab服务器,需要创建一个gitlab.Gitlab对象。

import gitlab
# 私有令牌或个人令牌进行身份认证
gl = gitlab.Gitlab('http://10.9.151.194:9800/',private_token='U4oCoynMYPzDy_PUk-7W')
# oauth 令牌认证
gl = gitlab.Gitlab('http://10.0.0.1', oauth_token='my_long_token_here')
# 用户名密码认证 (for GitLab << 10.2)
gl = gitlab.Gitlab('http://10.0.0.1', email='jdoe', password='s3cr3t')
# 匿名认证,公共资源只读
gl = gitlab.Gitlab('http://10.0.0.1')
# 创建一个API请求来创建gl.user对象,这是强制的
# 使用用户名/密码验证
gl.auth()

还可以使用配置文件来创建gitlab.Gitlab对象:

gl = gitlab.Gitlab.from_config('somewhere', ['/tmp/gl.cfg'])