Merge pull request #973 from rgerhards/ci-merge

CI: add support for a try to merge with master
This commit is contained in:
Rainer Gerhards 2016-04-22 18:03:29 +02:00
commit 965b3d0f1b
3 changed files with 51 additions and 0 deletions

6
tests/CI/README Normal file
View File

@ -0,0 +1,6 @@
This directory contains scripts and other files
related to the various Continous Integration
environments.
Note: for historical reasons, travis support is
currently under ./tests/travis

View File

@ -0,0 +1,11 @@
#!/bin/bash
set -e
set -v
export CC=clang #gcc # clang --> package currently broken in fedora 23
export CFLAGS="-g" # -fsanitize=address"
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig"
autoreconf -fiv
./configure --prefix=/usr/local --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-silent-rules --docdir=/usr/share/doc/rsyslog --disable-generate-man-pages --enable-testbench --enable-imdiag --enable-imfile --enable-impstats --enable-imptcp --enable-mmanon --enable-mmaudit --enable-mmfields --enable-mmjsonparse --enable-mmpstrucdata --enable-mmsequence --enable-mmutf8fix --enable-mail --enable-omprog --enable-omruleset --enable-omstdout --enable-omuxsock --enable-pmaixforwardedfrom --enable-pmciscoios --enable-pmcisconames --enable-pmlastmsg --enable-pmsnare --enable-libgcrypt --enable-mmnormalize --disable-omudpspoof --enable-relp --disable-snmp --disable-mmsnmptrapd --enable-gnutls --enable-usertools=no --enable-mysql --enable-valgrind --enable-omjournal
make clean
make check

34
tests/CI/try_merge.sh Executable file
View File

@ -0,0 +1,34 @@
#!/bin/bash
oldbranch=`git rev-parse --abbrev-ref HEAD`
git config --global user.email "buildbot@rsyslog.com"
git config --global user.name "buildbot"
git branch -D tmp-CI
git branch tmp-CI
git checkout tmp-CI
git fetch origin
git merge --no-edit origin/master
if [ $? -ne 0 ]; then
echo "======================================================================"
echo "= FAIL: git merge, not doing any tests on the merge result ="
echo "======================================================================"
echo "Note: this is not an error per se, can happen. In this case the user"
echo "must be somewhat more careful when merging."
git merge --abort
git checkout ${oldbranch}
exit 0
fi
echo "======================================================================"
echo "= SUCCESS: git merge; doing some more tests on master+PR ="
echo "======================================================================"
echo "Note: failing tests may not be reproducible if master branch advances."
echo " However, they should not be taken lightly as they point into to"
echo " two conflicting changes to the codebase."
# from here on, we want to see what's going on and we also want to abort
# on any error.
set -v
set -e
tests/CI/clang-check-sanitizer.sh
git checkout ${oldbranch}