summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzvecr <git@zvecr.com>2019-01-17 17:08:23 +0000
committerDrashna Jaelre <drashna@live.com>2019-05-31 11:04:16 -0700
commitba6b3fc1b55df7bb3e34721d2622837b394862a5 (patch)
tree56ba76073f1d700a392872558f61ec5ad578d0c4
parent6693d16362a807c770d282a2622ab0287a588dfe (diff)
downloadqmk_firmware-ba6b3fc1b55df7bb3e34721d2622837b394862a5.tar.gz
qmk_firmware-ba6b3fc1b55df7bb3e34721d2622837b394862a5.zip
Use qmk docker image for travis CI builds
-rw-r--r--.travis.yml24
-rw-r--r--Dockerfile5
-rwxr-xr-xutil/travis_build.sh7
-rw-r--r--util/travis_test.sh7
4 files changed, 22 insertions, 21 deletions
diff --git a/.travis.yml b/.travis.yml
index 796be6c045..b4a76765cc 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -11,31 +11,21 @@ env:
global:
- secure: vBTSL34BDPxDilKUuTXqU4CJ26Pv5hogD2nghatkxSQkI1/jbdnLj/DQdPUrMJFDIY6TK3AltsBx72MaMsLQ1JO/Ou24IeHINHXzUC1FlS9yQa48cpxnhX5kzXNyGs3oa0qaFbvnr7RgYRWtmD52n4bIZuSuW+xpBv05x2OCizdT2ZonH33nATaHGFasxROm4qYZ241VfzcUv766V6RVHgL4x9V08warugs+RENVkfzxxwhk3NmkrISabze0gSVJLHBPHxroZC6EUcf/ocobcuDrCwFqtEt90i7pNIAFUE7gZsN2uE75LmpzAWin21G7lLPcPL2k4FJVd8an1HiP2WmscJU6U89fOfMb2viObnKcCzebozBCmKGtHEuXZo9FcReOx49AnQSpmESJGs+q2dL/FApkTjQiyT4J6O5dJpoww0/r57Wx0cmmqjETKBb5rSgXM51Etk3wO09mvcPHsEwrT7qH8r9XWdyCDoEn7FCLX3/LYnf/D4SmZ633YPl5gv3v9XEwxR5+04akjgnvWDSNIaDbWBdxHNb7l4pMc+WR1bwCyMyA7KXj0RrftEGOrm9ZRLe6BkbT4cycA+j77nbPOMcyZChliV9pPQos+4TOJoTzcK2L8yWVoY409aDNVuAjdP6Yum0R2maBGl/etLmIMpJC35C5/lZ+dUNjJAM=
- MAKEFLAGS="-j3 --output-sync"
+services:
+ - docker
before_install:
- - wget http://ww1.microchip.com/downloads/en/DeviceDoc/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz || wget http://qmk.fm/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
- # Need DFU > .5 for dfu-suffix
- - sudo add-apt-repository --yes ppa:tormodvolden/ppa
- - sudo apt-get update -qq
+ - docker build -t qmkfm/qmk_firmware .
install:
- - tar -zxf avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
- - export PATH="$PATH:$TRAVIS_BUILD_DIR/avr8-gnu-toolchain-linux_x86_64/bin"
- npm install -g moxygen
- - sudo apt-get -y --force-yes install dfu-util
-before_script:
- - avr-gcc --version
script:
-- git rev-parse --short HEAD
-- bash util/travis_test.sh
-- bash util/travis_build.sh
-- bash util/travis_docs.sh
+ - git rev-parse --short HEAD
+ - bash util/travis_test.sh
+ - bash util/travis_build.sh
+ - bash util/travis_docs.sh
addons:
apt:
packages:
- - dfu-programmer
- pandoc
- - gcc-arm-none-eabi
- - binutils-arm-none-eabi
- - libnewlib-arm-none-eabi
- diffutils
- dos2unix
- doxygen
diff --git a/Dockerfile b/Dockerfile
index 6bd5acb335..dc9d96ecd8 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -19,11 +19,8 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
zip \
&& rm -rf /var/lib/apt/lists/*
-ENV KEYBOARD=ergodox_ez
-ENV KEYMAP=default
-
VOLUME /qmk_firmware
WORKDIR /qmk_firmware
COPY . .
-CMD make $KEYBOARD:$KEYMAP
+CMD make all:default
diff --git a/util/travis_build.sh b/util/travis_build.sh
index 2c6c62931f..02a749e851 100755
--- a/util/travis_build.sh
+++ b/util/travis_build.sh
@@ -1,5 +1,12 @@
#!/bin/bash
+# if docker is installed - call make within the qmk docker image
+if command -v docker >/dev/null; then
+ function make() {
+ docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware qmkfm/qmk_firmware make "$@"
+ }
+fi
+
# test force push
#TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d"
diff --git a/util/travis_test.sh b/util/travis_test.sh
index 6c48f898ce..b6ec06f059 100644
--- a/util/travis_test.sh
+++ b/util/travis_test.sh
@@ -19,4 +19,11 @@ if [ "$BRANCH" != "master" ] && [ "$NUM_IMPACTING_CHANGES" == "0" ]; then
exit 0
fi
+# if docker is installed - call make within the qmk docker image
+if command -v docker >/dev/null; then
+ function make() {
+ docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware qmkfm/qmk_firmware make "$@"
+ }
+fi
+
make test:all