Page MenuHomeHEPForge

No OneTemporary

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index def6bbe..b1c1ffe 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,315 +1,319 @@
# ---------------------------------
# - General Setup -
# ---------------------------------
stages:
- build
- test
- FOG:build
- FOG:test
- clean_code
- long_test
- publish
variables:
# build directories
HEJ_BUILD_DIR: tmp_HEJ/HEJ_build
HEJ_INSTALL_DIR: tmp_HEJ/HEJ_installed
FOG_BUILD_DIR: tmp_HEJ/FOG_build
FOG_INSTALL_DIR: ${HEJ_INSTALL_DIR}
# docker images
DOCKER_BASIC: hejdock/hepenv
DOCKER_HEPMC3: hejdock/hepmc3env
DOCKER_QCDLOOP: hejdock/qcdloopenv
DOCKER_RIVET: hejdock/rivetenv
# ----------- Macros -----------
after_script:
- date
.tags_template:
tags: &tags_def
- docker
# save complete history of failed tests
.save_failure:
artifacts: &artifacts_failed
when: on_failure
untracked: true
expire_in: 3d
# ---------------------------------
# - Script Templates -
# ---------------------------------
# ----------- Build -----------
.HEJ_build:
tags: *tags_def
stage: build
before_script:
- date
- source /cvmfs/pheno.egi.eu/HEJ/HEJ_env.sh || exit 1
# prepare build
- t_HEJ_DIR=${PWD}
- t_HEJ_INSTALL_DIR=${PWD}/${HEJ_INSTALL_DIR}
- t_HEJ_BUILD_DIR=${PWD}/${HEJ_BUILD_DIR}
- 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}
script:
- make -j $(nproc --ignore=1)
- make install
artifacts:
# save build and installed folder
name: build
expire_in: 1d
paths:
- ${HEJ_INSTALL_DIR}
- ${HEJ_BUILD_DIR}
# ----------- Test -----------
.HEJ_test:
tags: *tags_def
stage: test
before_script:
- date
- source /cvmfs/pheno.egi.eu/HEJ/HEJ_env.sh || exit 1
# load HEJ
- t_HEJ_DIR=${PWD}
- t_HEJ_INSTALL_DIR=${PWD}/${HEJ_INSTALL_DIR}
- export LD_LIBRARY_PATH=${t_HEJ_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
- export PATH=${t_HEJ_INSTALL_DIR}/bin:${PATH}
- cd ${HEJ_BUILD_DIR}
- cmake ${t_HEJ_DIR} # rerun cmake to create all test configure files
script:
- ctest --output-on-failure
artifacts: *artifacts_failed
## ----------- FOG build -----------
.FOG_build:
tags: *tags_def
stage: FOG:build
before_script:
- date
- source /cvmfs/pheno.egi.eu/HEJ/HEJ_env.sh || exit 1
# load HEJ
- t_HEJ_INSTALL_DIR=${PWD}/${HEJ_INSTALL_DIR}
- export LD_LIBRARY_PATH=${t_HEJ_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
- export PATH=${t_HEJ_INSTALL_DIR}/bin:${PATH}
# prepare build
- t_FOG_DIR=${PWD}/FixedOrderGen
- t_FOG_INSTALL_DIR=${PWD}/${FOG_INSTALL_DIR}
- t_FOG_BUILD_DIR=${PWD}/${FOG_BUILD_DIR}
- mkdir -p ${t_FOG_BUILD_DIR}
- cd ${t_FOG_BUILD_DIR}
- cmake ${t_FOG_DIR} -DCMAKE_BUILD_TYPE=DEBUG
-DCMAKE_INSTALL_PREFIX=${t_FOG_INSTALL_DIR}
script:
- make -j $(nproc --ignore=1)
- make install
artifacts:
# save build and installed folder
name: FOG_build
expire_in: 1d
paths:
- ${HEJ_INSTALL_DIR}
- ${FOG_INSTALL_DIR}
- ${FOG_BUILD_DIR}
## ----------- FOG test -----------
.FOG_test:
tags: *tags_def
stage: FOG:test
before_script:
- date
- source /cvmfs/pheno.egi.eu/HEJ/HEJ_env.sh || exit 1
# load HEJ
- t_FOG_DIR=${PWD}/FixedOrderGen
- t_HEJ_INSTALL_DIR=${PWD}/${HEJ_INSTALL_DIR}
- t_FOG_INSTALL_DIR=${PWD}/${FOG_INSTALL_DIR}
- export LD_LIBRARY_PATH=${t_HEJ_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
- export PATH=${t_HEJ_INSTALL_DIR}/bin:${t_FOG_INSTALL_DIR}/bin:${PATH}
- t_FOG_BUILD_DIR=${PWD}/${FOG_BUILD_DIR}
- cd ${t_FOG_BUILD_DIR}
- cmake ${t_FOG_DIR} # rerun cmake to create all test configure files
script:
- ctest --output-on-failure
artifacts: *artifacts_failed
# ---------------------------------
# - Build & Test -
# ---------------------------------
# ----------- basic -----------
# build:basic:
# image: ${DOCKER_BASIC}
# extends: .HEJ_build
# test:basic:
# image: ${DOCKER_BASIC}
# extends: .HEJ_test
# dependencies:
# - build:basic
# FOG:build:basic:
# image: ${DOCKER_BASIC}
# extends: .FOG_build
# dependencies:
# - build:basic
# FOG:test:basic:
# image: ${DOCKER_BASIC}
# extends: .FOG_test
# dependencies:
# - FOG:build:basic
# ----------- HepMC 3 -----------
# build:hepmc3:
# image: ${DOCKER_HEPMC3}
# extends: .HEJ_build
# test:hepmc3:
# image: ${DOCKER_HEPMC3}
# extends: .HEJ_test
# dependencies:
# - build:hepmc3
# ----------- QCDloop -----------
build:qcdloop:
image: ${DOCKER_QCDLOOP}
extends: .HEJ_build
test:qcdloop:
image: ${DOCKER_QCDLOOP}
extends: .HEJ_test
dependencies:
- build:qcdloop
# ----------- rivet -----------
# build:rivet:
# image: ${DOCKER_RIVET}
# extends: .HEJ_build
# test:rivet:
# image: ${DOCKER_RIVET}
# extends: .HEJ_test
# dependencies:
# - build:rivet
# script:
# - ctest --output-on-failure
# - bash -c '[ -f tst.yoda ]' && echo "found rivet output"
# - rivet-cmphistos tst.yoda
# - bash -c '[ -f MC_XS_XS.dat ]' && echo "yoda not empty"
# ---------------------------------
# - Clean Code -
# ---------------------------------
No_tabs:
stage: clean_code
tags: *tags_def
image: hejdock/git
dependencies: []
script:
- date
- check_tabs
# ----------- No gcc warnings -----------
.Warning_build:
extends: .HEJ_build
stage: clean_code
dependencies: []
script:
- cd ${t_HEJ_DIR}
# suppress warnings from side packages
- sed -i 's/include_directories(${LHAPDF/include_directories(SYSTEM ${LHAPDF/g' CMakeLists.txt
- sed -i 's/include_directories(${fastjet/include_directories(SYSTEM ${fastjet/g' CMakeLists.txt
- sed -i 's/include_directories(${Boost/include_directories(SYSTEM ${Boost/g' CMakeLists.txt
- cd ${t_HEJ_BUILD_DIR}
- cmake ${t_HEJ_DIR} -DCMAKE_CXX_FLAGS="-Werror"
- make -j $(nproc --ignore=1)
artifacts: # don't save anything
.Warning_FOG:
extends: .FOG_build
stage: clean_code
script:
- cd ${t_FOG_DIR}
# suppress warnings from side packages
- sed -i 's/include_directories(${LHAPDF/include_directories(SYSTEM ${LHAPDF/g' CMakeLists.txt
- sed -i 's/include_directories(${fastjet/include_directories(SYSTEM ${fastjet/g' CMakeLists.txt
- sed -i 's/include_directories(${Boost/include_directories(SYSTEM ${Boost/g' CMakeLists.txt
- cd ${t_FOG_BUILD_DIR}
- cmake ${t_FOG_DIR} -DCMAKE_CXX_FLAGS="-Werror"
- make -j $(nproc --ignore=1)
artifacts: # don't save anything
# No_Warning:basic:
# image: ${DOCKER_BASIC}
# extends: .Warning_build
# No_Warning:basic:FOG:
# image: ${DOCKER_BASIC}
# extends: .Warning_FOG
# dependencies:
# - build:basic
# ---------------------------------
# - Long tests -
# ---------------------------------
.HEJ_test_long:
extends: .HEJ_test
stage: long_test
script:
- cmake ${t_HEJ_DIR} -DTEST_ALL=TRUE
- ctest --output-on-failure
+ only: # only run on specific branches
+ - master
+ - /^v\d+\.\d+$/
+ - merge_requests
# ----------- QCDloop -----------
Long_test:qcdloop:
image: ${DOCKER_QCDLOOP}
extends: .HEJ_test_long
dependencies:
- build:qcdloop
# ---------------------------------
# - Publish -
# ---------------------------------
# Publish_version:
# stage: publish
# tags: *tags_def
# image: hejdock/git
# dependencies: []
# only:
# - /^v\d+\.\d+$/
# except:
# - tags
# when: on_success
# 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

File Metadata

Mime Type
text/x-diff
Expires
Sat, Dec 21, 4:59 PM (15 h, 39 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4023550
Default Alt Text
(8 KB)

Event Timeline