zoukankan      html  css  js  c++  java
  • CI CD

    持续集成

    概念

    持续集成就是频繁的将代码集成到主干。

    优点

    • 快速发现错误,避免在一次大量合并逻辑中找错误。
    • 防止分支偏离主干。长时间不集成,可能会造成难以集成。

    目的

    产品快速迭代,同时保持高质量。代码集成之前,必须经过自动化测试,一个测试案例不通过就不允许集成到主干。

    持续集成并不能消除bug,它的作用是“早发现,早改正”

    持续交付

    概念

    持续交付指的是频繁的将软件提交给QA,如果评审通过,则进入生产阶段。

    目的

    它强调的是不管软件怎么更新,它都可以做到随时交付。

    持续部署

    概念

    代码评审过后,自动部署到生产环境。

    目的

    代码在任何时刻都是可部署的,可以直接进入生产环境。

    流程

    持续集成的流程

    • 提交
      开发者向代码仓库提交代码(本地commit)

    • 测试(第一轮)
      代码仓库对提交代码操作(本地commit)配置了hook,只要提交代码或者合并进主干,就会跑自动化测试。

      单元测试:针对函数或者模块测试(必须完成且通过)
      集成测试:针对某个功能测试
      端对端测试:用户节面到数据库的全链路测试

    • 构建
      第一轮测试通过,合并进主干,交付完成,开始进行构建build,就是将只可以单元测试的代码转换成可以实际运行的代码,下载依赖,配置各种资源等。

      Jenkins
      Travis
      Codeship
      Strider

    • 测试(第二轮)
      构建完成开始第二轮,这一轮要包括集成测试。

    • 部署
      通过第二轮测试,当前代码就是一个可以直接进行部署的版本,将代码打包放到服务器。

    生产服务器将解包该代码,并且将运行路径符号链接到该解包目录,重启应用。

  • 相关阅读:
    sabaki and leelazero
    apply current folder view to all folders
    string operation in powershell
    wirte function in powershell
    add environment path to powershell
    Module in powershell
    sql prompt
    vmware中鼠标在部分区域不能使用
    调整多个控件的dock的顺序
    行为型模型 策略模式
  • 原文地址:https://www.cnblogs.com/CherryTab/p/14137137.html
Copyright © 2011-2022 走看看