Comment résoudre l'erreur « Resource timed out waiting for creation of physical resource » (Ressource expirée en attente de création d'une ressource physique) lorsque je crée une ressource à l'aide de mon type de fournisseur de ressources dans CloudFormation ?

Dernière mise à jour : 19/09/2022

Lorsque j'utilise mon type de fournisseur de ressources pour créer une ressource dans AWS CloudFormation, je reçois l'erreur suivante :

« Resource timed out waiting for creation of physical resource » (Ressource expirée en attente de création d'une ressource physique)

Brève description

Si une ressource ne renvoie pas son primaryIdentifier ou son ID physique dans les 60 secondes, vous recevez l'erreur « Resource timed out waiting for creation of physical resource » (Ressource expirée en attente de création d'une ressource physique). L'erreur se produit car le CreateHandler de votre ressource ne renvoie pas la propriété spécifiée en tant que primaryIdentifier dans le fichier de schéma du fournisseur de ressources organization-service-resource.json.

Pour les autres erreurs liées à l'utilisation d'un fournisseur de ressources, consultez les articles suivants :

Solution

1.    Dans votre fichier organization-service-resource.json, vérifiez que la définition de la propriété primaryIdentifier suit le format suivant, où Id est une propriété définie dans la section properties (propriétés) :

"primaryIdentifier": [
    "/properties/Id"
]

Remarque : le format organization-service-resource.json se trouve dans le répertoire racine de votre projet.

2.    Dans votre CreateHandler, définissez la propriété primaryIdentifier dans l'objet model. Par exemple :

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

CLI AWS CloudFormation depuis le site Web GitHub (français non garanti)

Cet article vous a-t-il été utile ?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?