forked from crocs-muni/rtt-deployment
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall-in-docker.sh
executable file
·48 lines (42 loc) · 1.75 KB
/
install-in-docker.sh
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
#!/bin/bash
set -ex
: "${NPROC:=$(($(nproc)-1))}"
: "${CLEAN_IMAGE:=1}"
NPROCUSE=$((NPROC>0 ? NPROC : 1))
pip3 install -U filelock
echo "Deploying RTT with parallelism: $NPROCUSE"
python3 deploy_database.py --config deployment_settings_local.ini --docker
python3 deploy_storage.py --config deployment_settings_local.ini --docker --local-db -j${NPROCUSE}
python3 deploy_frontend.py --config deployment_settings_local.ini --docker --local-db --no-chroot --no-ssh-server --ph4 -j${NPROCUSE}
python3 deploy_web.py --config deployment_settings_local.ini --docker --local-db --ph4 -j${NPROCUSE}
python3 deploy_backend.py 1 --config deployment_settings_local.ini --docker --local-db -j${NPROCUSE}
# Cleanup Docker image for a smaller size, removes cached packages,
# source files, compilation caches.
if [[ "$CLEAN_IMAGE" -gt 0 ]]; then
set +e
echo "Deployment finished, cleaning up the image"
apt-get remove apache2-dev build-essential python3-dev gcc gcc-8 cmake
apt-get autoremove
apt-get purge
apt-get clean
rm -rf /var/lib/apt/lists/* 2>/dev/null >/dev/null
rm -rf /tmp/Python-* 2>/dev/null >/dev/null
rm -rf /rtt_backend/crypto-streams 2>/dev/null >/dev/null
rm -rf /rtt_backend/randomness-testing-toolkit/p11-kit-* 2>/dev/null >/dev/null
OBATS="/rtt_backend/rtt-statistical-batteries"
NBATS="/rtt_backend/rtt-statistical-batteries2"
mkdir -p "$NBATS"
for BNAME in "dieharder" "nist-sts" "testu01" ; do
BPATH="$(realpath "${OBATS}/${BNAME}")"
BDIR=$(dirname "$BPATH")
BDIRN="${BDIR/$OBATS/$NBATS}"
BPATHN="${BPATH/$OBATS/$NBATS}"
mkdir -p "$BDIRN"
cp "$BPATH" "$BPATHN"
cp -P "${OBATS}/${BNAME}" "${NBATS}/${BNAME}"
chmod +x "$BPATHN"
done
/bin/rm -rf "$OBATS"
/bin/mv "$NBATS" "$OBATS"
echo "Cleanup finished"
fi