forked from AMReX-Microelectronics/artemis
-
Notifications
You must be signed in to change notification settings - Fork 1
/
.azure-pipelines.yml
71 lines (64 loc) · 2.45 KB
/
.azure-pipelines.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
# -*- mode: yaml -*-
pool:
vmImage: 'ubuntu-18.04'
pr:
autoCancel: true
jobs:
- job:
variables:
WARPX_CI_NUM_MAKE_JOBS: 2
WARPX_CI_CCACHE: 'TRUE'
WARPX_CI_OPENPMD: 'TRUE'
FFTW_HOME: '/usr/'
BLASPP_HOME: '/usr/local/'
LAPACKPP_HOME: '/usr/local/'
OMP_NUM_THREADS: 1
strategy:
matrix:
cartesian2d:
WARPX_CI_REGULAR_CARTESIAN_2D: 'TRUE'
cartesian3d:
WARPX_CI_REGULAR_CARTESIAN_3D: 'TRUE'
python:
WARPX_CI_PYTHON_MAIN: 'TRUE'
single_precision:
WARPX_CI_SINGLE_PRECISION: 'TRUE'
rz_or_nompi:
WARPX_CI_RZ_OR_NOMPI: 'TRUE'
qed:
WARPX_CI_QED: 'TRUE'
embedded_boundary:
WARPX_CI_EB: 'TRUE'
# default: 60; maximum: 360
timeoutInMinutes: 90
steps:
- script: |
cat /proc/cpuinfo | grep "model name" | sort -u
sudo apt-get update
sudo apt-get install -y ccache gcc gfortran g++ openmpi-bin libopenmpi-dev \
libfftw3-dev libfftw3-mpi-dev libhdf5-openmpi-dev pkg-config make \
python3 python3-pip python3-setuptools libblas-dev liblapack-dev
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2
sudo update-alternatives --set python /usr/bin/python3
python -m pip install --upgrade pip
python -m pip install --upgrade wheel
python -m pip install --upgrade cmake matplotlib mpi4py numpy scipy yt
export CEI_CMAKE="$HOME/.local/bin/cmake"
export CEI_SUDO="sudo"
sudo curl -L -o /usr/local/bin/cmake-easyinstall https://git.io/JvLxY
sudo chmod a+x /usr/local/bin/cmake-easyinstall
if [ "${WARPX_CI_OPENPMD:-FALSE}" == "TRUE" ]; then
cmake-easyinstall --prefix=/usr/local git+https://github.com/openPMD/[email protected] \
-DopenPMD_USE_PYTHON=OFF -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DBUILD_CLI_TOOLS=OFF
python -m pip install --upgrade openpmd-api
fi
if [[ "${WARPX_CI_RZ_OR_NOMPI:-FALSE}" == "TRUE" || "${WARPX_CI_PYTHON_MAIN:-FALSE}" == "TRUE" ]]; then
cmake-easyinstall --prefix=/usr/local git+https://bitbucket.org/icl/blaspp.git \
-Duse_openmp=OFF -Dbuild_tests=OFF -DCMAKE_VERBOSE_MAKEFILE=ON
cmake-easyinstall --prefix=/usr/local git+https://bitbucket.org/icl/lapackpp.git \
-Duse_cmake_find_lapack=ON -Dbuild_tests=OFF -DCMAKE_VERBOSE_MAKEFILE=ON
fi
displayName: 'Install dependencies'
- script: |
./run_test.sh
displayName: 'Build & test'