我正在通过AWS CDK轻松部署Fargate服务。
现在我需要更新一个服务,例如一个任务映像
我正试图通过使用@aws cdk/aws代码管道和操作EcsDeployAction 来实现这一点
我正在尝试导入和更新现有的(以前部署的(fargate服务,如下所示:
const pipeline = new codepipeline.Pipeline(this, 'MyPipeline')
// import an existing fargate service
const fargateService = ecs.FargateService.fromFargateServiceArn(
this,
"FargateService",
"MyFargateServiceARN"
);
// Deploy a new version according to what
const sourceStage = this.pipeline.addStage({
stageName: 'Deploy',
actions: [
new codepipeline_actions.EcsDeployAction({
actionName: "ECS-Service",
service: fargateService, <--- here the typescript error
input: ...
})
]
})
但它似乎不正确,因为我收到了一个打字错误:
Property 'cluster' is missing in type 'IFargateService' but required in type 'IBaseService'
知道吗?
存在类型不匹配。CCD_ 1期望服务道具的类型为CCD_。但它从fromFargateServiceArn
得到了一个不兼容的IFargateService
类型。
幸运的是,来自FargateServiceAttributes的相关静态(scope、id、attrs(返回您要查找的兼容类型IBaseService
。