最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python操作gitlab API過程解析

 更新時間:2019年12月27日 14:11:12   作者:全棧運維  
這篇文章主要介紹了python操作gitlab API過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了python操作gitlab API過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

使用 python-gitlab 模塊來調(diào)用gitlab的API來管理gitlab

install

pip install python-gitlab
# 如果是安裝到Python3使用可以使用如下命令
pip3 install python-gitlab

配置

為了保護API 用到的 private_token,一般會將其寫到系統(tǒng)的配置文件中去

/etc/python-gitlab.cfg 或者 ~/.python-gitlab.cfg

配置示例:

root@pts/1 $ cat ~/.python-gitlab.cfg
[global]
default = kaishugit
ssh_verify = False
timeout = 8

[kaishugit]
url = http://10.0.0.6
private_token = xxxxx-V4Yxxxxxxks7u
api_version = 3

程序使用

在程序中使用的時候可以直接用如下方式調(diào)用

## login
gl = gitlab.Gitlab.from_config('kaishugit', ['~/.python-gitlab.cfg'])


examples

## 得到第一頁project列表
projects = gl.projects.list()
## 得到所有project
projects = gl.projects.list(all=True)
projects = gl.projects.all()

附加

自定義腳本獲取指定用戶或者分組或者全部的代碼倉庫地址

#!/usr/bin/env python3
# encoding: utf-8
#

__Author__ = 'Colin'
__Date__ = '2018-06-20'

import gitlab

import os
import sys

class GitlabAPI(object):
  def __init__(self, *args, **kwargs):
    if os.path.exists('/etc/python-gitlab.cfg'):
      self.gl = gitlab.Gitlab.from_config('kaishugit', ['/etc/python-gitlab.cfg'])
    elif os.path.exists(os.getenv('HOME') + '/.python-gitlab.cfg'):
      self.gl = gitlab.Gitlab.from_config('kaishugit', [os.getenv('HOME') + '/.python-gitlab.cfg'])
    else:
      print('You need to make sure there is a file named "/etc/python-gitlab.cfg" or "~/.python-gitlab.cfg"')
      sys.exit(5)

  def get_user_id(self, username):
    user = self.gl.users.get_by_username(username)
    return user.id

  def get_group_id(self, groupname):
    group = self.gl.users.search(groupname)
    return group[0].id

  def get_all_projects(self):
    projects = self.gl.projects.list(all=True)
    result_list = []
    for project in projects:
      result_list.append(project.http_url_to_repo)
    return result_list

  def get_user_projects(self, userid):
    projects = self.gl.projects.owned(userid=userid, all=True)
    result_list = []
    for project in projects:
      result_list.append(project.http_url_to_repo)
    return result_list

  def get_group_projects(self, groupname):
    projects = self.gl.projects.owned(groupname=groupname, all=True)
    result_list = []
    for project in projects:
      result_list.append(project.http_url_to_repo)
    return result_list

if __name__ == '__main__':
  username='caichenyu'
  git = GitlabAPI()
  userid = git.get_user_id(username)
  print(username + '->' + str(userid))
  userprojects = git.get_user_projects(userid)
  print(userprojects)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • python進程間通信的項目實踐

    python進程間通信的項目實踐

    本文主要介紹了python進程間通信的項目實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • 詳解pyqt5 動畫在QThread線程中無法運行問題

    詳解pyqt5 動畫在QThread線程中無法運行問題

    這篇文章主要介紹了詳解pyqt5 動畫在QThread線程中無法運行問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • python 實現(xiàn)百度網(wǎng)盤非會員上傳超過500個文件的方法

    python 實現(xiàn)百度網(wǎng)盤非會員上傳超過500個文件的方法

    這篇文章主要介紹了python 實現(xiàn)百度網(wǎng)盤非會員上傳超過500個文件的方法,幫助大家更好的利用python解決問題,感興趣的朋友可以了解下
    2021-01-01
  • Python?matplotlib實現(xiàn)多子圖布局

    Python?matplotlib實現(xiàn)多子圖布局

    多子圖布局是指在一個圖像中同時顯示多個子圖,每個子圖可以是獨立的圖形或者是相互關聯(lián)的圖形,下面我們就來了解下matplotlib是如何實現(xiàn)多子圖布局的吧
    2023-12-12
  • python 實現(xiàn)將小圖片放到另一個較大的白色或黑色背景圖片中

    python 實現(xiàn)將小圖片放到另一個較大的白色或黑色背景圖片中

    今天小編就為大家分享一篇python 實現(xiàn)將小圖片放到另一個較大的白色或黑色背景圖片中,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python pywifi ERROR Open handle failed問題及解決

    Python pywifi ERROR Open handle fai

    這篇文章主要介紹了Python pywifi ERROR Open handle failed問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Python中使用bidict模塊雙向字典結(jié)構(gòu)的奇技淫巧

    Python中使用bidict模塊雙向字典結(jié)構(gòu)的奇技淫巧

    bidict模塊通過一對一映射結(jié)構(gòu)的處理為Pyhton帶來雙向字典,能夠更加利用Python的切片功能,這里我們就來學習Python中使用bidict模塊雙向字典結(jié)構(gòu)的奇技淫巧:
    2016-07-07
  • python裝飾器原理與用法深入詳解

    python裝飾器原理與用法深入詳解

    這篇文章主要介紹了python裝飾器原理與用法,結(jié)合實例形式深入分析了Python裝飾器的概念、原理、使用方法及相關操作注意事項,需要的朋友可以參考下
    2019-12-12
  • pytorch中LN(LayerNorm)及Relu和其變相的輸出操作

    pytorch中LN(LayerNorm)及Relu和其變相的輸出操作

    這篇文章主要介紹了pytorch中LN(LayerNorm)及Relu和其變相的輸出操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python中的類與類型示例詳解

    Python中的類與類型示例詳解

    這篇文章主要給大家介紹了關于Python中類與類型的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Python具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07

最新評論

宁国市| 洛阳市| 汽车| 临汾市| 大洼县| 奎屯市| 金乡县| 新龙县| 屏山县| 濉溪县| 云安县| 奉贤区| 永胜县| 慈溪市| 慈利县| 石家庄市| 灵丘县| 浠水县| 瓦房店市| 玉溪市| 新津县| 邛崃市| 澄迈县| 元朗区| 谢通门县| 鹤峰县| 额敏县| 江西省| 郎溪县| 宜君县| 龙海市| 汨罗市| 安新县| 集安市| 泾阳县| 蕲春县| 额敏县| 东乌珠穆沁旗| 清丰县| 如皋市| 齐齐哈尔市|