Development #37659
Procédure d'appairage Toulouse Axel
0%
Description
Créer une app contrib.toulouse_axel
Y créer les Models suivants:
- Axel (BaseResource)
- Link
Faire un premier endpoint qui permette d'appairer un compte Publik et un DUI:
- vérifier l'existence de l'usager auprès d'Axel, pour le DUI passé en param
- créer un Link
Voir le ticket #37657
Fichiers
Révisions associées
utils: add support for XSchema pattern facet (#37659)
utils: allow customizing XML/JSON schemas/encoding/decoding (#37659)
toulouse_axel: init contrib and models (#37659)
toulouse_axel: add XML schemas (#37659)
toulouse_axel: add basic infrastructure to use operations (#37659)
toulouse_axel: init functests (#37659)
Historique
Mis à jour par Lauréline Guérin il y a plus de 4 ans
- Fichier 0003-toulouse_axel-use-xsd-to-validate-the-response-37659.patch 0003-toulouse_axel-use-xsd-to-validate-the-response-37659.patch ajouté
- Fichier 0002-toulouse_axel-first-draft-of-link-endpoint.patch 0002-toulouse_axel-first-draft-of-link-endpoint.patch ajouté
- Fichier 0001-toulouse_axel-init-contrib-and-models-37659.patch 0001-toulouse_axel-init-contrib-and-models-37659.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Je propose un endpoint link (dont je ne suis pas sûre du retour), qui stocke pour le moment:
- dui
- person_id
(à voir s'il faut ajoute des infos ou enlever person_id en avançant sur les autres endpoints)
J'ai fait une première version naïve "à la main" du call au WS Axel. A voir par la suite si on généricise tout ça à l'aide des xsd fournis.
J'ai quand même utilisé le xsd de réponse pour vérifier le format de la réponse, et éviter les try/except en cas de réponse mal formée. Mais ça peut être consommateur de resource, est-ce qu'il ne vaut mieux pas: 1/ faire confiance au résultat ou 2/ faire des try/except à la main ?
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Assigné à changé de Lauréline Guérin à Benjamin Dauvergne
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
Lauréline Guerin a écrit :
Je propose un endpoint link (dont je ne suis pas sûre du retour), qui stocke pour le moment:
- dui
- person_id
(à voir s'il faut ajoute des infos ou enlever person_id en avançant sur les autres endpoints)
Je pense que le person_id est important.
J'ai fait une première version naïve "à la main" du call au WS Axel. A voir par la suite si on généricise tout ça à l'aide des xsd fournis.
Maintenant que #37488 est poussé tu peux; je vais pondre ma vision du truc parce qu'un dessin vaut mieux qu'un long discours.
J'ai quand même utilisé le xsd de réponse pour vérifier le format de la réponse, et éviter les try/except en cas de réponse mal formée. Mais ça peut être consommateur de resource, est-ce qu'il ne vaut mieux pas: 1/ faire confiance au résultat ou 2/ faire des try/except à la main ?
Il n'y jamais aucun problème de ressource dans passerelle; ce qui prend le plus de temps c'est généralement le réseau (et en faisant bien de toute façon on aura mis tous les schémas en mémoire, c'est le parsing du schéma lui même qui bouffe le plus de ressources).
PS: voilà ma branche, je n'ai gardé que ton premier commit, http://git.entrouvert.org/passerelle.git/log/?h=wip/37659-axel-bdauvergne , j'ai commencé par ajouter encore du code dans mes outils XML/JSON pour simplifier autant que je peux le code dans Axel. Le but c'est vraiment de minimiser le code dans le connecteur et de maximiser le code dans l'infrastructure qu'on ait pas à aller consulter les XSD tout le temps pour comprendre et que les schémas JSON suffisent. Avec ElementTree ça deviendrait vite épuisant.
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Assigné à changé de Benjamin Dauvergne à Lauréline Guérin
Mis à jour par Lauréline Guérin il y a plus de 4 ans
- Fichier 0006-toulouse_axel-add-basic-infrastructure-to-use-operat.patch 0006-toulouse_axel-add-basic-infrastructure-to-use-operat.patch ajouté
- Fichier 0005-toulouse_axel-add-XML-schemas-37659.patch 0005-toulouse_axel-add-XML-schemas-37659.patch ajouté
- Fichier 0004-toulouse_axel-init-contrib-and-models-37659.patch 0004-toulouse_axel-init-contrib-and-models-37659.patch ajouté
- Fichier 0003-utils-allow-customizing-XML-JSON-schemas-encoding-de.patch 0003-utils-allow-customizing-XML-JSON-schemas-encoding-de.patch ajouté
- Fichier 0002-utils-add-support-for-XSchema-pattern-facet-37659.patch 0002-utils-add-support-for-XSchema-pattern-facet-37659.patch ajouté
- Fichier 0001-utils-add-support-for-xs-int-37659.patch 0001-utils-add-support-for-xs-int-37659.patch ajouté
Autre branche, basée sur celle de Benjamin.
Benjamin Dauvergne j'ai ajouté des tests, changé le unique_together pour y inclure person_id, et ajouté un check du status dans le call de Operation
Mis à jour par Lauréline Guérin il y a plus de 4 ans
- Fichier 0006-toulouse_axel-add-basic-infrastructure-to-use-operat.patch 0006-toulouse_axel-add-basic-infrastructure-to-use-operat.patch ajouté
- Fichier 0005-toulouse_axel-add-XML-schemas-37659.patch 0005-toulouse_axel-add-XML-schemas-37659.patch ajouté
- Fichier 0004-toulouse_axel-init-contrib-and-models-37659.patch 0004-toulouse_axel-init-contrib-and-models-37659.patch ajouté
nouvelle itération avec les modifications évoquées ce matin au téléphone:
- utiliser le WS RefVerifDui au lieu de RefVerifIndividuDui
- simplifier les paramètres en entrée du endpoint link (enlever les niveaux PORTAIL/DUI)
- unique_together (name_id, resource)
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Statut changé de Solution proposée à Solution validée
C'est bon pour moi.
Mis à jour par Lauréline Guérin il y a plus de 4 ans
- Fichier 0007-toulouse_axel-init-functests-37659.patch 0007-toulouse_axel-init-functests-37659.patch ajouté
- Fichier 0006-toulouse_axel-add-basic-infrastructure-to-use-operat.patch 0006-toulouse_axel-add-basic-infrastructure-to-use-operat.patch ajouté
- Statut changé de Solution validée à Solution proposée
dernière itération:
- j'ai supprimé IDPERSONNE du payload, qui est inconnu à cette étape (patch 0006)
- j'ai ajouté un test dans functests, qui sera à compléter dans la suite des développements (patch 0007)
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Lauréline Guérin il y a plus de 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 069c87c5bb88067029f40b3afed31ad326184d85 Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Thu Nov 21 16:22:04 2019 +0100 toulouse_axel: init functests (#37659) commit 65eefe672eea97df4f2628cdca2cd5ff4e860af1 Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Wed Nov 20 00:04:07 2019 +0100 toulouse_axel: add basic infrastructure to use operations (#37659) commit b6602d5bbb03dc0a01b17f88b4ba22de9645e09f Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Tue Nov 19 20:28:13 2019 +0100 toulouse_axel: add XML schemas (#37659) commit 9e86263091a15d76f081eddc2d2ac401397e8bf0 Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Fri Nov 15 10:57:15 2019 +0100 toulouse_axel: init contrib and models (#37659) commit 392c8b9d3fb98afc9323de8862c172e33b73483d Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Wed Nov 20 00:03:33 2019 +0100 utils: allow customizing XML/JSON schemas/encoding/decoding (#37659) commit cac6b144cb4248800e693ca1f3f3bca9cd85b72b Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Tue Nov 19 20:26:50 2019 +0100 utils: add support for XSchema pattern facet (#37659) commit bb8b58dade1ff2732304d7357c07e8948fde350e Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Tue Nov 19 20:26:30 2019 +0100 utils: add support for xs:int (#37659)
Mis à jour par Frédéric Péters il y a plus de 4 ans
- Statut changé de Résolu (à déployer) à Solution déployée
utils: add support for xs:int (#37659)