pix icon indicating copy to clipboard operation
pix copied to clipboard

[TECH] Classe BaseScript pour la standardisation des scripts

Open bpetetot opened this issue 1 year ago • 1 comments

:unicorn: Problème

Il y a peu de standard et uniformisation au niveau des scripts. Ce qui rend particulièrement compliqué le développement, la maintenance et l'exploitabilité des scripts.

Développement / Maintenance:

  • On développe toujours le même code "boilerplate" sur chaque script:
    • lecture des paramètres d’entrée
    • gestion des erreurs
    • gestion des resources
  • Certains scripts “one-shots” / “jetables” restent longtemps dans la codebase.
  • Peu d’utilitaires de tests
  • Peu de documentation.

Exploitabilité:

  • On oublie de fermer certaines resources (db connexions…) quand le script se termine.
  • Mauvaise gestion des codes de sortie des scripts (obligé de le killer manuellement).
  • Manque de compte-rendu des opérations effectuées (logs de début, de fin, d’erreur…).
  • Manque de log de progression des scripts longs.
  • Éviter de surcharger la BDD sur les scripts avec énormément de requêtes (throttling)
  • Peu de mesure d’impact: connaître les impacts du script (temps, risque sur la prod…) (ex: dry run mode).

Guidelines et bonnes pratiques:

  • Doc: Comment créer un script ? comment tester un script ?
  • Recommander des scripts interruptibles et idempotants

:robot: Proposition

:rainbow: Remarques

:100: Pour tester

bpetetot avatar Oct 08 '24 15:10 bpetetot

Une fois les applications déployées, elles seront accessibles via les liens suivants :

Les variables d'environnement seront accessibles via les liens suivants :

pix-bot-github avatar Oct 08 '24 15:10 pix-bot-github