持续交付致力于提供开放易用的企业级 CI/CD 平台,助力企业高质量高效率交付业务。本文为您详细介绍持续交付目前支持的功能。
概览
介绍持续交付的产品定义、使用流程及常用的功能入口,帮助您快速了解产品。
- 使用流程:展示持续交付的使用流程,并提供 step by step 的新手引导,帮助您快速上手持续交付。
- 工作区: 提供工作区的创建入口,并支持快速跳转至最近使用的 10 个工作区。
工作区
工作区是一个虚拟的工作空间。每个工作区相互独立,企业可以将不同的项目划分在不同的工作区进行管理。
代码源
代码源是流水线的输入源头之一。代码源用于管理您的代码仓库地址和 Token 信息。
流水线
流水线是持续交付的载体,通过构建自动化、集成自动化、验证自动化、部署自动化,完成从开发到上线过程的持续交付。
特性 | 描述 |
---|
流水线模板 | 提供常用的 Go、Node.js、Java、Python 流水线模版。 |
流水线管理 | 流水线是持续交付的载体,通过构建自动化、集成自动化、验证自动化、部署自动化,完成从开发到上线过程的持续交付。 流水线全生命周期管理:包括创建/查看/编辑/复制/删除流水线等。 草稿箱:支持将未配置完成的流水线暂存至草稿箱。 运行流水线:指定分支/Tag/Commit ID 运行流水线。 终止流水线:流水线运行过程中支持随时终止流水线运行。 失败重试:流水线运行失败支持从失败任务重试。 实时日志:提供流水线中每个步骤的运行日志,方便用户掌握流水线运行情况。 流水线运行详情:支持查看流水线的运行详情,包括:流水线运行流程及结果、流水线配置信息(基本信息、环境变量、缓存目录及通知提醒等)、每个任务/步骤的运行详情(运行结果、运行日志、配置信息、产物等)。 流水线运行历史:展示每条流水线的运行记录,方便追溯。 流水线通知记录:展示每条流水线的通知记录,包括:流水线运行 ID、触发通知的事件、通知详情、触发时间等。
|
流水线配置 | 配置编排流水线,定义您的自动化交付流程。 配置代码源:配置流水线拉取的代码仓库及分支。 构建环境:支持公共资源池(系统提供的公共构建集群)及私有资源池(用户自定义的私有构建集群)。 触发规则:提供流水线触发规则,包括:手动触发/Webhook 触发/定时触发。 自动触发规则失效策略:支持设置 Webhook 触发和定时触发的自动失效规则,避免异常流水线频繁触发失败。 图形化编排:提供图形化编排能力,支持阶段、任务、步骤三层结构的拖拽编排。通过编排流水线,将测试、构建、部署等各阶段各任务有机串联起来,定义您的自动化交付流程。 跳过失败步骤:支持强制跳过运行失败的步骤,继续向下运行,满足特殊情况下需要跳过失败步骤继续运行流水线的需求。 环境变量:流水线各步骤支持使用环境变量作为动态变化的参数,提升流水线的通用性。目前支持动态/隐私/常规/预置/自定义环境变量。 缓存目录:配置构建任务的缓存目录,将构建过程中需要下载的依赖缓存在项目路径下,提高后续构建效率。目前支持预置/自定义缓存目录。 流水线通知提醒:支持通过站内信、短信、邮件、Webhook、飞书机器人的方式推送流水线消息,帮助您快速了解构建部署结果 任务通知提醒:支持通过 Webhook 和飞书机器人两种方式推送任务维度的消息,帮助您及时掌握任务动态。
|
应用交付
以应用为中心的云原生应用交付平台,提供开箱即用的应用接入、配置管理、应用发布等一站式能力,帮助企业建立应用持续交付整体解决方案。
特性 | 描述 |
---|
成员管理 | 提供单独的应用交付成员和权限管理功能:支持添加/修改/删除应用的组成成员,为成员关联预置角色权限,满足多角色协作进行应用交付的需求。 |
应用管理 | 提供以应用为中心的应用全生命周期管理功能。 K8s YAML 应用管理:支持基于原生 K8s YAML 定义应用,完成应用创建、应用快速接入、应用基本信息修改、应用删除等功能,适用于熟悉 K8s 知识的开发者。 OAM 应用管理:OAM(Open Application Model)应用是一种低门槛云原生应用,旨在通过规范化管理和标准化部署,降低应用开发和运维的难度。提供 OAM 应用的应用创建、应用快速接入、应用基本信息修改、应用删除等功能,降低 K8s 的使用门槛。
|
|
|
环境管理 | 对不同类别(开发/测试/预发/生产)的 Kubernetes 环境实例进行全生命周期管理,包括创建、编辑、删除等操作。 |
部署运维 | 将应用部署至目标环境实例,并对环境进行运维。 |
外部集成 | 将镜像仓库类型的外部服务集成至应用交付。支持添加/编辑/删除外部服务。 |
应用模板 | 提供组件模板和运维插件模板,帮助快速生成 OAM 应用。 |
资源管理
用于统一管理部署任务所需的部署资源和运行构建任务所需的构建资源。
特性 | 描述 |
---|
部署资源管理 | 用于管理应用实际部署的位置,例如 Kubernetes 集群、云服务器、虚拟机、物理机等。 |
构建资源管理 | 用于管理运行构建任务的环境。 |
模板市场
收录流水线常用的步骤模板,并提供自定义步骤功能,满足用户个性化的构建部署需求。
特性 | 描述 |
---|
步骤模板 | 为流水线提供开箱即用的步骤模板,满足企业日常的构建/测试/部署等需求。 SonarQube 代码扫描:支持对接 SonarQube 代码分析平台,实现代码的快速检测,有效管控代码质量。 单元测试:支持对 Java Maven、Java Gradle、Python、Go 语言进行单元测试。 命令执行:支持 Bash 命令执行。 人工卡点:流水线运行状态暂停等待人工介入处理,适用于人工测试、安全审核等场景。 编译构建:支持对 Java Maven、Java Gradle、Python、Go、Node.js 语言编译构建。 镜像打包推送至自定义仓库:打包镜像并将镜像推送至第三方仓库。支持打包多架构镜像、支持忽略证书有效性校验。 镜像打包推送至镜像仓库:打包镜像并将镜像推送至火山引擎镜像仓库。支持打包多架构镜像、支持忽略证书有效性校验。 Kubernetes 镜像升级:支持对 Kubernetes 集群上的应用进行镜像升级。 Kubernetes 滚动发布:支持对 Kubernetes 集群上的 Deployment 进行按实例分批滚动升级。 Kubectl 发布:基于 YAML 文件创建新的 Kubernetes 应用、任务等。 自定义环境命令执行:支持使用自定义环境执行命令,适用于预置任务无法满足用户诉求的场景。
|
自定义步骤 | 自定义步骤用于扩展流水线的能力,满足企业个性化的构建部署需求。例如:将团队内部得心应手的工具或命令封装成自定义步骤,方便团队内其他项目与成员快速复用。 - 支持创建/更新/启用/停用自定义步骤,支持查看自定义步骤关联的流水线。
|