3 # Copyright (C) 2019 Michael Jeanson <mjeanson@efficios.com>
4 # Copyright (C) 2019 Francis Deslauriers <francis.deslauriers@efficios.com>
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 SRCDIR
="$WORKSPACE/src/babeltrace"
26 PYENV_HOME
="$WORKSPACE/.pyenv/"
28 # Delete previously built virtualenv
29 if [ -d "$PYENV_HOME" ]; then
33 # Create virtualenv and install necessary packages
34 virtualenv
--system-site-packages -p ${PYTHON3} "$PYENV_HOME"
37 # shellcheck disable=SC1090,SC1091
38 .
"$PYENV_HOME/bin/activate"
41 if [ -f "$SRCDIR/dev-requirements.txt" ]; then
42 pip
install -r "$SRCDIR/dev-requirements.txt"
44 pip
install black flake8 isort
51 black
--diff --check . |
tee ..
/..
/black.out || exit_code
=1
52 flake8
--output-file=..
/..
/flake8.out
--tee || exit_code
=1
54 ISORT_UNSUPPORTED_BRANCH_REGEX
='.*(stable-1\.5|stable-2\.0)$'
56 if [[ ! ${GIT_BRANCH:-} =~
$ISORT_UNSUPPORTED_BRANCH_REGEX ]] && \
57 [[ ! ${GERRIT_BRANCH:-} =~
$ISORT_UNSUPPORTED_BRANCH_REGEX ]]; then
58 isort .
--diff --check |
tee ..
/..
/isort.out || exit_code
=1
60 echo "isort is not supported on the 'stable-2.0' branch" > ..
/..
/isort.out
63 if [[ -f tools
/format-cpp.sh
]]; then
64 FORMATTER
="clang-format-15 -i" tools
/format-cpp.sh
65 git
diff --exit-code |
tee ..
/..
/clang-format.out || exit_code
=1
68 if [[ -f tools
/shellcheck.sh
]]; then
69 tools
/shellcheck.sh |
tee ..
/..
/shellcheck.out || exit_code
=1
72 if [[ -f tools
/check-include-guards.sh
]]; then
73 tools
/check-include-guards.sh |
tee ..
/..
/check-include-guards.out || exit_code
=1