skip functional tests for doc change

in some cases, we don't need to do
functional testing, like doc change
of the yml files related to Travis
or mergify.This PR skip functional
testing for this kind of changes

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
This commit is contained in:
Madhu Rajanna 2019-05-29 19:02:15 +05:30 committed by mergify[bot]
parent 2d560ba087
commit b6b7cf2c3d
2 changed files with 32 additions and 0 deletions

View File

@ -49,6 +49,7 @@ jobs:
- name: cephcsi - name: cephcsi
script: script:
- scripts/skip-doc-change.sh || travis_terminate 0;
- make cephcsi || travis_terminate 1; - make cephcsi || travis_terminate 1;
- sudo scripts/minikube.sh up || travis_terminate 1; - sudo scripts/minikube.sh up || travis_terminate 1;
# pull docker images to speed up e2e # pull docker images to speed up e2e

31
scripts/skip-doc-change.sh Executable file
View File

@ -0,0 +1,31 @@
#!/bin/bash -e
CHANGED_FILES=$(git diff --name-only "$TRAVIS_COMMIT_RANGE")
[[ -z $CHANGED_FILES ]] && exit 1
skip=0
#files to be skipped
declare -a FILES=(^docs/ .md$ ^scripts/ LICENSE .travis.yml .mergify.yml .github .gitignore)
function check_file_present() {
local file=$1
for FILE in "${FILES[@]}"; do
if [[ $file =~ $FILE ]]; then
if [[ $file =~ minikube.sh ]]; then
continue
fi
return 0
fi
done
return 1
}
for CHANGED_FILE in $CHANGED_FILES; do
if ! check_file_present "$CHANGED_FILE"; then
skip=1
fi
done
if [ $skip -eq 0 ]; then
echo "Skipping functional tests"
exit 1
fi