Run cppcheck in CI (#271)

* run cppcheck in CI

* add some new hooks

* clean up Dockerfile
master
Adeeb 2020-06-08 18:03:33 -07:00 committed by GitHub
parent b875f970fc
commit 559f1934c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 45 additions and 6 deletions

View File

@ -3,9 +3,9 @@ repos:
rev: master
hooks:
- id: check-ast
- id: check-json
- id: check-xml
- id: check-yaml
- id: check-merge-conflict
- id: check-symlinks
- repo: https://github.com/pre-commit/mirrors-mypy
rev: master
hooks:
@ -26,3 +26,16 @@ repos:
types: [python]
args:
- --disable=C,R,W0613,W0511,W0212,W0201,W0311,W0106,W0603,W0621,W0703,E1136
- repo: local
hooks:
- id: cppcheck
name: cppcheck
entry: cppcheck
language: system
types: [c++]
exclude: 'can/dbc_template.cc'
args:
- --error-exitcode=1
- --force
- --quiet
- -j4

View File

@ -1,6 +1,32 @@
from ubuntu:16.04
FROM ubuntu:16.04
RUN apt-get update && apt-get install -y libzmq3-dev capnproto libcapnp-dev clang wget git autoconf libtool curl make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl
RUN apt-get update && apt-get install -y --no-install-recommends \
autoconf \
build-essential \
ca-certificates \
capnproto \
clang \
cppcheck \
curl \
git \
libtool \
make \
libbz2-dev \
libffi-dev \
libcapnp-dev \
liblzma-dev \
libncurses5-dev \
libncursesw5-dev \
libreadline-dev \
libssl-dev \
libsqlite3-dev \
libzmq3-dev \
llvm \
tk-dev \
python-openssl \
xz-utils \
zlib1g-dev \
&& rm -rf /var/lib/apt/lists/*
RUN curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
ENV PATH="/root/.pyenv/bin:/root/.pyenv/shims:${PATH}"
@ -9,8 +35,8 @@ RUN pyenv global 3.7.3
RUN pyenv rehash
COPY requirements.txt /tmp/
RUN pip install -r /tmp/requirements.txt
RUN pip install pre-commit==2.4.0 pylint==2.5.2
RUN pip install --no-cache-dir -r /tmp/requirements.txt
RUN pip install --no-cache-dir pre-commit==2.4.0 pylint==2.5.2
ENV PYTHONPATH=/project