Как получить cfnoutputs из AWS стека в файл, используя AWS -CDK - PullRequest
0 голосов
/ 11 марта 2020

Я хочу сохранить выходные данные Cfnoutputs в AWS -CDK в файле (Python).

Ниже приведен код для отображения Publi c IP на консоли.

               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")

Я попытался использовать перенаправление вывода в Python с помощью команды:

                                       cdk deploy * > file.txt

Но безуспешно.

Пожалуйста, помогите

1 Ответ

1 голос
/ 11 марта 2020

Исходя из этого все еще открытого вопроса , ваша лучшая ставка - использовать AWS CLI для описания стека и извлечения выходных данных. Например:

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

Если вы используете Python, это также можно сделать с помощью 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")
...