Jenkins 中文社区

  • 博客
  • 教程
  • 活动
  • 合作伙伴
  • 关于我们
  • Jenkins 官网
Star

zhaoying

devops jenkins

作者:stopalopa
原文链接

Alpha 版本的插件管理库和 CLI 工具

Alpha 版本的插件管理库和 CLI 工具

devopsworld File

“人人都在重复造轮子,部分像实现插件管理的”细节”(签名元数据,制品校验和,从核心独立出来的插件…)。 很明显, Jenkins 应该为实时 Jenkins 实例之外的插件安装提供充足的工具。” JENKINS-53767

我的 Google Summer of Code project 项目试图解决这个问题,方法是创建一个库,该库将在 Jenkins 的不同实现中统一插件管理逻辑,并提供一个可以使用户轻松下载插件并在 Jenkins 启动之前查看插件信息的 CLI 工具。 我很高兴分享我们刚刚发布的 Alpha 版本,您可以在此处查看!

GSoC 阶段 1 更新

当我考虑将插件管理器从 Jenkins 核心中移出时,由于依赖项的复杂性和数量,这最终成为了最具挑战性的第一步。相反,我们决定首先将 Jenkins Docker 中的 install-plugins.sh bash 脚本转换为 Java。 install-plugins.sh 脚本存在多个问题,即它是 bash 脚本并且扩展性有限,此外,它不会检索所有最新的更新中心的元数据。

Alpha 版本详情

模仿官方 Jenkins Docker 镜像中 install-plugins.sh 脚本中的操作,新的插件管理库接收插件列表、它们的版本和(或) URL,从中可以下载插件,并下载所需的插件及其依赖。插件从更新中心下载到指定目录,然后可以加载到 Jenkins 中。当前,可以通过 plugins.txt 文件和(或) -plugins 的 cli 选项指定要下载的插件,我们计划进一步扩展可以接收的输入格式。 还支持用于不同更新中心的自定义版本说明符。

Example plugins.txt File

该库将首先检查当前是否在用户指定的下载位置或用户指定的 Jenkins war 文件中安装了任何请求的插件。如果要求更高版本或更高版本作为依赖项,则将忽略或升级已安装的插件。确定插件下载 URL 后,库将下载插件并解析和下载其依赖。

Example of Downloading Plugins

Plugin Download Directory

这仅仅是个开始:插件管理器库和 cli 工具仍在开发中。 有关 CLI 选项以及如何运行该工具的最新信息,请参见存储库 README.md 。 即将提供更强大的输入解析,对安全警告和可用更新的支持,Docker集成以及其他功能!

链接和反馈

欢迎通过插件安装管理器 CLI 工具 Gitter 聊天室或 Jenkins 开发者邮件列表与我们联系。我希望收到您的问题,评论和反馈!我们在世界标准时间下午6点(星期二和星期四)开会。

  • Phase 1 Presentation Slides
  • Phase 1 Recorded Demo
  • Jira Issue Search
  • Repository
“Alpha 版本的插件管理库和 CLI 工具” 更新于:October 25, 2019
完善此页
  • Tags:
  • plugins
  • pluginmanagement
  • platform-sig
  • cli
  • gsoc
  • gsoc2019
  • GSoC: GitHub Checks API 项目第三阶段总结
  • Related entries:
  • GSoC: GitHub Checks API 项目第一阶段总结
  • 社区推送博客-机器学习插件项目
  • 动手实践:美化 Jenkins 报告插件的用户界面
  • 介绍新的 GitLab 分支源插件
  • Jenkins 流水线配置历史插件介绍
  • 在 Kubernetes 上使用 Jenkins
  • Jenkins 插件的微基准测试框架
  • 多分支流水线任务对 GitLab SCM 的支持
  • 春季安全清查
由 Jenkins 社区贡献者 维护
  • File an Issue
  • Twitter
  • YouTube
  • 哔哩哔哩
  • Jenkins CLI
  • 社区论坛
  • Slack
微信公众号
 

晋ICP备15000444号-2

  • 博客
  • 教程
  • 活动
  • 合作伙伴
  • 关于我们
  • Jenkins 官网