API : L'ordre d'exécution des hooks des plugins n'est pas garanti
Extraits du thread original rédigé par @bruno.boiget dans !1004 (comment 118826)
Les hooks des plugins sont maintenant bien déclenchés, mais il reste un problème.
La fonction de création de groupe dans keycloak semble rendre la main avant que le groupe soit effectivement créé dans keycloak.
Si on essaye d'assigner des membres/animateurs/... au groupe directement après (par exemple en appelant l'api addmembers ou en spécifiant des membres dans les données du groupe), l'affectation dans keycloak échoue car le groupe n'est pas encore créé.
I20240426-11:05:37.567(2)? 2024-04-26 11:05:37.567 [info] [SYSTEM] APPCLIENT - KcCLIENT - THEN - _addGroup - Keycloak: group group1 added (id b958fca6-5892-4db6-81b3-e08d29236153) {"groupName":"group1","groupId":"b958fca6-5892-4db6-81b3-e08d29236153"} I20240426-11:05:37.583(2)? 2024-04-26 11:05:37.582 [error] [SYSTEM] APPCLIENT - KcCLIENT - ERROR - setRole {"userId":"6BitfsH6xLB5zsYAS","groupName":"group1","callerId":null,"error":{"error":"Group not found"}} I20240426-11:05:38.465(2)? 2024-04-26 11:05:38.465 [info] [SYSTEM] APPCLIENT - KcCLIENT - THEN - _setRole - {"userId":"acuGH8mLPrH4uyH3Q","keycloakId":"3eb049a9-b716-4bf0-9d6b-d07fb52e353f","groupName":"group1"}
La seule méthode que j'ai trouvé pour s'assurer de l'ordre d'exécution est de modifier la librairie 'meteor-method-hooks' pour qu'elle appelle les fonctions des plugins avec Promise.await.
J'ai ouvert une demande ici pour éviter de forker le projet si possible : https://github.com/Meteor-Community-Packages/meteor-method-hooks/issues/19