Jenkins 有 600 多个插件,在实际系统中,我们习惯于安装大量插件。
有时,我们想删除一些插件以使系统更干净或替换为另一个成熟的插件(不同的名称)。
这需要确保没有人/没有工作使用这些插件,或者我需要通知他们。
在配置中或 Jenkins 系统中是否有任何方法可以知道该插件是否被任何作业使用?
UPDATE 2013 根据下面的答案,我维护简单的“插件:关键字”映射,比如
plugin_keys = {
"git":'scm class="hudson.plugins.git.GitSCM"',
"copyartifact":"hudson.plugins.copyartifact.CopyArtifact",
# and more
}
并从 中搜索 plugin 关键字config.xml
,所有信息(plugins,jobs,config)都可以通过jenkins 远程 API获取
这个对我有用。
UPDATE 2014.04.26 后来的詹金斯版本,似乎 config.xml 被更改为直接在那里有插件名称
喜欢
<com.coravy.hudson.plugins.github.GithubProjectProperty plugin="github@1.4">
<hudson.plugins.throttleconcurrents.ThrottleJobProperty plugin="throttle-concurrents@1.7.2">
<hudson.plugins.disk__usage.DiskUsageProperty plugin="disk-usage@0.18"/>
<scm class="hudson.plugins.git.GitSCM" plugin="git@1.4.1-SNAPSHOT">
因此,我只是签plugin="<plugin name>"
入config.xml
,它再次起作用
更新 2014.05.05
请参阅 gist jenkins-stats.py中的完整脚本
更新 2018.6.7
有插件使用插件支持这个(还没有 REST API)