AWS CodeDeploy
用户指南 (API 版本 2014-10-06)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

步骤 4:更新 AppSpec 文件

在本部分中,您将采用 Hooks 部分更新 AppSpec file。在 Hooks 部分中,为 AfterAllowTestTraffic 生命周期挂钩指定 Lambda 函数。

更新 AppSpec file

  1. 打开在 教程:部署 Amazon ECS 服务 步骤 2:创建 AppSpec 文件 中创建的 AppSpec file 文件。

  2. 采用您在 步骤 2:更新 Amazon ECS 应用程序 中记下的任务定义 ARN 更新 TaskDefinition 属性。

  3. Hooks 部分复制并粘贴到 AppSpec file 中。采用您在 步骤 3:创建生命周期挂钩 Lambda 函数 中记下的 Lambda 函数的 ARN,在 AfterAllowTestTraffic 之后更新 ARN。

    JSON AppSpecYAML AppSpec
    JSON AppSpec
    { "version": 0.0, "Resources": [ { "TargetService": { "Type": "AWS::ECS::Service", "Properties": { "TaskDefinition": "arn:aws:ecs:aws-region-id:aws-account-id::task-definition/ecs-demo-task-definition:revision-number", "LoadBalancerInfo": { "ContainerName": "sample-website", "ContainerPort": 80 } } } } ], "Hooks": [ { "AfterAllowTestTraffic": "arn:aws:lambda:aws-region-id:aws-account-id:function:AfterAllowTestTraffic" } ] }
    YAML AppSpec
    version: 0.0 Resources: - TargetService: Type: AWS::ECS::Service Properties: TaskDefinition: "arn:aws:ecs:aws-region-id:aws-account-id::task-definition/ecs-demo-task-definition:revision-number" LoadBalancerInfo: ContainerName: "sample-website" ContainerPort: 80 Hooks: - AfterAllowTestTraffic: "arn:aws:lambda:aws-region-id:aws-account-id:function:AfterAllowTestTraffic"
  4. 保存 AppSpec file 并上传至其 S3 存储桶。