Quando uso meu tipo de provedor de recursos para criar um recurso no AWS CloudFormation, recebo o seguinte erro: “O recurso atingiu o tempo limite à espera da criação do recurso físico”
Breve descrição
Quando um recurso não retorna seu primaryIdentifier ou ID físico em até 60 segundos, você recebe o erro “O recurso atingiu o tempo limite à espera da criação do recurso físico”. Esse erro ocorre porque o CreateHandler de seu recurso não retorna a propriedade especificada como primaryIdentifier no arquivo organization-service-resource.json do esquema do provedor de recursos.
Para outros erros relacionados ao uso de um provedor de recursos, consulte estes artigos:
Solução
1. No arquivo organization-service-resource.json, confirme se a definição de primaryIdentifier usa o formato a seguir, onde Id é uma propriedade definida na seção properties:
"primaryIdentifier": [
"/properties/Id"
]
Observação: o formato de organization-service-resource.json está localizado no diretório raiz de seu projeto.
2. Em CreateHandler, defina a propriedade primaryIdentifier no objeto model. Por exemplo:
final ResourceModel model = request.getDesiredResourceState();
model.setId("abcdxyz");
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModel(model)
.status(OperationStatus.SUCCESS)
.build();
Informações relacionadas
CLI do AWS CloudFormation (do site do GitHub)