我想知道远程触发 Jenkins 作业时是否可以指定要构建的分支。我正在编写一个 Python 脚本,其中涉及运行特定的 Jenkins 构建。
我能够从我的脚本成功运行构建,但我想知道是否有办法使构建针对特定分支运行。
构建在 Jenkins 上运行,我使用 TFS 进行源代码管理。
这就是我调用作业的方式 - 我尝试添加参数,但这没有执行任何操作。
crumb=CrumbRequester(username="admin", password="2fa99c1e2aa61671d6b4334c8f0e77af", baseurl='http://localhost:8080/')
a = Jenkins('http://localhost:8081/', username="admin", password="2fa99c1e2aa61671d6b4334c8f0e77af", requester=crumb)
job = a.get_job("Project PR_DataCollectionWeb")
job.invoke(build_params={'GIT_BRANCH': git_branch})
我无法指定此作业运行时要构建的分支,因为无法预先确定需要运行的分支。
最佳答案
添加一个名为 BRANCH
的字符串参数
将变量 ${BRANCH}
添加到源代码管理 session 下的“要构建的分支”(我在这里指的是 git,TFS 无需更改)
使用以下url触发
http://<jenkins url>/job/<job name>/buildWithParameters?token=<your token>&BRANCH=<your branch>
关于python - 远程构建特定的 Jenkins 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45199374/