젠킨스의 통합 테스트의 일부로 git 커밋간에 변경된 파일에서만 테스트를 실행하려고합니다.bash의 조건부 nosetests
의 코드는 필터가 모든 파일 결과를 제거하지 않는 한 작동합니다. 그런 다음 모든 테스트가 코에 의해 실행됩니다. 이 경우에는 아무 테스트도 실행하지 않을 것입니다.
if [ $GIT_PREVIOUS_SUCCESSFUL_COMMIT != $GIT_COMMIT ]; then
git diff --name-only --diff-filter=d $GIT_PREVIOUS_SUCCESSFUL_COMMIT $GIT_COMMIT | grep .py | xargs nosetests -vv
fi
의견이 있으십니까?
코드가 전혀 작동하지 않아야합니다. 'if' 문의 조건은'test "$ GIT_PREVIOUS_SUCCESSFUL_COMMIT"! = "$ GIT_COMMIT"'또는 이와 동등한 것이어야합니다. – chepner
당신은 완전합니다. 나는 읽기 쉽도록 스 니펫을 단순화하려고했지만, 대신 깨진 코드를 작성했습니다! 수정 중 ... –
'x '접두어는 필요하지 않습니다. '''의 오래된 버기 버전을 수용하기위한 오래된 해킹입니다. 최신 버전의''''[['. – chepner