調用內建函式Fn::GetAtt,返回模板中對應資源的傳回值。
Fn::GetAtt函數用於擷取資源棧資源的傳回值
函式宣告
JSON
{ "Fn::GetAtt": [ "logicalNameOfResource", "attributeName" ] }YAML
完整函數名的文法。
Fn::GetAtt: - logicalNameOfResource - attributeName縮寫形式文法。
!GetAtt logicalNameOfResource.attributeName
參數資訊
logicalNameOfResource:資源棧中資源的邏輯名稱。資源邏輯名稱為您在模板中為特定資源定義的易識別的名稱。attributeName:資源棧中資源的傳回值名稱。
傳回值
資源棧中對應資源的屬性值,即attributeName的值。
使用樣本
返回資源名稱為MyEcsInstance中的ImageID傳回值。
!GetAtt MyEcsInstance.ImageID{
"Fn::GetAtt": [
"MyEcsInstance",
"ImageID"
]
}說明
在資源棧模板中,使用縮寫形式的文法引用資源輸出時可以支援包含.的資源名稱,但是建議您盡量避免使用包含.的資源邏輯名稱。
Resources:
Foo.Moo.MyInstance:
Type: ALIYUN::ECS::InstanceGroup
Outputs:
ImageId:
Value: !GetAtt Foo.Moo.MyInstance.ImageIDFn::GetAtt函數用於擷取嵌套資源棧的輸出
函式宣告
JSON
{ "Fn::GetAtt": [ "nestedStackName", "Outputs.attributeName" ] }YAML
完整函數名的文法。
Fn::GetAtt: - nestedStack - Outputs.attributeName縮寫形式文法。
!GetAtt nestedStack.Outputs.attributeName說明使用YAML的縮寫形式擷取嵌套資源棧輸出時,可以支援嵌套資源棧名稱中包含
.,但不支援嵌套資源棧輸出的屬性名稱中包含.。
參數
nestedStack:嵌套資源棧的名稱。關於嵌套資源棧,請參見使用嵌套資源棧。Outputs.attributeName:Outputs.首碼固定,attributeName為嵌套資源棧中輸出的屬性名稱。
傳回值
嵌套資源棧中輸出的傳回值。
使用樣本
關於樣本的更多資訊,請參見ALIYUN::ROS::Stack。