blob: c7cf03ef49cb6213ea2df9019565b9efb892c9f4 [file] [log] [blame]
#!/bin/bash
# $1 is the IP address of the buscontroller
# $2 is the IP address of the DRPS
# $3 is the IP address of the MRC
# $4 is the protocol (defaults to http)
PROTO=${4:-http}
if [ "$PROTO" = "http" ]
then
PORT=8080
CURLOPT="-v"
MRPORT=3904
DRPORT=8080
else
PORT=8443
CURLOPT="-v -k"
MRPORT=3905
DRPORT=8443
fi
# INITIALIZE: dmaap object
JSON=/tmp/$$.dmaap
cat << EOF > $JSON
{
"version": "1",
"topicNsRoot": "org.onap.dmaap",
"drProvUrl": "http://${2}:${DRPORT}",
"dmaapName": "onapCSIT",
"bridgeAdminTopic": "MM_AGENT_PROV"
}
EOF
echo "Initializing /dmaap endpoint"
curl ${CURLOPT} -X POST -d @${JSON} -H "Content-Type: application/json" ${PROTO}://$1:${PORT}/webapi/dmaap
# INITIALIZE: dcaeLocation object
JSON=/tmp/$$.loc
cat << EOF > $JSON
{
"dcaeLocationName": "csit-sanfrancisco",
"dcaeLayer": "central-cloud",
"clli": "CSIT12345",
"zone": "zoneA"
}
EOF
echo "Initializing /dcaeLocations endpoint"
curl ${CURLOPT} -X POST -d @${JSON} -H "Content-Type: application/json" ${PROTO}://$1:${PORT}/webapi/dcaeLocations
# INITIALIZE: MR object in 1 site
# since MR is currently deployed via docker-compose, its IP doesn't seem
# to be routable from DBCL. Fortunately, the MR port is mapped from the docker bridge IP address.
# Found this article for how to deterine the docker bridge IP so using it as a workaround.
# https://stackoverflow.com/questions/22944631/how-to-get-the-ip-address-of-the-docker-host-from-inside-a-docker-container
# Used the following snippet found buried in a comment to an answer and then modified for only 1 value.
DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+' | head -1 )
# Perhaps there is a better way...
JSON=/tmp/$$.mrc
cat << EOF > $JSON
{
"dcaeLocationName": "csit-sanfrancisco",
"fqdn": "$DOCKER_HOST",
"topicProtocol" : "http",
"topicPort": "${MRPORT}"
}
EOF
echo "Initializing /mr_clusters endpoint"
curl ${CURLOPT} -X POST -d @${JSON} -H "Content-Type: application/json" ${PROTO}://$1:${PORT}/webapi/mr_clusters