本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 Jenkins、 GitLab CI/CD、Actions 或 Bitbucket 管道生成启动管道 GitHub
要为 Jenkins、C GitLab I/CD、Ac GitHub tions 或 Bitbucket Pipelines 生成启动流水线配置,请按以下顺序执行以下任务:
-
创建基础设施资源
-
将您的 Git 存储库与 CI/CD 系统Connect
-
创建凭证对象
-
生成管道配置
-
将您的工作流配置提交到 Git 存储库
注意
以下过程使用了两个Amazon SAM CLI 命令,sam 管道引导和sam 管道 init。之所以有两个命令,是为了处理这样的用例:管理员(即需要权限才能设置基础设施Amazon资源的用户,如 IAM 用户和角色)比开发人员(即只需要设置单个管道的权限,而不是所需的基础设施Amazon资源的用户)拥有更多的权限。
步骤 1:创建基础设施资源
使用的管道Amazon SAM需要某些Amazon资源,例如具有必要权限的 IAM 用户和角色、Amazon S3 存储桶以及可选的 Amazon ECR 存储库。您必须为管道的每个部署阶段提供一组基础架构资源。
您可以运行以下命令以帮助完成此设置:
sam pipeline bootstrap
注意
为管道的每个部署阶段运行先前的命令。
您必须获取管道每个部署阶段的管道用户的Amazon证书(密钥 ID 和密钥),因为后续步骤需要这些证书。
第 2 步:将 Git 存储库与 CI/CD 系统Connect
必须将 Git 存储库连接到 CI/CD 系统,以便 CI/CD 系统能够访问您的应用程序源代码以进行构建和部署。
注意
如果您使用的是以下组合之一,则可以跳过此步骤,因为连接是自动完成的:
-
GitHub 使用 GitHub 存储库执行的操作
-
GitLab 带 GitLab 存储库的 CI/CD
-
带有 Bitbucket 存储库的 Bitbu
要将 Git 存储库与 CI/CD 系统连接,请执行以下操作之一:
-
如果你使用的是 Jenkins,请参阅 Jenkins 文档
“添加分支源”。 -
如果您使用的是 GitLab CI/CD 以外的 Git 存储库 GitLab,请参阅 “连接外部存储库” GitLab文档
。
步骤 3:创建凭证对象
每个 CI/CD 系统都有自己的方式来管理 CI/CD 系统访问您的 Git 存储库所需的证书。
要创建必要的凭证对象,请执行以下操作之一:
-
如果您使用的是 Jenkins,请创建一个存储密钥 ID 和密钥的单个 “凭据”。按照 “配置 Jenkins” 部分的 “使用Amazon SAM博客构建 Jenkins 流水线
” 中的说明进行操作。在下一个步骤中,您需要用到 “凭证 ID”。 -
如果您使用的是 C GitLab I/CD,请创建两个 “受保护变量”,分别对应密钥 ID 和密钥。按照GitLab 文档
中的说明进行操作——下一步将需要两个 “可变密钥”。 -
如果您使用的是 Ac GitHub tions,请创建两个 “加密密钥”,分别对应密钥和密钥。按照GitHub文档
中的说明进行操作-下一步需要两个 “机密名称”。 -
如果您使用的是 Bitbucket 管道,请创建两个 “安全变量”,分别对应密钥 ID 和密钥。按照变量和机密
中的说明进行操作——下一步需要两个 “机密名称”。
步骤 4:生成流水线配置
要生成管道配置,请运行以下命令。您需要输入在上一步中创建的凭证对象:
sam pipeline init
第 5 步:将您的工作流配置提交到 Git 存储库
此步骤是确保您的 CI/CD 系统知道您的工作流配置所必需的,并且将在提交更改后运行。
了解更多信息
有关使用设置 CI/CD 管道的实践示例GitHub Actions,请参阅《完整Amazon SAM研讨会》中的 CI/CD