#!/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 # INITIALIZE: dmaap object JSON=/tmp/$$.dmaap cat << EOF > $JSON { "version": "1", "topicNsRoot": "org.onap.dmaap", "drProvUrl": "http://${2}:8080", "dmaapName": "onapCSIT", "bridgeAdminTopic": "MM_AGENT_PROV" } EOF echo "Initializing /dmaap endpoint" curl -v -X POST -d @${JSON} -H "Content-Type: application/json" http://$1:8080/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 -v -X POST -d @${JSON} -H "Content-Type: application/json" http://$1:8080/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": "3904" } EOF echo "Initializing /mr_clusters endpoint" curl -v -X POST -d @${JSON} -H "Content-Type: application/json" http://$1:8080/webapi/mr_clusters