Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

633
Vistas
Cómo obtener cfnoutputs de la pila de AWS en un archivo usando AWS-CDK

Quiero almacenar las salidas Cfn en AWS-CDK en un archivo (Python).

A continuación se muestra el código para mostrar la IP pública en la consola.

 my_ip = core.CfnOutput( scope=self, id="PublicIp", value=my_ec2.instance_public_ip, description="public ip of my instance", export_name="my-ec2-public-ip")

He intentado usar la redirección de la salida en Python usando el comando:

 cdk deploy * > file.txt

Pero sin éxito.

Por favor ayuda

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Por cada valor que desee guardar después de ejecutar la pila, agregue una llamada core.CfnOutput en su código.

Luego, cuando implemente su pila, use:

 % cdk deploy {stack-name} --profile $(AWS_PROFILE) --require-approval never \ --outputs-file {output-json-file}

Esto implementa la pila, no se detiene para solicitar aprobaciones de sí/no (para que pueda colocarlo en un Makefile o en un script de CI/CD) y, una vez hecho esto, guarda el valor de cada CfnOutput en su pila en un archivo JSON.

Detalles aquí: https://github.com/aws/aws-cdk/commit/75d5ee9e41935a9525fa6cfe5a059398d0a799cd

over 4 years ago · Santiago Trujillo Denunciar

0

Esta respuesta solo es relevante si está usando CDK <1.32.0. Desde entonces , #7020 se fusionó y se --outputs-file . Consulte la respuesta más votada para ver un ejemplo completo.

Según este problema cerrado , lo mejor que puede hacer es utilizar la CLI de AWS para describir la pila y extraer el resultado. Por ejemplo:

 aws cloudformation describe-stacks \ --stack-name <my stack name> \ --query "Stacks[0].Outputs[?OutputKey==`PublicIp`].OutputValue" \ --output text

Si está utilizando Python, esto también se puede hacer con boto3.

 import boto3 outputs = boto3.Session().client("cloudformation").describe_stacks(StackName="<my stack here>")["Stacks"][0]["Outputs"] for o in outputs: if o["OutputKey"] == "PublicIp": print(o["OutputValue"]) break else: print("Can't find output")
over 4 years ago · Santiago Trujillo Denunciar

0

No estoy seguro de si se trata de una actualización reciente de cdk CLI, pero cdk deployment -O funcionará.

-O, --outputs-file Ruta al archivo donde las salidas de la pila se escribirán como JSON

Esta es una opción ahora. Tomará cdk.CfnOutput y lo colocará en el archivo JSON.

https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.CfnOutput.html

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda