Skip to content
Snippets Groups Projects
Commit b60e7e81 authored by Thomas Hayward-Schneider's avatar Thomas Hayward-Schneider Committed by Thomas Hayward-Schneider
Browse files

Update .gitlab-ci.yml file: CI for HDF5 @ PSNC

* Build chease/chease_hdf5 @ gateway and in a docker image

* Have temporarily removed standard SPC gitlab stuff
parent 9af8df06
No related branches found
No related tags found
1 merge request!39Draft: CI: add hdf5 build
# Includes a common template
include:
- project: 'spc/tcv/tbx/git-tools-spc'
file: 'gitlab-ci-tbx-template.yml'
variables:
TBXFOLDER: matlab/CHEASEgui
TBXTARGET: CHEASEgui
MATVER: 906
MATFIRST: 902
TESTCASE: basic
build-docker-hdf5:
stage: build
tags:
- Docker
image: ubuntu:22.04
before_script:
- apt update
- apt install -y gfortran make libhdf5-fortran-102 libhdf5-dev pkg-config libxml2-dev
script:
- cd src-f90
- for target in chease chease_hdf5; do make ${target} CHEASE_MACHINE=linux_hdf5 CHEASE_F90=gfortran Makefile_futils=Makefile.gfortran F90=gfortran INCL_HDF5=$(pkg-config hdf5-serial --cflags) LIBS_HDF5="-Lfutils_src -lfutils -L/usr/lib/x86_64-linux-gnu/hdf5/serial/ -lhdf5_fortran -lhdf5 -lmpiuni" -j$(nproc); done
- make chease chease-hdf5 -j$(nproc)
- cd ..
- ldd src-f90/chease_hdf5
# Build
build:
extends: .build-template
script:
- export
- echo "Script to build (e.g. mexes)"
- cd src-f90
- make chease
- cd ..
- ./WK/TESTCASES/NIDEAL10/script_test_chease_from_codes $PWD/src-f90
- cd src-f90
- make clean
# Build
build_h5:
extends: .build-template
script:
- cd src-f90
#- make -j4 chease_hdf5
- echo "$(pkg-config hdf5 --cflags) | $(pkg-config hdf5 --libs)"
- echo "$(pkg-config hdf5-serial --cflags) | $(pkg-config hdf5-serial --libs)"
- make CHEASE_MACHINE=linux_hdf5 CHEASE_F90=gfortran Makefile_futils=Makefile.gfortran F90=gfortran INCL_HDF5=$(pkg-config hdf5-serial --cflags) LIBS_HDF5="-Lfutils_src -lfutils -L/usr/lib/x86_64-linux-gnu/hdf5/serial/ -lhdf5_fortran -lhdf5 -lmpiuni" chease_hdf5 -n -p
- make CHEASE_MACHINE=linux_hdf5 CHEASE_F90=gfortran Makefile_futils=Makefile.gfortran F90=gfortran INCL_HDF5=$(pkg-config hdf5-serial --cflags) LIBS_HDF5="-Lfutils_src -lfutils -L/usr/lib/x86_64-linux-gnu/hdf5/serial/ -lhdf5_fortran -lhdf5 -lmpiuni" chease_hdf5
# Build
validate_py_scripts:
extends: .build-template
before_script: null
script:
- for pyfile in python/*.py; do echo ${pyfile}; python -m py_compile ${pyfile}; done
after_script: null
# Tests
test-matlab-9.2.0:
extends: .test-template:8.6-to-9.5
variables:
MATLABCMD: matlab920
test-matlab-9.6.0:
extends: .test-template
variables:
MATLABCMD: matlab960
# Post test report collection
code-coverage-960:
extends: .code-coverage-960-template
# Pre-deployment checks
pre-deployment-checks:
extends: .pre-deployment-checks-template
# Staging
pre-deployment-staging:
extends: .staging-template
test-staging-9.2.0:
extends: .test-staging-template
variables:
MATLABCMD: matlab920
test-staging-9.6.0:
extends: .test-staging-template
variables:
MATLABCMD: matlab960
# Deployment
deployment:
extends: .deploy-to-lac-template
test-post-deploy-matlab:
extends: .test-post-deploy-template
# Test deployed version
daily-tests-deployed:
extends: .test-deployed-template
stage: build
tags:
- HPC
script:
- module avail
- module show hdf5/1.10.4--intel--pe-xe-2018--binary
- module load autoload intel hdf5/1.10.4--intel--pe-xe-2018--binary
- cd src-f90
- for target in chease chease_hdf5; do make ${target} CHEASE_MACHINE=marconi -j$(nproc); done
- cd ..
- ldd src-f90/chease_hdf5
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment