我是靠谱客的博主 虚幻泥猴桃,最近开发中收集的这篇文章主要介绍欧洲核子研究组织使用Jenkins自动化开发流程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CERN 的应用和服务部门 (APS) 负责在所有技术事务中发挥主导作用,包括与用户、合作伙伴和服务提供商合作。这就是为什么自动化是关键。这正是 Jenkins 实现的目标。

“Jenkins 帮助我们的开发人员更具创新性,因为他们不再需要成为基础设施工程师。” -Anti Asko,软件工程师,CERN

 

组织机构

欧洲核子研究组织,是世界上最大型的粒子物理学实验室,也是万维网的发源地。

编程语言

Java、Node.js、Python

平台

Docker/Kubernetes、Linux、MacOS、Windows

版本控制系统

GitLab

构建工具

Gradle、Maven、docker、Helm


背景

CERN (APS) 的应用服务主要用于提供加速器、技术部门所需的通用数据管理服务和综合软件解决方案。APS 负责在所有技术事务中发挥主导作用,与用户、合作伙伴和服务提供商合作。这种合作涵盖了相应数据存储库、服务器端流程、客户端 API 和通用面向用户的应用程序的需求分析和数据建模、设计和实现。这就是为什么 CERN 的软件必须无错误并且 CERN 开发人员能够专注于构建高质量应用程序而不是 QA 和测试过程的原因。自动化是关键。

目标

我们希望使用 Jenkins 解决的主要挑战是将重复的、容易出错的步骤来自动化以促进日常工作,以将我们的工具交付给我们的最终用户。我们希望通过 Gitlab 和 Jenkins 之间的合并请求集成来自动化构建和测试过程,从而降低日常工作开销。此外,我们寻求自动化 Web 应用程序的持续集成和交付,以消除流程中的任何人为错误。

解决方案

我们将 Jenkins 置于开发过程的中间。就是这样:

  • 我们配置了合并请求触发器以在每个分支上构建。通过这种方式,我们能够确保在部署配置实例时不会遇到任何故障,尽早发现问题。

  • 我们将 dev 上的每个分支合并时通过触发器触发dev 分支的集成构建。它会自动部署我们应用程序的开发实例(在 Ansible 软件的帮助下),以确保一切按预期工作。

  • 我们使用一系列 Jenkins 作业自动执行发布流程,这些作业构建应用程序并将它们部署到适当的服务器。

通过将 Jenkins 添加到开发中,我们显著的缩短了交付时间并消除了流程中的开销。与 Gitlab 和 Artifactory 的集成对这项工作也有很大帮助。由于我们现在可以在 xvfb 插件的帮助下运行我们的 e2e 测试,它允许我们在 Jenkins 上自动化部分 QA 流程。通过自动化我们的开发过程,Jenkins 完成了构建、测试、发布和部署的繁重工作,让开发人员有更多时间专注于开发新功能和交付高质量的应用程序。它还带来了显着的成果,

包括:

  • 用户反馈证明了产品质量的提高

  • 显著缩短发布周期

  • 降低开发开销和人工干预

  • 更快地交付修补程序

关于我们

泽阳,DevOps领域实践者。专注于企业级DevOps运维开发技术实践分享,主要以新Linux运维技术、DevOps技术课程为主。丰富的一线实战经验,课程追求实用性获得多数学员认可。课程内容均来源于企业应用,在这里既学习技术又能获取热门技能,欢迎您的到来!

帮转发,点个再看吧,前进的动力...

最后

以上就是虚幻泥猴桃为你收集整理的欧洲核子研究组织使用Jenkins自动化开发流程的全部内容,希望文章能够帮你解决欧洲核子研究组织使用Jenkins自动化开发流程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(117)

评论列表共有 0 条评论

立即
投稿
返回
顶部