jenkins支持ci/cd,从而实现devops。devops是什么众说纷纭。所以我们先看一下jenkins能做什么。
1.构建作业(Item/Job)
支持很多种类型,jenkins2.x一般使用pipeline,因为这个可以版本化管理(jenkins as code)
2.插件和工具
额外的功能/增加/优化可以安装插件plugin实现,jenkins插件非常丰富,用户也可以自己写插件
多语言的支持可以通过安装工具tools实现,非常灵活
3.凭证管理
敏感信息的凭证管理一直是一个难题
代码拉取,制品发布,应用部署的时候都需要相关的凭证来认证和授权
jenkins的凭证分用户,分作用域可见。凭证统一只能用不能查看。跨jenkins实例之间凭证不能迁移,保证了凭证的单一用途和安全性
4.单元测试
这个功能需要开发提供支持,jenkins可以检测单元测试的通过情况和覆盖率来决定流水线是否继续,还可以集成allure呈现漂亮的测试报告
5.质量门禁检查
jenkins可以和SonarQube集成,检查代码的风格/错误/漏洞/性能问题,并在不合格的地方(行级别)往gitlab添加注释
6.制品管理
jenkins可以自己缓存制品,用户点击即可下载。也可以集成制品仓库(如nexus)管理制品。
7.集成测试自动化
jenkins可以集成selenium等第三方工具进行自动化测试,测试点需要测试组提供
8.构建看板
值得一提的是,Jenkins可以使用Build Monitor View编排构建看板,可以在大屏幕上实时查看任何人的提交触发的构建
9.细粒度的通知控制
jenkins的通知可以非常细粒度,主要表现在两方面:
1.啥时候通知:成功/失败/成功转失败/失败转成功
2.通知哪些人:参与人,开发,造成失败的罪魁祸首
网友评论