Облачная информация AWS "Включить" проблема преобразования - PullRequest
0 голосов
/ 14 декабря 2018

AWS Cloudformation определяет Преобразование раздела на глобальном уровне шаблона в виде массива.
См. Определение раздела преобразования здесь .

Я создал две записи в разделе Преобразование , которые содержат некоторые частичные определения ресурсов стека.Цель состоит в том, чтобы создать несколько файлов с определениями / ресурсами, сгруппированными по «домену продукта» для каждого файла.

Когда я создаю стек на основе этого шаблона, он выполняет только одно частичное определение (последнее - остальные определения с именем «AWS :: Include» игнорируются или «переопределяются»)

Этоосновное определение шаблона:

{
  "AWSTemplateFormatVersion": "2010-09-09",

  "Description": "Test of json file inclusion",

  "Parameters": {
    "Environment": {
      "Type": "String",
      "Description": "Specify Environment: prod | dev ",
      "AllowedValues": ["prod", "dev"],
      "Default": "dev"
    }
  },

  "Transform": [
    {
      "Name": "AWS::Include",
      "Parameters": {
        "Location": "s3://a1-local/cf-tests/part-1.json"
      }
    },
    {
      "Name": "AWS::Include",
      "Parameters": {
        "Location": "s3://a1-local/cf-tests/part-2.json"
      }
    }
  ],

  "Outputs": {
  }
}

Это определение части-1

{
  "Mappings": {
      "MappingForBucket1": {
        "eu-west-1": { "AZs": [ "eu-west-1a", "eu-west-1b" ] }
      }
  },

  "Resources": {
    "hellobucket1": {
      "Type": "AWS::S3::Bucket",
      "Properties": {
        "BucketName": { "Fn::Sub": "as-testbucket1-${Environment}" }
      }
    }
  }
}

Это определение части 2

{
  "Mappings": {
      "MappingForBucket2": {
        "eu-west-1": { "AZs": [ "eu-west-1a", "eu-west-1b" ] }
      }
  },

  "Resources": {
    "hellobucket2": {
      "Type": "AWS::S3::Bucket",
      "Properties": {
        "BucketName": { "Fn::Sub": "as-testbucket2-${Environment}" }
      }
    }
  }
}

Как объединить / объединить несколько преобразований в таком случае?

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