Quando uso a função Fn::GetAtt no meu provedor de recursos no AWS CloudFormation, recebo o seguinte erro: “O atributo ‘Chave’ não existe”
Breve descrição
O CloudFormation retorna o erro “O atributo ‘Chave’ não existe” porque não está recebendo a propriedade necessária. O ReadHandler do seu recurso deve retornar uma propriedade especificada na lista readOnlyProperties no arquivo de esquema do provedor de recursos organization-service-resource.json.
Para ver outros erros relacionados ao uso de um provedor de recursos, consulte os seguintes artigos:
Resolução
- Em seu arquivo organization-service-resource.json, confirme se a definição readOnlyProperties usa o formato a seguir, em que Saída é uma propriedade definida na seção de propriedades. Por exemplo:
"readOnlyProperties": [
"/properties/Output"
],
**Observação:**o formato organization-service-resource.json está localizado no diretório raiz do seu projeto.
- Em seu ReadHandler, defina a propriedade no objeto do modelo. Por exemplo:
final ResourceModel model = request.getDesiredResourceState();
model.setOutput("abcdxyz");
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModel(model)
.status(OperationStatus.SUCCESS)
.build();
Informações relacionadas
CLI do AWS CloudFormation (do site do GitHub)