60 lines
1.9 KiB
YAML
60 lines
1.9 KiB
YAML
language: c
|
|
|
|
dist: bionic
|
|
|
|
# https://docs.travis-ci.com/user/caching/
|
|
cache:
|
|
ccache: true
|
|
directories:
|
|
- vendor/nimbus-build-system/vendor/Nim/bin
|
|
- 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
|
|
|
|
matrix:
|
|
include:
|
|
# Due to Travis new pricing we want to dedicate the resources we have
|
|
# for ARM64 testing, hence Linux/Mac on AMD are commented out
|
|
# https://blog.travis-ci.com/2020-11-02-travis-ci-new-billing
|
|
#
|
|
# - os: linux
|
|
# arch: amd64
|
|
# sudo: required
|
|
# env:
|
|
# - NPROC=2
|
|
# before_install:
|
|
# - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib"
|
|
# - os: osx
|
|
# before_install:
|
|
# - HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_INSTALL_CLEANUP=1 brew install ccache
|
|
# env:
|
|
# - NPROC=2
|
|
- dist: bionic
|
|
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
|
|
|
|
#allow_failures:
|
|
## ARM64 is a bit buggy: https://travis-ci.community/t/no-output-has-been-received-and-then-build-terminated-on-arm64/8834
|
|
#- arch: arm64
|
|
|
|
|
|
install:
|
|
# spec test fixtures
|
|
- scripts/setup_scenarios.sh jsonTestsCache
|
|
|
|
script:
|
|
- set -e # fail fast
|
|
# Building Nim-1.0.4 takes up to 10 minutes on Travis - the time limit after which jobs are cancelled for having no output
|
|
- make -j${NPROC} NIMFLAGS="--parallelBuild:2" V=1 update # to allow a newer Nim version to be detected
|
|
- make -j${NPROC} NIMFLAGS="--parallelBuild:2" LOG_LEVEL=TRACE
|
|
- make -j${NPROC} NIMFLAGS="--parallelBuild:2" DISABLE_TEST_FIXTURES_SCRIPT=1 test
|