我想使用命令行选项列出所有可用的插件名称和它们的简称,以便可以通过jenkins命令行自动化所需的插件安装。
请告知。谢谢
答案 0 :(得分:1)
你是如此亲密! The LAYOUT is detailed here。该信息在附近供您解析,希望我理解正确。
http://updates.jenkins-ci.org/download/plugins/确实是插件的位置,实际的插件版本位于每个文件夹中。
https://updates.jenkins.io/是根级别。您将在plugin-versions.json中找到所有插件的列表和详细信息。
update-center.js,update-center.json和update-center.json.html分别包含JSON,JSONP和HTML格式的实际更新中心元数据。您可以解析json以提取您要查找的所有内容。还提供了有关文档URL,发行历史记录以及更新的列表。
这是细微之处。分别有stable(即:LTS)或latest(即:每周)和主要版本。每个版本都有自己的子列表,具体取决于最低版本和兼容性。
插件选择 由于这些都不能告诉您插件的实际作用,因此最好的选择是在https://plugins.jenkins.io/处选择插件。单击任何插件(例如:mailer)都会显示一个包含详细信息的标题块:
邮件程序 1.23
Jenkins的最低要求:1.642.3
ID:邮件
ID是您要查找的简称。浏览并找到您要使用的插件,这就是您的列表。不用担心依赖关系。
关于插件管理
即使在独立实例上,我也使用Docker install_plugins.sh的修改脚本来生成要安装的插件的完整列表。
您可以检查输出或使用下面的常规脚本简化“必须拥有”列表。另外,由于依赖项更新一直在发生,因此如果我需要完全相同地重新应用于其他实例(而不是从策划的列表中),我还会生成一个实际安装的更新列表。我的推荐清单是〜45个插件,安装了115个以上。
例如:workflow-api
包括[workflow-scm-step]
,其中包括[git, subversion]
,因此无需指定git。但是您想知道您使用的是哪个版本。有时您可能需要显式添加一个依赖项,以获取最新的版本(以避免每个JENKINS-54018插件split from Jenkins出现缺陷)。
println "Jenkins Instance : " + Jenkins.getInstance().getComputer('').getHostName() + " - " + Jenkins.getInstance().getRootUrl()
println "Installed Plugins: "
println "=================="
Jenkins.instance.pluginManager.plugins.sort(false) { a, b -> a.getShortName().toLowerCase() <=> b.getShortName().toLowerCase()}.each { plugin ->
println "${plugin.getShortName()}:${plugin.getVersion()} | ${plugin.getDisplayName()} "
}
println""
println "Plugins Dependency tree (...: dependencies; +++: dependants) :"
println "======================="
Jenkins.instance.pluginManager.plugins.sort(false) { a, b -> a.getShortName().toLowerCase() <=> b.getShortName().toLowerCase()}.each { plugin ->
println "${plugin.getShortName()}:${plugin.getVersion()} | ${plugin.getDisplayName()} "
println "+++ ${plugin.getDependants()}"
println "... ${plugin.getDependencies()}"
println ''
}
return