mirror of
https://github.com/simonmichael/hledger.git
synced 2024-11-07 21:15:19 +03:00
tools: travis: skip the build if only markdown files are changed
Credit: tritoch at https://github.com/travis-ci/travis-ci/issues/6301#issuecomment-313559284
This commit is contained in:
parent
1831f83a81
commit
f8674f46c0
30
.travis-maybe-skip.sh
Executable file
30
.travis-maybe-skip.sh
Executable file
@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
# Maybe skip (terminate) this travis build, if it seems unnecessary.
|
||||
# Emulates appveyor's more powerful skip/only feature.
|
||||
|
||||
set -e
|
||||
|
||||
# works only on master ?
|
||||
CHANGED_FILES=`git diff --name-only master...${TRAVIS_COMMIT}`
|
||||
|
||||
# only files not matching this pattern will trigger a build
|
||||
# extended regex, don't quote regex metachars
|
||||
#SKIP_PAT="(^site/con|do.nload)"
|
||||
SKIP_PAT="\.md$"
|
||||
|
||||
# doesn't handle empty CHANGED_FILES correctly, shouldn't matter
|
||||
SKIP=True
|
||||
for F in $CHANGED_FILES; do
|
||||
if ! [[ $F =~ $SKIP_PAT ]]; then
|
||||
SKIP=False
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ $SKIP == True ]]; then
|
||||
echo "Only skippable files found, exiting."
|
||||
travis_terminate 0
|
||||
exit 1
|
||||
else
|
||||
echo "Non-skippable files found, continuing with build."
|
||||
fi
|
@ -71,6 +71,9 @@ branches:
|
||||
# - ghc: 7.10.3
|
||||
# - ghc: 8.0.2
|
||||
|
||||
before_install:
|
||||
- ./.travis-maybe-skip.sh
|
||||
|
||||
install: # command output is hidden as they complete
|
||||
|
||||
# if any command fails, end the travis script
|
||||
|
Loading…
Reference in New Issue
Block a user