-
Notifications
You must be signed in to change notification settings - Fork 4
/
.travis.yml
116 lines (108 loc) · 3.46 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Copyright (C) 2015-2019 CEA/DAM
# Copyright (C) 2015-2019 Laurent Nguyen <laurent.nguyen@cea.fr>
#
# This file is part of selFIe.
#
# This software is governed by the CeCILL-C license under French law and
# abiding by the rules of distribution of free software. You can use,
# modify and/ or redistribute the software under the terms of the CeCILL-C
# license as circulated by CEA, CNRS and INRIA at the following URL
# "http://www.cecill.info".
# \file .travis.yml
# \author Laurent Nguyen <laurent.nguyen@cea.fr>
# \version 1.0.2
# \date 21 March 2019
# \brief Travis file for CI (see travis-ci.org)
#
# \details No
sudo: required
language: cpp
compiler: gcc
os:
- linux
jobs:
include:
- env: OS_NAME="ubuntu" OS_VERSION="bionic" CMD_PREFIX=""
addons:
apt:
packages:
- make
- libpapi-dev
- papi-tools
- libyaml-dev
- python3
dist:
- bionic
arch:
- amd64
- env: OS_NAME="ubuntu" OS_VERSION="bionic" CMD_PREFIX=""
addons:
apt:
packages:
- make
- libpapi-dev
- papi-tools
- libyaml-dev
- python3
dist:
- bionic
arch:
- arm64
- env: OS_NAME="ubuntu" OS_VERSION="xenial" CMD_PREFIX=""
addons:
apt:
packages:
- make
- libpapi-dev
- papi-tools
- libyaml-dev
- python3
dist:
- xenial
arch:
- amd64
- env: OS_NAME="ubuntu" OS_VERSION="xenial" CMD_PREFIX=""
addons:
apt:
packages:
- make
- libpapi-dev
- papi-tools
- libyaml-dev
- python3
dist:
- xenial
arch:
- arm64
- env: OS_NAME=centos OS_VERSION=7 DOCKER_IMAGE=${OS_NAME}:${OS_NAME}${OS_VERSION} CONTAINER=${OS_NAME}${OS_VERSION}
CMD_PREFIX="docker exec --env RUNTESTFLAGS=-v $CONTAINER"
services:
- docker
- env: OS_NAME=centos OS_VERSION=8 DOCKER_IMAGE=${OS_NAME}:${OS_NAME}${OS_VERSION} CONTAINER=${OS_NAME}${OS_VERSION}
CMD_PREFIX="docker exec --env RUNTESTFLAGS=-v $CONTAINER"
services:
- docker
install: true
before_install: |
if [ -n "$DOCKER_IMAGE" ]; then
docker pull $DOCKER_IMAGE &&
docker run --name $CONTAINER --detach --rm -i -t -w /selfie -e TRAVIS='true' $DOCKER_IMAGE /bin/bash
case "${OS_NAME}" in
centos)
if [ $OS_VERSION -eq 6 ]; then docker exec $CONTAINER yum install -y autoconf automake libtool papi papi-devel libyaml libyaml-devel make gcc python3 gcc-c++;fi
if [ $OS_VERSION -eq 7 ]; then docker exec $CONTAINER yum install -y autoconf automake libtool papi papi-devel libyaml libyaml-devel make gcc python3 gcc-c++;fi
if [ $OS_VERSION -eq 8 ]; then docker exec $CONTAINER dnf install -y dnf-plugins-core ; docker exec $CONTAINER dnf config-manager --enable PowerTools ; docker exec $CONTAINER dnf install -y autoconf automake libtool papi papi-devel libyaml libyaml-devel make gcc python3 gcc-c++;fi
;;
*)
;;
esac
docker cp ./. $CONTAINER:selfie
else
true
fi
script:
- $CMD_PREFIX ./autogen.sh
- $CMD_PREFIX ./configure --prefix=${HOME}/selfie CC=${CC_FOR_BUILD} CXX=${CXX_FOR_BUILD} --with-mpi --with-papi --with-posixio --with-yaml --with-omp
- $CMD_PREFIX make
- $CMD_PREFIX make install
- $CMD_PREFIX make check