diff options
| author | Nikolai Kondrashov <Nikolai.Kondrashov@redhat.com> | 2014-03-25 12:01:00 +0200 |
|---|---|---|
| committer | Jakub Hrozek <jhrozek@redhat.com> | 2014-09-02 10:43:21 +0200 |
| commit | 3ce85a5f5264e7118beb6524e120fd8b53a13da4 (patch) | |
| tree | ec46ff937a47518ff9ed0f4dd67ebf2157fbc4bf /contrib/ci/make-check-wrap | |
| parent | 6b5044001e4b0a0caf971a2cf5f27674e0d270f4 (diff) | |
| download | sssd-3ce85a5f5264e7118beb6524e120fd8b53a13da4.tar.gz sssd-3ce85a5f5264e7118beb6524e120fd8b53a13da4.tar.xz sssd-3ce85a5f5264e7118beb6524e120fd8b53a13da4.zip | |
Add basic support for CI test execution
Add basic support for executing continuous integration (CI) tests on
RHEL6, RHEL7, Fedora 20, Fedora Rawhide and Debian Testing.
This adds two front-end scripts which can be executed either locally by
developers, or on a CI server: contrib/ci/run and contrib/ci/clean.
The first one will run the tests and the second will wipe out the
artifacts.
See contrib/ci/README.md for further details.
Reviewed-by: Michal Židek <mzidek@redhat.com>
Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
Diffstat (limited to 'contrib/ci/make-check-wrap')
| -rwxr-xr-x | contrib/ci/make-check-wrap | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/contrib/ci/make-check-wrap b/contrib/ci/make-check-wrap new file mode 100755 index 000000000..4ad323e5f --- /dev/null +++ b/contrib/ci/make-check-wrap @@ -0,0 +1,52 @@ +#!/bin/bash +# +# Build a make check target, prepending test commands with specified command +# and arguments. +# Args: [make_arg...] [-- wrap_cmd wrap_arg...] +# +# Copyright (C) 2014 Red Hat +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +set -o nounset -o pipefail -o errexit + +declare -a argv=("make") +declare arg + +while [ $# != 0 ]; do + arg="$1" + shift + if [ "$arg" == "--" ]; then + break + fi + argv+=("$arg") +done + +if [ $# != 0 ]; then + # If Makefile supports LOG_COMPILER + if grep -q -w LOG_COMPILER Makefile; then + printf -v arg 'LOG_COMPILER=%q' $1 + argv+=("$arg") + shift + if [ $# != 0 ]; then + printf -v arg ' %q' "$@" + argv+=("LOG_FLAGS=$arg") + fi + else + printf -v arg ' %q' "$@" + argv+=("AUX_TESTS_ENVIRONMENT=$arg") + fi +fi + +"${argv[@]}" |
