es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La acción de despliegue de AWS CDK EcsDeployAction actualiza el servicio Fargate existente.

Estoy implementando servicios de Fargate a través de AWS CDK con facilidad.

Ahora necesito actualizar un servicio, por ejemplo, la imagen de una tarea. Estoy tratando de lograr esto utilizando @aws-cdk/aws-codepipeline y la acción EcsDeployAction. Estoy intentando importar y actualizar un servicio existente de Fargate (previamente implementado), así:

const pipeline = new codepipeline.Pipeline(this, ‘MyPipeline’)

// importar un servicio de Fargate existente
const fargateService = ecs.FargateService.fromFargateServiceArn(
this,
“FargateService”,
“MyFargateServiceARN”
);

// Desplegar una nueva versión de acuerdo con lo que sea necesario
const sourceStage = this.pipeline.addStage({
stageName: ‘Desplegar’,
actions: [
new codepipeline_actions.EcsDeployAction({
actionName: “ECS-Service”,
service: fargateService, // aquí el error de typescript
input: …
})
]
})

Pero parece que no está correcto porque obtengo un error de typescript:

Property ‘cluster’ is missing in type ‘IFargateService’ but required in type ‘IBaseService’

¿Alguna idea?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que falta la propiedad cluster al importar su servicio Fargate existente utilizando FargateService.fromFargateServiceArn(). Para solucionar el error de TypeScript, debería proporcionar también la propiedad cluster:

    const fargateService = ecs.FargateService.fromFargateServiceArn(
      this,
      "FargateService",
      "MyFargateServiceARN",
      {
        cluster: myCluster, // reemplace myCluster con el nombre de su clúster
      }
    );
    

    Asegúrese de reemplazar myCluster con el nombre del clúster donde está implementado su servicio Fargate. Una vez que proporcione la propiedad cluster, el error de TypeScript debería desaparecer y debería poder actualizar el servicio Fargate utilizando EcsDeployAction.

Comments are closed.