web-dev-qa-db-fra.com

Comment exécuter le script bash après git push

Je voulais savoir comment exécuter un script bash dans le référentiel local après avoir poussé sur github.

Le script bash se trouve à la racine du dossier. Je suppose qu’il peut être déplacé en fonction de son emplacement. J'ai examiné les hameçons Git mais il n'y a pas de hameçon post-Push et je ne comprends pas très bien les autres hameçons.

J'essaie d'appeler une construction Jenkins après le Push. J'ai cherché des moyens de notifier Jenkins après un Push avec une URL de post-réception, etc. sur github, mais rien ne semble fonctionner pour moi.

C'est le script que j'essaye de lancer:

#!/bin/bash/
Java -jar jenkins-cli.jar -s http://localhost:8080/ build Test

Merci! Varun

11
VarunMurali

C'est assez facile. Il y a un script prêt à être exécuté. Vous devrez modifier .git/hooks/post-commit pour trouver le script que vous devez exécuter.

mv .git/hooks/post-commit.sample .git/hooks/post-commit
vim .git/hooks/post-commit

J'ai trouvé ça sur: git-scm.com: Git Hooks

S'il n'y a pas de fichier .git/hooks/post-commit.sample et qu'il n'y a pas de problème, créez simplement .git/hooks/post-commit à partir de zéro (n'oubliez pas de rendre le script exécutable avec chmod +x), par exemple:

#!/bin/sh
echo look at me I am the post-commit script
pwd
# call the script you want

Faites un test de validation et vous devriez voir la sortie du script, juste avant la sortie normale de la validation.

24
cforbish

J'ai fini par utiliser cette réponse ici.

https://stackoverflow.com/a/3812238/1490695

J'espère que cela t'aides!

0
VarunMurali