language: go dist: bionic # https://docs.travis-ci.com/user/caching/ cache: directories: - vendor/nimbus-build-system/vendor/Nim/bin - vendor/go/bin - rocksdbCache - jsonTestsCache git: # when multiple CI builds are queued, the tested commit needs to be in the last X commits cloned with "--depth X" depth: 10 # disable LFS file downloading during regular cloning lfs_skip_smudge: true go: - "1.12.x" matrix: include: - os: linux arch: amd64 sudo: required env: - NPROC=2 before_install: - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" - sudo apt-get -q update - sudo apt-get install -y librocksdb-dev - os: linux arch: arm64 sudo: required env: - NPROC=6 # Worth trying more than 2 parallel jobs: https://travis-ci.community/t/no-cache-support-on-arm64/5416/8 # (also used to get a different cache key than the amd64 one) before_install: - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" - sudo apt-get -q update - sudo apt-get install -y libpcre3-dev git-lfs librocksdb-dev - os: osx env: - NPROC=2 before_install: - launchctl setenv LIBRARY_PATH /usr/local/lib # for RocksDB # build our own rocksdb to test with a fixed version that we think works - vendor/nimbus-build-system/scripts/build_rocksdb.sh rocksdbCache install: # LFS test fixtures - scripts/setup_official_tests.sh jsonTestsCache script: - set -e # fail fast - make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" update # to allow a newer Nim version to be detected - make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" - make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" DISABLE_LFS_SCRIPT=1 test