Skip to content

Commit e8f4c17

Browse files
support to set parameter with "=" in the value for obproxy-ce (#73)
1 parent f0940a0 commit e8f4c17

File tree

1 file changed

+23
-21
lines changed

1 file changed

+23
-21
lines changed

obproxy-ce/start.sh

Lines changed: 23 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,56 @@
11
#!/bin/bash
22

3-
if [ -z $APP_NAME ]; then
3+
if [ -z "$APP_NAME" ]; then
44
echo "env variable APP_NAME is required"
55
exit 1
66
fi
77

8-
if [ -z $PROXYRO_PASSWORD_HASH ]; then
8+
if [ -z "$PROXYRO_PASSWORD_HASH" ]; then
99
PROXYRO_PASSWORD_HASH=$(echo -n "$PROXYRO_PASSWORD" | sha1sum | awk '{print $1}')
1010
fi
1111

12-
if [ -z $PROSYSYS_PASSWORD_HASH ]; then
12+
if [ -z "$PROXYSYS_PASSWORD_HASH" ]; then
1313
PROXYSYS_PASSWORD_HASH=$(echo -n "$PROXYSYS_PASSWORD" | sha1sum | awk '{print $1}')
1414
fi
1515

1616
opts="obproxy_sys_password=$PROXYSYS_PASSWORD_HASH"
1717

1818
function concat_opts {
1919
if [ -z "$1" ]; then
20-
echo $2
20+
echo "$2"
2121
elif [ -z "$2" ]; then
22-
echo $1
22+
echo "$1"
2323
else
2424
echo "$1,$2"
2525
fi
2626
}
2727

28-
[ -z "$ODP_PROMETHEUS_SYNC_INTERVAL" ] && opts=$(concat_opts $opts "prometheus_sync_interval=1s")
29-
[ -z "$ODP_ENABLE_METADB_USED" ] && opts=$(concat_opts $opts "enable_metadb_used=false")
30-
[ -z "$ODP_SKIP_PROXY_SYS_PRIVATE_CHECK" ] && opts=$(concat_opts $opts "skip_proxy_sys_private_check=true")
31-
[ -z "$ODP_LOG_DIR_SIZE_THRESHOLD" ] && opts=$(concat_opts $opts "log_dir_size_threshold=10G")
32-
[ -z "$ODP_ENABLE_PROXY_SCRAMBLE" ] && opts=$(concat_opts $opts "enable_proxy_scramble=true")
33-
[ -z "$ODP_ENABLE_STRICT_KERNEL_RELEASE" ] && opts=$(concat_opts $opts "enable_strict_kernel_release=false")
34-
35-
while IFS='=' read -r key value; do
36-
# If the key has prefix "ODP_" then add it to the opts
37-
if [[ $key == ODP_* ]]; then
28+
[ -z "$ODP_PROMETHEUS_SYNC_INTERVAL" ] && opts=$(concat_opts "$opts" "prometheus_sync_interval=1s")
29+
[ -z "$ODP_ENABLE_METADB_USED" ] && opts=$(concat_opts "$opts" "enable_metadb_used=false")
30+
[ -z "$ODP_SKIP_PROXY_SYS_PRIVATE_CHECK" ] && opts=$(concat_opts "$opts" "skip_proxy_sys_private_check=true")
31+
[ -z "$ODP_LOG_DIR_SIZE_THRESHOLD" ] && opts=$(concat_opts "$opts" "log_dir_size_threshold=10G")
32+
[ -z "$ODP_ENABLE_PROXY_SCRAMBLE" ] && opts=$(concat_opts "$opts" "enable_proxy_scramble=true")
33+
[ -z "$ODP_ENABLE_STRICT_KERNEL_RELEASE" ] && opts=$(concat_opts "$opts" "enable_strict_kernel_release=false")
34+
35+
while IFS= read -r line; do
36+
# If the line has prefix "ODP_" then add it to the opts
37+
if [[ $line == ODP_* ]]; then
38+
key="${line%%=*}"
39+
value="${line#*=}"
3840
# Remove the prefix "ODP_" from the key and transform to lower case
39-
key=$(echo $key | sed 's/^ODP_//g' | tr '[:upper:]' '[:lower:]')
40-
opts=$(concat_opts $opts "$(printf "%s=%s" "$key" "$value")")
41+
key=$(echo "${key#ODP_}" | tr '[:upper:]' '[:lower:]')
42+
opts=$(concat_opts "$opts" "$key=$value")
4143
fi
4244
done < <(env)
4345

4446
echo "$opts"
4547

46-
if [ ! -z $CONFIG_URL ]; then
48+
if [ ! -z "$CONFIG_URL" ]; then
4749
echo "use config server"
48-
cd /home/admin/obproxy && /home/admin/obproxy/bin/obproxy -p 2883 -l 2884 -s 2885 -n ${APP_NAME} -o observer_sys_password=${PROXYRO_PASSWORD_HASH},obproxy_config_server_url="${CONFIG_URL}",$opts --nodaemon
49-
elif [ ! -z $RS_LIST ]; then
50+
cd /home/admin/obproxy && /home/admin/obproxy/bin/obproxy -p 2883 -l 2884 -s 2885 -n "${APP_NAME}" -o "observer_sys_password=${PROXYRO_PASSWORD_HASH},obproxy_config_server_url=${CONFIG_URL},${opts}" --nodaemon
51+
elif [ ! -z "$RS_LIST" ]; then
5052
echo "use rslist"
51-
cd /home/admin/obproxy && /home/admin/obproxy/bin/obproxy -p 2883 -l 2884 -s 2885 -n ${APP_NAME} -c ${OB_CLUSTER} -r "${RS_LIST}" -o observer_sys_password=${PROXYRO_PASSWORD_HASH},$opts --nodaemon
53+
cd /home/admin/obproxy && /home/admin/obproxy/bin/obproxy -p 2883 -l 2884 -s 2885 -n "${APP_NAME}" -c "${OB_CLUSTER}" -r "${RS_LIST}" -o "observer_sys_password=${PROXYRO_PASSWORD_HASH},${opts}" --nodaemon
5254
else
5355
echo "no config server or rs list"
5456
exit 1

0 commit comments

Comments
 (0)