在 AWS CloudFormation 中的資源供應商上使用 Fn::GetAtt 函數時,我收到下列錯誤: 「屬性 'Key' 不存在」
簡短說明
CloudFormation 傳回「屬性 'Key' 不存在」錯誤,因為它沒有收到必要內容。資源的 ReadHandler 必須傳回從 organization-service-resource.json 資源供應商結構描述檔案的 readOnlyProperties 清單中指定的內容。
如需其他與使用資源供應商相關的錯誤,請參閱下文:
解決方案
1. 在您的 organization-service-resource.json 檔案中,確認 readOnlyProperties 定義使用下列格式,其中「輸出」是在「內容」區段中定義的內容。例如:
"readOnlyProperties": [
"/properties/Output"
],
**注意事項:**organization-service-resource.json 格式位於專案的根目錄中。
2. 在您的 ReadHandler 中,在「模型」物件中設定內容。例如:
final ResourceModel model = request.getDesiredResourceState();
model.setOutput("abcdxyz");
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModel(model)
.status(OperationStatus.SUCCESS)
.build();
相關資訊
AWS CloudFormation CLI (來自 GitHub 網站)