diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 76773e9..b58edde 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,115 +1,150 @@ .tags_template: tags: &tags_def - docker stages: - minimal_compile - - extended_tests - different_compile + - clean_code - publish variables: HEJ_Install_DIR: tmp_HEJ/HEJ_installed HEJ_build_DIR: tmp_HEJ/build_HEJ FOG_build_DIR: tmp_HEJ/build_FOG after_script: - date .HEJ_compile: tags: *tags_def before_script: - date - source /cvmfs/pheno.egi.eu/HEJ/HEJ_env.sh || exit 1 - export t_HEJ_Install_DIR=${PWD}/$HEJ_Install_DIR - export t_HEJ_build_DIR=${PWD}/$HEJ_build_DIR - export t_HEJ_DIR=${PWD} - mkdir -p ${t_HEJ_build_DIR} - cd ${t_HEJ_build_DIR} - cmake ${t_HEJ_DIR} -DCMAKE_BUILD_TYPE=DEBUG -DCMAKE_INSTALL_PREFIX=${t_HEJ_Install_DIR} - make -j 8 Minimal_setup: stage: minimal_compile extends: .HEJ_compile image: hejdock/hepenv script: - make test FOG: - stage: extended_tests + stage: minimal_compile extends: .HEJ_compile image: hejdock/hepenv script: - date # install HEJ - make install # setup env - export LD_LIBRARY_PATH=${t_HEJ_Install_DIR}/lib:${LD_LIBRARY_PATH} - export PATH=${t_HEJ_Install_DIR}/bin:${PATH} - export t_FOG_build_DIR=${PWD}/$FOG_build_DIR - export t_FOG_DIR=${t_HEJ_DIR}/FixedOrderGen # compile - mkdir -p ${t_FOG_build_DIR} - cd ${t_FOG_build_DIR} - cmake ${t_FOG_DIR} -DCMAKE_BUILD_TYPE=DEBUG - make -j 8 - make test + rivet: stage: different_compile extends: .HEJ_compile image: hejdock/rivetenv variables: HEJ_build_DIR: tmp_HEJ/build_HEJ_rivet script: - make test - bash -c '[ -f tst.yoda ]' && echo "found rivet output" - rivet-cmphistos tst.yoda - bash -c '[ -f MC_XS_XS.dat ]' && echo "yoda not empty" QCDloop: stage: different_compile extends: .HEJ_compile image: hejdock/qcdloopenv variables: HEJ_build_DIR: tmp_HEJ/build_HEJ_qcd script: - make test HepMC3: stage: different_compile extends: .HEJ_compile image: hejdock/hepmc3env variables: HEJ_build_DIR: tmp_HEJ/build_HEJ_HepMC3 script: - make test +No_tabs: + stage: clean_code + image: hejdock/git + script: + - date + - check_tabs + +No_warnings: + stage: clean_code + image: hejdock/hepenv + before_script: + - date + - source /cvmfs/pheno.egi.eu/HEJ/HEJ_env.sh || exit 1 + - export t_HEJ_Install_DIR=${PWD}/$HEJ_Install_DIR + - export t_HEJ_build_DIR=${PWD}/$HEJ_build_DIR + - export t_HEJ_DIR=${PWD} + - export LD_LIBRARY_PATH=${t_HEJ_Install_DIR}/lib:${LD_LIBRARY_PATH} + - export PATH=${t_HEJ_Install_DIR}/bin:${PATH} + - export t_FOG_build_DIR=${PWD}/$FOG_build_DIR + - export t_FOG_DIR=${t_HEJ_DIR}/FixedOrderGen + - mkdir -p ${t_HEJ_build_DIR} + - mkdir -p ${t_FOG_build_DIR} + script: + - sed -i 's/include_directories(${lhapdf/include_directories(SYSTEM ${lhapdf/g' CMakeLists.txt + - cd ${t_HEJ_build_DIR} + - cmake ${t_HEJ_DIR} -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_INSTALL_PREFIX=${t_HEJ_Install_DIR} + - make -j 8 + - make install + - cd ${t_FOG_DIR} + - sed -i 's/include_directories(${lhapdf/include_directories(SYSTEM ${lhapdf/g' CMakeLists.txt + - cd ${t_FOG_build_DIR} + - cmake ${t_FOG_DIR} -DCMAKE_CXX_FLAGS="-Werror" + - make -j 8 + .Publish: stage: publish tags: *tags_def image: hejdock/git before_script: - mkdir -p .ssh/ && echo "${SSH_KEY}" > .ssh/id_rsa && chmod 0600 .ssh/id_rsa - rm -rf ~/.ssh/id_rsa; mkdir -p ~/.ssh/ - ln -s $PWD/.ssh/id_rsa ~/.ssh/id_rsa && chmod 0600 ~/.ssh/id_rsa - ssh -T ${PUBLIC_GIT_PREFIX} -o "StrictHostKeyChecking no" || echo "added ssh" script: - git remote add public ${PUBLIC_GIT_PREFIX}${PUBLIC_GIT_POSTFIX} - git checkout $CI_COMMIT_REF_NAME - git branch - git pull - git push public - git push public --tags after_script: - rm -f /root/.ssh/id_rsa && rm -fr .ssh - git remote rm public Publish_version: extends: .Publish only: - /^v\d+\.\d+$/ except: - tags when: on_success