2015-02-11 12 views
0

我喜歡通過選擇區域中可用的AMI(我知道AMI是區域特定的)來創建AWS Cloud Formation堆棧。我能夠在模板的「參數」字段中指定默認的AMI,但是我必須列出該區域中可用的AMI,然後我需要選擇一個AMI並從雲形成控制檯創建堆棧。 我硬編碼他們像這樣的參數字段AWS Cloud FormationTemplate:從控制檯列出並選擇AMI

"AMI" : { 
     "Description" : "Your AMI ID.", 
     "Type" : "String", 
     "Default" : "ami-146e2a7c", 
     "AllowedValues" : [ "ami-146e2a7c", "ami-a8d369c0", "ami-aeb532c6" ], 
     "ConstraintDescription" : "must be a Free AMI." 
},  

這個作品,但我需要所有可用的AMI的特定地區。

回答

0

除非您使用對流層或模板引擎生成cfn模板,否則這是不可能的。我強烈建議您(儘管您可能會發現過濾此調用具有挑戰性:http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html)。

下拉類型(http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html)是有限的,以執行以下操作:

  • AWS :: EC2 ::密鑰對::鍵名(一種亞馬遜EC2密鑰對名稱)
  • AWS :: EC2 :: SecurityGroup :: ID(安全組ID)
  • AWS :: EC2 ::子網:: ID(子網ID)
  • AWS :: EC2 :: VPC ::標識(A VPC ID)
  • 列表(一組VPC ID)
  • 列表(一組安全組ID)
  • 列表(一組子網ID)