第 4 步:更新AppSpec文件 - Amazon CodeDeploy
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

第 4 步:更新AppSpec文件

在本节中,您将使用分Hooks区更新您的AppSpec文件。Hooks在本节中,您可以为AfterAllowTestTraffic生命周期挂钩指定 Lambda 函数。

更新您的AppSpec文件
  1. 打开您在中 步骤 2:创建 AppSpec 文件 创建AppSpec的文件文件教程:将应用程序部署到亚马逊 ECS

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

  3. 将该Hooks部分复制并粘贴到您的AppSpec文件文件中。之后AfterAllowTestTraffic使用您在中记下的 Lambda 函数的 ARN第 3 步:创建生命周期挂钩 Lambda 函数

    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文件并上传到其 S3 存储桶。