forked from flux-framework/dyad
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitpod.yml
48 lines (44 loc) · 2.24 KB
/
.gitpod.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
# This configuration file was automatically generated by Gitpod.
# Please adjust to your needs (see https://www.gitpod.io/docs/introduction/learn-gitpod/gitpod-yaml)
# and commit this file to your remote git repository to share the goodness with others.
# Learn more from ready-to-use templates: https://www.gitpod.io/docs/introduction/getting-started/quickstart
tasks:
- name: Install Dependencies
before: >
sudo rm -rf /home/gitpod/.pyenv &&
sudo apt-get update &&
sudo apt-get install -y --no-install-recommends gcc g++ gfortran autoconf \
automake libtool libtool-bin openmpi-bin libopenmpi-dev libarchive-dev \
ncurses-bin hwloc lua5.3 liblua5.3-dev python3.10 python3-pip python3.10-dev liblz4-dev libczmq-dev lua-posix-dev \
lz4 pkgconf libzmq5 sqlite
command: >
sudo python3.10 -m pip install jsonschema>=2.3.0 cffi ply pyyaml &&
gp sync-done sys
- name: Install spack
init: gp sync-await sys
command: >
mkdir /workspace/scripts &&
echo export SPACK_DIR=/workspace/spack > /workspace/scripts/gitpod.env &&
echo export FLUX_VERSION=0.54 >> /workspace/scripts/gitpod.env &&
echo export DYAD_DTL_MODE=UCX >> /workspace/scripts/gitpod.env &&
echo export DYAD_INSTALL_PREFIX=/workspace/install >> /workspace/scripts/gitpod.env &&
source /workspace/scripts/gitpod.env &&
git clone https://github.com/spack/spack.git ${SPACK_DIR} &&
source /workspace/dyad/.github/setup/setup_spack.sh &&
gp sync-done spack
- name: Compile DYAD
init: gp sync-await spack
command: >
source /workspace/scripts/gitpod.env &&
. ${SPACK_DIR}/share/spack/setup-env.sh &&
echo "Install DYAD" &&
cd /workspace/dyad &&
mkdir build &&
cd build &&
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${DYAD_INSTALL_PREFIX}/lib/pkgconfig &&
CONFIGURE_FLAGS="-DDYAD_CONTROL_PLANE=FLUX_RPC -DDYAD_DATA_PLANE=FLUX_RPC -DDYAD_PROFILER=NONE" &&
if [[ $DYAD_DTL_MODE == 'UCX' ]]; then
CONFIGURE_FLAGS="-DDYAD_CONTROL_PLANE=FLUX_RPC -DDYAD_DATA_PLANE=UCX -DDYAD_PROFILER=NONE"
fi
cmake -DCMAKE_INSTALL_PREFIX=${DYAD_INSTALL_PREFIX} ${CONFIGURE_FLAGS} -DENABLE_DYAD_DEBUG=ON .. &&
make install -j