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

RFC: add recipe for a base pre-commit configuration #37

Open
pierreboissinot opened this issue May 28, 2024 · 9 comments
Open

RFC: add recipe for a base pre-commit configuration #37

pierreboissinot opened this issue May 28, 2024 · 9 comments
Assignees

Comments

@pierreboissinot
Copy link
Member

pierreboissinot commented May 28, 2024

pre-commit is a tool to version git hook in a team.

Définir un git hook est assez personnel ou propre à un projet.

Nous pourrions cependant partager une configuration minimale avec par exemple ce hook

https://github.com/IamTheFij/ansible-pre-commit

@pierreboissinot pierreboissinot self-assigned this May 28, 2024
@pchabbert
Copy link
Contributor

A mon sens c'est une bonne idée 👍

Attention cependant, l'outil peut etre by-passé via l'option no-verify lors d'un commit

@thislg
Copy link
Member

thislg commented May 29, 2024

Oui pourquoi pas, une config toute faite pour raison de sécurité comme un vault Ansible ça peut s'entendre. Et si on fournissait un moyen d'activer facilement des hooks ça aiderait peut-être à généraliser la pratique de lint le code avant de commit.

@pchabbert
Copy link
Contributor

@thislg Je te rejoinds, pour ce qui est des lints, la CI les vérifient mais ne corrige rien, ce qui engendre des runs pour rien.

Le lancement des linters dans un hook permettrait d'éviter ça 👍

@pierreboissinot
Copy link
Member Author

Ok, @pchabbert m'a indiqué que @lucasmirloup connaissait l'outil, @thislg à voir niveau planif/budget ?

@jacbac par rapport à husky, quel est ton avis ?

@thislg
Copy link
Member

thislg commented May 29, 2024

Pour avoir utilisé husky sur un projet ça marche bien et l'intérêt est qu'il est installé par npm (donc intégrable directement dans notre stack technique).

@lucasmirloup
Copy link
Member

lucasmirloup commented May 29, 2024

@pierreboissinot Hello, j'avais testé cet outil (https://pre-commit.com/) en juin dernier, voir tâche Wrike : https://www.wrike.com/open.htm?id=1130482037

De mon pdv actuel / de ce que je m'en souviens :

  • ça fait un language/framework de plus à supporter 😁
  • ça ne supporte pas PHP par défaut, donc à faire à la mano quand on veut faire du composer
  • c'est pas évident à tweak / débugger
  • c'est dur à généraliser entre différents projets
  • je n'ai pas l'impression que le projet soit très vivant ces dernières années

Mais il faut peut-être re-vérifier voir si ça a évolué.

@jacbac
Copy link

jacbac commented May 29, 2024

Le hook présenté est fort intéressant.

Après, je serais plutôt pour utiliser et généraliser huskyJS qui doit déjà être utilisé sur différents projets internes, avec quelques expériences appropriées de partage de git hooks.

Sans passer par une énième solution.

@pierreboissinot
Copy link
Member Author

Merci pour vos retours, bien que je ne sache pas si husky dispose d'un hook de check de vault , étant donné que le script est facile à écrire et pour les arguments que vous avez cités ( stack, expérience ...), partons sur huskyJS.

@jacbac
Copy link

jacbac commented Jun 5, 2024

Je rajoute une idée de check dans un git hook suite à un problème rencontré lors d'un déploiement : une variable d'environnement non accessible car non définie sur un serveur DEV/preprod, contrairement à mon environnement local...

https://boxblinkracer.com/blog/secure-symfony-deployments-against-missing-envs

je n'ai pas testé si le simple | grep 'WARNING' suffirait mais on peut de toute façon s'en assurer assez simplement.

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

5 participants