You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by nc...@apache.org on 2015/09/30 16:46:05 UTC
[45/50] [abbrv] ambari git commit: AMBARI-13256 configs.sh cannot add
name-value pair to an empty config (dsen)
AMBARI-13256 configs.sh cannot add name-value pair to an empty config (dsen)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/a1488cec
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/a1488cec
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/a1488cec
Branch: refs/heads/branch-dev-patch-upgrade
Commit: a1488cec7378b29bf04be08b901d6a210cfa9269
Parents: 7db1f10
Author: Dmytro Sen <ds...@apache.org>
Authored: Tue Sep 29 16:21:03 2015 +0300
Committer: Dmytro Sen <ds...@apache.org>
Committed: Tue Sep 29 16:21:03 2015 +0300
----------------------------------------------------------------------
.../src/main/resources/scripts/configs.sh | 21 ++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/a1488cec/ambari-server/src/main/resources/scripts/configs.sh
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/scripts/configs.sh b/ambari-server/src/main/resources/scripts/configs.sh
index a32ff42..ba02d2d 100755
--- a/ambari-server/src/main/resources/scripts/configs.sh
+++ b/ambari-server/src/main/resources/scripts/configs.sh
@@ -130,14 +130,19 @@ doConfigUpdate () {
if [ "`echo $line | grep -E "},?$"`" ]; then
## Properties ended
## Add property
- # Remove the last ,
propLen=${#newProperties}
lastChar=${newProperties:$propLen-1:1}
- if [ "$lastChar" == "," ]; then
- newProperties=${newProperties:0:$propLen-1}
- fi
- if [ "$MODE" == "set" ]; then
- newProperties="$newProperties, \"$CONFIGKEY\" : \"$CONFIGVALUE\" "
+ if [ "$MODE" == "delete" ]; then
+ # Remove the last ,
+ if [ "$lastChar" == "," ]; then
+ newProperties=${newProperties:0:$propLen-1}
+ fi
+ elif [ "$MODE" == "set" ]; then
+ # Add comma if required
+ if [ "$lastChar" != "," -a "$lastChar" != "{" ]; then
+ newProperties="$newProperties,"
+ fi
+ newProperties="$newProperties \"$CONFIGKEY\" : \"$CONFIGVALUE\""
fi
newProperties=$newProperties$line
propertiesStarted=0
@@ -154,6 +159,10 @@ doConfigUpdate () {
elif [ "`echo $line | grep -E "},?$"`" ]; then
currentLevel=$((currentLevel-1))
if [ "$currentLevel" == 1 ]; then
+ # if no properties in current config
+ if [ "$MODE" == "set" -a -z "$newProperties" ]; then
+ newProperties="\"properties\" : { \"$CONFIGKEY\" : \"$CONFIGVALUE\"}"
+ fi
newTag=`date "+%s%N"`
newTag="version${newTag}"
finalJson="{ \"Clusters\": { \"desired_config\": {\"type\": \"$SITE\", \"tag\":\"$newTag\", $newProperties}}}"