CI/CD

2023-11-20

CICD 是 持续集成(Continuous Integration)持续交付和持续部署(Continuous Deployment)简称。指在开发过程中自动执行一系列从开发到部署的过程中,尽量减少人工的介入。

CI, CD AND CD

CI很容易理解,就是持续集成。但是CD既可以指代码持续交付,也可理解为代码持续部署。CI和CD之间有很多相似的部分,但是也有很大的区别。
在这里插入图片描述

持续集成(CONTINUOUS INTEGRATION)

在持续集成环境中,开发人员将会频繁的提交代码到主干。这些新提交在最终合并到主线之前,都需要通过编译和自动化测试流进行验证。这样做是基于之前持续集成过程中很重视自动化测试验证结果,以保障所有的提交在合并主线之后的质量问题,对可能出现的一些问题进行预警。

持续交付(CONTINUOUS DELIVERY)

持续交付就是讲我们的应用发布出去的过程。这个过程可以确保我们尽可能快的实现交付。这就意味着除了自动化测试,我们还需要有自动化的发布流,以及通过一个按键就可以随时随地实现应用的部署上线。

通过持续交付,您可以决定每天,每周,每两周发布一次,这完全可以根据自己的业务进行设置。

但是,如果您真的希望体验持续交付的优势,就需要先进行小批量发布,尽快部署到生产线,以便在出现问题时方便进行故障排除。

持续部署(CONTINUOUS DEPLOYMENT)

如果我们想更加深入一步的话,就是持续部署了。通过这个方式,任何修改通过了所有已有的工作流就会直接和客户见面。没有人为干预(没有一键部署按钮),只有当一个修改在工作流中构建失败才能阻止它部署到产品线。

