X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=boot%2Foof_vm_init.sh;h=fd654430b5571170fc9d84a625ae667f34f7cd77;hb=3f5434179d1721dc8f201b687910e9193ff38622;hp=4a0dde81792a662699aeba118c59272b17d3188f;hpb=b867607b987305df8bfc846e17322c53304cc7b1;p=demo.git diff --git a/boot/oof_vm_init.sh b/boot/oof_vm_init.sh index 4a0dde81..fd654430 100644 --- a/boot/oof_vm_init.sh +++ b/boot/oof_vm_init.sh @@ -2,12 +2,15 @@ CERT=/opt/optf-has/aai_cert.cer KEY=/opt/optf-has/aai_key.key -BUNDLE=/opt/optf-has/aai_bundle.pem +BUNDLE=/opt/optf-has/AAF_RootCA.cer NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt) NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt) NEXUS_DOCKER_REPO=$(cat /opt/config/nexus_docker_repo.txt) -DOCKER_IMAGE_VERSION=$(cat /opt/config/docker_version.txt) +CASS_MUSIC_IMAGE_VERSION=$(cat /opt/config/cass_version.txt) +MUSIC_IMAGE_VERSION=$(cat /opt/config/music_version.txt) +HAS_IMAGE_VERSION=$(cat /opt/config/has_docker_version.txt) +OSDF_IMAGE_VERSION=$(cat /opt/config/osdf_docker_version.txt) cd /opt/optf-has git pull @@ -16,13 +19,14 @@ COND_CONF=/opt/optf-has/conductor.conf LOG_CONF=/opt/optf-has/log.conf #!!! THE FOLLOWING LINE IS A PLACEHOLDER !!! -AAI_cert=/usr/local/bin/aai_cert.cer +AAI_cert=/usr/local/bin/AAF_RootCA.cer -IMAGE_NAME="$NEXUS_DOCKER_REPO/onap/optf-has" +OSDF_IMG=${NEXUS_DOCKER_REPO}/onap/optf-osdf:${OSDF_IMAGE_VERSION} +HAS_IMG=${NEXUS_DOCKER_REPO}/onap/optf-has:${HAS_IMAGE_VERSION} # MUSIC parameters -CASS_IMG=${NEXUS_DOCKER_REPO}/onap/music/cassandra_music:latest -MUSIC_IMG=${NEXUS_DOCKER_REPO}/onap/music/music:latest +CASS_IMG=${NEXUS_DOCKER_REPO}/onap/music/cassandra_music:$CASS_MUSIC_IMAGE_VERSION +MUSIC_IMG=${NEXUS_DOCKER_REPO}/onap/music/music:$MUSIC_IMAGE_VERSION TOMCAT_IMG=library/tomcat:8.5 ZK_IMG=library/zookeeper:3.4 WORK_DIR=/opt/optf-has @@ -31,18 +35,18 @@ CASS_PASSWORD=cassandra1 # pull images from repo docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO -docker pull $NEXUS_DOCKER_REPO/onap/optf-osdf:$DOCKER_IMAGE_VERSION +docker pull ${OSDF_IMG} docker pull ${ZK_IMG} docker pull ${TOMCAT_IMG} docker pull ${CASS_IMG} docker pull ${MUSIC_IMG} -docker pull $NEXUS_DOCKER_REPO/onap/optf-has:$DOCKER_IMAGE_VERSION +docker pull ${HAS_IMG} #run optf-osdf -OSDF_IMAGE_NAME="$NEXUS_DOCKER_REPO/onap/optf-osdf" OSDF_CONFIG=/opt/optf-osdf/config/osdf_config.yaml +HAS_HOST=$(docker inspect --format '{{ .NetworkSettings.Networks.bridge.IPAddress}}' api) mkdir -p /opt/optf-osdf/config @@ -53,7 +57,7 @@ soUsername: "" # SO username for call back. soPassword: "" # SO password for call back. # Credentials for Conductor -conductorUrl: https://localhost:8091/v1/plans/ +conductorUrl: http://$HAS_HOST:8091/v1/plans/ conductorUsername: admin1 conductorPassword: plan.15 conductorPingWaitTime: 60 # seconds to wait before calling the conductor retry URL @@ -93,7 +97,7 @@ osdfCMSchedulerPassword: testpwd1 NEWFILE -docker run -d --name osdf -v $OSDF_CONFIG:/optf/config/osdf_config.yaml -p 8698:8699 ${OSDF_IMAGE_NAME}:latest +docker run -d --name osdf -v $OSDF_CONFIG:/opt/app/config/osdf_config.yaml -p 8698:8699 ${OSDF_IMG} # install MUSIC # create directory for music properties and logs @@ -148,15 +152,32 @@ docker run -d --rm --name music-tomcat --network music-net -p "8080:8080" -v mus # Connect tomcat to host bridge network so that its port can be seen. docker network connect bridge music-tomcat; +sleep 6; +echo "Running onboarding curl command" +curl -X POST \ + http://localhost:8080/MUSIC/rest/v2/admin/onboardAppWithMusic \ + -H 'Cache-Control: no-cache' \ + -H 'Content-Type: application/json' \ + -H 'Postman-Token: 7d2839f4-b032-487a-8998-4d1b27a932d7' \ + -d '{ +"appname": "conductor", +"userId" : "conductor", +"isAAF" : false, +"password" : "c0nduct0r" +} +' +echo "Onboarding curl complete" # Get MUSIC url -#MUSIC_URL=$(docker inspect --format '{{ .NetworkSettings.Networks.bridge.IPAddress}}' music-tomcat) -MUSIC_URL=localhost +MUSIC_URL=$(docker inspect --format '{{ .NetworkSettings.Networks.bridge.IPAddress}}' music-tomcat) +#MUSIC_URL=localhost # Set A&AI and MUSIC url inside OOF-HAS conductor.conf sed -i "138 s%.*%server_url = https://aai.api.simpledemo.onap.org:8443/aai%" $COND_CONF sed -i "141 s%.*%server_url_version = v13%" $COND_CONF -#sed -i "250 s%.*%server_url = $MUSIC_URL:8080/MUSIC/rest/v2%" $COND_CONF +sed -i "257 s%.*%server_url = http://$MUSIC_URL:8080/MUSIC/rest/v2%" $COND_CONF +sed -i "284 s%.*%replication_factor = 1%" $COND_CONF +sed -i "359 s%.*%server_url = http://msb.api.simpledemo.onap.org/api/multicloud%" $COND_CONF # Set A&AI authentication file locations inside OOF-HAS conductor.conf sed -i "153 s%.*%certificate_authority_bundle_file = $AAI_cert%" $COND_CONF @@ -168,14 +189,48 @@ echo $KEY echo $BUNDLE # run optf-has -docker run -d --name controller -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${IMAGE_NAME}:latest python /usr/local/bin/conductor-controller --config-file=/usr/local/bin/conductor.conf - -docker run -d --name api -p "8091:8091" -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${IMAGE_NAME}:latest python /usr/local/bin/conductor-api --port=8091 -- --config-file=/usr/local/bin/conductor.conf - -docker run -d --name solver -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${IMAGE_NAME}:latest python /usr/local/bin/conductor-solver --config-file=/usr/local/bin/conductor.conf - -docker run -d --name reservation -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${IMAGE_NAME}:latest python /usr/local/bin/conductor-reservation --config-file=/usr/local/bin/conductor.conf - -docker run -d --name data -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf -v $CERT:/usr/local/bin/aai_cert.cer -v $KEY:/usr/local/bin/aai_key.key -v $BUNDLE:/usr/local/bin/bundle.pem ${IMAGE_NAME}:latest python /usr/local/bin/conductor-data --config-file=/usr/local/bin/conductor.conf - - +docker run -d --name controller -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${HAS_IMG} python /usr/local/bin/conductor-controller --config-file=/usr/local/bin/conductor.conf + +docker run -d --name api -p "8091:8091" -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${HAS_IMG} python /usr/local/bin/conductor-api --port=8091 -- --config-file=/usr/local/bin/conductor.conf + +docker run -d --name solver -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${HAS_IMG} python /usr/local/bin/conductor-solver --config-file=/usr/local/bin/conductor.conf + +docker run -d --name reservation -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf ${HAS_IMG} python /usr/local/bin/conductor-reservation --config-file=/usr/local/bin/conductor.conf + +docker run -d --name data -v $COND_CONF:/usr/local/bin/conductor.conf -v $LOG_CONF:/usr/local/bin/log.conf -v $CERT:/usr/local/bin/aai_cert.cer -v $KEY:/usr/local/bin/aai_key.key -v $BUNDLE:/usr/local/bin/AAF_RootCA.cer ${HAS_IMG} python /usr/local/bin/conductor-data --config-file=/usr/local/bin/conductor.conf + +sleep 10 + +echo "Inserting healthcheck plan" + +curl -X POST \ + http://localhost:8080/MUSIC/rest/v2/keyspaces/conductor/tables/plans/rows/ \ + -H 'Cache-Control: no-cache' \ + -H 'Content-Type: application/json' \ + -H 'Postman-Token: 502781e8-d588-475d-b181-c2e26625ac95' \ + -H 'X-minorVersion: 3' \ + -H 'X-patchVersion: 0' \ + -H 'ns: conductor' \ + -H 'password: c0nduct0r' \ + -H 'userId: conductor' \ + -d '{ + "consistencyInfo": { + "type": "eventual" + }, + "values": { + "id" : "healthcheck", + "created": 1479482603641, + "message": "", + "name": "foo", + "recommend_max": 1, + "solution": "{\"healthcheck\": \" healthcheck\"}", + "status": "done", + "template": "{\"healthcheck\": \"healthcheck\"}", + "timeout": 3600, + "translation": "{\"healthcheck\": \" healthcheck\"}", + "updated": 1484324150629 + } +} +' + +echo "Healthcheck plan inserted"