如何在jenkins远程访问API的帮助下在jenkins中安装插件?

Har*_*nam 11 jenkins jenkins-plugins

我想知道,如何使用Jenkins Remote访问API为Jenkins安装插件?我找到了使用jenkins CLI安装的方法.但我需要知道如何使用API​​做同样的事情.我尝试使用jenkins-python库.但我没有找到任何方法在那里安装插件.

Ben*_*sen 35

将以下xml数据(带有您的plugin-id @版本)发送(HTTP POST)到Jenkins插件管理器.在gist上查看我的jenkins安装插件脚本.

这个HTTP POST请求安装jenkins git插件 2.0.

curl -X POST -d '<jenkins><install plugin="git@2.0" /></jenkins>' --header 'Content-Type: text/xml' http://localhost:8080/pluginManager/installNecessaryPlugins

  • 这应该是新接受的答案.此外,如果您将插件指定为`git @ latest`,则会安装最新版本的插件.这里使用的插件名称是"插件ID"字段,例如[wiki.jenkins-ci.org](https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin)中的字段. .唯一要记住的是,`curl`操作将在插件之前返回,并且其先决条件已完全安装.如果要自动执行此操作,强烈建议在安装插件后加入一些睡眠定时器. (5认同)
  • 这总是为我安装最新版本?!在这里看到这个"不是缺陷"(笑):https://issues.jenkins-ci.org/browse/JENKINS-32793 (5认同)

mal*_*cot -2

我认为这是不可能的。但是,作为一种解决方法,您可以考虑创建一个通过 Jenkins CLI 安装插件的作业;然后,您可以通过 API 使用适当的参数调用该作业。