AWS CloudFormation でリソースプロバイダーのリソースで Fn። GetAtt 関数を使用するときに、「Attribute 'Key' does not exist」というエラーが発生するのですが、解決するにはどうすればよいですか?

最終更新日: 2020 年 8 月 17 日

AWS CloudFormation でリソースプロバイダーのリソースで Fn። GetAtt 関数を使用するときに、「Attribute 'Key' does not exist」というエラーが発生しています。このエラーを解決するにはどうすればよいですか?

簡単な説明

解決方法

1.    organization-service-resource.json ファイルで、ReadOnlyProperties 定義がこの形式に従っていることを確認します。ここで、Outputプロパティセクションで定義されているプロパティです。以下はその例です。

"readOnlyProperties": [
    "/properties/Output"
],

注: リソースプロバイダーのスキーマファイルは、 organization-service-resource.json.json 形式の JSON ファイルで、プロジェクトのルートディレクトリにあります。

2.    ReadHandler で、モデルオブジェクトのプロパティ (次の例の Output) を設定します。以下はその例です。

final ResourceModel model = request.getDesiredResourceState();
model.setOutput("abcdxyz");
return ProgressEvent.<ResourceModel, CallbackContext>builder()
    .resourceModel(model)
    .status(OperationStatus.SUCCESS)
    .build();

この記事はお役に立ちましたか?


請求に関するサポートまたは技術的なサポートが必要ですか?