异步GitLab API库
项目描述
这是一个异步GitLab API库。
这个库基于Brett Cannon的gidgethub,一个异步GitHub API库。
我喜欢异步和sans-I/O方法的概念,并决定将其应用于GitLab的API。所有荣誉都归Brett Cannon最初的库!
快速入门
这是一个完整示例,展示了服务器如何响应webhook,在问题被打开时向作者问候并表示感谢。
from gidgetlab.aiohttp import GitLabBot bot = GitLabBot("beenje") @bot.router.register("Issue Hook", action="open") async def issue_opened_event(event, gl, *args, **kwargs): """Whenever an issue is opened, greet the author and say thanks.""" url = f"/projects/{event.project_id}/issues/{event.object_attributes['iid']}/notes" message = f"Thanks for the report @{event.data['user']['username']}! I will look into it ASAP! (I'm a bot)." await gl.post(url, data={"body": message}) if __name__ == "__main__": bot.run()
安装
Gidgetlab可在PyPI上找到。
python3 -m pip install gidgetlab
要安装Web服务器支持(例如,用于aiohttp、treq或tornado),请将其指定为额外依赖项
python3 -m pip install gidgetlab[aiohttp]
请注意,该库仍处于alpha开发阶段。
目标
关键目标是与gidgethub(但为GitLab)相同:提供一个异步基本库,用于GitLab API,该库不执行任何自己的I/O(一个sans-I/O库)。
另一个目标是轻松编写GitLab机器人:在GitLab上运行的自动化应用程序,使用GitLab WebHooks和API。这受到了Mariatta PyCon 2018工作坊的启发:构建GitHub机器人工作坊。
备选库
如果您认为您想要不同的GitLab API方法,GitLab维护了一个库列表。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
gidgetlab-2.0.1.tar.gz (34.1 kB 查看哈希值)
构建分布
gidgetlab-2.0.1-py3-none-any.whl (27.7 kB 查看哈希值)
关闭
gidgetlab-2.0.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bce8f8553c41823bff330eb9e1f0951f19feb7fc76a9effe3038f780377d984e |
|
MD5 | 14bfec4710c5e294cb061d31664f338a |
|
BLAKE2b-256 | 3141831904f44dc3c48d9b8108062f92c5a2264c147c72f6c15a73289ff146aa |
关闭
gidgetlab-2.0.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e19e32919bfd088f558bb4b7d63b8ae98cc477912102e8b4257c31e8df1553d2 |
|
MD5 | 4a9fb8d0133b628dd772f13e13eee576 |
|
BLAKE2b-256 | eeff48c375c0af33b294bdc0b9590682ca3d36653bd841d33c71c342e2a12920 |