示例:部署 AWS CDK 应用程序 - Amazon CodeCatalyst

示例:部署 AWS CDK 应用程序

以下示例工作流包括 AWS CDK 部署操作以及 AWS CDK 引导操作。工作流包含以下按顺序运行的构造块:

  • 触发器 – 当您将更改推送到源存储库时,此触发器会自动启动工作流运行。此存储库包含您的 AWS CDK 应用程序。有关触发器的更多信息,请参阅使用触发器自动启动工作流运行

  • AWS CDK 引导操作 (CDKBootstrap) – 在触发后,该操作会将 CDKToolkit 引导堆栈部署到 AWS。如果环境中已存在 CDKToolkit 堆栈,则将在必要时对堆栈进行升级;否则,不会发生任何操作,并且该操作将标记为成功。

  • AWS CDK 部署操作(AWS CDKDeploy)– 完成 AWS CDK 引导操作后,AWS CDK 部署操作会将您的 AWS CDK 应用程序代码合成到 AWS CloudFormation 模板中,并将该模板中定义的堆栈部署到 AWS 中。

注意

以下工作流示例仅用于说明目的,如果不执行附加配置,则无法运行。

注意

在接下来的 YAML 代码中,如果需要,可以省略 Connections: 部分。如果您省略这些部分,则必须确保在您的环境的默认 IAM 角色字段中指定的角色包含 AWS CDK 引导AWS CDK 部署操作所需的权限和信任策略。有关使用默认 IAM 角色设置环境的更多信息,请参阅创建环境。有关 AWS CDK 引导AWS CDK 部署操作所需的权限和信任策略的更多信息,请参阅“AWS CDK 引导”操作 YAML“AWS CDK 部署”操作 YAMLRole 属性的说明。

Name: codecatalyst-cdk-deploy-workflow SchemaVersion: 1.0 Triggers: - Type: PUSH Branches: - main Actions: CDKBootstrap: Identifier: aws/cdk-bootstrap@v2 Inputs: Sources: - WorkflowSource Environment: Name: codecatalyst-cdk-deploy-environment Connections: - Name: codecatalyst-account-connection Role: codecatalyst-cdk-bootstrap-role Configuration: Region: us-west-2 CDKDeploy: Identifier: aws/cdk-deploy@v2 DependsOn: - CDKBootstrap Environment: Name: codecatalyst-cdk-deploy-environment Connections: - Name: codecatalyst-account-connection Role: codecatalyst-cdk-deploy-role Inputs: Sources: - WorkflowSource Configuration: StackName: my-app-stack Region: us-west-2