持续集成和部署初学者指南

持续集成(CI)似乎是浪费时间或增加工作量,无法推动功能的发展。 但是,当您考虑项目的“健康状况”以及如何预见与其他开发人员合作的未来流程时,就会留下一个突出的问题。 流程需要自动化以节省我们的时间! 在过去的几年中,与工程师团队合作以消除不良的生产推动力,持续集成和部署已发展为行业最佳实践。

那里有什么?

选择使用哪种服务取决于您的要求,技术堆栈的类型以及您每周要处理多少工作流程。

以下是一些执行CI的提供商和开源项目,它们专注于连续部署/交付选项。

通常使用CloudBees CodeShip ,Travis CI(现已成为Idera,Inc.的一部分),CircleCI, JenkinsAWSHeroku

记住的概念!

环境

环境由启用的使用者,流程和设计不同的运行内部版本的类型定义。 最常见的环境类型设置为生产,暂存,本地,开发,演示等。

持续集成

建立

通常,当您的团队推动提交或创建请求请求时,将设置触发器。 它将触发一个过程,开始在虚拟环境中编译源代码并构建项目。

每个连续集成都有该过程要经历的阶段。 一个阶段可能经历的最简单的过程之一是:Git克隆,编译/构建,单元测试,打包然后部署。

工作

当我们设置环境时; 将会有一些作业可以正确设置容器并进行正确的投影-它模拟了作业的部署方式。 一项工作可能是安装某些依赖项,添加环境变量,运行数据库迁移,运行单元测试等。

货柜

我认为可以肯定地说,容器一开始可能会令人困惑。 尽管现实情况是,它使工程师更容易知道他们的软件将在部署的任何地方运行。 容器可以运行各种应用程序,并且可以在Amazon AWS,Heroku,Docker, Kubernetes等上进行管理。

测试中

有几种类型的测试,但是我认为最重要的两种是:行为驱动的开发和测试驱动的开发,它们为编写出色的测试提供了最佳实践。

平行测试

设置好测试框架后,就可以开始将测试分为几组,然后将一个组称为某个管道。

  • 管道。 管道是一组共享相同代码库的应用程序。 每个应用程序代表开发,登台,生产等阶段,成为持续交付工作流程的一部分,因此可以轻松地促进环境的发展。
  • VCPU。 这就是我们所谓的虚拟中央处理器。 通常,将几个vCPU分配给云环境中的每个虚拟机,并代表物理CPU的一部分。

持续交付+部署

一旦完成了持续集成的设置,我们现在就可以设置触发器以在我们的远程环境中推广新版本。

一个普遍的规则是在升级到生产之前先部署到过渡环境。 这样可以增加质量检查时间并由所有者一方进行审核。

结论

显而易见,持续部署和交付已发展为行业最佳实践。 了解这些概念是成功项目的关键。 还有其他实现CI / CD的方法,但是我想提供一些简单方法的基线,以帮助您入门!

祝好运!

额外资源

翻译自: https://www.javacodegeeks.com/2019/03/guide-continuous-integration-deployment.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值