Add script to set vfwcl loop name in consul 02/90102/2
authorGary Wu <gary.wu@futurewei.com>
Tue, 18 Jun 2019 16:41:02 +0000 (09:41 -0700)
committerYang Xu <yang.xu@futurewei.com>
Wed, 19 Jun 2019 06:05:23 +0000 (06:05 +0000)
Issue-ID: INT-1104
Signed-off-by: Gary Wu <gary.wu@futurewei.com>
Change-Id: I719803b68cfff224ccf22f1b92613bf254a452b9

deployment/heat/onap-rke/scripts/set-tca-vfwcl-name.sh [new file with mode: 0755]

diff --git a/deployment/heat/onap-rke/scripts/set-tca-vfwcl-name.sh b/deployment/heat/onap-rke/scripts/set-tca-vfwcl-name.sh
new file mode 100755 (executable)
index 0000000..45b11cd
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+if [ "$#" -ne 2 ]; then
+    echo This script updates the controll loop name for vFWCL in consul
+    echo "$0 <k8s_host_ip> <new_control_loop_name>"
+    echo
+    exit 1
+fi
+
+
+set -v
+set -x
+set -e
+
+K8S_IP=$1
+CL_NAME=$2
+
+CONSUL_ENDPOINT=http://$K8S_IP:30270/v1/kv
+TMP_DIR=$(mktemp -d)
+pushd $TMP_DIR
+
+curl -s $CONSUL_ENDPOINT/dcae-tca-analytics | jq -r '.[0].Value' | base64 --decode | jq '.' > dcae-tca-analytics.json
+jq -r '.app_preferences.tca_policy' < dcae-tca-analytics.json | jq '.' > tca_policy.json
+jq '.metricsPerEventName |= map( select(.eventName == "vFirewallBroadcastPackets").thresholds[].closedLoopControlName="'$CL_NAME'" )' < tca_policy.json > tca_policy_new.json
+diff tca_policy.json tca_policy_new.json || true
+
+jq  --argfile tca_policy_new tca_policy_new.json '.app_preferences.tca_policy |= ($tca_policy_new | tostring)' < dcae-tca-analytics.json > dcae-tca-analytics-new.json
+
+jq -c '.' < dcae-tca-analytics-new.json | curl -X PUT -d @- $CONSUL_ENDPOINT/dcae-tca-analytics
+
+popd