aboutsummaryrefslogtreecommitdiffstats
path: root/pgaas/src/stage/opt/app/pgaas/bin/setpropvalue
diff options
context:
space:
mode:
Diffstat (limited to 'pgaas/src/stage/opt/app/pgaas/bin/setpropvalue')
-rwxr-xr-xpgaas/src/stage/opt/app/pgaas/bin/setpropvalue67
1 files changed, 67 insertions, 0 deletions
diff --git a/pgaas/src/stage/opt/app/pgaas/bin/setpropvalue b/pgaas/src/stage/opt/app/pgaas/bin/setpropvalue
new file mode 100755
index 0000000..2b45fa8
--- /dev/null
+++ b/pgaas/src/stage/opt/app/pgaas/bin/setpropvalue
@@ -0,0 +1,67 @@
+#!/bin/bash
+
+# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this code except in compliance
+# with the License. You may obtain a copy of the License
+# at http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# permissions and limitations under the License.
+
+
+die()
+{
+ exec 1>&2
+ echo "$@"
+ exit 1
+}
+
+usage()
+{
+ exec 1>&2
+ [ $# -gt 0 ] && echo "$@"
+ echo "Usage: $0 -n name -v value [-x]"
+ echo " -n\tname to configure"
+ echo " -v\tvalue to set"
+ echo " -x\tencrypt the value"
+ exit 1
+}
+
+NAME=
+VAL=
+ENCRYPT=false
+FILE=/opt/app/pgaas/lib/pgaas.cfg
+
+while getopts f:n:v:x c
+do
+ case "$c" in
+ f ) FILE=$OPTARG ;;
+ n ) NAME=$OPTARG ;;
+ v ) VAL=$OPTARG ;;
+ x ) ENCRYPT=true ;;
+ \?) usage ;;
+ esac
+done
+shift $(($OPTIND - 1))
+
+[ -n "$NAME" ] || die "-n name is required"
+[ -n "$VAL" ] || die "-v value is required"
+[ -f "$FILE" -a -w "$FILE" ] || die "-f file must exist and be writable"
+
+ed $FILE <<-!
+ H
+ g/^$NAME[=]/d
+ g/^$NAME[.]x=/d
+ w
+ q
+!
+
+if $ENCRYPT
+then /opt/app/cdf/bin/getpropvalue -e AES -n $NAME -v $VAL >> $FILE
+else echo "$NAME='$VAL'" >> $FILE
+fi