blob: 6683c525645dfba6c76ba1f966e94649877cd399 (
plain)
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
|
#!/bin/sh
#
# Copyright (C) 2014, Jaguar Land Rover
#
# This program is licensed under the terms and conditions of the
# Mozilla Public License, version 2.0. The full text of the
# Mozilla Public License is at https://www.mozilla.org/MPL/2.0/
#
#
# Setup a correct configuration and launch an RVI release node.
# If a UUID file has not been created, it will be done at this time.
#
SELF_DIR=$(dirname $(readlink -f "$0"))
CONFIG_DIR=/etc/opt/rvi
BIN_DIR=/opt/rvi
usage() {
echo "Usage: $0 -c config_file"
echo " -c config_file Specify the configuration "
echo "Configuration data is read from the configuration file."
exit 1
}
while getopts "c:" o; do
case "${o}" in
c)
CONFIG_FILE=${OPTARG}
;;
*)
usage
;;
esac
done
if [ -z "${CONFIG_FILE}" ] ; then
echo "Missing -c flag"
usage
fi
# Check if we have a uuid file.
if [ ! -f ${CONFIG_DIR}/device_id ]
then
echo "Creating device ID in ${CONFIG_DIR}/device_id"
cat /proc/sys/kernel/random/uuid > ${CONFIG_DIR}/device_id
fi
#
# Generate a config file that will end up as
# /tmp/rvi/sys.config
#
(
cd /tmp/
rm -rf rvi
export ERL_LIBS=${BIN_DIR}/setup:${BIN_DIR}/lib/
${BIN_DIR}/setup_gen rvi $CONFIG_FILE rvi
)
# Did we succeed with config generation?
if [ "$?" != "0" ]
then
# Nope
exit "$?"
fi
# Copy created config file to /etc/opt/rvi/sys.config,
# which is symlinked to by /opt/rvi/sys.config
cp /tmp/rvi/sys.config /etc/opt/rvi/sys.config
exec /opt/rvi/bin/rvi start
|