Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Production et délais #14

Open
Seb35 opened this issue Apr 26, 2017 · 5 comments
Open

Production et délais #14

Seb35 opened this issue Apr 26, 2017 · 5 comments

Comments

@Seb35
Copy link
Member

Seb35 commented Apr 26, 2017

Hier, j’ai vu passer un tweet parlant d’un arrêté paru au JORF le matin et comparant une version en vigueur et une future version. J’ai voulu faire tourner legi.py+Archéo Lex dessus mais les données n’étaient pas dans la base LEGI, elles y sont apparues le soir vers 21h, heure de mise à disposition de la base LEGI. L’arrêté entre en vigueur ce jour, soit le lendemain de sa publication au JORF. Commit modificateur de l’arrêté

La production de cet historique Git (et donc la visualisation de la modification) a pris environ 10 min hier soir, essentiellement par legi.py (mais la proportion serait probablement inversée si Archéo Lex mettait à jour tous les textes du jour). Bref, ce petit message pour dire que : il n’y a plus de limitations pour passer en production journalière de dépôts Git ! ni en performance ni dans l’étendue des textes (ça n’est plus limité aux codes de loi). Le seul délai limitant est la mise à disposition de LEGI, mais on ne peut pas y faire grand’chose.

Vous noterez que le rendu Markdown est améliorable dans la nouvelle version en vigueur de l’arrêté. Il y a d’une part les paragraphes (et là c’est un peu la fête dans le HTML de la base LEGI, Légifrance applique certaines transformations qu’il faudrait comprendre et reproduire) et d’autre part la liste avec des tirets demi-quadratin dont je n’avais pas remarqué l’usage auparavant dans la base LEGI. Ce dernier point pourra être corrigé assez facilement dans Archéo Lex.

@JMLX42
Copy link
Member

JMLX42 commented Apr 26, 2017

Génial !

@JMLX42
Copy link
Member

JMLX42 commented Apr 26, 2017

Tu as essayé de faire tourner ça dans Gitlab CI ?

@Seb35
Copy link
Member Author

Seb35 commented Jan 29, 2018

Je reprends ce thread puisque Archéo Lex vient de passer une étape majeure pour mise en production à grande échelle : il est possible de mettre à jour les dépôts Git (sans recalcul, db019b6). Associée à d’autres changements plus mineurs mais tout aussi importants :

  1. il est possible de donner à AL une liste de textes à calculer (07ea750)
  2. il est possible de demander à AL de calculer tous les textes de LEGI (8e75010)
  3. j’ai proposé un script de déploiement sur un serveur Gandi : il n’y a qu’à avoir un compte Gandi avec des crédits hosting, installer Gandi-CLI et lancer le script (script de déploiement de legi.py et Archéo Lex)

J’ai fait tourner sur 1000 textes au hasard (sur les 110 000 de LEGI), ça fonctionne (j’ai corrigé quelques exceptions, genre les articles sans texte ou sans numéro).

Sur les scripts de déploiement, il faut les écrire dans les contextes particuliers. Éventuellement, il peut être ajouté des fonctionnalités pour aider au déploiement :

  • indexation des textes calculés : que AL écrive la liste des textes déjà calculés et leur date de màj, soit dans un dépôt Git, soit dans une BDD (je verrais plus un dépôt Git)
  • pusher les dépôts Git résultat vers un service Git (par contre il faut pouvoir créer et màj les dépôts Git sur le service Git, donc peut-être appel à une API, donc à une clé privée/mot de passe, donc voir comment passer cette info privée dans les scripts de déploiement).

@JMLX42
Copy link
Member

JMLX42 commented Jan 29, 2018

Super ! Tu peux faire tourner ça pour mettre à jour les dépôts toutes les nuits ?

@Seb35
Copy link
Member Author

Seb35 commented Jan 29, 2018

Pourquoi pas. Si tu veux des textes spécifiques, dis-moi et je les met en priorité. Le calcul initial reste long pour les gros codes (et le code de l'action sociale et des familles a calculé 7h pour planter ensuite, et j’ai pas trop confiance de le reprendre en cours de route). Et si tu veux que push en masse des textes quelques part, je pourrai le faire. Si tu veux un accès sur mon serveur de test (dédié à AL), donne-moi une clé publique SSH.

En dev, il va désormais falloir faire de la qualité pour peaufiner la markdownisation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants