Avoir une commande console a tout faire #5
Labels
No milestone
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Construction_PA/PA_Communautaire#5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Faire une commande console pour les actions de tous les jours :
CLIlancer les services : tous ou un par unCLIgérer docker-composeCLIlancer/grouper les testsCLIbump versionCLIpublication images docker, paquet cliCONSOLEavoir un statut des services et un suivi des perfsCONSOLEavoir des commandes "métier" : liste des factures en attente ...CONSOLEle suivi d'une facture pour avoir le détail de toutes les étapes pour une seule factureCONSOLEle suivi d'une entreprise (point de vue fournisseur) pour avoir le suivi des factures émises et leur statusCONSOLEmême chose du point de vue client pour avoir le suivi des factures reçuesCONSOLEla vues des PA avec qui on a des interactionsCONSOLEune page pour interroger le service PEPPOLCONSOLEune page pour avoir des stats sur une brique en particulierCONSOLEune page de debug/log de l'activité 02-ebs (utile si service cloud)CONSOLEune page de debug/log de l'activité 10-stockage (utile si service cloud)CONSOLEune page chat IACLI: usage en ligne de commandeCONSOLE: usage en console (plein écran)est ce que ce type de commande ne devrait pas être construit à partir d'un framework au lieu d'un simple script bash.
Je prend l'exemple de la commande bin/console de symfony qui permet facilement d'ajouter de nouvelle fonctions tout en restant modulaire. J'imagine qu'on a le même genre d'helpers dans le monde python.
A discuter en fonction des choix techniques qui seront fait quand on commencera à choisir les outils de développement.
De @philippe.entzmann : voir le proto https://git.pdplibre.org/Construction_PA/PA_Communautaire/src/branch/main/packages/pac0-cli
l'avantage du script bash, c'est qu'il y a moins de dépendance.
@ha wrote in #5 (comment):
c'est vrai
Mais pour des outils CLI plus riche on ne pourra pas le faire facilement en bash.
Par exemple:
à discuter
Je viens de parcourir la branche script_pdplibre et je me fait les réflexions suivantes :
Comment pourrait on apporter de la cohérence dans ces 2 mondes.
Philippe a appelé son prototype pac-cli, hugue-antoine a appelé son script /pdplibre
Dans d'autres environnement, on trouve un dossier /bin qui contient tous les point d'entrée.
On pourrait mettre dans /bin :
Le problème: il faudrait trouver 2 noms cohérents qui permettent de bien comprendre la différence entre les 2 commandes.
On pourrait aussi tout wrapper dans pdplibre qui se chargerait ensuite de lancer pac-cli, mais ça va devenir vitre copieux et cela va demander de la mise à jour chaque fois que l'on va ajouter une commande dans pac-cli, il faudra la wrapper dans pdplibre.
On peux aussi parier qu'il va y a voir d'autres commandes spécifiques que l'on peut ranger dans /bin. Par exemple lancer une mise en production.
C'est une proposition, a vous de me dire ce que vous en pensez.
@f.piccinali : excellente question
On a un peu échangé avec @ha sur le sujet
Comme vous le savez je suis assez fan de l'approche uv tool et uv tool install:
Un script bash pdplibre pourrait s'assurer de la présence de uv et le lancer.
Le débat est ouvert ...
je serai d'avis d'attendre encore avant de ce décider car il me semble surtout important de bien lister les usages que l'on veut faire porter à cette commande.
D'ici là on peut compléter le premier message de ce ticket avec les usages espérés.
@ha
Salut hughe-antoine,
je viens de discuter avec philippe et on te propose l'organisation suivante :
Comme ça en fonction des évolutions on rangera tous les nouveaux scripts dans /bin. Et ensuite on pourra les attraper et décider de les refactoriser soit dans pdplibre, soit danc pack-cli
Il y a certains scripts qui pourraient apparaitre et nécessiter d'être indépendant de /bin/pdplibre. Par exemple des scripts lancé par les robotes d'intégration continue.
Si cette proposition ne te choque pas, je peux vers la manip sur ta branche et ensuite on merge sur le master. J'en profiterai pour vérifier les docs.
Bonjour @f.piccinali,
Ça me convient.