From d8f9061adf2d255bbe7b2b27f0fa892ef881c305 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 10 Apr 2016 02:11:53 +0300 Subject: add .gitlab-ci.yml and script for it. --- tools/ci/scripts/bot.sh | 27 +++++++++ tools/ci/scripts/exit.sh | 3 + tools/ci/scripts/init.sh | 146 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 176 insertions(+) create mode 100755 tools/ci/scripts/bot.sh create mode 100755 tools/ci/scripts/exit.sh create mode 100755 tools/ci/scripts/init.sh (limited to 'tools/ci/scripts') diff --git a/tools/ci/scripts/bot.sh b/tools/ci/scripts/bot.sh new file mode 100755 index 000000000..4724530a8 --- /dev/null +++ b/tools/ci/scripts/bot.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +export path=bot +export server=irc.freenode.net +export C="\0003" +export R="\x0f" + +function bot_connect { + mkdir ${path} + ii -s $server -i $path -n $1 -f $1 & + sleep 7s +} + +function bot_join { + echo "/j $1" > "$path/$server/in" + sleep 7s +} + +function bot_message { + echo -e $2 >bot/irc.freenode.net/${1}/in + sleep 1s +} + +function bot_exit { + sleep 5s + killall ii +} diff --git a/tools/ci/scripts/exit.sh b/tools/ci/scripts/exit.sh new file mode 100755 index 000000000..64b758ff1 --- /dev/null +++ b/tools/ci/scripts/exit.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +rm $ERRFILE diff --git a/tools/ci/scripts/init.sh b/tools/ci/scripts/init.sh new file mode 100755 index 000000000..053f36b64 --- /dev/null +++ b/tools/ci/scripts/init.sh @@ -0,0 +1,146 @@ +#!/bin/bash + +pwd +mkdir logs + +export dir=$(pwd) +export ERRFILE=${dir}/logs/${LOGFILE} + +cat /etc/os-release +$CC --version +$CXX --version + +rm ${ERRFILE} + +function aptget_update { + apt-get update + if [ "$?" != 0 ]; then + sleep 1s + apt-get update + if [ "$?" != 0 ]; then + sleep 1s + apt-get update + fi + fi +} + +function aptget_install { + apt-get -y -qq install $* + if [ "$?" != 0 ]; then + sleep 1s + apt-get -y -qq install $* + if [ "$?" != 0 ]; then + sleep 2s + apt-get -y -qq install $* + fi + fi +} + +function run_configure_simple { + rm $ERRFILE + autoreconf -i 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + + rm $ERRFILE + ./configure $* 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +function run_configure { + run_configure_simple $* + + rm $ERRFILE + cd po + make update-gmo 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + cd .. + + rm $ERRFILE + cd po + make update-po 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + cd .. +} + +function run_cmake { + rm $ERRFILE + cmake . 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +function run_make { + rm $ERRFILE + make -j2 V=0 $* 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +function run_check_warnings { + DATA=$(cat $ERRFILE) + if [ "$DATA" != "" ]; + then + cat $ERRFILE + exit 1 + fi +} + +function run_h { + rm $ERRFILE + $CC -c -x c++ $* $includes */*/*/*.h */*/*.h */*.h *.h 2>$ERRFILE + DATA=$(cat $ERRFILE) + if [ "$DATA" != "" ]; + then + cat $ERRFILE + exit 1 + fi +} + +function run_tarball { + rm $ERRFILE + make dist-xz 2>$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi + + mkdir $1 + cd $1 + tar xf ../*.tar.xz + cd manaplus* +} + +function run_mplint { + rm $ERRFILE + mplint/src/mplint $* >$ERRFILE + result=$? + if [ "$result" != 0 ]; then + cat $ERRFILE + exit $result + fi +} + +aptget_update -- cgit v1.2.3-60-g2f50