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

[TECH] Historiser en BDD les exécutions de script #10095

Open
wants to merge 46 commits into
base: dev
Choose a base branch
from

Conversation

laura-bergoens
Copy link
Member

@laura-bergoens laura-bergoens commented Sep 10, 2024

🦄 Problème

⚠️ SI CE N'EST PAS ENCORE FAIT OU PAS ENCORE MERGE
je vous invite à review ceci en premier lieu : #10134
ça supprime des scripts que je refacto dans cette PR, donc si ils passent à la trappe je vais pouvoir retirer du code fait dans cette PR ci-présente.

Aucune idée de savoir facilement quel script a été exécuté quand.
Aucune idée pour déterminer un minimum si un script est encore joué.

🤖 Proposition

Ajout d'une table script-executions qui va conserver la commande exécutée, l'erreur stringifiée le cas échéant et des timestamps début/fin.
Ajout de l'usage du tooling dans le template.
Rétro-ajout de l'usage du tooling dans la plupart des scripts.

Dans les derniers commits je propose de décaler une grande partie de ce qu'on trouve dans le template de script vers la fonction d'exécution de script.
Point important : pour que ca se comporte bien il faut bien s'assurer de laisser les throw bubble up dans la fonction appelée passée en param de la fonction d'exec de script.

Surtout review tooling.js et _template.js

🌈 Remarques

Je pense qu'il y a beaucoup de scripts vieux ou plus utiles du tout, après le petit tour que j'ai fait 😄
ET je savais pas trop où mettre les méthodes d'historisation donc ça a atterrit dans scripts/tooling/tooling.js

💯 Pour tester

Exécuter un script en local et constater en BDD l'ajout d'une ligne dans la table

@pix-bot-github
Copy link

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

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

@laura-bergoens laura-bergoens marked this pull request as ready for review September 10, 2024 15:43
@HEYGUL
Copy link
Contributor

HEYGUL commented Sep 12, 2024

Je me demande si il y aurait moyen d'avoir une fonction executeScript qui prendrait en argument la fonction main d'un script et lancerait le script en enregistrant son exécution.

@laura-bergoens laura-bergoens force-pushed the tech-history-script branch 4 times, most recently from 599ee2b to 4efd37c Compare September 12, 2024 16:31
await disconnect();
await cache.quit();
}
const fnWithArgs = doSomething.bind(this, 'someArg', { throwError: false });
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestions ça me parait plus simple de faire
const fnWithArgs = () => doSomething('someArgs', {thowError: false}) plutôt que d'utiliser le .bind pour faire de currying de function

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

Successfully merging this pull request may close these issues.

4 participants