Skip to content
Snippets Groups Projects
.gitlab-ci.yml 47.6 KiB
Newer Older
stages:
    - build
Andrea Michelotti's avatar
Andrea Michelotti committed
    - deploy_nightly
Andrea Michelotti's avatar
Andrea Michelotti committed
    - test
Andrea Michelotti's avatar
Andrea Michelotti committed
    - publish
Andrea Michelotti's avatar
Andrea Michelotti committed
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
Andrea Michelotti's avatar
Andrea Michelotti committed
  - 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
Claudio Bisegni's avatar
Claudio Bisegni committed
  - if [ -z "$TEST_BRANCH" ]; then export TEST_BRANCH=$CI_COMMIT_REF_NAME;fi
Andrea Michelotti's avatar
Andrea Michelotti committed
  - if [ "$SKIP_TEST" == "true" ];then REVNAME="UNTESTED"; else REVNAME=$(basename $TEST_BRANCH); fi
Claudio Bisegni's avatar
Claudio Bisegni committed
  - echo "[$CI_RUNNER_DESCRIPTION] $SYS $CI_JOB_NAME Working directory:$PWD tag $CI_COMMIT_REF_NAME CPUS:$NPROC framework in branch $TEST_BRANCH"
Andrea Michelotti's avatar
Andrea Michelotti committed
  - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export DISTRIB_NAME=chaos-distrib-$REV_POSTFIX
  - export DISTRIB_PREFIX=/usr/local/chaos/chaos-distrib
  - export INSTALL_DIR=$DISTRIB_PREFIX
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export CHAOS_MDS=kafka:9092
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export CHAOS_INTERFACE=lo
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export CHAOS_LIVE_SERVERS=couchbase
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export CHAOS_LOG_SERVERS=influxdb:8086  
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export CHAOS_DB_SERVERS=mongo
Andrea Michelotti's avatar
Andrea Michelotti committed
  - export PATH=/usr/local/chaos/qt-56/bin:$PATH
Andrea Michelotti's avatar
Andrea Michelotti committed
  - echo "Running on $ID $VERSION_ID $ARCH (distrib name '$DISTRIB_NAME') $REVNAME"
Andrea Michelotti's avatar
Andrea Michelotti committed
  - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
  - 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;
Andrea Michelotti's avatar
Andrea Michelotti committed
  - 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
Andrea Michelotti's avatar
Andrea Michelotti committed

#    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
Andrea Michelotti's avatar
Andrea Michelotti committed
    
#     - 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
Andrea Michelotti's avatar
Andrea Michelotti committed

ubuntu1804_x86_64:
  stage: build
Andrea Michelotti's avatar
Andrea Michelotti committed
  tags:  
    - shared
  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804
  script:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - npm install -g jchaos
Andrea Michelotti's avatar
Andrea Michelotti committed
    - repo sync -n chaos_dashboard.git -j1 --fail-fast
Andrea Michelotti's avatar
Andrea Michelotti committed
    - repo sync   
Andrea Michelotti's avatar
Andrea Michelotti committed
    - if [ -e CACHE ]; then mv CACHE chaosframework/config;fi
Andrea Michelotti's avatar
Andrea Michelotti committed
    - if [ "$TEST_BRANCH" != "$CI_COMMIT_REF_NAME" ]; then ./chaosframework/tools/chaos_git.sh -c $TEST_BRANCH;fi    
    - cd chaosframework
Andrea Michelotti's avatar
Andrea Michelotti committed
    - GITHASH=`git log -n 1 --pretty="%h"`
    - GITTAG=`git describe --abbrev=0`
Andrea Michelotti's avatar
Andrea Michelotti committed
    - echo -e "GITHASH:$GITHASH\nGITTAG:$GITTAG" >> $INSTALL_DIR/VERSION
