diff options
-rw-r--r-- | boot/aaf_install.sh | 9 | ||||
-rw-r--r-- | boot/aaf_vm_init.sh | 49 | ||||
-rw-r--r-- | boot/appc_vm_init.sh | 3 | ||||
-rw-r--r-- | boot/dbcl_serv.sh | 116 | ||||
-rw-r--r-- | boot/dbcl_vm_init.sh | 6 | ||||
-rw-r--r-- | boot/mr_install.sh | 6 | ||||
-rw-r--r-- | boot/mr_vm_init.sh | 8 | ||||
-rw-r--r-- | boot/oof_install.sh | 8 | ||||
-rw-r--r-- | boot/oof_vm_init.sh | 135 | ||||
-rw-r--r-- | boot/policy_vm_init.sh | 4 | ||||
-rw-r--r-- | heat/ONAP/onap_openstack.env | 7 | ||||
-rw-r--r-- | heat/ONAP/onap_openstack.yaml | 6 | ||||
-rw-r--r-- | heat/ONAP/onap_openstack_light.yaml | 6 | ||||
-rw-r--r-- | heat/ONAP/onap_openstack_template.env | 3 | ||||
-rw-r--r-- | vnfs/VES5.0/evel/evel-library/code/evel_library/evel.h | 31 | ||||
-rw-r--r-- | vnfs/VES5.0/evel/evel-library/code/evel_library/evel_jsonobject.c | 10 | ||||
-rw-r--r-- | vnfs/VES5.0/evel/evel-library/code/evel_library/evel_other.c | 12 | ||||
-rw-r--r-- | vnfs/VES5.0/evel/evel-library/code/evel_library/evel_scaling_measurement.c | 137 |
18 files changed, 401 insertions, 155 deletions
diff --git a/boot/aaf_install.sh b/boot/aaf_install.sh index 0378a4e7..ea80e47f 100644 --- a/boot/aaf_install.sh +++ b/boot/aaf_install.sh @@ -95,8 +95,13 @@ resolvconf -u cd /opt git clone -b $GERRIT_BRANCH --single-branch $CODE_REPO chmod +x /opt/authz/auth/auth-cass/docker/dinstall.sh +chmod +x /opt/authz/auth/auth-cass/docker/backup/backup.sh +chmod +x /opt/authz/auth/docker/dbuild.sh chmod +x /opt/authz/auth/docker/drun.sh -chmod +x /opt/authz/auth/docker/d.props +chmod +x /opt/authz/auth/docker/dstart.sh +chmod +x /opt/authz/auth/docker/dstop.sh +# d.props is not a startable shell +# chmod +x /opt/authz/auth/docker/d.props #Update maven settings cat > /usr/share/maven/conf/settings.xml << EOF @@ -513,4 +518,4 @@ then fi cd /opt -./aaf_vm_init.sh
\ No newline at end of file +./aaf_vm_init.sh diff --git a/boot/aaf_vm_init.sh b/boot/aaf_vm_init.sh index 7bc868a8..ea64c3e5 100644 --- a/boot/aaf_vm_init.sh +++ b/boot/aaf_vm_init.sh @@ -4,19 +4,60 @@ 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) +HOSTNAME=`hostname` +FQDN=aaf.api.simpledemo.onap.org +HOST_IP=$(cat /opt/config/dns_ip_addr.txt) docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO cd /opt/authz git pull +if [ "`docker container ls | grep aaf_cass`" = "" ]; then + # Cassandra Install + cd /opt/authz/auth/auth-cass/docker + # Phase 1 + ./dinstall.sh + echo "Waiting for Cassandra to startup" + sleep 15 + # Phase 2 + if [ "`docker container ls | grep aaf_cass`" = "" ]; then + echo "Error on Cassandra install" + exit + else + ./dinstall.sh + fi +fi + +CASS_IP=`docker inspect aaf_cass | grep '"IPAddress' | head -1 | cut -d '"' -f 4` +CASS_HOST="cass.aaf.osaaf.org:"$CASS_IP + sed -i "s/DOCKER_REPOSITORY=.*/DOCKER_REPOSITORY="$NEXUS_DOCKER_REPO"/g" /opt/authz/auth/docker/d.props -sed -i "s/VERSION=.*/VERSION="$DOCKER_IMAGE_VERSION"/g" /opt/authz/auth/docker/d.props +#sed -i "s/VERSION=.*/VERSION="$DOCKER_IMAGE_VERSION"/g" /opt/authz/auth/docker/d.props +sed -i "s/HOSTNAME=.*/HOSTNAME="$HOSTNAME"/g" /opt/authz/auth/docker/d.props +sed -i "s/HOST_IP=.*/HOST_IP="$HOST_IP"/g" /opt/authz/auth/docker/d.props +sed -i "s/CASS_HOST=.*/CASS_HOST="$CASS_HOST"/g" /opt/authz/auth/docker/d.props -cd /opt/authz/auth/auth-cass/docker -./dinstall.sh +if [ ! -e "/opt/app/osaaf/etc" ]; then + # Nothing installed, install sample + mkdir -p /opt/app/osaaf/logs + cd /opt/app/osaaf/logs + mkdir fs cm gui hello locate oauth service + cd /opt + cp -Rf /opt/authz/auth/sample/* /opt/app/osaaf +fi +# Set Location information +# Need new Deployment system properties +CADI_LATITUDE=37.781 +CADI_LONGITUDE=-122.261 -sleep 2 +CADI_TRUST_MASKS="${HOST_IP%\.[0-9]*}\\/24,${CASS_IP%\.[0-9]*}\\/24" +sed -i "s/cadi_latitude=.*/cadi_latitude="$CADI_LATITUDE"/g" /opt/app/osaaf/local/org.osaaf.location.props +sed -i "s/cadi_longitude=.*/cadi_longitude="$CADI_LONGITUDE"/g" /opt/app/osaaf/local/org.osaaf.location.props +sed -i "s/cadi_registration_hostname=.*/cadi_registration_hostname="$FQDN"/g" /opt/app/osaaf/local/org.osaaf.location.props +sed -i "s/cadi_trust_masks=.*/cadi_trust_masks="$CADI_TRUST_MASKS"/g" /opt/app/osaaf/local/org.osaaf.location.props cd /opt/authz/auth/docker +./dbuild.sh +sleep 5 ./drun.sh
\ No newline at end of file diff --git a/boot/appc_vm_init.sh b/boot/appc_vm_init.sh index 3e57c391..647e9597 100644 --- a/boot/appc_vm_init.sh +++ b/boot/appc_vm_init.sh @@ -22,4 +22,7 @@ docker tag $NEXUS_DOCKER_REPO/onap/appc-image:$DOCKER_IMAGE_VERSION onap/appc-im docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$DGBUILDER_IMAGE_VERSION docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$DGBUILDER_IMAGE_VERSION onap/ccsdk-dgbuilder-image:latest +docker pull $NEXUS_DOCKER_REPO/onap/appc-cdt-image:$DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/appc-cdt-image:$DOCKER_IMAGE_VERSION onap/appc-cdt-image:latest + /opt/docker/docker-compose up -d diff --git a/boot/dbcl_serv.sh b/boot/dbcl_serv.sh deleted file mode 100644 index dfb70206..00000000 --- a/boot/dbcl_serv.sh +++ /dev/null @@ -1,116 +0,0 @@ - -############################################################################# -# -# Copyright © 2018 AT&T Intellectual Property. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -############################################################################# - -#!/bin/sh -### BEGIN INIT INFO -# Provides: -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Start daemon at boot time -# Description: Enable service provided by daemon. -### END INIT INFO - -dir="/opt" -cmd="./dbcl_vm_init.sh" -user="root" - -name=`basename $0` -pid_file="/var/run/$name.pid" -stdout_log="/var/log/$name.log" -stderr_log="/var/log/$name.err" - -get_pid() { - cat "$pid_file" -} - -is_running() { - [ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1 -} - -case "$1" in - start) - if is_running; then - echo "Already started" - else - echo "Starting $name" - cd "$dir" - if [ -z "$user" ]; then - sudo $cmd >> "$stdout_log" 2>> "$stderr_log" & - else - sudo -u "$user" $cmd >> "$stdout_log" 2>> "$stderr_log" & - fi - echo $! > "$pid_file" - if ! is_running; then - echo "Unable to start, see $stdout_log and $stderr_log" - exit 1 - fi - fi - ;; - stop) - if is_running; then - echo -n "Stopping $name.." - kill `get_pid` - for i in {1..10} - do - if ! is_running; then - break - fi - - echo -n "." - sleep 1 - done - echo - - if is_running; then - echo "Not stopped; may still be shutting down or shutdown may have failed" - exit 1 - else - echo "Stopped" - if [ -f "$pid_file" ]; then - rm "$pid_file" - fi - fi - else - echo "Not running" - fi - ;; - restart) - $0 stop - if is_running; then - echo "Unable to stop, will not attempt to start" - exit 1 - fi - $0 start - ;; - status) - if is_running; then - echo "Running" - else - echo "Stopped" - exit 1 - fi - ;; - *) - echo "Usage: $0 {start|stop|restart|status}" - exit 1 - ;; -esac - -exit 0 diff --git a/boot/dbcl_vm_init.sh b/boot/dbcl_vm_init.sh index ba9859ad..3605f898 100644 --- a/boot/dbcl_vm_init.sh +++ b/boot/dbcl_vm_init.sh @@ -4,7 +4,7 @@ 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/uui_docker.txt) +DOCKER_IMAGE_VERSION=$(cat /opt/config/docker_version.txt) # Refresh images docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO @@ -15,7 +15,7 @@ docker rm -f dmaap-buscontroller TMP_CFG=/tmp/docker-dmaap-buscontroller.conf cat >> $TMP_CFG <<!EOF -DMAAPBC_INT_HTTPS_PORT=0 +DMAAPBC_INT_HTTPS_PORT=8443 DMAAPBC_PG_ENABLED=false DMAAPBC_INSTANCE_NAME=ONAP-CSIT DMAAPBC_AAF_URL=https://aaf.api.simpledemo.onap.org:8095/proxy/ @@ -26,6 +26,8 @@ DMAAPBC_DRPROV_FQDN=drprov.simpledemo.onap.org # Insert docker run instructions here docker run -i -t -d --name dmaap-buscontroller -p 8080:8080 -p 8443:8443 -v $TMP_CFG:/opt/app/config/conf $NEXUS_DOCKER_REPO/onap/dmaap/buscontroller:$DOCKER_IMAGE_VERSION +sleep 15 + DBCL_FQDN=dbc.api.simpledemo.onap.org DRPS_FQDN=drprov.simpledemo.onap.org MR_FQDN=mr.api.simpledemo.onap.org diff --git a/boot/mr_install.sh b/boot/mr_install.sh index 9bd56563..391e674b 100644 --- a/boot/mr_install.sh +++ b/boot/mr_install.sh @@ -64,11 +64,7 @@ update-rc.d mr_serv.sh defaults # b) scripts for bus controller (dbcl) curl -k $NEXUS_REPO/org.onap.demo/boot/$ARTIFACTS_VERSION/dbcl_vm_init.sh -o /opt/dbcl_vm_init.sh -curl -k $NEXUS_REPO/org.onap.demo/boot/$ARTIFACTS_VERSION/dbcl_serv.sh -o /opt/dbcl_serv.sh chmod +x /opt/dbcl_vm_init.sh -chmod +x /opt/dbcl_serv.sh -mv /opt/dbcl_serv.sh /etc/init.d -update-rc.d dbcl_serv.sh defaults # Download and install docker-engine and docker-compose echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker.list @@ -102,5 +98,5 @@ resolvconf -u # Clone Gerrit repository and run docker containers cd /opt -git clone -b $GERRIT_BRANCH --single-branch $CODE_REPO dcae-startup-vm-message-router +git clone -b $GERRIT_BRANCH --single-branch $CODE_REPO /opt/startup-vm-message-router ./mr_vm_init.sh diff --git a/boot/mr_vm_init.sh b/boot/mr_vm_init.sh index f0626762..78d61f8a 100644 --- a/boot/mr_vm_init.sh +++ b/boot/mr_vm_init.sh @@ -5,12 +5,12 @@ export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort 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) docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO -cd /opt/dcae-startup-vm-message-router +cd /opt/startup-vm-message-router/demo sed -i 's|wget .*|wget -q \"http://archive.apache.org/dist/kafka/${KAFKA_VERSION}/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz\" \\|g' deploy.sh -bash deploy.sh & +bash deploy.sh &>/dev/null &disown -bash dbcl_vm_init.sh & +cd /opt +bash dbcl_vm_init.sh &>/dev/null &disown diff --git a/boot/oof_install.sh b/boot/oof_install.sh index 89c3013d..2e60eafa 100644 --- a/boot/oof_install.sh +++ b/boot/oof_install.sh @@ -91,6 +91,10 @@ service docker restart echo "nameserver "$DNS_IP_ADDR >> /etc/resolvconf/resolv.conf.d/head resolvconf -u +# Clone Gerrit repository +cd /opt +git clone -b $GERRIT_BRANCH --single-branch $CODE_REPO optf-has + # Rename network interface in openstack Ubuntu 16.04 images. Then, reboot the VM to pick up changes if [[ $CLOUD_ENV != "rackspace" ]] then @@ -103,7 +107,5 @@ then reboot fi -# Clone Gerrit repository and run docker containers -cd /opt -git clone -b $GERRIT_BRANCH --single-branch $CODE_REPO optf-has +# Run docker containers ./oof_vm_init.sh
\ No newline at end of file diff --git a/boot/oof_vm_init.sh b/boot/oof_vm_init.sh index 836aa346..717a16e9 100644 --- a/boot/oof_vm_init.sh +++ b/boot/oof_vm_init.sh @@ -1,5 +1,9 @@ #!/bin/bash +CERT=/opt/optf-has/aai_cert.cer +KEY=/opt/optf-has/aai_key.key +BUNDLE=/opt/optf-has/aai_bundle.pem + 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) @@ -11,8 +15,8 @@ git pull COND_CONF=/opt/optf-has/conductor.conf LOG_CONF=/opt/optf-has/log.conf -#THE FOLLOWING LINE IS A PLACEHOLDER -AAI_cert=/opt/optf-has/aai_cert.cer +#!!! THE FOLLOWING LINE IS A PLACEHOLDER !!! +AAI_cert=/usr/local/bin/aai_cert.cer IMAGE_NAME="$NEXUS_DOCKER_REPO/onap/optf-has" @@ -27,19 +31,77 @@ 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 ${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 + +#run optf-osdf + +OSDF_IMAGE_NAME="$NEXUS_DOCKER_REPO/onap/optf-osdf" +OSDF_CONFIG=/opt/optf-osdf/config/osdf_config.yaml + +mkdir -p /opt/optf-osdf/config + +cat > $OSDF_CONFIG<<NEWFILE + +# Credentials for SO +soUsername: "" # SO username for call back. +soPassword: "" # SO password for call back. + +# Credentials for Conductor +conductorUrl: https://localhost:8091/v1/plans/ +conductorUsername: admin1 +conductorPassword: plan.15 +conductorPingWaitTime: 60 # seconds to wait before calling the conductor retry URL +conductorMaxRetries: 30 # if we don't get something in 30 minutes, give up + +# Policy Platform -- requires ClientAuth, Authorization, and Environment +policyPlatformUrl: http://policy.api.simpledemo.onap.org:8081/pdp/api/getConfig # Policy Dev platform URL +policyPlatformEnv: TEST # Environment for policy platform +policyPlatformUsername: testpdp # Policy platform username. +policyPlatformPassword: alpha123 # Policy platform password. +policyClientUsername: python # For use with ClientAuth +policyClientPassword: test # For use with ClientAuth + +# Credentials for DMaaP +messageReaderHosts: NA +messageReaderTopic: NA +messageReaderAafUserId: NA +messageReaderAafPassword: NA + +# Credentials for SDC +sdcUrl: NA +sdcUsername: NA +sdcPassword: NA +sdcONAPInstanceID: NA + +# Credentials for the OOF placement service - Generic +osdfPlacementUsername: test +osdfPlacementPassword: testpwd + +# Credentials for the OOF placement service - SO +osdfPlacementSOUsername: so_test +osdfPlacementSOPassword: so_testpwd + +# Credentials for the OOF CM scheduling service - Generic +osdfCMSchedulerUsername: test1 +osdfCMSchedulerPassword: testpwd1 + +NEWFILE + +docker run -d --name osdf -v $OSDF_CONFIG:/optf/config/osdf_config.yaml -p 8698:8699 ${OSDF_IMAGE_NAME}:latest + # install MUSIC # create directory for music properties and logs mkdir -p /opt/optf-has/music/properties mkdir -p /opt/optf-has/music/logs # add music.properties file -cat >> /opt/optf-has/music/properties/music.properties << NEWFILE +cat > /opt/optf-has/music/properties/music.properties<<NEWFILE my.id=0 all.ids=0 my.public.ip=localhost @@ -86,21 +148,84 @@ 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 # 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 "250 s%.*%server_url = http://$MUSIC_URL:8080/MUSIC/rest/v2%" $COND_CONF +sed -i "277 s%.*%replication_factor = 1%" $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 + +echo "Values to data component" +echo $CERT +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
\ No newline at end of file + +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 + +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": "solved", + "template": "{\"healthcheck\": \"healthcheck\"}", + "timeout": 3600, + "translation": "{\"healthcheck\": \" healthcheck\"}", + "updated": 1484324150629 + } +} +' + +echo "Healthcheck plan inserted"
\ No newline at end of file diff --git a/boot/policy_vm_init.sh b/boot/policy_vm_init.sh index 3803a83d..099ef8f5 100644 --- a/boot/policy_vm_init.sh +++ b/boot/policy_vm_init.sh @@ -71,7 +71,7 @@ docker tag $NEXUS_DOCKER_REPO/onap/policy-pe:$DOCKER_IMAGE_VERSION onap/policy-p docker pull $NEXUS_DOCKER_REPO/onap/policy-drools:$DOCKER_IMAGE_VERSION docker tag $NEXUS_DOCKER_REPO/onap/policy-drools:$DOCKER_IMAGE_VERSION onap/policy-drools:latest -docker pull $NEXUS_DOCKER_REPO/onap/policy-nexus:$DOCKER_IMAGE_VERSION -docker tag $NEXUS_DOCKER_REPO/onap/policy-nexus:$DOCKER_IMAGE_VERSION onap/policy-nexus:latest +#docker pull $NEXUS_DOCKER_REPO/onap/policy-nexus:$DOCKER_IMAGE_VERSION +#docker tag $NEXUS_DOCKER_REPO/onap/policy-nexus:$DOCKER_IMAGE_VERSION onap/policy-nexus:latest /opt/docker/docker-compose up -d diff --git a/heat/ONAP/onap_openstack.env b/heat/ONAP/onap_openstack.env index 05a9d784..b9f0856c 100644 --- a/heat/ONAP/onap_openstack.env +++ b/heat/ONAP/onap_openstack.env @@ -141,7 +141,7 @@ parameters: aai_sparky_docker: 1.2-STAGING-latest appc_docker: 1.3.0-SNAPSHOT-latest so_docker: 1.2.1 - policy_docker: 1.2-STAGING-latest + policy_docker: 1.2.0 portal_docker: 2.1-STAGING-latest robot_docker: 1.2-STAGING-latest sdc_docker: 1.2-STAGING-latest @@ -159,6 +159,7 @@ parameters: oof_docker: latest aaf_docker: 2.1.0-SNAPSHOT nbi_docker: latest + dbcl_docker: latest dcae_docker: 1.1.2 dcae_snmptrap_docker: latest @@ -214,7 +215,7 @@ parameters: ##################### aai_repo: http://gerrit.onap.org/r/aai/test-config appc_repo: http://gerrit.onap.org/r/appc/deployment.git - mr_repo: http://gerrit.onap.org/r/dcae/demo/startup/message-router.git + mr_repo: http://gerrit.onap.org/r/dmaap/messagerouter/messageservice.git so_repo: http://gerrit.onap.org/r/so/docker-config.git policy_repo: http://gerrit.onap.org/r/policy/docker.git portal_repo: http://gerrit.onap.org/r/portal.git @@ -227,4 +228,4 @@ parameters: music_repo: http://gerrit.onap.org/r/music.git nbi_repo: http://gerrit.onap.org/r/externalapi/nbi.git aaf_repo: http://gerrit.onap.org/r/aaf/authz.git - oof_repo: http://gerrit.onap.org/r/optf/has.git
\ No newline at end of file + oof_repo: http://gerrit.onap.org/r/optf/has.git diff --git a/heat/ONAP/onap_openstack.yaml b/heat/ONAP/onap_openstack.yaml index 51495cef..a63ff1aa 100644 --- a/heat/ONAP/onap_openstack.yaml +++ b/heat/ONAP/onap_openstack.yaml @@ -426,6 +426,8 @@ parameters: type: string nbi_docker: type: string + dbcl_docker: + type: string vfc_nokia_docker: type: string @@ -952,6 +954,7 @@ resources: __cloud_env__: { get_param: cloud_env } __external_dns__: { get_param: external_dns } __mr_repo__: { get_param: mr_repo } + __dbcl_docker__: { get_param: dbcl_docker } template: | #!/bin/bash @@ -967,6 +970,7 @@ resources: echo "__cloud_env__" > /opt/config/cloud_env.txt echo "__external_dns__" > /opt/config/external_dns.txt echo "__mr_repo__" > /opt/config/remote_repo.txt + echo "__dbcl_docker__" > /opt/config/docker_version.txt # Download and run install script curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh @@ -2148,6 +2152,7 @@ resources: __external_dns__: { get_param: external_dns } __aaf_repo__: { get_param: aaf_repo } __gerrit_branch__: { get_param: aaf_branch } + __local_ip__: { get_param: aaf_ip_addr } template: | #!/bin/bash @@ -2164,6 +2169,7 @@ resources: echo "__external_dns__" > /opt/config/external_dns.txt echo "__aaf_repo__" > /opt/config/remote_repo.txt echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt + echo "__local_ip__" > /opt/config/local_ip.txt # Download and run install script curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/aaf_install.sh -o /opt/aaf_install.sh diff --git a/heat/ONAP/onap_openstack_light.yaml b/heat/ONAP/onap_openstack_light.yaml index dc0db557..f72f3d53 100644 --- a/heat/ONAP/onap_openstack_light.yaml +++ b/heat/ONAP/onap_openstack_light.yaml @@ -351,6 +351,8 @@ parameters: type: string nbi_docker: type: string + dbcl_docker: + type: string vfc_nokia_docker: type: string @@ -873,6 +875,7 @@ resources: __cloud_env__: { get_param: cloud_env } __external_dns__: { get_param: external_dns } __mr_repo__: { get_param: mr_repo } + __dbcl_docker__: { get_param: dbcl_docker } template: | #!/bin/bash @@ -888,6 +891,7 @@ resources: echo "__cloud_env__" > /opt/config/cloud_env.txt echo "__external_dns__" > /opt/config/external_dns.txt echo "__mr_repo__" > /opt/config/remote_repo.txt + echo "__dbcl_docker__" > /opt/config/docker_version.txt # Download and run install script curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh @@ -2026,6 +2030,7 @@ resources: __external_dns__: { get_param: external_dns } __aaf_repo__: { get_param: aaf_repo } __gerrit_branch__: { get_param: aaf_branch } + __local_ip__: { get_param: aaf_ip_addr } template: | #!/bin/bash @@ -2042,6 +2047,7 @@ resources: echo "__external_dns__" > /opt/config/external_dns.txt echo "__aaf_repo__" > /opt/config/remote_repo.txt echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt + echo "__local_ip__" > /opt/config/local_ip.txt # Download and run install script curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/aaf_install.sh -o /opt/aaf_install.sh diff --git a/heat/ONAP/onap_openstack_template.env b/heat/ONAP/onap_openstack_template.env index 1b3cd2ed..63046011 100644 --- a/heat/ONAP/onap_openstack_template.env +++ b/heat/ONAP/onap_openstack_template.env @@ -159,6 +159,7 @@ parameters: oof_docker: ${OOF_DOCKER} aaf_docker: ${AAF_DOCKER} nbi_docker: ${NBI_DOCKER} + dbcl_docker: ${DBCL_DOCKER} dcae_docker: ${BOOTSTRAP_DOCKER} dcae_snmptrap_docker: ${SNMPTRAP_DOCKER} @@ -214,7 +215,7 @@ parameters: ##################### aai_repo: http://gerrit.onap.org/r/aai/test-config appc_repo: http://gerrit.onap.org/r/appc/deployment.git - mr_repo: http://gerrit.onap.org/r/dcae/demo/startup/message-router.git + mr_repo: http://gerrit.onap.org/r/dmaap/messagerouter/messageservice.git so_repo: http://gerrit.onap.org/r/so/docker-config.git policy_repo: http://gerrit.onap.org/r/policy/docker.git portal_repo: http://gerrit.onap.org/r/portal.git diff --git a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel.h b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel.h index 5c05993d..b483b1f0 100644 --- a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel.h +++ b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel.h @@ -703,6 +703,37 @@ typedef struct event_measurement { } EVENT_MEASUREMENT; + + +/**************************************************************************//** + * Add an additional value name/value pair to the Measurement. + * + * The name and value are null delimited ASCII strings. The library takes + * a copy so the caller does not have to preserve values after the function + * returns. + * + * @param measurement Pointer to the measurement. + * @param name ASCIIZ string with the attribute's name. The caller + * does not need to preserve the value once the function + * returns. + * @param value ASCIIZ string with the attribute's value. The caller + * does not need to preserve the value once the function + * returns. + *****************************************************************************/ +void evel_measurement_addl_info_add(EVENT_MEASUREMENT * measurement, char * name, char * value); + +/**************************************************************************//** + * Add a json object to jsonObject list. + * + * The name and value are null delimited ASCII strings. The library takes + * a copy so the caller does not have to preserve values after the function + * returns. + * + * @param measurement Pointer to the ScalingMeasurement + * @param jsonobj Pointer to json object + *****************************************************************************/ +void evel_measurement_addl_object_add(EVENT_MEASUREMENT * measurement, EVEL_JSON_OBJECT *jsonobj); + /**************************************************************************//** * CPU Usage. * JSON equivalent field: cpuUsage diff --git a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_jsonobject.c b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_jsonobject.c index 4f788bd1..8bf2b70f 100644 --- a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_jsonobject.c +++ b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_jsonobject.c @@ -321,7 +321,7 @@ void evel_jsonobject_add_jsoninstance(EVEL_JSON_OBJECT * pobj, EVEL_JSON_OBJECT_ assert(pobj != NULL); assert(jinst != NULL); - EVEL_DEBUG("Adding json object instance"); + EVEL_DEBUG("Adding json object instance %p",jinst); dlist_push_last(&pobj->jsonobjectinstances, jinst); @@ -375,6 +375,7 @@ void evel_free_internal_key(EVEL_INTERNAL_KEY * keyp) free(keyp->keyname); evel_free_option_string(&keyp->keyvalue); + free(keyp); EVEL_EXIT(); } @@ -407,6 +408,7 @@ void evel_free_jsonobjinst(EVEL_JSON_OBJECT_INSTANCE * objinst) evel_free_internal_key(other_field); other_field = dlist_pop_last(&objinst->object_keys); } + free(objinst); EVEL_EXIT(); } @@ -425,6 +427,7 @@ void evel_free_jsonobject(EVEL_JSON_OBJECT * jsobj) EVEL_ENTER(); assert(jsobj != NULL); + EVEL_DEBUG("Freeing Json Object (%s)", jsobj->object_name); free(jsobj->object_name); evel_free_option_string(&jsobj->objectschema); evel_free_option_string(&jsobj->objectschemaurl); @@ -437,11 +440,12 @@ void evel_free_jsonobject(EVEL_JSON_OBJECT * jsobj) other_field = dlist_pop_last(&jsobj->jsonobjectinstances); while (other_field != NULL) { - EVEL_DEBUG("Freeing Object Instance Field (%s)", - other_field->jsonstring); + EVEL_DEBUG("Freeing jsonObject Instance Field %p (%s)", + other_field,other_field->jsonstring); evel_free_jsonobjinst(other_field); other_field = dlist_pop_last(&jsobj->jsonobjectinstances); } + free(jsobj); EVEL_EXIT(); } diff --git a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_other.c b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_other.c index b238e389..360f5b91 100644 --- a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_other.c +++ b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_other.c @@ -200,7 +200,6 @@ void evel_other_field_add_namedarray(EVENT_OTHER * other, const char *hashname, *****************************************************************************/ void evel_other_field_add_jsonobj(EVENT_OTHER * other, EVEL_JSON_OBJECT *jsonobj) { - OTHER_FIELD * other_field = NULL; EVEL_ENTER(); /***************************************************************************/ @@ -471,6 +470,8 @@ void evel_json_encode_other(EVEL_JSON_BUFFER * jbuf, void evel_free_other(EVENT_OTHER * event) { OTHER_FIELD * other_field = NULL; + EVEL_JSON_OBJECT * jsonobjp = NULL; + DLIST_ITEM * other_field_item = NULL; EVEL_ENTER(); @@ -495,6 +496,15 @@ void evel_free_other(EVENT_OTHER * event) free(other_field); other_field = dlist_pop_last(&event->namedvalues); } + + jsonobjp = dlist_pop_last(&event->jsonobjects); + while (jsonobjp != NULL) + { + evel_free_jsonobject( jsonobjp ); + + jsonobjp = dlist_pop_last(&event->jsonobjects); + } + evel_free_header(&event->header); EVEL_EXIT(); diff --git a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_scaling_measurement.c b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_scaling_measurement.c index d484b2eb..84d2564b 100644 --- a/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_scaling_measurement.c +++ b/vnfs/VES5.0/evel/evel-library/code/evel_library/evel_scaling_measurement.c @@ -170,6 +170,35 @@ void evel_measurement_addl_info_add(EVENT_MEASUREMENT * measurement, char * name } /**************************************************************************//** + * Add a json object to jsonObject list. + * + * The name and value are null delimited ASCII strings. The library takes + * a copy so the caller does not have to preserve values after the function + * returns. + * + * @param measurement Pointer to the ScalingMeasurement + * @param jsonobj Pointer to json object + *****************************************************************************/ +void evel_measurement_addl_object_add(EVENT_MEASUREMENT * measurement, EVEL_JSON_OBJECT *jsonobj) +{ + EVEL_ENTER(); + + /***************************************************************************/ + /* Check preconditions. */ + /***************************************************************************/ + assert(measurement != NULL); + assert(measurement->header.event_domain == EVEL_DOMAIN_MEASUREMENT); + assert(jsonobj != NULL); + + EVEL_DEBUG("Adding jsonObject %p",jsonobj); + + dlist_push_last(&measurement->additional_objects, jsonobj); + + EVEL_EXIT(); +} + + +/**************************************************************************//** * Set the Concurrent Sessions property of the Measurement. * * @note The property is treated as immutable: it is only valid to call @@ -2820,17 +2849,17 @@ void evel_vnic_performance_tx_total_pkt_delta_set(MEASUREMENT_VNIC_PERFORMANCE * * @param tx_ucast_packets_acc *****************************************************************************/ void evel_vnic_performance_tx_ucast_pkt_acc_set(MEASUREMENT_VNIC_PERFORMANCE * const vnic_performance, - const double tx_ucast_packets_acc) + const double mtx_ucast_packets_acc) { EVEL_ENTER(); /***************************************************************************/ /* Check preconditions. */ /***************************************************************************/ - assert(tx_ucast_packets_acc >= 0.0); + assert(mtx_ucast_packets_acc >= 0.0); evel_set_option_double(&vnic_performance->tx_ucast_packets_acc, - tx_ucast_packets_acc, + mtx_ucast_packets_acc, "Transmitted Unicast Packets accumulated"); EVEL_EXIT(); @@ -3023,6 +3052,13 @@ void evel_json_encode_measurement(EVEL_JSON_BUFFER * jbuf, DLIST_ITEM * nested_item = NULL; DLIST_ITEM * addl_info_item = NULL; OTHER_FIELD *addl_info = NULL; + DLIST_ITEM * other_field_item = NULL; + EVEL_JSON_OBJECT_INSTANCE * jsonobjinst = NULL; + EVEL_JSON_OBJECT * jsonobjp = NULL; + DLIST_ITEM * jsobj_field_item = NULL; + EVEL_INTERNAL_KEY * keyinst = NULL; + DLIST_ITEM * keyinst_field_item = NULL; + EVEL_ENTER(); @@ -3078,6 +3114,92 @@ void evel_json_encode_measurement(EVEL_JSON_BUFFER * jbuf, } } + + evel_json_checkpoint(jbuf); + if(evel_json_open_opt_named_list(jbuf, "additionalObjects")) + { + bool item_added = false; + other_field_item = dlist_get_first(&event->additional_objects); + while (other_field_item != NULL) + { + jsonobjp = (EVEL_JSON_OBJECT *) other_field_item->item; + if(jsonobjp != NULL) + { + evel_json_open_object(jbuf); + + if( evel_json_open_opt_named_list(jbuf, "objectInstances")) + { + bool item_added2 = false; + jsobj_field_item = dlist_get_first(&jsonobjp->jsonobjectinstances); + while (jsobj_field_item != NULL) + { + jsonobjinst = (EVEL_JSON_OBJECT_INSTANCE *) jsobj_field_item->item; + if( jsonobjinst != NULL ) + { + evel_json_open_object(jbuf); + evel_enc_kv_object(jbuf, "objectInstance", jsonobjinst->jsonstring); + evel_enc_kv_ull(jbuf, "objectInstanceEpochMicrosec", jsonobjinst->objinst_epoch_microsec); + //evel_json_checkpoint(jbuf); + if (evel_json_open_opt_named_list(jbuf, "objectKeys")) + { + bool item_added3 = false; + + keyinst_field_item = dlist_get_first(&jsonobjinst->object_keys); + while (keyinst_field_item != NULL) + { + keyinst = (EVEL_INTERNAL_KEY *)keyinst_field_item->item; + if(keyinst != NULL) + { + evel_json_open_object(jbuf); + evel_enc_kv_string(jbuf, "keyName", keyinst->keyname); + evel_enc_kv_opt_int(jbuf, "keyOrder", &keyinst->keyorder); + evel_enc_kv_opt_string(jbuf, "keyValue", &keyinst->keyvalue); + evel_json_close_object(jbuf); + item_added3 = true; + } + keyinst_field_item = dlist_get_next(keyinst_field_item); + } + evel_json_close_list(jbuf); + + /*************************************************************************/ + /* If we've not written anything, rewind to before we opened the list. */ + /*************************************************************************/ + //if (!item_added3) + //{ + // evel_json_rewind(jbuf); + //} + } + evel_json_close_object(jbuf); + } + item_added2 = true; + jsobj_field_item = dlist_get_next(jsobj_field_item); + } + evel_json_close_list(jbuf); + if( !item_added2 ) + { + evel_json_rewind(jbuf); + } + } + + evel_enc_kv_string(jbuf, "objectName", jsonobjp->object_name); + evel_enc_kv_opt_string(jbuf, "objectSchema", &jsonobjp->objectschema); + evel_enc_kv_opt_string(jbuf, "objectSchemaUrl", &jsonobjp->objectschemaurl); + evel_enc_kv_opt_string(jbuf, "nfSubscribedObjectName", &jsonobjp->nfsubscribedobjname); + evel_enc_kv_opt_string(jbuf, "nfSubscriptionId", &jsonobjp->nfsubscriptionid); + evel_json_close_object(jbuf); + item_added = true; + } + other_field_item = dlist_get_next(other_field_item); + } + evel_json_close_list(jbuf); + + if (!item_added) + { + evel_json_rewind(jbuf); + } + } + + // TBD additional json objects evel_enc_kv_opt_int(jbuf, "concurrentSessions", &event->concurrent_sessions); evel_enc_kv_opt_int(jbuf, "configuredEntities", &event->configured_entities); @@ -3607,6 +3729,7 @@ void evel_free_measurement(EVENT_MEASUREMENT * event) MEASUREMENT_GROUP * measurement_group = NULL; CUSTOM_MEASUREMENT * measurement = NULL; OTHER_FIELD *addl_info = NULL; + EVEL_JSON_OBJECT * jsonobjp = NULL; EVEL_ENTER(); @@ -3632,7 +3755,13 @@ void evel_free_measurement(EVENT_MEASUREMENT * event) addl_info = dlist_pop_last(&event->additional_info); } - + jsonobjp = dlist_pop_last(&event->additional_objects); + while (jsonobjp != NULL) + { + EVEL_DEBUG("Freeing jsonObject %p",jsonobjp); + evel_free_jsonobject( jsonobjp ); + jsonobjp = dlist_pop_last(&event->additional_objects); + } cpu_use = dlist_pop_last(&event->cpu_usage); while (cpu_use != NULL) |