blob: 3b28f84ec6e166c4d03d3be2e85062432f57b6e1 (
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
|
#!/bin/sh
set -e
[ -z "$1" ] && {
echo "Error: broker name is required"
exit 1
}
echo $1 | grep -q '/' && {
echo "Error: invalid broker name"
exit 1
}
TARGET="$(realpath -m "/var/lib/apollo/$1" )"
[ "${TARGET:0:16}" != "/var/lib/apollo/" ] && {
echo "Error: invalid broker name"
exit 1
}
[ -d "$TARGET" -o -d "/etc/apollo/$1" ] && {
echo "Error: directory already exists"
exit 1
}
apollo create "$TARGET" > /dev/null
rm -rf "$TARGET/bin" "$TARGET/log"
[ ! -d /etc/apollo ] && install -dm0755 /etc/apollo
mv "$TARGET/etc" "/etc/apollo/$1"
ln -s "/etc/apollo/$1" "$TARGET/etc"
[ ! -d "/var/log/apollo/$1" ] && install -dm0755 "/var/log/apollo/$1"
ln -s "/var/log/apollo/$1" "$TARGET/log"
|