• 持续集成与部署流水线


    持续集成的工作流程
    1.开发人员在本地工作空间提交代码到代码仓库;
    2.版本控制系统通过 WebHook 等机制实时通知持续集成服务器;
    3.持续集成服务器克隆最新的代码和构建脚本到服务器本地,或者专用的服务器;
    4,在持续集成服务器或专用服务器上执行构建脚本,对最新的代码进行检查,包括编译构建、代码动静态扫描、单元测试以及部署到测试环境运行功能测试等;
    5.运行结束后,自动生成执行结果报告;
    6.将执行结果通过邮件等方式通知给开发人员。

    部署流水线主要包含下面几个阶段:
    1.提交阶段,代码提交后会运行代码编译、自动化单元测试以及对代码进行动静态扫描;
    2.自动化测试阶段,主要是从功能性和非功能性方面验证系统是否可用,并且满足用户需求;
    3.手工测试阶段,主要是用户验收测试,用于验证系统是否为用户提供了价值;
    4.软件发布阶段,将软件交付给用户,交付方式有多种,可以是独立部署的方式,也可以是 SaaS 服务的方式。


    实现部署流水线
    1.起点是开发人员将代码提交到版本控制系统中,终点是将软件部署到生产环境交付给用户。
    2.版本控制系统和制品库是源代码和制品的单一可信数据源。
    3.制品库中的部署包只能通过版本控制系统中的源代码编译构建产出,并上传到制品库。后面测试环境和生产环境需要的部署包都来自同一个制品库,保证了部署包的唯一性。
    4.测试环境和生产环境都是通过部署平台统一部署,测试环境可以由测试人员自服务部署,生产环境可以由运维人员一键部署。
    5.不管是测试环境还是生产环境,当软件部署完成后,通过冒烟测试验证服务是否正常启动。
    6.自动化部署平台提供一键部署的功能。用户只需要选择在哪个环境、使用哪个软件版本,采用什么样的部署策略即可。

  • 相关阅读:
    单核时代,PHP之类多线程或者多进程的,是怎么处理并发的?是排队吗?
    高并发下的Node.js与负载均衡
    telnet 查看端口是否可访问
    同步与异步--
    函数式编程沉思录(草稿)
    面向状态机编程
    promise是有状态的moand
    异步链式编程—promise沉思录
    同步与异步
    网络编程释疑之:同步,异步,阻塞,非阻塞
  • 原文地址:https://www.cnblogs.com/muzinan110/p/16795931.html
Copyright © 2020-2023  润新知