以开发方式运行管道
CI 和 CD 管道的开发方式将测试 DevSecOps 配置 (yaml) 文件的实现,而不运行任何与安全性或合规性相关的任务。 开发方式还可减少管道执行时间。
仅将开发方式用于开发目的。 开发方式不是官方 DevSecOps CI 和 CD 管道的替代方法,它们仍然是参考实现。
使用简化的管道来开发,实现和测试对 .pipeline-config.yaml
文件所作的更改。 此管道具有以下特征:
- 仅运行
.pipeline-config.yaml
文件的各个阶段。 - 跳过与合规性和安全性相关的任务,以优化运行代码的时间。
先决条件
- 现有 DevSecOps CI 或 CD 工具链。
.pipeline-config.yaml
以及相应的构建,测试和部署脚本。
设置开发方式
完成以下步骤以设置管道的开发方式:
-
转至 CI 或 CD 管道的 触发器 页面。
-
找到“手动触发器”,单击 操作 图标
,然后单击 复制。
图 1。 复制手动触发器 -
命名触发器。 例如,
Manual-Dev-Mode
。 -
将
EventListener
更改为dev-mode-listener
(对于 CI) 或dev-mode-cd-listener
(对于 CD)。图 2。 更改事件侦听器 -
保存更改。
在 IaC 管道中设置开发方式
完成以下步骤以在“基础结构即代码”(IaC) 管道中设置开发方式:
-
转至 CI 管道的“触发器”页面。
-
找到“手动触发器”,单击 操作 图标
,然后单击 复制。
图 3。 复制手动触发器 -
命名触发器。 例如,
Manual-IaC-Dev-Mode
。 -
将
EventListener
更改为iac-dev-mode-listener
。图 4。 更改 iac 事件侦听器 -
保存更改。
运行开发方式管道
完成以下步骤以运行开发方式管道:
- 转至 PipelineRuns 页面。
- 单击 运行管道,然后选择您创建的
Manual-Dev-Mode
触发器。 - 单击运行。
开发方式管道仅运行 .pipeline-config.yaml
文件中的代码。
所有其他安全性和合规性任务都不会运行,从而减少了管道执行时间。

CI 管道的开发方式
CI 管道从应用程序存储库构建可部署工件。
下表列出了 CI 管道的开发方式中的阶段。
Dev-mod-ci 管道阶段 | 阶段描述 |
---|---|
code-ci-start |
设置管道环境。 此过程包括将配置和应用程序存储库克隆到管道本地文件系统。 |
code-setup |
设置构建和测试环境,以便为以下管道阶段做好准备。 |
code-unit-tests |
对应用程序代码运行单元测试和应用程序测试。 |
build-artifact |
构建工件和映像。 |
deploy-dev |
将构建的工件部署到开发环境。 |
deploy-acceptance-tests |
在开发环境上对已部署的已构建工件运行验收和集成测试 |
deploy-release |
将构建的工件添加到库存。 Continuous Delivery 管道使用此库存。 |
code-ci-finish |
收集,创建日志文件,工件和证据并将其上载到证据锁定程序。 如果先前在管道中执行的任何一致性检查失败,那么此阶段也会失败。 此阶段表示“故障安全”行为,以确保在可以合并 PR 或可以部署构建之前修复合规性问题。 |
CD 管道的开发方式
CD 管道将构建部署到环境,例如登台或生产环境。
下表列出了 CD 管道的开发方式中的阶段。
CD 管道阶段 | 阶段描述 |
---|---|
prod-start |
计算部署增量。 |
prod-setup |
设置构建和测试环境。 |
prod-verify-artifact |
验证 CI 管道中构建的映像的签名。 |
prod-deployment |
将构建部署到环境。 |
prod-acceptance-tests |
运行验收测试。 |
prod-finish |
发布验收测试,部署记录,收集 CycloneDX SBOM 以及关闭变更请求。 |
返回到标准方式
当您对 .pipeline-config.yaml
文件及其关联脚本的实现感到满意时,请禁用或删除 Manual-Dev-Mode
触发器,并改为使用用于运行安全性和合规性检查的 standard
触发器。