AWS CDK EcsDeployAction zaktualizuje istniejące narzędzia Fargate

0

Pytanie

Ja z łatwością развертываю usługi Fargate przez AWS CDK.

Teraz muszę zaktualizować usługę, na przykład, obraz zadania.
Staram się zrobić to z pomocą @aws-cdk/aws-codepipeline i działania EcsDeployAction

Próbuję importować i aktualizować istniejące (wcześniej rozwinięty) usługi fargate, np.:

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: ...
    })
  ]
})

Ale to nie wydaje się właściwe, ponieważ pojawia się błąd pisania:

Property 'cluster' is missing in type 'IFargateService' but required in type 'IBaseService'

Jakieś pomysły?

1

Najlepsza odpowiedź

1

Istnieje niezgodność typów. EcsDeployActionProps spodziewa się, że zawieszenie usługi będzie mieć typ IBaseService. Ale to jest niezgodny IFargateService wprowadź od fromFargateServiceArn.

Na szczęście, związane statyczne atrybuty fromFargateServiceAttributes(obszar, identyfikator, attrs) zwracają kompatybilny typ IBaseService szukasz.

2021-11-23 20:59:21

Dziękuję. Spróbuję ten podejście, na pewno zadziała.
andreav

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................