持续部署是一个很优秀的方式,可以加速与客户的反馈循环,但是会给团队带来压力,因为不再有“发布日”了。开发人员可以专注于构建软件,他们看到他们的修改在他们完成工作后几分钟就上线了。基本上,当开发人员在主分支中合并一个提交时,这个分支将被构建、测试,如果一切顺利,则部署到生产环境中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CI/CD 的相关文章

  • Jenkins使用总结,2.0 新时代:从 CI 到 CD

    Jenkins近阶段使用的总结篇 只写了个引子 却一直未动手写完 今天补上 前几篇文章提到在内网jenkins直接构建部署升级线上环境 job都是暴露在外面 很容易被误操作 需要做简单的权限控制 以防止误操作 导致生产环境挂掉 但jenki
  • Nacivat导入Access数据库时cannot initialize database问题解决

    问题 想使用Nacivat将Access数据库导入到pgsql 在选择Access数据库的mdb文件时提示 cannot initialize database 解决方案 需要安装AccessDatabaseEngine X64 下载地址
  • vue.js:基于nodejs使用log4js输出日志文件

    一 问题 开发web项目过程中 常规的console log 只是将信息反映在了浏览器的控制台 我们经常需要输出到文本日志文件 以便开发调试和维护排查 下面介绍log4js在vue项目中的部署与使用 二 解决方案 1 安装log4j 注意
  • 2023 年及未来最佳的软件构建工具

    当今世界 加快任务完成速度和尽可能减少人力投入是一切事物都需要关注的问题 软件开发也不例外 无论你在哪个领域 游戏 区块链 还是应用创建 软件开发的竞争都异常激烈 只要能够帮助到你 采用任何手段都无关紧要 而这也正是构建工具的作用 这些工具
  • Dynamics 365 自动化发布工具Spkl介绍

    本篇主要是为了后面讲述CI CD时用到的工具做一个说明 先奉上spkl的github地址 没听说过的可以去查看下 挺不错的工具 我们主要用这个工具来部署WebResource Plugin和Workflow Activities 以及后续的
  • gitlab-ci docker maven 自动化流水线部署 springboot多模块项目

    一 准备 首先 需要两台服务器 这里为了下面方便理解 我们约定这两台服务器地址 名称和系统 1 gitlab 服务器 服务器A 地址10 10 10 7 内存大于4g不然会一直死 CentOS Linux 7 Core 2 springbo
  • 173.CI/CD(一):gitlab配置,jenkins的安装配置,jenkins实现基础的CI/CD,Sonarqube代码质量检测,Harbor镜像仓库

    目录 一 容器化持续集成的基础概念 1 敏捷开发 持续集成 持续交付 DevOps区别 2 为什么需要持续集成 3 如何设计持续集成流水线 4 什么是持续部署 1 概念 2 要素 3 常见自动化部署方法 4 如何测试部署的效果 5 项目进度
  • jenkins 持续集成/项目部署

    前置操作可查阅 docker 安装 jenkins https xijia blog csdn net article details 127021367 spm 1001 2014 3001 5502 win安装及 jenkins 前置配
  • Gitee Go代码格式审查、程序编译和冒烟测试

    本文分享自中移OneOS微信公众号 CI CD搭建流程 Gitee篇 作者 Kisann Gitee CI CD能力 Gitee 即码云 是OSCHINA NET推出的代码托管平台 已有超过600 万的开发者选择Gitee Gitee Go
  • Jenkins插件开发之突破防火墙

    背景 因为防火墙限制 Jenkins服务端配置完成后 从远程url访问往往受阻 然鹅 并不是任何环境都允许你直接粗暴的将防火墙关闭 解决思路之一 可以单独设置一条规则 开放端口 步骤演示 环境 windows server 2022 1 打
  • [war打包]在maven-antrun-plugin复制更改了配置文件但是maven-war-plugin打包出来配置文件没变化(草稿)

    前言 背景介绍 在某个java web项目中 需要根据maven的profile的配置进行properties文件的切换 例如 项目的配置文件结构如下 在resources文件夹下面分别有profiles文件夹及conf文件夹 重点关注 p
  • 更换持续集成工具,从 Travis 到 Github Actions

    我真傻 真的 单单受文档的推荐就选择了 Travis 作为部分项目的持续集成工具 没有料到它早已于 2020 年 12 月更换了免费政策 不再为开源项目提供免费的用于持续集成使用的 Credits 了 当赠送的 10000 个点数用完 就需
  • 计算机网络详细讲解-----核心,边缘;datagram,virtual circuit【计算机网络养成】

    计算机网络养成 内容导航 计算机网络养成 网络边缘 应用进程和应用进程联系的模式 客户 服务器模式 C S架构 对等模式 peer peer 模式 网络边缘 采用网络设施的面向连接服务 目标 握手 TCP 传输控制协议 传输层 Transm
  • jenkins学习系列之PMD静态代码检测

    一 jenkins集成PMD流程 实际生产中 上线的代码往往要经过检测 满足一些规则才行 这些规则可以是直接使用官方的规则 也可以是自己写的 因为目前的工作和java有关 所以这里以java代码静态检测 PMD为例子来进行讲解 这里PMD是
  • (七)mkdocs学习——其他技巧

    mkdocs学习笔记系列 一 MkDocs 学习 快速开始 二 MkDocs学习笔记 撰写文档 三 MkDocs学习 配置主题 四 MkDocs学习 自定义主题 五 MkDocs学习 配置文件 六 MkDocs学习 部署文档 七 mkdoc
  • UI自动化测试潮流代表工具—testsigma CI/CD

    Step1 创建测试计划 Step2 添加测试机器和测试套件 Step3 进入CI CD integrations Step4 复制测试计划API Step5 命令行执行测试计划API Step6 点击View Report Step7 验
  • 医疗保健软件必备指南

    对许多人来说 软件可能是一种奢侈品 只会给生活在 21 世纪的人们带来一些额外好处 但有时 软件可能是救命稻草 起着生死攸关的作用 根据医疗行业的部分统计数据 我们清醒地发现 美国平均每年约有 25 万至 40 万患者死于本可预防的医疗差错
  • 工业 4.0 如何引领另一场工业革命

    提到工业革命 你首先想到的是什么 也许你会联想到一个戴着高帽 留着卷曲胡子的垄断商 抑或是蒸汽机 吊桥和维多利亚时代的工厂 如果我们告诉你 工业革命远未结束 而是未来众多工业革命中的第一次呢 事实上 我们正处于第四次工业革命的阵痛期 即所谓
  • Jenkins插件开发之环境构建

    1 环境 1 1 jdk 1 1 1 下载 Java Platform Standard Edition 8 ReferenceImplementations 或其他途径下载 1 1 2 java环境配置 1 1 2 1 右键此电脑 属性
  • CI/CD

    CICD 是 持续集成 Continuous Integration 持续交付和持续部署 Continuous Deployment 简称 指在开发过程中自动执行一系列从开发到部署的过程中 尽量减少人工的介入 CI CD AND CD CI

