Cloudformation: доступ к другим ресурсам в папке стека, где находится папка? - PullRequest
0 голосов
/ 08 октября 2018

Предположим, у меня есть шаблон облачной информации с вложенными стеками.

Я проверяю их все из git, создаю корзину и папку S3 и указываю Cloudformation на главный файл шаблона.

Я хочу импортировать вложенные стеки (и некоторые другие ресурсы) из «текущей» корзины / папки.

Есть ли у стека свойство: откуда взялся «источник»?

Или мне нужно запросить s3 URL у пользователя при создании стека?Итак, сначала вы выбираете свой файл в S3, затем вам нужно скопировать URL, нажать далее и вставить URL.Похоже, должно быть более чистое решение!

(Я не хочу ссылаться на центральный сегмент S3 с вложенными стеками, доступными для общего доступа, по соображениям политики, и я ожидаю, что стек будет немного измененкаждый раз, когда он используется, он не всегда совпадает с вложенными файлами.)

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Для вашего решения вы можете просто использовать тот URL-адрес S3, который был передан во вложенный стек с помощью свойства «Параметр».Проверьте это здесь: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters "Набор параметров, переданных в AWS CloudFormation при создании этого вложенного стека."

И другие примечания:

  1. В предоставленном вами URL-адресе S3 вы просто сопоставили конечную точку определенного региона.Другой URL-адрес также действителен, есть и другие варианты предоставления S3-URL.Это основано на документации: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingBucket.html#create-bucket-intro

  2. Нет, стек не знает о его источнике, и вы можете увидеть все параметры, связанные со стеком: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#aws-resource-cloudformation-stack-syntax

0 голосов
/ 10 октября 2018

В ресурсе «AWS :: CloudFormation :: Stack» необходимо использовать свойство «TemplateURL».

Например:

{
  "Type" : "AWS::CloudFormation::Stack",
  "Properties" : {
    "NotificationARNs" : [ String, ... ],
    "Parameters" : { AWS CloudFormation Stack Parameters },
    "Tags" : [ Resource Tag, ... ],
    "TemplateURL" : String,
    "TimeoutInMinutes" : Integer
  }
}

«TemplateURL» - URL-адресшаблон, который определяет стек, который вы хотите создать как ресурс.Файлы шаблонов могут использовать любое расширение, например .json, .yaml, .template или .txt.Шаблон должен храниться в корзине Amazon S3, поэтому URL-адрес должен иметь форму: https://s3.amazonaws.com/.../TemplateName.extension

Для получения более подробной информации: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl

Пожалуйста, дайте мне знать, если потребуется дополнительная помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...