2015-12-05 6 views
0

Как бы написать скрипт bash, который будет выполняться как перехват git pre-commit, если он завершится неудачей, если сбой теста testng? Я в настоящее время работают мои TestNG тесты через мавена безошибочный, как это:Запуск теста testng в Git pre-commit hook

mvn clean test -Dtest="MyTestName" 

ответ

2

Если pre-commit крюк возвращает ненулевое значение, то коммит прерывается, прежде чем он даже начинается. В сценарии bash по умолчанию возвращаемое значение последнего запуска команды является возвращаемым значением скрипта. По моему разумению mvn clean test должен возвращать ненулевое на провал, так что ваш сценарий должен быть столь же просто, как:

#!/bin/sh 
mvn clean test -Dtest="MyTestName" 

Тогда просто назвать его pre-commit в вашем .git/hooks/ каталог в репо и запустить chmod ug+x на него, чтобы убедиться, что он может быть казненным.

+0

Спасибо, дайте мне попробовать – zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz