diff options
Diffstat (limited to 'pgaas/src/stage/opt/app/pgaas/bin/setpropvalue')
-rwxr-xr-x | pgaas/src/stage/opt/app/pgaas/bin/setpropvalue | 67 |
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 |