summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2020-02-27 15:41:11 +1100
committerDamien George <damien.p.george@gmail.com>2020-02-28 10:34:17 +1100
commitf6375ac3ebac28656a0a757952d32c265b1ba7aa (patch)
tree382cab975e2979b29843b7b5f65d403aaab0bfe3
parent69661f3343bedf86e514337cff63d96cc42f8859 (diff)
travis: Add CI job to check code formatting.
The CI job will fail if there is any code which does not conform to the style encoded by tools/codeformat.py. And it will list any changes required. uncrustify is built from source because Ubuntu bionic has uncrustify-0.66.1 which is from 2017/11/22 and is missing many options needed here.
-rw-r--r--.travis.yml21
1 files changed, 20 insertions, 1 deletions
diff --git a/.travis.yml b/.travis.yml
index f2b05f9d7..e7fd13fd5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -18,9 +18,28 @@ stages:
- name: test
# define the jobs for the stages
-# order of the jobs has longest running first to optimise total time
+# approx order of the jobs has longest running first to optimise total time
jobs:
include:
+ # check code formatting
+ - stage: test
+ os: linux
+ arch: arm64
+ dist: bionic
+ env: NAME="code formatting"
+ install:
+ - sudo apt-get install python3-pip
+ - sudo pip3 install black
+ - black --version
+ script:
+ - git clone https://github.com/uncrustify/uncrustify.git $HOME/uncrustify
+ - git -C $HOME/uncrustify checkout uncrustify-0.70.1
+ - mkdir -p $HOME/uncrustify/build
+ - (cd $HOME/uncrustify/build && cmake ..)
+ - make -C $HOME/uncrustify/build
+ - PATH=$HOME/uncrustify/build:$PATH tools/codeformat.py
+ - git diff --exit-code
+
# stm32 port
- stage: test
env: NAME="stm32 port build"