Andrea Michelotti's avatar
Andrea Michelotti committed
    - export CHAOS_LIB_HASH=`git log -n 1 --pretty="%h"`;export CHAOS_LAST_TAG=`git describe --abbrev=0`;cd -;
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd -
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - ./tools/strip_symbols.sh $INSTALL_DIR
    - tar cfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos chaos-distrib
Andrea Michelotti's avatar
Andrea Michelotti committed
    - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5


  artifacts:
    name: "$DISTRIB_NAME.tar.gz"
    paths:
      - ./*.tar.gz
Andrea Michelotti's avatar
Andrea Michelotti committed
    expire_in: 7 day
    when: always
  only:
    variables:
      - $BUILD_DISTRIBUTION == "ubuntu1804_x86_64"
      - $BUILD_DISTRIBUTION == null
Andrea Michelotti's avatar
Andrea Michelotti committed

ubuntu2004_x86_64:
  stage: build
  tags:  
    - shared
  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2004
  script:
    - npm install -g jchaos
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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 -;
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd -
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cd html/chaos_dashboard/js/jchaos;git checkout $CI_COMMIT_REF_NAME;cd -
Andrea Michelotti's avatar
Andrea Michelotti committed
    # -DCMAKE_BUILD_TYPE=Release Debug, Release, RelWithDebInfo and MinSizeRel
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - ./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
Andrea Michelotti's avatar
Andrea Michelotti committed
    expire_in: 7 day
    when: always
  only:
    variables:
      - $BUILD_DISTRIBUTION == "ubuntu2004_x86_64"
      - $BUILD_DISTRIBUTION == null

Andrea Michelotti's avatar
Andrea Michelotti committed
ubuntu2204_x86_64:
  stage: build
  tags:  
    - shared
  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2204
  script:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - npm install jchaos
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - if ! cmake -DCMAKE_CXX_COMPILER="g++-9" -DCMAKE_CXX_COMPILER="gcc-9"  -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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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 == "ubuntu2204_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
Andrea Michelotti's avatar
Andrea Michelotti committed
#     - 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 -    
Andrea Michelotti's avatar
Andrea Michelotti committed
#     - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
#     expire_in: 7 day
#     when: always
#   only:
#     variables:
#       - $BUILD_DISTRIBUTION == "ubuntu1804_profile_x86_64"
#       - $BUILD_DISTRIBUTION == null
Andrea Michelotti's avatar
Andrea Michelotti committed
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'
Andrea Michelotti's avatar
Andrea Michelotti committed
    LOG_RETENTION_HOURS: 1
Andrea Michelotti's avatar
Andrea Michelotti committed
    AUTO_CREATE_TOPICS_ENABLE: 'true'
    INTER_BROKER: 'INTERNAL'
Andrea Michelotti's avatar
Andrea Michelotti committed
    MAX_MESSAGE_BYTES: 16048588
    MESSAGE_MAX_BYTES: 16048588
    REPLICA_FETCH_MAX_BYTES: 16048588
Andrea Michelotti's avatar
Andrea Michelotti committed
  stage: build
  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:centos7
Andrea Michelotti's avatar
Andrea Michelotti committed
  script:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - npm install -g jchaos
    - repo sync -n chaos_dashboard.git -j1 --fail-fast
    - repo sync   
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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    
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cd chaosframework
Andrea Michelotti's avatar
Andrea Michelotti committed
    - GITHASH=`git log -n 1 --pretty="%h"`
    - GITTAG=`git describe --abbrev=0`
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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 -;
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cd html/chaos_dashboard/;./tag.sh $CI_COMMIT_REF_NAME;cd -
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cd html/chaos_dashboard/js/jchaos;git checkout $CI_COMMIT_REF_NAME;cd -
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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=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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - tar cfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos chaos-distrib
Andrea Michelotti's avatar
Andrea Michelotti committed
    - md5sum $DISTRIB_NAME.tar.gz > $DISTRIB_NAME.tar.gz.md5
Andrea Michelotti's avatar
Andrea Michelotti committed

Andrea Michelotti's avatar
Andrea Michelotti committed
  artifacts:
    name: "$DISTRIB_NAME.tar.gz"
    paths:
      - ./*.tar.gz
Andrea Michelotti's avatar
Andrea Michelotti committed
    expire_in: 7 day
Andrea Michelotti's avatar
Andrea Michelotti committed
    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
Andrea Michelotti's avatar
Andrea Michelotti committed
  tags:      
Andrea Michelotti's avatar
Andrea Michelotti committed
   - 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'
Andrea Michelotti's avatar
Andrea Michelotti committed
    LOG_RETENTION_HOURS: 1
Andrea Michelotti's avatar
Andrea Michelotti committed
    AUTO_CREATE_TOPICS_ENABLE: 'true'
    INTER_BROKER: 'INTERNAL'
Andrea Michelotti's avatar
Andrea Michelotti committed
    MAX_MESSAGE_BYTES: 16048588
    MESSAGE_MAX_BYTES: 16048588
    REPLICA_FETCH_MAX_BYTES: 16048588
  services:
  - name: couchbase/server:community-5.0.1
    alias: couchbase
Andrea Michelotti's avatar
Andrea Michelotti committed
  - name: mongo:3.6
    alias: mongo
  - name: michelo/kafka:2.6
Andrea Michelotti's avatar
Andrea Michelotti committed
    alias: kafka
  - name: influxdb
    alias: influxdb

  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804
  script:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - npm install -g jchaos  
    - rm -rf /usr/local/chaos/chaos-distrib  
    - tar xfz $DISTRIB_NAME.tar.gz -C /usr/local/chaos/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cp -r chaos_bundle_tools/* /usr/local/chaos/chaos-distrib/tools/
    - mkdir -p /tmp/OBJECT_STORAGE
Andrea Michelotti's avatar
Andrea Michelotti committed
    - git clone https://baltig.infn.it/chaos-lnf-control/chaos_dashboard.git -b $CI_COMMIT_REF_NAME --recurse-submodules
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - $INSTALL_DIR/tools/dbinit.sh couchbase mongo
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - tar cfz $DISTRIB_NAME-log-ok.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files
  artifacts:
    name: "log.tar.gz"
Andrea Michelotti's avatar
Andrea Michelotti committed
    paths:
    expire_in: 3 day
Andrea Michelotti's avatar
Andrea Michelotti committed
    when: always
  only:
    variables:
      - $BUILD_DISTRIBUTION == "ubuntu1804_x86_64"
      - $BUILD_DISTRIBUTION == null
Andrea Michelotti's avatar
Andrea Michelotti committed
  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'
Andrea Michelotti's avatar
Andrea Michelotti committed
    LOG_RETENTION_HOURS: 1
    AUTO_CREATE_TOPICS_ENABLE: 'true'
    INTER_BROKER: 'INTERNAL'
Andrea Michelotti's avatar
Andrea Michelotti committed
    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/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cp -r chaos_bundle_tools/* /usr/local/chaos/chaos-distrib/tools/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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 /
Andrea Michelotti's avatar
Andrea Michelotti committed
#     - $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
Andrea Michelotti's avatar
Andrea Michelotti committed
  tags:
Andrea Michelotti's avatar
Andrea Michelotti committed
#    - 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'
Andrea Michelotti's avatar
Andrea Michelotti committed
    LOG_RETENTION_HOURS: 1
Andrea Michelotti's avatar
Andrea Michelotti committed
    AUTO_CREATE_TOPICS_ENABLE: 'true'
    INTER_BROKER: 'INTERNAL'
Andrea Michelotti's avatar
Andrea Michelotti committed
    MAX_MESSAGE_BYTES: 16048588
    MESSAGE_MAX_BYTES: 16048588
    REPLICA_FETCH_MAX_BYTES: 16048588
  - name: couchbase/server:community-5.0.1
    alias: couchbase
Andrea Michelotti's avatar
Andrea Michelotti committed
  - name: mongo:3.6
  - name: michelo/kafka:2.6
Andrea Michelotti's avatar
Andrea Michelotti committed
    alias: kafka
  - name: influxdb
    alias: influxdb

  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:centos7
  script:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - cp -r chaos_bundle_tools/* /usr/local/chaos/chaos-distrib/tools/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - git clone https://baltig.infn.it/chaos-lnf-control/chaos_dashboard.git -b $CI_COMMIT_REF_NAME --recurse-submodules
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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/
Andrea Michelotti's avatar
Andrea Michelotti committed
    - $INSTALL_DIR/tools/dbinit.sh couchbase mongo
    - source $INSTALL_DIR/chaos_env.sh
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - tar cfz $DISTRIB_NAME-log-ok.tar.gz -C /usr/local/chaos/chaos-distrib log ini_files
Andrea Michelotti's avatar
Andrea Michelotti committed
  artifacts:
    name: "log.tar.gz"
Andrea Michelotti's avatar
Andrea Michelotti committed
    paths:
Andrea Michelotti's avatar
Andrea Michelotti committed
    expire_in: 3 day
    when: always
Claudio Bisegni's avatar
Claudio Bisegni committed
      - $BUILD_DISTRIBUTION == "centos7_x86_64"
Andrea Michelotti's avatar
Andrea Michelotti committed
  except:
    variables:
      - $SKIP_TEST
    - ubuntu2004_x86_64
Andrea Michelotti's avatar
Andrea Michelotti committed
    - ubuntu1804_x86_64
Andrea Michelotti's avatar
Andrea Michelotti committed
    - centos7_x86_64
#    - build_i686_dynamic_linux26
#    - build_arm_linux26
#    - build_armhf_dynamic
#    - build_armhf_static    
#    - build_i686_static_linux26
  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:1804
Andrea Michelotti's avatar
Andrea Michelotti committed
#    - scripts/accept_merge_request.sh $CI_COMMIT_REF_NAME
    - OUTPUT_REV_DIR=$CI_COMMIT_REF_NAME
Andrea Michelotti's avatar
Andrea Michelotti committed
#    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - md5sum chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz > chaos-distrib-$REVNAME-ubuntu-18.04-x86_64.tar.gz.md5
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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"
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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"
Andrea Michelotti's avatar
Andrea Michelotti committed

Andrea Michelotti's avatar
Andrea Michelotti committed
pages:
Andrea Michelotti's avatar
Andrea Michelotti committed
  stage: publish
    - centos7_test_x86_64
Andrea Michelotti's avatar
Andrea Michelotti committed
    - ubuntu1804_test_x86_64
  image: baltig.infn.it:4567/chaos-lnf-control/chaos_bundle_compilation:2004
Andrea Michelotti's avatar
Andrea Michelotti committed
  script:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - mkdir -p perf/ubuntu1404 perf/ubuntu1604 perf/centos7 perf/ubuntu1804 perf/ubuntu1804-profile public
Andrea Michelotti's avatar
Andrea Michelotti committed
    - ls -latr
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - git clone git@baltig.infn.it:chaos-lnf-control/chaos_bundle_tools.git -b $CI_COMMIT_REF_NAME
Andrea Michelotti's avatar
Andrea Michelotti committed
    - ./chaos_bundle_tools/images2html.sh public performace > public/index.html
Andrea Michelotti's avatar
Andrea Michelotti committed
  allow_failure: true
Andrea Michelotti's avatar
Andrea Michelotti committed
  artifacts:
    paths:
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 'public'
deploy_nightly:
  tags:
    - lnf
  dependencies:
#    - ubuntu1804_x86_64
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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
Andrea Michelotti's avatar
Andrea Michelotti committed
    - 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"