Jeffrey Salmond js947@cam.ac.uk,
Krishna Kumar kks32@cam.ac.uk,
University of Cambridge
GitLab has integrated CI!
Repositories are auto-mirrored between GitHub and GitLab
Issues / PRs are not synced after first mirror
All tests passed (36 assertions in 3 test cases)
#Codecov
- compiler: gcc
env:
- SPECIAL=codecoverage
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-5', 'ruby']
before_script:
- wget lcov_1.11.orig.tar.gz
- tar xf lcov_1.11.orig.tar.gz
- sudo make -C lcov-1.11/ install
after_success:
- rm -rf ./* && cmake .. -DENABLE_COVERAGE=On
- make clean && make
- ./felib
- ./felibtest
- make gcov
- make lcov
- bash <(curl -s https://codecov.io/bash) -X gcov
codecov.io and coversall
Travis allows for Caching repos and directories
Installing multiple versions of libraries is complicated!
version: 2
jobs:
build:
working_directory: /home/cbgeo/research/
docker:
- image: quay.io/cbgeo/mpm3d
steps:
- checkout
# GCC 6.3
- run:
name: GCC-6 build
command: |
mkdir -p build
[ "$(ls -A build)" ] && rm -rf build/*
cd build
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_COMPILER=g++ ..
make -j8
ctest -VV
Custom docker images
Quay.io / GitLab / Docker hub container registry
singularity run \
--bind $(pwd):/lammps \
--bind /home/jenkins/lammps-run:lammps-run \
--bind /home/jenkins/lammps-dem-validation:lammps-dem-validation \
/home/jenkins/centos.img \
/lammps-run/compile.sh /lammps/src /lammps-dem-validation
Running Singularity images
External slave node connected via JNLP