-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmdimechanic.yml
76 lines (62 loc) · 2.15 KB
/
mdimechanic.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
code_name: 'QE'
docker:
image_name: 'mdi/qe'
build_image:
- apt-get update
- apt-get install -y git wget vim
- pip install cmake
- pip install pymdi
- pip install mpi4py
- echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/repo/build/q-e/mdi/build/mdi_build-prefix/src/mdi_build-build/MDI_Library:/repo/build/q-e/MDI/src" >> ~/.profile
build_engine:
- mkdir -p build
- |
if [ ! -d "build/q-e" ]; then
git clone --branch mdi_plugin https://github.com/MolSSI-MDI/q-e.git build/q-e
fi
- cd build/q-e
# Configuring requires a full rebuild, so only do it once
- |
if [ ! -f "/repo/build/q-e/MDI/src/qemdi.x" ]; then
./configure --enable-parallel --enable-openmp --enable-shared FFLAGS="-fPIC" FCFLAGS="-fPIC" CFLAGS="-fPIC" try_foxflags="-fPIC -cpp"
fi
- make -j 1 mdi
# Build a copy of the MDI Library for testing purposes
#- cd /repo
#- |
# if [ ! -d "build/MDI_Library" ]; then
# git clone https://github.com/MolSSI-MDI/MDI_Library.git build/MDI_Library
# fi
#- mkdir -p build/MDI_Library/build
#- cd build/MDI_Library/build
#- cmake -Dtest_codes=ON ..
#- make
validate_engine:
- cd tests/water
- mpirun -n 1 ../../build/q-e/PW/src/pw.x -in qe.in
engine_tests:
# Provide at least one example input that can be used to test your code's MDI functionality
script:
- cd tests/water
- /repo/build/q-e/MDI/src/qemdi.x -mdi "${MDI_OPTIONS}" -in qe.in
run_scripts:
plugin:
containers:
container1:
image: 'mdi/qe:dev'
script:
- export OMP_NUM_THREADS=1
- cd tests/water
- mpiexec -n 2 python ../drivers/plugin_driver.py --plugin_name "qemdi" --mdi "-role DRIVER -name driver -method LINK -plugin_path /repo/build/q-e/MDI/src" --plugin_command_line "--in qe.in"
test:
containers:
container1:
image: 'mdi/qe:dev'
script:
- cd tests/water
- /repo/build/q-e/PW/src/pw.x -in qe.in
test_drivers:
test_driver:
script:
- cd tests/drivers
- python driver.py -mdi "-role DRIVER -name driver -method TCP -port 8021"