From b5095ab13a874b508cfb954af083f292739dc9c6 Mon Sep 17 00:00:00 2001 From: amichelo <andrea.michelotti@lnf.infn.it> Date: Mon, 23 Jan 2023 09:06:03 +0100 Subject: [PATCH] disable ubuntu1804 pipeline --- .gitlab-ci.yml | 787 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 787 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e69de29..2361cc5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -0,0 +1,787 @@ +stages: + - build + - deploy_nightly + - test + - deploy + - publish + + +before_script: + - export GNOW=$(date +"%Y%m%d") + - export NOW=$(date +"%Y%m%d-%H%M%S") + - export TAR_NAME_POSTFIX=$GNOW-$CI_PIPELINE_ID + - export NIGHTLY_NAME=chaos_distrib-$CI_JOB_NAME.$TAR_NAME_POSTFIX.tar.gz + - export MERGE_COMMENT="non-regression-$NOW-$CI_COMMIT_REF_NAME-${CI_PIPELINE_ID}" + - export SYS=`uname -s` + - if [ "$SYS" == "Linux" ];then export NPROC=`nproc`;else export NPROC=4;fi + - if [ -z "$TEST_BRANCH" ]; then export TEST_BRANCH=$CI_COMMIT_REF_NAME;fi + - if [ "$SKIP_TEST" == "true" ];then REVNAME="UNTESTED"; else REVNAME=$(basename $TEST_BRANCH); fi + - echo "[$CI_RUNNER_DESCRIPTION] $SYS $CI_JOB_NAME Working directory:$PWD tag $CI_COMMIT_REF_NAME CPUS:$NPROC framework in branch $TEST_BRANCH" + - export ARCH=`uname -m` + - eval export `cat /etc/*-release|grep -e "^VERSION_ID="|tr -d "\" "` + - eval export `cat /etc/*-release|grep -e "^ID="|tr -d "\" "` + - export REV_POSTFIX=$REVNAME-$ID-$VERSION_ID-$ARCH + - export DISTRIB_NAME=chaos-distrib-$REV_POSTFIX + - export DISTRIB_PREFIX=/usr/local/chaos/chaos-distrib + - export INSTALL_DIR=$DISTRIB_PREFIX + - export CHAOS_MDS=kafka:9092 + - export CHAOS_INTERFACE=lo + - export CHAOS_LIVE_SERVERS=couchbase + - export CHAOS_LOG_SERVERS=influxdb:8086 + - export CHAOS_DB_SERVERS=mongo + - export PATH=/usr/local/chaos/qt-56/bin:$PATH + - echo "Running on $ID $VERSION_ID $ARCH (distrib name '$DISTRIB_NAME') $REVNAME" + - git config --global user.email andrea.michelotti@lnf.infn.it + - git config --global user.name amichelo + - git config --global color.ui true + - repo init -q --no-clone-bundle -u https://amichelo:$KBS_SECRET_GITREAD@baltig.infn.it/chaos-lnf-control/chaos_repo_bundle.git -b $CI_COMMIT_REF_NAME + - rm -rf chaosframework + - mkdir -p $INSTALL_DIR + - echo -e "Time:$GNOW\nPipeline Revision:$CI_COMMIT_REF_NAME\nPipelineID:$CI_PIPELINE_ID\nJobName:$CI_JOB_NAME" > $INSTALL_DIR/VERSION; + - git clone https://baltig.infn.it/chaos-lnf-control/chaos_bundle_tools.git +# macosx_x86_64: +# tags: +# - macosx +# stage: build +# services: +# - name: couchbase/server:community-5.0.1 +# alias: couchbase +# - name: mongo:3.6 +# alias: mongo + +# script: +# - export CHAOS_LIVE_SERVERS=localhost +# - export CHAOS_DB_SERVERS=localhost +# - curl http://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo +# - chmod +x ~/bin/repo +# - ~/bin/repo init -q --no-clone-bundle -u git@baltig.infn.it:chaos-lnf-control/chaos_repo_bundle.git -b $CI_COMMIT_REF_NAME +# - mkdir chaos-osx10-distrib +# - ~/bin/repo sync +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - ./tools/dbinit.sh localhost localhost;sleep 5;./tools/dbinit.sh localhost localhost;sleep 5 +# - cd chaosframework;export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd - +# - cmake -DCHAOS_ARCHITECTURE_TEST=ON -DCHAOS_VME=OFF -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="$CI_JOB_STAGE.$CI_COMMIT_SHA" -DCHAOS_WAN=ON . -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCMAKE_INSTALL_PREFIX=$PWD/chaos-osx10-distrib +# - make -j 8 install +# - export CHAOS_LIVE_SERVERS=localhost;export CHAOS_DB_SERVERS=localhost +# - cd $PWD/chaos-osx10-distrib +# - source chaos_env.sh +# - ./tools/dbinit.sh localhost localhost;sleep 5;./tools/dbinit.sh localhost localhost +# - ./tools/chaos_test.sh -k . +# - ./tools/chaos_services.sh stop +# - tar cfz chaos-osx10-distrib.tar.gz chaos-osx10-distrib + + +# allow_failure: true +# artifacts: +# name: "chaos-osx10-distrib.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 1 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "macosx_x86_64" +# - $BUILD_DISTRIBUTION == null + +# build_i686_static_linux26: +# stage: build +# retry: 2 +# tags: +# - shared +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:cross +# script: +# - alias python=python3 +# - repo sync +# - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi +# - export DISTRIB_NAME=chaos-distrib-$REVNAME-$CI_JOB_NAME +# - export PATH=/usr/local/chaos/i686-nptl-linux-gnu/bin/:$PATH + +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=$GITHASH;export CHAOS_LAST_TAG=$GITTAG;cd -; +# - cmake -DKAFKA_RDK_ENABLE=OFF -DKAFKA_ASIO_ENABLE=OFF -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="CI_JOB_STAGE.$CI_COMMIT_SHA" . -DCHAOS_STATIC=ON -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCHAOS_TARGET=i686-linux26 -DCHAOS_CDS=OFF -DCHAOS_DRIVER_MISC=OFF -DCHAOS_DRIVER_CCALT=OFF -DCDSLIB=OFF -DCHAOS_MDS=OFF -DCHAOS_AGENT=OFF -DCHAOS_WAN=OFF -DCHAOS_EXAMPLES=OFF -DCHAOS_ENABLE_C11=OFF -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR |& tee $INSTALL_DIR/bundle.configuration.log +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# - if [ $CI_COMMIT_REF_NAME == "master" ];then i686-nptl-linux-gnu-strip `find $INSTALL_DIR/bin/ -type f`;fi +# # - i686-nptl-linux-gnu-strip `find $INSTALL_DIR/lib/ -name "*.a" -type f` +# - tar cfz $DISTRIB_NAME.tar.gz -C $INSTALL_DIR/.. chaos-distrib +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 +# # - scp $DISTRIB_NAME.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME.md5 +# # - scp $DISTRIB_NAME.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/i686/latest-$CI_JOB_NAME.tar.gz" +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME.md5 /var/www/html/binary/chaos/nightly/i686/latest-$CI_JOB_NAME.tar.gz.md5" + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "i686_static_linux26" +# - $BUILD_DISTRIBUTION == null + +# build_i686_dynamic_linux26: +# stage: build +# tags: +# - shared +# retry: 2 +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:cross +# script: +# - alias python=python3 +# - repo sync +# - export DISTRIB_NAME=chaos-distrib-$REVNAME-$CI_JOB_NAME +# - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi +# - export PATH=/usr/local/chaos/i686-nptl-linux-gnu/bin/:$PATH +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cmake . -DKAFKA_RDK_ENABLE=OFF -DKAFKA_ASIO_ENABLE=OFF -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="CI_JOB_STAGE.$CI_COMMIT_SHA" -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 -DCHAOS_TARGET=i686-linux26 -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCHAOS_DRIVER_CCALT=OFF -DCHAOS_DRIVER_MISC=OFF -DCHAOS_CDS=OFF -DCDSLIB=OFF -DCHAOS_MDS=OFF -DCHAOS_AGENT=OFF -DCHAOS_WAN=OFF -DCHAOS_EXAMPLES=OFF -DCHAOS_ENABLE_C11=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR |& tee $INSTALL_DIR/bundle.configuration.log +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# - cp /usr/local/chaos/i686-nptl-linux-gnu/i686-nptl-linux-gnu/sysroot/lib/libstdc++.so.6 $INSTALL_DIR/lib +# - tar cfz $DISTRIB_NAME.tar.gz -C $INSTALL_DIR/.. /usr/local/chaos chaos-distrib +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 +# # - scp $DISTRIB_NAME.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME.md5 +# # - scp $DISTRIB_NAME.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/i686/latest-$CI_JOB_NAME.tar.gz" +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/i686/$NIGHTLY_NAME.md5 /var/www/html/binary/chaos/nightly/i686/latest-$CI_JOB_NAME.tar.gz.md5" + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "i686_dynamic_linux26" +# - $BUILD_DISTRIBUTION == null + +# build_armhf_dynamic: +# stage: build +# tags: +# - shared +# retry: 2 +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:cross +# script: +# - alias python=python3 +# - repo sync +# - export DISTRIB_NAME=chaos-distrib-$REVNAME-$CI_JOB_NAME +# - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cmake . -DKAFKA_RDK_ENABLE=OFF -DKAFKA_ASIO_ENABLE=OFF -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="CI_JOB_STAGE.$CI_COMMIT_SHA" -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 -DCHAOS_TARGET=armhf -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCHAOS_CDS=OFF -DCHAOS_MDS=OFF -DCHAOS_DRIVER_MISC=OFF -DCHAOS_DRIVER_CCALT=OFF -DCDSLIB=OFF -DCHAOS_AGENT=OFF -DCHAOS_WAN=OFF -DCHAOS_EXAMPLES=OFF -DCHAOS_ENABLE_C11=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR |& tee $INSTALL_DIR/bundle.configuration.log +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# - tar cfz $DISTRIB_NAME.tar.gz -C $INSTALL_DIR/.. /usr/local/chaos chaos-distrib +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 +# # - scp $DISTRIB_NAME.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME.md5 +# # - scp $DISTRIB_NAME.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/arm/latest-$CI_JOB_NAME.tar.gz" +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME.md5 /var/www/html/binary/chaos/nightly/arm/latest-$CI_JOB_NAME.tar.gz.md5" + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "armhf_dynamic" +# - $BUILD_DISTRIBUTION == null + +# build_armhf_static: +# stage: build +# tags: +# - shared +# retry: 2 +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:cross +# script: +# - alias python=python3 +# - repo sync +# - export DISTRIB_NAME=chaos-distrib-$REVNAME-$CI_JOB_NAME +# - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cmake . -DKAFKA_RDK_ENABLE=ON -DCHAOS_STATIC=ON -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="CI_JOB_STAGE.$CI_COMMIT_SHA" -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 -DCHAOS_TARGET=armhf -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCHAOS_CDS=OFF -DCHAOS_DRIVER_MISC=OFF -DCHAOS_DRIVER_CCALT=OFF -DCDSLIB=OFF -DCHAOS_MDS=OFF -DCHAOS_AGENT=OFF -DCHAOS_WAN=OFF -DCHAOS_EXAMPLES=OFF -DCHAOS_ENABLE_C11=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR |& tee $INSTALL_DIR/bundle.configuration.log +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# - tar cfz $DISTRIB_NAME.tar.gz -C $INSTALL_DIR/.. /usr/local/chaos chaos-distrib +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 +# # - scp $DISTRIB_NAME.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME.md5 +# # - scp $DISTRIB_NAME.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/arm/latest-$CI_JOB_NAME.tar.gz" +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME.md5 /var/www/html/binary/chaos/nightly/arm/latest-$CI_JOB_NAME.tar.gz.md5" + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "armhf_dynamic" +# - $BUILD_DISTRIBUTION == null + + +# ubuntu1804_x86_64: +# stage: build +# tags: +# - shared +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804 +# script: +# - npm install -g jchaos +# - repo sync -n chaos_dashboard.git -j1 --fail-fast +# - repo sync +# - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd - +# - cd html/chaos_dashboard/js/jchaos;git checkout $CI_COMMIT_REF_NAME;cd - +# - if ! cmake -DKAFKA_RDK_ENABLE=ON -DCHAOS_BOOST_VERSION=64 -DCMAKE_BUILD_TYPE=Release -DCHAOS_EPICS_SUPPORT=ON -DCHAOS_ARCHITECTURE_TEST=ON -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="$CI_JOB_STAGE.$CI_COMMIT_SHA" -DCHAOS_WAN=ON -DCHAOS_DRIVER_LUMINOMETER=ON -DOPENCV=$INSTALL_DIR -DIDS=ueye495 -DBASLER=ON -DCAEN2527=ON -DENABLE_MEMCACHE=ON -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCERN_ROOT=$INSTALL_DIR -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR . |& tee $DISTRIB_PREFIX/bundle.configuration.log;then cat /tmp/cmake.log;fi +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# - ./tools/strip_symbols.sh $INSTALL_DIR +# - tar cfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos chaos-distrib +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 + + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "ubuntu1804_x86_64" +# - $BUILD_DISTRIBUTION == null + +ubuntu2004_x86_64: + stage: build + tags: + - shared + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2004 + script: + - npm install -g jchaos + - repo sync + - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi + - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi + - cd chaosframework + - GITHASH=`git log -n 1 --pretty="%h"` + - GITTAG=`git describe --abbrev=0` + - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION + - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; + - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd - + - cd html/chaos_dashboard/js/jchaos;git checkout $CI_COMMIT_REF_NAME;cd - + # -DCMAKE_BUILD_TYPE=Release Debug, Release, RelWithDebInfo and MinSizeRel + - if ! cmake -DKAFKA_RDK_ENABLE=ON -DCMAKE_BUILD_TYPE=Release -DCHAOS_EPICS_SUPPORT=ON -DCHAOS_ARCHITECTURE_TEST=ON -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="$CI_JOB_STAGE.$CI_COMMIT_SHA" -DCHAOS_WAN=ON -DCHAOS_DRIVER_LUMINOMETER=ON -DOPENCV=$INSTALL_DIR -DIDS=ueye495 -DBASLER=ON -DCAEN2527=ON -DENABLE_MEMCACHE=ON -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCERN_ROOT=$INSTALL_DIR -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR . |& tee $DISTRIB_PREFIX/bundle.configuration.log;then cat /tmp/cmake.log;fi + - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi + - ./tools/strip_symbols.sh $INSTALL_DIR + - tar cfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos chaos-distrib + - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 + + artifacts: + name: "$DISTRIB_NAME.tar.gz" + paths: + - ./*.tar.gz + expire_in: 7 day + when: always + only: + variables: + - $BUILD_DISTRIBUTION == "ubuntu2004_x86_64" + - $BUILD_DISTRIBUTION == null + +# ubuntu1804_profile_x86_64: +# stage: build +# tags: +# - shared +# retry: 2 +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804 +# script: +# - npm install -g jchaos +# - repo init -q --no-clone-bundle -u https://amichelo:$KBS_SECRET_GITREAD@baltig.infn.it/chaos-lnf-control/chaos_repo_bundle.git -b $CI_COMMIT_REF_NAME +# - repo sync -n chaos_dashboard.git -j1 --fail-fast - git -C chaos_dashboard/js/jchaos checkout $CI_COMMIT_REF_NAME + +# - repo sync +# - mv CACHE chaosframework/config +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd - +# - if ! cmake -DCHAOS_EPICS_SUPPORT=ON -DKAFKA_RDK_ENABLE=ON -DCHAOS_ARCHITECTURE_TEST=ON -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="$CI_JOB_STAGE.$CI_COMMIT_SHA" -DCHAOS_WAN=ON -DCHAOS_DRIVER_LUMINOMETER=ON -DOPENCV=$INSTALL_DIR -DIDS=ueye495 -DCAEN2527=ON -DBASLER=ON -DENABLE_MEMCACHE=ON -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCERN_ROOT=$INSTALL_DIR -DCMAKE_BUILD_TYPE=PROFILE -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR . |& tee $DISTRIB_PREFIX/bundle.configuration.log;then cat /tmp/cmake.log;fi +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# - tar cfz $DISTRIB_NAME.tar.gz -C / /usr/local/chaos/chaos-distrib $PWD/build-x86_64-Linux/ +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 +# # - scp $DISTRIB_NAME.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/$ID/$VERSION_ID/$NIGHTLY_NAME.md5 +# # - scp $DISTRIB_NAME.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/$ID/$VERSION_ID/$NIGHTLY_NAME +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/$ARCH/$ID/$VERSION_ID/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/$ARCH/$ID/$VERSION_ID/latest-$CI_JOB_NAME.tar.gz" +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/$ARCH/$ID/$VERSION_ID/$NIGHTLY_NAME.md5 /var/www/html/binary/chaos/nightly/$ARCH/$ID/$VERSION_ID/latest-$CI_JOB_NAME.tar.gz.md5" + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "ubuntu1804_profile_x86_64" +# - $BUILD_DISTRIBUTION == null + +centos7_x86_64: + variables: + ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:9092,INTERNAL://localhost:9093' + LISTENERS: 'PLAINTEXT://0.0.0.0:9092,INTERNAL://0.0.0.0:9093' + SECURITY_PROTOCOL_MAP: 'PLAINTEXT:PLAINTEXT,INTERNAL:PLAINTEXT' + LOG_RETENTION_HOURS: 1 + AUTO_CREATE_TOPICS_ENABLE: 'true' + INTER_BROKER: 'INTERNAL' + MAX_MESSAGE_BYTES: 16048588 + MESSAGE_MAX_BYTES: 16048588 + REPLICA_FETCH_MAX_BYTES: 16048588 + + stage: build + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:centos7 + + script: + - npm install -g jchaos + - repo sync -n chaos_dashboard.git -j1 --fail-fast + - repo sync + - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi + - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi + - cd chaosframework + - GITHASH=`git log -n 1 --pretty="%h"` + - GITTAG=`git describe --abbrev=0` + - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION + - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; + - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd - + - cd html/chaos_dashboard/js/jchaos;git checkout $CI_COMMIT_REF_NAME;cd - + - if ! cmake -DKAFKA_RDK_ENABLE=ON -DCMAKE_BUILD_TYPE=Release -DCHAOS_EPICS_SUPPORT=ON -DCHAOS_ARCHITECTURE_TEST=ON -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCHAOS_VERSION_MINOR="$CI_JOB_STAGE.$CI_COMMIT_SHA" -DCHAOS_WAN=ON -DCHAOS_DRIVER_LUMINOMETER=ON -DOPENCV=$INSTALL_DIR -DIDS=ueye494 -DBASLER=ON -DCAEN2527=ON -DENABLE_MEMCACHE=ON -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCERN_ROOT=$INSTALL_DIR -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR . |& tee $DISTRIB_PREFIX/bundle.configuration.log;then cat /tmp/cmake.log;fi + - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi + - ./tools/strip_symbols.sh $INSTALL_DIR + - tar cfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos chaos-distrib + - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 + + artifacts: + name: "$DISTRIB_NAME.tar.gz" + paths: + - ./*.tar.gz + expire_in: 7 day + when: always + only: + variables: + - $BUILD_DISTRIBUTION == "centos7_x86_64" + - $BUILD_DISTRIBUTION == null + + +# build_arm_linux26: +# stage: build +# tags: +# - shared +# retry: 2 +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:cross + +# script: +# - alias python=python3 +# - export DISTRIB_NAME=chaos-distrib-$REVNAME-$CI_JOB_NAME +# - repo sync +# - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi +# - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi +# - export PATH=/usr/local/chaos/gcc-arm-infn-linux26/bin/:$PATH +# - cd chaosframework +# - GITHASH=`git log -n 1 --pretty="%h"` +# - GITTAG=`git describe --abbrev=0` +# - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION +# - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -; +# - cmake -DKAFKA_RDK_ENABLE=OFF -DKAFKA_ASIO_ENABLE=OFF -DCHAOS_VME=OFF -DCHAOS_VERSION_MAJOR="$CI_COMMIT_REF_NAME.$CHAOS_LIB_HASH.$REVNAME ($CHAOS_LAST_TAG)" -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 -DCHAOS_VERSION_MINOR="CI_JOB_STAGE.$CI_COMMIT_SHA" . -DCHAOS_STATIC=ON -DCHAOS_BUILD_ID=${CI_PIPELINE_ID} -DCHAOS_TARGET=arm-linux-2.6 -DCHAOS_CDS=OFF -DCHAOS_AGENT=OFF -DCHAOS_DRIVER_MISC=OFF -DCHAOS_DRIVER_CCALT=OFF -DCDSLIB=OFF -DCHAOS_MDS=OFF -DCHAOS_WAN=OFF -DCHAOS_EXAMPLES=OFF -DCHAOS_ENABLE_C11=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR +# - if ! make -j 4 install |& tee $INSTALL_DIR/bundle.compilation.log;then tar cfz compilation.tar.gz `find . -name "*.log"` $INSTALL_DIR/bundle.compilation.log;exit 1;fi +# # - arm-infn-linux-gnueabi-strip `find $INSTALL_DIR/bin/ -type f` +# # - arm-infn-linux-gnueabi-strip `find $INSTALL_DIR/lib/ -name "*.a" -type f` +# - tar cfz $DISTRIB_NAME.tar.gz -C $INSTALL_DIR/.. chaos-distrib +# - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5 +# # - scp $DISTRIB_NAME.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME.md5 +# # - scp $DISTRIB_NAME.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/arm/latest-$CI_JOB_NAME.tar.gz" +# # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/arm/$NIGHTLY_NAME.md5 /var/www/html/binary/chaos/nightly/arm/latest-$CI_JOB_NAME.tar.gz.md5" + +# artifacts: +# name: "$DISTRIB_NAME.tar.gz" +# paths: +# - ./*.tar.gz +# expire_in: 7 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "build_arm_linux26" +# - $BUILD_DISTRIBUTION == null + + + +# ubuntu1804_test_x86_64: +# stage: test +# retry: 2 +# tags: +# - run +# # - shared +# dependencies: +# - ubuntu1804_x86_64 + +# variables: +# ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:9092,INTERNAL://localhost:9093' +# LISTENERS: 'PLAINTEXT://0.0.0.0:9092,INTERNAL://0.0.0.0:9093' +# SECURITY_PROTOCOL_MAP: 'PLAINTEXT:PLAINTEXT,INTERNAL:PLAINTEXT' +# LOG_RETENTION_HOURS: 1 +# AUTO_CREATE_TOPICS_ENABLE: 'true' +# INTER_BROKER: 'INTERNAL' +# MAX_MESSAGE_BYTES: 16048588 +# MESSAGE_MAX_BYTES: 16048588 +# REPLICA_FETCH_MAX_BYTES: 16048588 + +# services: +# - name: couchbase/server:community-5.0.1 +# alias: couchbase +# - name: mongo:3.6 +# alias: mongo +# - name: michelo/kafka:2.6 +# alias: kafka +# - name: influxdb +# alias: influxdb + +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804 +# script: +# - npm install -g jchaos +# - rm -rf /usr/local/chaos/chaos-distrib +# - tar xfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos/ +# - cp -r chaos_bundle_tools/* /usr/local/chaos/chaos-distrib/tools/ +# - mkdir -p /tmp/OBJECT_STORAGE +# - git clone https://baltig.infn.it/chaos-lnf-control/chaos_dashboard.git -b $CI_COMMIT_REF_NAME --recurse-submodules +# - rm -rf /usr/local/chaos/chaos-distrib/html;mkdir /usr/local/chaos/chaos-distrib/html;cp -r chaos_dashboard /usr/local/chaos/chaos-distrib/html/ +# - $INSTALL_DIR/tools/dbinit.sh couchbase mongo +# - if [ -n "$USE_MDS_CONFIG" ];then echo "* Using $USE_MDS_CONFIG" ; cp $USE_MDS_CONFIG $INSTALL_DIR/etc/mds.cfg;fi +# - source $INSTALL_DIR/chaos_env.sh +# - $INSTALL_DIR/bin/TestFramework --direct-io-impl ZMQ --rpc-server-impl ZMQ +# - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;echo "* retrying test in debug mode";$INSTALL_DIR/tools/dbinit.sh couchbase mongo;export CHAOS_DEBUG_CMD_TOOL="gdb";if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-debug.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;echo "* retrying test in sanitize mode";if ! CHAOS_SERVICE_ENV="LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.5" $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-sanitize.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;exit 1;fi;fi;fi +# # - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files; test 1 == 2;fi +# - $INSTALL_DIR/tools/chaos_services.sh stop +# - tar cfz $DISTRIB_NAME-log-ok.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files +# artifacts: +# name: "log.tar.gz" +# paths: +# - ./*-log*.tar.gz +# expire_in: 3 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "ubuntu1804_x86_64" +# - $BUILD_DISTRIBUTION == null +# except: +# variables: +# - $SKIP_TEST + +ubuntu2004_test_x86_64: + stage: test + retry: 2 + tags: + - run +# - shared + dependencies: + - ubuntu2004_x86_64 + + variables: + ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:9092,INTERNAL://localhost:9093' + LISTENERS: 'PLAINTEXT://0.0.0.0:9092,INTERNAL://0.0.0.0:9093' + SECURITY_PROTOCOL_MAP: 'PLAINTEXT:PLAINTEXT,INTERNAL:PLAINTEXT' + LOG_RETENTION_HOURS: 1 + AUTO_CREATE_TOPICS_ENABLE: 'true' + INTER_BROKER: 'INTERNAL' + MAX_MESSAGE_BYTES: 16048588 + MESSAGE_MAX_BYTES: 16048588 + REPLICA_FETCH_MAX_BYTES: 16048588 + + services: + - name: couchbase/server:community-5.0.1 + alias: couchbase + - name: mongo:3.6 + alias: mongo + - name: michelo/kafka:2.6 + alias: kafka + - name: influxdb + alias: influxdb + + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2004 + script: + - npm install -g jchaos + - rm -rf /usr/local/chaos/chaos-distrib + - tar xfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos/ + - cp -r chaos_bundle_tools/* /usr/local/chaos/chaos-distrib/tools/ + - git clone https://baltig.infn.it/chaos-lnf-control/chaos_dashboard.git -b $CI_COMMIT_REF_NAME --recurse-submodules + - rm -rf /usr/local/chaos/chaos-distrib/html;mkdir /usr/local/chaos/chaos-distrib/html;cp -r chaos_dashboard /usr/local/chaos/chaos-distrib/html/ + - $INSTALL_DIR/tools/dbinit.sh couchbase mongo + - if [ -n "$USE_MDS_CONFIG" ];then echo "* Using $USE_MDS_CONFIG" ; cp $USE_MDS_CONFIG $INSTALL_DIR/etc/mds.cfg;fi + - source $INSTALL_DIR/chaos_env.sh + - mkdir -p /tmp/OBJECT_STORAGE + - $INSTALL_DIR/bin/TestFramework --direct-io-impl ZMQ --rpc-server-impl ZMQ + - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;echo "* retrying test in debug mode";$INSTALL_DIR/tools/dbinit.sh couchbase mongo;export CHAOS_DEBUG_CMD_TOOL="gdb";if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-debug.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;echo "* retrying test in sanitize mode";if ! CHAOS_SERVICE_ENV="LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.5" $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-sanitize.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;exit 1;fi;fi;fi +# - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files; test 1 == 2;fi + - $INSTALL_DIR/tools/chaos_services.sh stop + - tar cfz $DISTRIB_NAME-log-ok.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files + artifacts: + name: "log.tar.gz" + paths: + - ./*-log*.tar.gz + expire_in: 3 day + when: always + only: + variables: + - $BUILD_DISTRIBUTION == "ubuntu2004_x86_64" + - $BUILD_DISTRIBUTION == null + except: + variables: + - $SKIP_TEST + +# ubuntu1804_test_profile_x86_64: +# stage: test +# tags: +# - shared +# dependencies: +# - ubuntu1804_profile_x86_64 +# variables: +# ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:9092,INTERNAL://localhost:9093' +# LISTENERS: 'PLAINTEXT://0.0.0.0:9092,INTERNAL://0.0.0.0:9093' +# SECURITY_PROTOCOL_MAP: 'PLAINTEXT:PLAINTEXT,INTERNAL:PLAINTEXT' +# LOG_RETENTION_BYTES: 10737418240 +# AUTO_CREATE_TOPICS_ENABLE: 'true' +# INTER_BROKER: 'INTERNAL' + +# services: +# - name: couchbase/server:community-5.0.1 +# alias: couchbase +# - name: mongo:3.6 +# alias: mongo +# - name: michelo/kafka:2.6 +# alias: kafka +# - name: influxdb +# alias: influxdb + +# image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804 +# script: +# - npm install -g jchaos +# - rm -rf /usr/local/chaos/chaos-distrib +# - tar xfz $DISTRIB_NAME.tar.gz -C / +# - $INSTALL_DIR/tools/dbinit.sh couchbase mongo; +# # - repo init -q --no-clone-bundle -u https://amichelo:$KBS_SECRET_GITREAD@baltig.infn.it/chaos-lnf-control/chaos_repo_bundle.git -b $CI_COMMIT_REF_NAME +# # - repo sync +# # - cp -r tools $INSTALL_DIR +# # - cp -r common/test/js $INSTALL_DIR/tools/test/ +# - export PPROF_PATH=$INSTALL_DIR/bin/pprof; +# - source $INSTALL_DIR/chaos_env.sh +# - if [ -n "$USE_MDS_CONFIG" ];then echo "* Using $USE_MDS_CONFIG" ; cp $USE_MDS_CONFIG $INSTALL_DIR/etc/mds.cfg;fi +# - HEAPCHECK=normal; LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libtcmalloc.so $INSTALL_DIR/bin/TestFramework --direct-io-impl ZMQ --rpc-server-impl ZMQ; +# # - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files ;exit 1;fi +# - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files; test 1 == 2;fi +# - $INSTALL_DIR/tools/chaos_services.sh stop +# - mkdir -p $INSTALL_DIR/log/html +# - gcovr -r . --html --html-details -o $INSTALL_DIR/log/html/coverage.html -v > $INSTALL_DIR/log/gcovr.log +# - tar cfz $DISTRIB_NAME-profile-log-ok.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files +# allow_failure: true +# artifacts: +# name: "log.tar.gz" +# paths: +# - ./*-log*.tar.gz +# expire_in: 3 day +# when: always +# only: +# variables: +# - $BUILD_DISTRIBUTION == "ubuntu1804_profile_x86_64" +# - $BUILD_DISTRIBUTION == null +# except: +# variables: +# - $SKIP_TEST + + +centos7_test_x86_64: + stage: test + retry: 2 + tags: +# - shared + - run + dependencies: + - centos7_x86_64 + + variables: + ADVERTISED_LISTENERS: 'PLAINTEXT://kafka:9092,INTERNAL://localhost:9093' + LISTENERS: 'PLAINTEXT://0.0.0.0:9092,INTERNAL://0.0.0.0:9093' + SECURITY_PROTOCOL_MAP: 'PLAINTEXT:PLAINTEXT,INTERNAL:PLAINTEXT' + LOG_RETENTION_HOURS: 1 + AUTO_CREATE_TOPICS_ENABLE: 'true' + INTER_BROKER: 'INTERNAL' + MAX_MESSAGE_BYTES: 16048588 + MESSAGE_MAX_BYTES: 16048588 + REPLICA_FETCH_MAX_BYTES: 16048588 + + services: + - name: couchbase/server:community-5.0.1 + alias: couchbase + - name: mongo:3.6 + alias: mongo + - name: michelo/kafka:2.6 + alias: kafka + - name: influxdb + alias: influxdb + + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:centos7 + script: + - npm install -g jchaos + - rm -rf /usr/local/chaos/chaos-distrib + - mkdir -p /tmp/OBJECT_STORAGE + - tar xfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos/ + - cp -r chaos_bundle_tools/* /usr/local/chaos/chaos-distrib/tools/ + - git clone https://baltig.infn.it/chaos-lnf-control/chaos_dashboard.git -b $CI_COMMIT_REF_NAME --recurse-submodules + - rm -rf /usr/local/chaos/chaos-distrib/html;mkdir /usr/local/chaos/chaos-distrib/html;cp -r chaos_dashboard /usr/local/chaos/chaos-distrib/html/ + - $INSTALL_DIR/tools/dbinit.sh couchbase mongo + - source $INSTALL_DIR/chaos_env.sh + - if [ -n "$USE_MDS_CONFIG" ];then echo "* Using $USE_MDS_CONFIG" ; cp $USE_MDS_CONFIG $INSTALL_DIR/etc/mds.cfg;fi + - if ! $INSTALL_DIR/bin/TestFramework --direct-io-impl ZMQ --rpc-server-impl ZMQ;then export HEAPCHECK=strict; echo "*retrying with heap check"; $INSTALL_DIR/bin/TestFramework --direct-io-impl ZMQ --rpc-server-impl ZMQ; exit 1;fi + - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then export HEAPCHECK=normal; tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;echo "* retrying test in debug mode";$INSTALL_DIR/tools/dbinit.sh couchbase mongo;export CHAOS_DEBUG_CMD_TOOL="gdb";if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-debug.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files;exit 1;fi;fi +# - if ! $INSTALL_DIR/tools/chaos_test.sh -k -d $INSTALL_DIR/tools/test;then tar cfvz $DISTRIB_NAME-log-bad.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files; test 1 == 2;fi + - $INSTALL_DIR/tools/chaos_services.sh stop + - tar cfz $DISTRIB_NAME-log-ok.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files + artifacts: + name: "log.tar.gz" + paths: + - ./*-log*.tar.gz + expire_in: 3 day + when: always + only: + variables: + - $BUILD_DISTRIBUTION == "centos7_x86_64" + - $BUILD_DISTRIBUTION == null + except: + variables: + - $SKIP_TEST + + +deploy_stage: + tags: + - lnf + dependencies: + - ubuntu2004_x86_64 +# - ubuntu1804_x86_64 + - centos7_x86_64 +# - build_i686_dynamic_linux26 +# - build_arm_linux26 +# - build_armhf_dynamic +# - build_armhf_static +# - build_i686_static_linux26 + stage: deploy + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804 + script: +# - scripts/accept_merge_request.sh $CI_COMMIT_REF_NAME + - OUTPUT_REV_DIR=$CI_COMMIT_REF_NAME +# - if [ $CI_COMMIT_REF_NAME == "master" ];then OUTPUT_REV_DIR="production";fi + - if [ -e chaos-osx10-distrib.tar.gz ];then scp chaos-osx10-distrib.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/osx/;fi +# - scp chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/18.04/chaos-distrib.$TAR_NAME_POSTFIX.tar.gz + - scp chaos-distrib-$REVNAME-ubuntu-20.04-x86_64.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/20.04/chaos-distrib.$TAR_NAME_POSTFIX.tar.gz + - scp chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/centos/7/chaos-distrib.$TAR_NAME_POSTFIX.tar.gz +# - scp chaos-distrib-$REVNAME-build_arm_linux26.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/arm/chaos-distrib-$REVNAME-build_arm_linux26.tar.gz +# - scp chaos-distrib-$REVNAME-build_armhf_dynamic.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/arm/chaos-distrib-$REVNAME-build_armhf_dynamic.tar.gz +# - scp chaos-distrib-$REVNAME-build_armhf_static.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/arm/chaos-distrib-$REVNAME-build_armhf_static.tar.gz +# - scp chaos-distrib-$REVNAME-build_i686_dynamic_linux26.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/i686/chaos-distrib-$REVNAME-build_i686_dynamic_linux26.tar.gz +# - scp chaos-distrib-$REVNAME-build_i686_static_linux26.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/i686/chaos-distrib-$REVNAME-build_i686_static_linux26.tar.gz + - if [ "$DEPLOY_DESTINATION" == "development" ];then echo "deploying in LNF DEVELOPMENT infrastructure"; tar xfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos;cd $DISTRIB_PREFIX;source chaos_env.sh;./tools/chaos_deploy.sh -c tools/config/lnf/test/chaos-infrastructure.txt -i /usr/local/chaos/chaos-distrib;fi + - if [ "$DEPLOY_DESTINATION" == "production" ];then echo "deploying in LNF MASTER infrastructure"; tar xfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos;cd $DISTRIB_PREFIX;source chaos_env.sh;./tools/chaos_deploy.sh -c tools/config/lnf/production/chaos-infrastructure.txt -i /usr/local/chaos/chaos-distrib;cd tools/config/lnf/production; ./update_luminometer.sh;fi + - curl -X POST -F token="81913e63e951cc80ebf0095440d432" -F "ref=experimental" -F "variables[DEPLOY_DESTINATION]=$OUTPUT_REV_DIR" https://baltig.infn.it/api/v4/projects/1443/trigger/pipeline + # - md5sum chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz > chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz.md5 + - md5sum chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz > chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz.md5 + - md5sum chaos-distrib-$REVNAME-ubuntu-20.04-x86_64.tar.gz > chaos-distrib-$REVNAME-ubuntu-20.04-x86_64.tar.gz.md5 +# - scp chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/18.04/latest.tar.md5 + - scp chaos-distrib-$REVNAME-ubuntu-20.04-x86_64.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/20.04/latest.tar.md5 + - scp chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/centos/7/latest.tar.md5 + - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/20.04/chaos-distrib.$TAR_NAME_POSTFIX.tar.gz /var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/20.04/latest.tar.gz" +# - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/18.04/chaos-distrib.$TAR_NAME_POSTFIX.tar.gz /var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/ubuntu/18.04/latest.tar.gz" + - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/centos/7/chaos-distrib.$TAR_NAME_POSTFIX.tar.gz /var/www/html/binary/chaos/$OUTPUT_REV_DIR/$ARCH/centos/7/latest.tar.gz" + + only: + variables: + - $BUILD_DISTRIBUTION == null + +pages: + stage: publish + dependencies: + - centos7_test_x86_64 +# - ubuntu1804_test_x86_64 + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2004 + script: + - mkdir -p perf/ubuntu1404 perf/ubuntu1604 perf/centos7 perf/ubuntu1804 perf/ubuntu1804-profile public + - ls -latr +# - if [ -e chaos-distrib-$REVNAME-ubuntu-18.04-x86_64-log-ok.tar.gz ]; then tar xfvz chaos-distrib-$REVNAME-ubuntu-18.04-x86_64-log-ok.tar.gz -C perf/ubuntu1804;mv perf/ubuntu1804/log/*.png perf/ubuntu1804;mv perf/ubuntu1804/log/html/* perf/ubuntu1804;rm -rf perf/ubuntu1804/log;fi + - if [ -e chaos-distrib-$REVNAME-centos-7-x86_64-log-ok.tar.gz ]; then tar xfvz chaos-distrib-$REVNAME-centos-7-x86_64-log-ok.tar.gz -C perf/centos7;mv perf/centos7/log/*.png perf/centos7/;mv perf/centos7/log/html/* perf/centos7/;rm -rf perf/centos7/log;fi + - mv perf public + - git clone git@baltig.infn.it:chaos-lnf-control/chaos_bundle_tools.git -b $CI_COMMIT_REF_NAME + - ./chaos_bundle_tools/images2html.sh public performace > public/index.html + allow_failure: true + artifacts: + paths: + - 'public' + expire_in: 60 day + only: + variables: + - $BUILD_DISTRIBUTION == null + +deploy_nightly: + tags: + - lnf + dependencies: +# - ubuntu1804_x86_64 + - ubuntu2004_x86_64 + - centos7_x86_64 +# - build_i686_dynamic_linux26 +# - build_arm_linux26 +# - build_armhf_dynamic +# - build_armhf_static +# - build_i686_static_linux26 + stage: deploy_nightly + image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2004 + script: + - if [ -e chaos-osx10-distrib.tar.gz ];then scp chaos-osx10-distrib.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/osx/$NIGHTLY_NAME;fi + - md5sum chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz > chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz.md5 + - scp chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz.md5 chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/centos/7/latest.tar.md5 +# - scp chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/ubuntu/ +# /$NIGHTLY_NAME + - scp chaos-distrib-$REVNAME-ubuntu-20.04-x86_64.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/ubuntu/20.04/$NIGHTLY_NAME + - scp chaos-distrib-$REVNAME-centos-7-x86_64.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/$ARCH/centos/7/$NIGHTLY_NAME + # - scp chaos-distrib-$REVNAME-build_arm_linux26.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/chaos-distrib-$REVNAME-build_arm_linux26.tar.gz + # - scp chaos-distrib-$REVNAME-build_armhf_dynamic.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/chaos-distrib-$REVNAME-build_armhf_dynamic.tar.gz + # - scp chaos-distrib-$REVNAME-build_armhf_static.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/arm/chaos-distrib-$REVNAME-build_armhf_static.tar.gz + # - scp chaos-distrib-$REVNAME-build_i686_dynamic_linux26.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/i686/chaos-distrib-$REVNAME-build_i686_dynamic_linux26.tar.gz + # - scp chaos-distrib-$REVNAME-build_i686_static_linux26.tar.gz chaosweb@opensource.lnf.infn.it:/var/www/html/binary/chaos/nightly/i686/chaos-distrib-$REVNAME-build_i686_static_linux26.tar.gz + - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/$ARCH/ubuntu/20.04/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/$ARCH/ubuntu/20.04/latest.tar.gz" + # - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/$ARCH/ubuntu/18.04/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/$ARCH/ubuntu/18.04/latest.tar.gz" + - ssh chaosweb@opensource.lnf.infn.it "ln -sf /var/www/html/binary/chaos/nightly/$ARCH/centos/7/$NIGHTLY_NAME /var/www/html/binary/chaos/nightly/$ARCH/centos/7/latest.tar.gz" + + allow_failure: true + only: + variables: + - $CI_COMMIT_REF_NAME == "experimental" -- GitLab