python-如何从jenkins的特定构建中获取分支名称?

python-如何从jenkins的特定构建中获取分支名称?,python,git,python-2.7,jenkins,Python,Git,Python 2.7,Jenkins,我们在office中使用Git、jenkins和python 我们每天使用jenkins构建一个新的软件版本 如何使用Jenkins提供的Python获取构建所属的分支名称 Jenkins中是否有API(函数调用)可以让我给出构建编号作为参数,并给出分支编号? 临时解决方案 我们还为每个构建提供了一个git标记,格式如下: <build>_<username>_<branch> __ 我当前使用以下git命令获取标记: git ls-remote --ta

我们在office中使用Git、jenkins和python

我们每天使用jenkins构建一个新的软件版本

如何使用Jenkins提供的Python获取构建所属的分支名称

Jenkins中是否有API(函数调用)可以让我给出构建编号作为参数,并给出分支编号?

临时解决方案

我们还为每个构建提供了一个git标记,格式如下:

<build>_<username>_<branch>
__
我当前使用以下git命令获取标记:

git ls-remote --tags <git-repo> | grep BUILD-NUMBER
git ls remote--tags | grep BUILD-NUMBER
一旦我有了标记,我就使用正则表达式从中提取分支名称

提前感谢。

查看jenkinsapi

有了它,您可以:

>>> from jenkinsapi.jenkins import Jenkins
>>> job_name = 'example_job'
>>> build_number = 123
>>> server = Jenkins('http://localhost:8080', username='user', password='passwd')
>>> build = server.get_job(job_name).get_build(build_number)
>>> rev = build.get_revision_branch()[0].get('name')
>>> print rev
refs/remotes/origin/master
>>> rev.rsplit('/', 1)[1]
'master'

嗨,如果我只是想得到“主”字,我应该使用正则表达式吗?你可以使用refs/remotes/origin/master'.rsplit('/',1)[1]我以前从未使用过pypy库。如何使用它?我想我应该先下载它。一旦下载,我应该把它放在哪里,我应该如何安装?您可以发送一个链接,介绍如何安装pypy软件包以便使用吗?使用安装Python软件包非常方便。网络上有很多关于安装Python包和设置Python环境的示例。