diff --git a/.travis.yml b/.travis.yml index 3282bf958d..1f93236e20 100644 --- a/.travis.yml +++ b/.travis.yml @@ -362,7 +362,7 @@ matrix: # - travis_wait ${MAX_TIME_MIN} bin/sh/install-vcpkg.sh rocksdb[snappy,lz4,zlib] - <<: *windows stage: windep-boost - name: prereq-boost + name: prereq-keep-boost install: - choco upgrade cmake.install - choco install ninja visualstudio2017-workload-vctools -y diff --git a/bin/ci/ubuntu/travis-cache-start.sh b/bin/ci/ubuntu/travis-cache-start.sh index b7cfb744c2..6811acb904 100755 --- a/bin/ci/ubuntu/travis-cache-start.sh +++ b/bin/ci/ubuntu/travis-cache-start.sh @@ -2,6 +2,21 @@ # some cached files create churn, so save them here for # later restoration before packing the cache set -eux +clean_cache="travis_clean_cache" +if [[ ! ( "${TRAVIS_JOB_NAME}" =~ "windows" || \ + "${TRAVIS_JOB_NAME}" =~ "prereq-keep" ) ]] && \ + ( [[ "${TRAVIS_COMMIT_MESSAGE}" =~ "${clean_cache}" ]] || \ + ( [[ -v TRAVIS_PULL_REQUEST_SHA && \ + "${TRAVIS_PULL_REQUEST_SHA}" != "" ]] && \ + git log -1 "${TRAVIS_PULL_REQUEST_SHA}" | grep -cq "${clean_cache}" - + ) + ) +then + find ${TRAVIS_HOME}/_cache -maxdepth 2 -type d + rm -rf ${TRAVIS_HOME}/_cache + mkdir -p ${TRAVIS_HOME}/_cache +fi + pushd ${TRAVIS_HOME} if [ -f cache_ignore.tar ] ; then rm -f cache_ignore.tar