随机推荐

  • 在 spawn 的子进程中保持命令行颜色

    本文首发于我的博客 转载请注明出处 https kohpoll github io blo 最近在用子进程运行 gulpfile js 的时候发现终端上的颜色全部没有了 很是奇怪 经过一些研究 最终解决了问题 同时也总结了一些相关知识 希望
  • 锋利的jQuery(五)--jQuery对表单、表格的操作及更多应用

    5 1表单应用 一个表单有3个基本组成部分 1 表单标签 包含处理表单数据所用的服务器端程序URL以及数据提交到服务器的方法 2 表单域 包含文本框 密码框 隐藏域 多行文本框 复选框 单选框 下拉选择框和文件上传框等 3 表单按钮 包括提
  • 吉林大学超星MOOC学习通高级语言程序设计 C++ 实验02 分支与循环程序设计(2021级)(2)

    5 爱因斯坦阶梯 题目编号 Exp02 Basic10 GJBook3 04 15 题目名称 爱因斯坦阶梯 问题描述 设有阶梯 不知其数 但知 每步跨2阶 最后剩1阶 每步跨3阶 最后剩2阶 每步跨5阶 最后剩4阶 每步跨7阶 正好到楼顶
  • python文件运行路径设置,python获取程序执行文件路径的方法(推荐)

    1 获取当前执行主脚本方法 sys argv 0 和 file 1 sys argv 一个传给python脚本的指令参数列表 sys argv 0 是脚本的名字 一般得到的是相对路径 用os path abspath sys argv 0
  • Dubbo 默认线程池fixed

    SPI fixed public interface ThreadPool 线程池 param url 线程参数 return 线程池 Adaptive Constants THREADPOOL KEY Executor getExecut
  • linux共享内存面试题,linux系统工程师面试题(附答案)

    1 查看Linux系统当前单个共享内存段的最大值 命令 ipcs m ipcs a 2 用什么命令查询指定IP地址的服务器端口 题意应该是 nmap 和nbtscan 命令来扫吧 3 crontab中用什么命令定义某个程序执行的优先级别 n
  • Gurobi:使用Java+Gurobi建立一个小数学模型

    Gurobi 使用Java Gurobi建立一个小数学模型 按变量进行建模 按列进行建模 模型的求解结果 现在基本上都流行python gurobi java cplex进行建模 但是由于java相较于python还是具有显著的速度优势 于
  • 后疫情时代企业云原生成本优化指南

    在本篇文章的末为还有福利 在等着大家哦 前言 近年来 公有云 混合云等技术在全球迅速发展 云的普及度越来越高 Docker Kubernetes DevOps Service Mesh等云原生技术蓬勃发展 但在 上云 之后 企业却往往发现
  • 《数据库系统内幕》笔记 —— LSM树与OceanBase

    本文为 数据库系统内幕 第7章的笔记与心得 因为看到OceanBase底层也使用LSM树的实现作为存储引擎 因此特地记下笔记 详见OceanBase文档 https www oceanbase com docs community obse
  • Opencv学习笔记(三)线性及非线性滤波

    大纲 1 滤波综述 2 方框滤波 3 均值滤波 4 高斯滤波 5 中值滤波 6 双边滤波 一 滤波综述 图像的滤波指的是在尽量保证图像细节特征的的情况下对图像中的噪声进行抑制 又因为图像的能量大部分集中在低频或者中频的区域 图像大部分区域是
  • Scrum

    产品列表梳理会 Backlog Refinement Meeting 会议目的 Refinement 这个词是加工 提炼的意思 在scrum里 其实就是对下阶段的需求做一个讨论 澄清 细化的一个活动 希望通过这个活动 使得团队能对后续阶段的
  • 默认构造函数、拷贝构造函数、析构函数、赋值构造函数

    最近老是有人问我拷贝构造函数和赋值构造函数 说实话 我会用 但这个概念还真是搞不太清楚 真烦 概念问题少问我 学习笔记 1 析构函数 每个类只有一个析构函数 2 构造函数 每个类可以有多个构造函数 包括 默认构造函数 拷贝构造函数 赋值构造
  • Redis 7.0 核心技术、实战应用、面试题

    Redis 7 0 核心技术与实战应用 Redis 入门概述 01 Redis 是什么 Redis REmote Dictionary Server 远程字典服务器 官网介绍 https redis io docs about 官网定义 R
  • RabbitMQ消息丢失的场景,如何保证消息不丢失?(详细讲解,一文看懂)

    目录 一 RabbitMQ消息丢失的三种情况 二 RabbitMQ消息丢失解决方案 1 针对生产者 方案1 开启RabbitMQ事务 方案2 使用confirm机制 2 针对RabbitMQ 1 消息持久化 2 设置集群镜像模式 3 消息补
  • HDMI CEC协议

    1 前言 本文档仅作为本人记录使用 主要根据工作使用及 HDMI Specification 1 4a pdf 进行终结得出 若有不足会后续补充 2 CEC简介 CEC Consumer Electronics Control 是一套完整的
  • jenkins安装出现该实例似乎已离线等报错和如何卸载干净Jenkins的解决方案

    前段时间在准备使用Jenkins来实现Android自动化打包 但是在安装Jenkins的过程中出现了问题 在安装过程中出现 Jenkins实例似乎已离线 需要我配置代理 还有一个离线安装的文档 可是根据文档并没有明确说明怎么配置 然后我就
  • WPS Office 漏洞复现

    前言 此文章仅用于技术交流 严禁用于对外发起恶意攻击 一 产品简介 WPS Office是金山软件公司开发的 中国领先的办公软件套件 包含文字 表格和演示三个组件 支持创建 编辑各种文档 并具有强大的数据计算 统计和分析功能 其特点包括全面
  • Git提交代码步骤

    目录 1 Git提交代码步骤 1 1 第1步 同步远程仓库代码 git pull 1 2 第1步 查看当前状态 git status 1 3 第2步 提交代码到本地git缓存区 git add 1 4 第3步 推送代码到本地git库 git
  • 让csdn中的静态图动起(firemonkey)

    缘起 错过了登月50周年的日子 7 20 看到了如下卡通图童心大发 让它动起来 https blog csdn net csdnnews article details 96403350 代码下载 链接 https pan baidu co
  • CI/CD

    CICD 是 持续集成 Continuous Integration 持续交付和持续部署 Continuous Deployment 简称 指在开发过程中自动执行一系列从开发到部署的过程中 尽量减少人工的介入 CI CD AND CD CI