Amazon web services 部署指定修订为空文件,但提供的修订为zip文件

Amazon web services 部署指定修订为空文件,但提供的修订为zip文件,amazon-web-services,amazon-cloudformation,amazon-ecs,aws-code-deploy,amazon-ecr,Amazon Web Services,Amazon Cloudformation,Amazon Ecs,Aws Code Deploy,Amazon Ecr,我正在使用集成到CodePipeline中的CodeDeploy。我正在尝试将映像从ecr部署到ecs 整个基础设施是通过云信息构建的 管道部署组的模板: ApplicationName=cls.application.ApplicationName, DeploymentGroupName='DeploymentGroup', DeploymentConfigName='CodeDeployDefault.ECSAllAtOnce', ServiceRoleArn=GetAtt(cls.rol

我正在使用集成到CodePipeline中的CodeDeploy。我正在尝试将映像从ecr部署到ecs

整个基础设施是通过云信息构建的

管道部署组的模板

ApplicationName=cls.application.ApplicationName,
DeploymentGroupName='DeploymentGroup',
DeploymentConfigName='CodeDeployDefault.ECSAllAtOnce',
ServiceRoleArn=GetAtt(cls.role, 'Arn'),
AutoRollbackConfiguration={
    'enabled': True,
    'events': ['DEPLOYMENT_FAILURE', 'DEPLOYMENT_STOP_ON_ALARM', 'DEPLOYMENT_STOP_ON_REQUEST']
},
DeploymentStyle={
    'deploymentType': 'BLUE_GREEN',
    'deploymentOption': 'WITH_TRAFFIC_CONTROL'
},
BlueGreenDeploymentConfiguration={
    'terminateBlueInstancesOnDeploymentSuccess': {
        'action': 'TERMINATE',
        'terminationWaitTimeInMinutes': 5
    },
    'deploymentReadyOption': {
        'actionOnTimeout': 'CONTINUE_DEPLOYMENT',
    },
},
LoadBalancerInfo= <Some irrelevant config>
EcsServices=[
    {
        'serviceName': 'WordpressService',
        'clusterName': 'WordpressCluster'
    },
]
另外,不要介意语法。我正在使用对流层创建云形成模板

首先,CloudFormation模板成功运行

其次,从ECR采购成功

第三,部署失败,消息如下:

部署指定修订为空文件,但 提供的修订是一个zip文件

你知道哪里有问题吗


提前谢谢。

找到问题所在。 部署提供程序是CodeDeploy,它对我的蓝色/绿色部署无效。我需要指定CodeDeployToECS。此外,我还必须更改所需的环境参数。以下是AWS提供的一个不错的教程:

感谢您发布此答案,我也遇到了同样的问题,我发现调试起来非常令人沮丧。
ArtifactStore=ArtifactStore(
    Location='SomeS3Location',
    Type='S3'
),
Name='WordpressPipeline',
RoleArn=GetAtt(cls.role, 'Arn'),
Stages=[
    Stages(
        Name='SourceStage',
        Actions=[
            Actions(
                Name='SourceAction',
                ActionTypeId=ActionTypeId(
                    Category='Source',
                    Owner='AWS',
                    Version='1',
                    Provider='ECR'
                ),
                OutputArtifacts=[
                    OutputArtifacts(
                        Name='SourceOutput'
                    )
                ],
                Configuration={
                    'RepositoryName':'SomeECR'
                },
                RunOrder='1'
            )
        ]
    ),
    Stages(
        Name='DeployStage',
        Actions=[
            Actions(
                Name='DeployAction',
                ActionTypeId=ActionTypeId(
                    Category='Deploy',
                    Owner='AWS',
                    Version='1',
                    Provider='CodeDeploy'
                ),
                InputArtifacts=[
                    InputArtifacts(
                        Name='SourceOutput'
                    )
                ],
                Configuration={
                    'ApplicationName': 'MyApp',
                    'DeploymentGroupName': 'MyGroup'
                },
                RunOrder='1'
            )
        ]
    )
]