timelength=300
while [ $time -le $timelength ]
do
- if [[ `curl -k -X GET https://$SO_IP:8008/api/operational/vcs/info \
+ if [[ `curl -m 10 -k -X GET https://$SO_IP:8008/api/operational/vcs/info \
-H 'accept: application/vnd.yang.data+json' \
-H 'authorization: Basic YWRtaW46YWRtaW4=' \
-H 'cache-control: no-cache' 2> /dev/null | jq '.[].components.component_info[] | select(.component_name=="RW.Restconf")' 2>/dev/null | grep "RUNNING" | wc -l` -eq 1 ]]
so_is_up $SO_CONTAINER_IP
- #delete existing config agent (could be there on reconfigure)
- curl -k --request DELETE \
+ #delete existing config agent if already configured
+ current=$(curl -k --request GET \
--url https://$SO_CONTAINER_IP:8008/api/config/config-agent/account/osmjuju \
--header 'accept: application/vnd.yang.data+json' \
--header 'authorization: Basic YWRtaW46YWRtaW4=' \
--header 'cache-control: no-cache' \
- --header 'content-type: application/vnd.yang.data+json' &> /dev/null
+ --header 'content-type: application/vnd.yang.data+json' )
+
+ if [ -n "$current" -a "$current" != "{}" ]; then
+ curl -k --request DELETE \
+ --url https://$SO_CONTAINER_IP:8008/api/config/config-agent/account/osmjuju \
+ --header 'accept: application/vnd.yang.data+json' \
+ --header 'authorization: Basic YWRtaW46YWRtaW4=' \
+ --header 'cache-control: no-cache' \
+ --header 'content-type: application/vnd.yang.data+json' &> /dev/null
+ fi
result=$(curl -k --request POST \
--url https://$SO_CONTAINER_IP:8008/api/config/config-agent \