Rework our travis config to be a bit more efficient, moving the work dir to a ramdisk, checking less stuff out of git, etc.

pull/916/head
Jesse Vincent 4 years ago
parent 040ce8d1bb
commit dd9faf910c
No known key found for this signature in database
GPG Key ID: CC228463465E40BC

@ -1,4 +1,5 @@
dist: focal dist: focal
arch: amd64
language: c language: c
os: os:
- linux - linux
@ -7,17 +8,22 @@ addons:
packages: packages:
- shellcheck - shellcheck
- cmake - cmake
- astyle
env: env:
global: global:
- LC_ALL: C - LC_ALL: C
- CCACHE_WRAPPER_PATH: /tmp/kaleidoscope-ccache
- ARDUINO_DOWNLOAD_URL: https://downloads.arduino.cc/arduino-1.8.13-linux64.tar.xz
git: git:
quiet: true quiet: true
depth: false
before_install: before_install:
- sh .travis/setup-ramdisk.sh
- ccache --set-config=compiler_check=content -M 1G -F 0 - ccache --set-config=compiler_check=content -M 1G -F 0
install: install:
- git clone --depth 1 --recurse-submodules --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio ../hardware/keyboardio - cd $TRAVIS_BUILD_DIR
- git clone --depth 1 --recurse-submodules=build-tools --recurse-submodules=toolchain --recurse-submodules=avr/libraries/ --jobs 16 --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio ../hardware/keyboardio
## We delete the Bundle's version of Kaleidoscope, and symlink ourselves in. ## We delete the Bundle's version of Kaleidoscope, and symlink ourselves in.
## This makes sure we're using the current version of the library. ## This makes sure we're using the current version of the library.
- rm -rf ../hardware/keyboardio/avr/libraries/Kaleidoscope - rm -rf ../hardware/keyboardio/avr/libraries/Kaleidoscope
@ -26,19 +32,19 @@ install:
- export BOARD_HARDWARE_PATH=$TRAVIS_BUILD_DIR/../hardware - export BOARD_HARDWARE_PATH=$TRAVIS_BUILD_DIR/../hardware
- export ARDUINO_PATH=$TRAVIS_BUILD_DIR/arduino-1.8.13 - export ARDUINO_PATH=$TRAVIS_BUILD_DIR/arduino-1.8.13
- make adjust-git-timestamps - make adjust-git-timestamps
- make travis-install-arduino - wget --quiet $ARDUINO_DOWNLOAD_URL -O - | tar xJf -
- make prepare-ccache - make prepare-ccache
jobs: jobs:
include: include:
- env: TEST_TARGET=smoke-sketches - env: TEST_CMD="make -j 2 smoke-sketches"
- env: TEST_TARGET=travis-simulator-tests - env: TEST_CMD="CCACHE_NOT_SUPPORTED=1 make travis-simulator-tests"
- env: TEST_TARGET=cpplint - env: TEST_CMD="make cpplint"
- env: TEST_TARGET=find-filename-conflicts - env: TEST_CMD="make find-filename-conflicts"
- env: TEST_TARGET=shellcheck - env: TEST_CMD="make shellcheck"
- env: TEST_TARGET=travis-check-astyle - env: TEST_CMD="make travis-check-astyle"
script: script:
- unset CC - unset CC
- make -j 2 $TEST_TARGET - eval $TEST_CMD
notifications: notifications:
email: email:
on_success: change on_success: change

@ -0,0 +1,16 @@
#!/bin/bash
export BLDDIR=/home/travis/build
df -h
du -sh $HOME
du -sh $BLDDIR
sudo mv $BLDDIR $BLDDIR.ori
sudo mkdir -p $BLDDIR
sudo mount -t tmpfs -o size=8192m tmps $BLDDIR
time sudo cp -R $BLDDIR.ori/. $BLDDIR
sudo chown -R travis:travis $BLDDIR
df -h
du -sh "$HOME"
du -sh "$BLDDIR"
Loading…
Cancel
Save