第 2 章 自定义管道示例
了解如何在示例模板存储库中更新 Pipeline 作为代码(pac
) URL,并将示例管道存储库自定义工作流。通过自定义 pac
URL,组织可以利用根据需求量身定制的特定管道。
自定义示例模板存储库以更新 pac
URL*
步骤
访问分叉的管道存储库 URL:
- 打开已分叉的示例管道存储库。
- 复制地址栏中的完整 URL。例如 ,https://github.com/<username>/tssc-sample-pipelines。
在示例模板存储库中更新
pac
URL- 使用您的终端导航到本地克隆的示例模板存储库。
- 运行以下命令,将 {fork_url} 替换为从第 1 步中复制的 URL,将 {branch_name} 替换为您所需的分支名称(例如 main):
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ./scripts/update-tekton-definition {fork_url} {branch_name} # For example, .scripts/update-tekton-definition https://github.com/<username>/tssc-sample-pipelines main
./scripts/update-tekton-definition {fork_url} {branch_name} # For example, .scripts/update-tekton-definition https://github.com/<username>/tssc-sample-pipelines main
检查、提交和推送更改:
- 查看示例模板存储库中的更新文件。
- 将更改与适当的消息一起提交。
- 将提交的更改推送到您的已分叉的存储库。
为工作流自定义示例管道存储库
示例管道存储库提供了一个基础,您可以构建组织的特定 CI/CD 工作流。管道存储库示例在 pac
目录中包含多个关键管道模板:
-
GITOPS-repo
: 此目录包含用于验证 GitOps 存储库中的拉取请求的管道定义。它会触发gitops-pull-request
管道(位于pipelines
目录中),验证镜像更新符合机构标准。这个设置对于提升工作流至关重要,其中应用程序的部署状态是高级的,如从开发到暂存或从暂存到生产等。有关gitops-repo
中的管道定义的更多信息,请参阅 Gitops Pipelines。 -
管道
: 此目录包含gitops-repo
和source-repo
中事件处理程序引用的构建和验证管道的实现。通过检查此目录的内容,您可以了解管道执行的特定操作,包括它们如何贡献应用程序的安全提升和部署。 -
source-repo
:此目录侧重于基于 Dockerfile 的安全供应链软件构建。它包括用于克隆源的管道定义、生成和签名工件(如用于镜像签名的.sig
)、.att
用于 attestation,以及.sbom
用于软件 Bill 的 Materials,并将它们推送到用户的镜像 registry。如需有关source-repo
中的管道定义的更多信息,请参阅 共享管道和任务的共享 Git 解析器模型。 -
任务
: 此目录包含可添加或修改的任务集合,与组织需求保持一致。例如,高级 Cluster Security (ACS)任务可以替换为替代检查,或者完全新的任务可以集成到管道中,以增强其功能和合规性。
验证
- 考虑创建一个应用程序,以探索模板和管道自定义的影响。
其他资源
- 要自定义模板,请参阅自定义示例软件模板
- 有关 Pipeline 作为代码的详情,请参考 Pipelines as Code。