Как правильно передать идентификатор файловой системы EFS в шаблон cloudformation?

Мне трудно понять, почему это не работает при передаче идентификатора тома EFS в шаблон cloudformation:

Parameters:
    EFSFileSystem:
        Description: EFS file system to mount
        Type: AWS::EFS::FileSystem::Id

и это тоже не работает:

Parameters:
    EFSFileSystem:
        Description: EFS file system to mount
        Type: AWS::EFS::FileSystem

Я получаю сообщение об ошибке:

тип параметра AWS::EFS::FileSystem::Id для имени параметра EFSFileSystem не существует

но это действительно передает идентификатор (fs-xxxxxxx):

Parameters:
    EFSFileSystem:
        Description: EFS file system to mount
        Type: String

Не следует ли устанавливать тип AWS::EFS::FileSystem::Id?


person Fo.    schedule 26.04.2017    source источник
comment
Fo, Любопытно, нашли ли вы способ передать идентификатор файловой системы в качестве параметра, не отправляя просто строковое значение?   -  person Rob Bailey    schedule 20.02.2020
comment
Это было так давно, что я уже и не помню, на какое решение я наткнулся, но я редко использую CloudFormation, вместо этого предпочитая terraform.   -  person Fo.    schedule 20.02.2020


Ответы (1)


Не существует типа ресурса AWS::EFS::FileSystem::Id. Только тип ресурса FileSystem. Если вы передаете параметры в свое облачное формирование и устанавливаете «Тип», вы устанавливаете тип параметра, который может быть только строкой, числом, списком, списком с разделителями-запятыми. Cloudformation проверит, соответствует ли введенное значение одному из этих типов, а не типу ресурса Cloudformation.

Тип ресурса Cloudformation — это «вещь», которую вы можете создать в AWS. Тип параметра — это «какое» значение, которое вы ожидаете? Вот почему с Type String он передает значение fs-xxxxxxx.

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html

person Alex Nelson    schedule 26.04.2017