Merge "Add VNFSDK install scripts in Vagrant ONAP"
authorGary Wu <gary.i.wu@huawei.com>
Sat, 21 Oct 2017 00:02:58 +0000 (00:02 +0000)
committerGerrit Code Review <gerrit@onap.org>
Sat, 21 Oct 2017 00:02:58 +0000 (00:02 +0000)
31 files changed:
.gitignore
bootstrap/vagrant-onap/.gitignore
bootstrap/vagrant-onap/lib/appc
bootstrap/vagrant-onap/lib/ccsdk
bootstrap/vagrant-onap/lib/dcae
bootstrap/vagrant-onap/lib/mso
bootstrap/vagrant-onap/lib/portal
bootstrap/vagrant-onap/lib/sdc
bootstrap/vagrant-onap/lib/vid
bootstrap/vagrant-onap/tests/projects.txt [new file with mode: 0644]
bootstrap/vagrant-onap/tests/test_ccsdk
bootstrap/vagrant-onap/tests/test_dcae
bootstrap/vagrant-onap/tests/test_functions
bootstrap/vagrant-onap/tools/update_project_list.sh [new file with mode: 0755]
test/csit/scripts/policy/script1.sh
test/csit/tests/modeling/javatoscachecker/APIs/basics.robot [new file with mode: 0644]
test/csit/tests/modeling/javatoscachecker/APIs/data/standalone.yaml [new file with mode: 0644]
test/csit/tests/modeling/javatoscachecker/APIs/data/standalone_with_errors.yaml [new file with mode: 0644]
test/csit/tests/modeling/javatoscachecker/APIs/data/test_schema.yaml [new file with mode: 0644]
test/csit/tests/modeling/javatoscachecker/APIs/data/test_template.yaml [new file with mode: 0644]
test/csit/tests/policy/suite1/Policy-CSIT.robot
test/csit/tests/policy/suite1/configpolicy_vCPE_R1.template [new file with mode: 0644]
test/csit/tests/policy/suite1/configpolicy_vDNS_R1.template [new file with mode: 0644]
test/csit/tests/policy/suite1/configpolicy_vFW_R1.template [new file with mode: 0644]
test/csit/tests/policy/suite1/opspolicy_VDNS_R1.template
test/csit/tests/policy/suite1/opspolicy_VFW_R1.template
test/csit/tests/policy/suite1/opspolicy_vCPE_R1.template [new file with mode: 0644]
test/csit/tests/policy/suite1/opspolicy_vOLTE_R1.template [new file with mode: 0644]
test/ete/labs/windriver/Integration-Jenkins-openrc.sh [new file with mode: 0644]
test/ete/scripts/get-floating-ip.sh [new file with mode: 0644]
version-manifest/pom.xml

index f3b07b8..48c5c1c 100644 (file)
@@ -18,3 +18,4 @@ env.properties
 .vagrant
 *~
 .checkstyle
+.DS_Store
index 3c502a0..873bd8b 100644 (file)
@@ -8,3 +8,5 @@ lib/files/sources.list
 openrc
 doc/build/
 etc/settings.yaml
+tests/remaining_projects.txt
+tests/installed-software*
index 5e3858f..4d93f54 100755 (executable)
@@ -6,17 +6,20 @@ source /var/onap/sdnc
 source /var/onap/functions
 
 appc_src_folder=$git_src_folder/appc
+appc_repos=("appc" "appc/deployment")
 
 # clone_all_appc_repos() - Function that clones APPC source repo.
 function clone_all_appc_repos {
-    clone_repo appc $appc_src_folder
-    clone_repo appc/deployment $appc_src_folder/deployment
+    for repo in ${appc_repos[@]}; do
+        clone_repo $repo $appc_src_folder${repo#*appc}
+    done
 }
 
 # compile_all_appc_repos() - Function that compiles APPC source repo.
 function compile_all_appc_repos {
-    compile_src $appc_src_folder
-    compile_src $appc_src_folder/deployment
+    for repo in ${appc_repos[@]}; do
+        compile_src $appc_src_folder${repo#*appc}
+    done
 }
 
 # _build_appc_images() - Function that creates APPC images from source code.
index 85cdf4d..03987ea 100755 (executable)
@@ -5,23 +5,24 @@ set -o xtrace
 source /var/onap/functions
 
 ccsdk_src_folder=$git_src_folder/ccsdk
-ccsdk_repos=("dashboard" "distribution" "parent" "platform/blueprints" "platform/nbapi" "platform/plugins" "sli" "sli/adaptors" "sli/core" "sli/northbound" "sli/plugins" "storage" "storage/esaas" "storage/pgaas" "utils")
+ccsdk_repos=("ccsdk" "ccsdk/dashboard" "ccsdk/distribution" "ccsdk/parent"
+"ccsdk/platform/blueprints" "ccsdk/platform/nbapi" "ccsdk/platform/plugins"
+"ccsdk/sli" "ccsdk/sli/adaptors" "ccsdk/sli/core" "ccsdk/sli/northbound"
+"ccsdk/sli/plugins" "ccsdk/storage" "ccsdk/storage/esaas" "ccsdk/storage/pgaas"
+"ccsdk/utils")
 
 # clone_ccsdk_repos() - Function that clones the CCSDK repositories
 function clone_ccsdk_repos {
-    clone_repo ccsdk $ccsdk_src_folder
-
-    for dirc in ${ccsdk_repos[@]}; do
-        clone_repo ccsdk/$dirc $ccsdk_src_folder/$dirc
+    for repo in ${ccsdk_repos[@]}; do
+        clone_repo $repo $ccsdk_src_folder${repo#ccsdk}
     done
 }
 
 # compile_ccsdk_repos() - 
 function compile_ccsdk_repos {
-    compile_src ccsdk $ccsdk_src_folder
-
-    for dirc in ${ccsdk_repos[@]}; do
-        compile_src $ccsdk_src_folder/$dirc
+    install_package unzip
+    for repo in ${ccsdk_repos[@]}; do
+        compile_src $ccsdk_src_folder${repo#ccsdk}
     done
 }
 
index 4995c61..78ca8de 100755 (executable)
@@ -5,8 +5,12 @@ set -o xtrace
 source /var/onap/functions
 
 dcae_src_folder=$git_src_folder/dcae
-dcae_repos=("apod" "apod/analytics" "apod/buildtools" "apod/cdap" "collectors" "collectors/ves" "controller" "controller/analytics" "dcae-inventory"
-"demo" "demo/startup" "demo/startup/aaf" "demo/startup/controller" "demo/startup/message-router" "dmaapbc" "operation" "operation/utils" "pgaas" "utils" "utils/buildtools")
+dcae_repos=("dcae" "dcae/apod" "dcae/apod/analytics" "dcae/apod/buildtools"
+"dcae/apod/cdap" "dcae/collectors" "dcae/collectors/ves" "dcae/controller"
+"dcae/controller/analytics" "dcae/dcae-inventory" "dcae/demo"
+"dcae/demo/startup" "dcae/demo/startup/aaf" "dcae/demo/startup/controller"
+"dcae/demo/startup/message-router" "dcae/dmaapbc" "dcae/operation"
+"dcae/operation/utils" "dcae/orch-dispatcher" "dcae/pgaas" "dcae/utils" "dcae/utils/buildtools")
 
 # _create_config_file() - Creates a configuration yaml file for the controller
 function _create_config_file {
@@ -59,16 +63,15 @@ function _build_docker_image {
 
 # clone_all_dcae_repos() - Function that clones DCAE source repo.
 function clone_all_dcae_repos {
-    clone_repo dcae $dcae_src_folder
-    for dirc in ${dcae_repos[@]}; do
-        clone_repo dcae/$dirc $dcae_src_folder/$dirc
+    for repo in ${dcae_repos[@]}; do
+        clone_repo $repo $dcae_src_folder${repo#*dcae}
     done
 }
 
 # compile_all_dcae_repos() - Function that compiles DCAE source repo.
 function compile_all_dcae_repos {
-    for dirc in ${dcae_repos[@]}; do
-        compile_src $dcae_src_folder/$dirc
+    for repo in ${dcae_repos[@]}; do
+        compile_src $dcae_src_folder${repo#*dcae}
     done
 }
 
index 6ff4bbe..5439d99 100755 (executable)
@@ -5,23 +5,20 @@ set -o xtrace
 source /var/onap/functions
 
 src_folder=$git_src_folder/mso
-mso_repos=("chef-repo" "docker-config" "libs" "mso-config")
+mso_repos=("mso" "mso/chef-repo" "mso/docker-config" "mso/libs"
+"mso/mso-config")
 
 # clone_all_mso_repos() - Function that clones MSO source repo.
 function clone_all_mso_repos {
-    clone_repo mso $src_folder
-
-    for dirc in ${mso_repos[@]}; do
-        clone_repo mso/$dirc $src_folder/$dirc
+    for repo in ${mso_repos[@]}; do
+        clone_repo $repo $src_folder${repo#*mso}
     done
 }
 
 # compile_all_mso_repos() - Function that compiles MSO source repo.
 function compile_all_mso_repos {
-    compile_src $src_folder
-
-    for dirc in ${mso_repos[@]}; do
-        compile_src $src_folder/$dirc
+    for repo in ${mso_repos[@]}; do
+        compile_src $src_folder${repo#*mso}
     done
 }
 
index 4dc5ef9..b5e768b 100755 (executable)
@@ -5,25 +5,29 @@ set -o xtrace
 source /var/onap/functions
 
 portal_src_folder=$git_src_folder/portal
-portal_repos=("sdk")
+portal_repos=("portal" "portal/sdk" "ecompsdkos" "ui/dmaapbc")
 
 # clone_all_portal_repos() - Function that clones Portal source repo.
 function clone_all_portal_repos {
-    clone_repo portal $portal_src_folder
-    clone_repo ecompsdkos $portal_src_folder/ecompsdkos
-    clone_repo "ui/dmaapbc" $portal_src_folder/dmaapbc
-
-    for dirc in ${portal_repos[@]}; do
-        clone_repo portal/$dirc $portal_src_folder/$dirc
+    for repo in ${portal_repos[@]}; do
+        if [[ "$repo" == "ui/dmaapbc" ]];then
+            prefix="ui"
+        else
+            prefix="portal"
+        fi
+        clone_repo $repo $portal_src_folder/${repo#*$prefix}
     done
 }
 
 # compile_all_portal_repos() - Function that compiles Portal source repo.
 function compile_all_portal_repos {
-    compile_src $portal_src_folder
-
-    for dirc in ${portal_repos[@]}; do
-        compile_src $portal_src_folder/$dirc
+    for repo in ${portal_repos[@]}; do
+        if [[ "$repo" == "ui/dmaapbc" ]];then
+            prefix="ui"
+        else
+            prefix="portal"
+        fi
+        compile_src $portal_src_folder/${repo#*$prefix}
     done
 }
 
index 1d21e13..a21e2a4 100755 (executable)
@@ -5,7 +5,9 @@ set -o xtrace
 source /var/onap/functions
 
 sdc_src_folder=$git_src_folder/sdc
-sdc_repos=("jtosca" "sdc-distribution-client" "sdc-docker-base" "sdc-titan-cassandra" "sdc-tosca" "sdc-vnfdesign" "sdc-workflow-designer" "sdc_common")
+sdc_repos=("sdc" "sdc/jtosca" "sdc/sdc-distribution-client"
+"sdc/sdc-docker-base" "sdc/sdc-titan-cassandra" "sdc/sdc-tosca"
+"sdc/sdc-vnfdesign" "sdc/sdc-workflow-designer" "sdc/sdc_common")
 
 # _mount_external_partition() - Create partition and mount the external volume
 function _mount_external_partition {
@@ -47,19 +49,15 @@ EOL
 
 # clone_all_sdc_repos() - Function that clones SDC source repo.
 function clone_all_sdc_repos {
-    clone_repo sdc $sdc_src_folder
-
-    for dirc in ${sdc_repos[@]}; do
-        clone_repo sdc/$dirc $sdc_src_folder/$dirc
+    for repo in ${sdc_repos[@]}; do
+        clone_repo $repo $sdc_src_folder${repo#*sdc}
     done
 }
 
 # compile_all_sdc_repos() - Function that compiles SDC source repo.
 function compile_all_sdc_repos {
-    compile_src sdc $sdc_src_folder
-
-    for dirc in ${sdc_repos[@]}; do
-        compile_src $sdc_src_folder/$dirc
+    for repo in ${sdc_repos[@]}; do
+        compile_src $sdc_src_folder${repo#*sdc}
     done
 }
 
index 83b5309..f99fd60 100755 (executable)
@@ -5,17 +5,20 @@ set -o xtrace
 source /var/onap/functions
 
 vid_src_folder=$git_src_folder/vid
+vid_repos=("vid" "vid/asdcclient")
 
 # clone_all_vid_repos() - Function that clones VID source code.
 function clone_all_vid_repos {
-    clone_repo vid $vid_src_folder
-    clone_repo vid/asdcclient $vid_src_folder/asdcclient
+    for repo in ${vid_repos[@]}; do
+        clone_repo $repo $vid_src_folder${repo#*vid}
+    done
 }
 
 # compile_all_vid_repos() - Function that compiles VID source repo.
 function compile_all_vid_repos {
-    compile_src $vid_src_folder/asdcclient
-    compile_src $vid_src_folder
+    for repo in ${vid_repos[@]}; do
+        compile_src $vid_src_folder${repo#*vid}
+    done
 }
 
 # _build_vid_images() - Function that builds VID docker images
diff --git a/bootstrap/vagrant-onap/tests/projects.txt b/bootstrap/vagrant-onap/tests/projects.txt
new file mode 100644 (file)
index 0000000..0aba508
--- /dev/null
@@ -0,0 +1,209 @@
+aaf/authz
+aaf/cadi
+aaf/inno
+aaf/luaplugin
+aai/aai-common
+aai/aai-config
+aai/aai-data
+aai/aai-service
+aai/babel
+aai/champ
+aai/data-router
+aai/esr-gui
+aai/esr-server
+aai/gizmo
+aai/logging-service
+aai/model-loader
+aai/resources
+aai/rest-client
+aai/router-core
+aai/search-data-service
+aai/sparky-be
+aai/sparky-fe
+aai/test-config
+aai/traversal
+appc
+appc/deployment
+ccsdk/dashboard
+ccsdk/distribution
+ccsdk/parent
+ccsdk/platform/blueprints
+ccsdk/platform/nbapi
+ccsdk/platform/plugins
+ccsdk/sli/adaptors
+ccsdk/sli/core
+ccsdk/sli/northbound
+ccsdk/sli/plugins
+ccsdk/storage/esaas
+ccsdk/storage/pgaas
+ccsdk/utils
+ci-management
+clamp
+cli
+dcae
+dcae/apod
+dcae/apod/analytics
+dcae/apod/buildtools
+dcae/apod/cdap
+dcae/collectors
+dcae/collectors/ves
+dcae/controller
+dcae/controller/analytics
+dcae/dcae-inventory
+dcae/demo
+dcae/demo/startup
+dcae/demo/startup/aaf
+dcae/demo/startup/controller
+dcae/demo/startup/message-router
+dcae/dmaapbc
+dcae/operation
+dcae/operation/utils
+dcae/orch-dispatcher
+dcae/pgaas
+dcae/utils
+dcae/utils/buildtools
+dcaegen2
+dcaegen2/analytics
+dcaegen2/analytics/tca
+dcaegen2/collectors
+dcaegen2/collectors/snmptrap
+dcaegen2/collectors/ves
+dcaegen2/deployments
+dcaegen2/platform
+dcaegen2/platform/blueprints
+dcaegen2/platform/cdapbroker
+dcaegen2/platform/cli
+dcaegen2/platform/configbinding
+dcaegen2/platform/deployment-handler
+dcaegen2/platform/inventory-api
+dcaegen2/platform/plugins
+dcaegen2/platform/policy-handler
+dcaegen2/platform/registrator
+dcaegen2/platform/servicechange-handler
+dcaegen2/utils
+demo
+dmaap/buscontroller
+dmaap/datarouter
+dmaap/dbcapi
+dmaap/messagerouter/dmaapclient
+dmaap/messagerouter/messageservice
+dmaap/messagerouter/mirroragent
+dmaap/messagerouter/msgrtr
+doc
+doc/tools
+ecompsdkos
+externalapi/nbi
+holmes/common
+holmes/dsa
+holmes/engine-management
+holmes/rule-management
+integration
+logging-analytics
+modeling/modelspec
+modeling/toscaparsers
+msb/apigateway
+msb/discovery
+msb/java-sdk
+msb/swagger-sdk
+mso
+mso/chef-repo
+mso/docker-config
+mso/libs
+mso/mso-config
+multicloud/azure
+multicloud/framework
+multicloud/openstack
+multicloud/openstack/vmware
+multicloud/openstack/windriver
+ncomp
+ncomp/cdap
+ncomp/core
+ncomp/docker
+ncomp/maven
+ncomp/openstack
+ncomp/sirius
+ncomp/sirius/manager
+ncomp/utils
+oom
+oom/registrator
+oparent
+optf/cmso
+optf/has
+optf/osdf
+policy/api
+policy/common
+policy/docker
+policy/drools-applications
+policy/drools-pdp
+policy/engine
+policy/gui
+policy/pap
+policy/pdp
+portal
+portal/sdk
+sdc
+sdc/jtosca
+sdc/sdc-distribution-client
+sdc/sdc-docker-base
+sdc/sdc-titan-cassandra
+sdc/sdc-tosca
+sdc/sdc-workflow-designer
+sdnc/adaptors
+sdnc/architecture
+sdnc/core
+sdnc/features
+sdnc/northbound
+sdnc/oam
+sdnc/parent
+sdnc/plugins
+so
+so/chef-repo
+so/docker-config
+so/libs
+so/so-config
+testsuite
+testsuite/heatbridge
+testsuite/properties
+testsuite/python-testing-utils
+ui
+ui/dmaapbc
+university
+usecase-ui
+usecase-ui/server
+vfc/gvnfm/vnflcm
+vfc/gvnfm/vnfmgr
+vfc/gvnfm/vnfres
+vfc/nfvo/catalog
+vfc/nfvo/driver/ems
+vfc/nfvo/driver/sfc
+vfc/nfvo/driver/vnfm/gvnfm
+vfc/nfvo/driver/vnfm/svnfm
+vfc/nfvo/lcm
+vfc/nfvo/resmanagement
+vfc/nfvo/wfengine
+vid
+vid/asdcclient
+vnfrqts/epics
+vnfrqts/guidelines
+vnfrqts/requirements
+vnfrqts/testcases
+vnfrqts/usecases
+vnfsdk/compliance
+vnfsdk/functest
+vnfsdk/lctest
+vnfsdk/model
+vnfsdk/pkgtools
+vnfsdk/refrepo
+vnfsdk/validation
+vvp/ansible-ice-bootstrap
+vvp/cms
+vvp/devkit
+vvp/documentation
+vvp/engagementmgr
+vvp/gitlab
+vvp/image-scanner
+vvp/jenkins
+vvp/portal
+vvp/postgresql
+vvp/test-engine
+vvp/validation-scripts
index 2d2b87a..81bdd48 100644 (file)
@@ -27,13 +27,13 @@ function test_clone_ccsdk_repos {
 }
 
 # test_compile_ccsdk_repos() - Verify the compilation of CCSDK repositories
-function compile_ccsdk_repos {
+function test_compile_ccsdk_repos {
     clone_ccsdk_repos
     compile_ccsdk_repos
 
-    asserts_file_exist $ccsdk_src_folder/dashboard/oom-app-common/target/oom-app-common-1.1.0-SNAPSHOT.jar
-    asserts_file_exist $ccsdk_src_folder/dashboard/oom-app-os/target/oom-app-os-1.1.0-SNAPSHOT.war
-    asserts_file_exist $ccsdk_src_folder/dashboard/oom-app-overlay/target/oom-app-overlay-1.1.0-SNAPSHOT.war
+    asserts_file_exist $ccsdk_src_folder/dashboard/ccsdk-app-common/target/ccsdk-app-common-1.1.0-SNAPSHOT.jar
+    asserts_file_exist $ccsdk_src_folder/dashboard/ccsdk-app-os/target/ccsdk-app-os-1.1.0-SNAPSHOT.war
+    asserts_file_exist $ccsdk_src_folder/dashboard/ccsdk-app-overlay/target/ccsdk-app-overlay-1.1.0-SNAPSHOT.war
     asserts_file_exist $ccsdk_src_folder/distribution/dgbuilder/target/dgbuilder.0.1.0-SNAPSHOT.zip
     asserts_file_exist $ccsdk_src_folder/distribution/platform-logic/installer/target/platform-logic-installer-0.1.0-SNAPSHOT.zip
     asserts_file_exist $ccsdk_src_folder/platform/nbapi/target/commonnbapi-0.0.3.war
index 104cadd..c6887cd 100644 (file)
@@ -28,6 +28,7 @@ function test_clone_all_dcae_repos {
     asserts_file_exist $dcae_src_folder/dmaapbc/pom.xml
     asserts_file_exist $dcae_src_folder/operation/README.md
     asserts_file_exist $dcae_src_folder/operation/utils/pom.xml
+    asserts_file_exist $dcae_src_folder/orch-dispatcher/LICENSE.txt
     asserts_file_exist $dcae_src_folder/pgaas/LICENSE.txt
     asserts_file_exist $dcae_src_folder/utils/README.md
     asserts_file_exist $dcae_src_folder/utils/buildtools/LICENSE.txt
index ee7358a..8043ebb 100644 (file)
@@ -8,7 +8,7 @@ covered_functions=(
 "configure_bind" "install_java" "install_maven" "install_nodejs" "install_python"
 "install_docker" "pull_docker_image" "install_docker_compose" "configure_service"
 "start_ODL" "compile_src" "build_docker_image" "docker_openecomp_login"
-"pull_openecomp_image" "pull_onap_image"
+"pull_openecomp_image" "pull_onap_image" "coverity_repos"
 )
 
 # test_create_configuration_files() - Verify the creation of a configuration files
@@ -165,6 +165,32 @@ function test_build_docker_image {
     asserts_image onap/ccsdk-ubuntu-image
 }
 
+# test_coverity_repos() - Verify that all the repos are covered by scripts
+function test_coverity_repos {
+    # Get repositories list from source code files
+    repos_list=()
+    for module in $( stat -c "%F %n" /var/onap/* | grep -v "_\|functions\|commons\|files" | cut -d' ' -f 3-); do
+        source $module
+        module_repo_list=$(eval echo \${$(basename $module)_repos[@]})
+        repos_list=(${repos_list[@]} ${module_repo_list[@]})
+    done
+
+    pushd /var/onap_tests/
+    cp projects.txt remaining_projects.txt
+    for covered_repo in "${repos_list[@]}"; do
+        sed -i "/$covered_repo/d" remaining_projects.txt
+    done
+
+    threshold=75
+    num_projects=$(wc -l < projects.txt)
+    num_remaining_projects=$(wc -l < remaining_projects.txt)
+    coverage=`echo "scale=2; 100-($num_remaining_projects/$num_projects*100)" | bc | cut -d . -f 1`
+    if [ $coverage -lt $threshold ]; then
+        raise_error "There are repositories that are not covered by scripts"
+    fi
+    popd
+}
+
 if [ "$1" != '*' ]; then
     unset covered_functions
     covered_functions=$1
diff --git a/bootstrap/vagrant-onap/tools/update_project_list.sh b/bootstrap/vagrant-onap/tools/update_project_list.sh
new file mode 100755 (executable)
index 0000000..2f0ebb9
--- /dev/null
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+ssh $1@gerrit.onap.org -p 29418 gerrit ls-projects > projects.tmp
+tail -n +2 projects.tmp > tests/projects.txt
+rm projects.tmp
index 30fb395..db5b515 100755 (executable)
@@ -92,6 +92,7 @@ cat config/pe/ip_addr.txt
 
 export MTU=9126
 
+export PRELOAD_POLICIES=false
 docker-compose -f docker-compose-integration.yml up -d 
 
 if [ ! $? -eq 0 ]; then
diff --git a/test/csit/tests/modeling/javatoscachecker/APIs/basics.robot b/test/csit/tests/modeling/javatoscachecker/APIs/basics.robot
new file mode 100644 (file)
index 0000000..b940708
--- /dev/null
@@ -0,0 +1,40 @@
+*** Settings ***
+Library     Collections
+Library     RequestsLibrary
+Library     OperatingSystem
+Library     json
+
+
+*** Test Cases ***
+Check service up
+    CreateSession   checkerservice  http://localhost:8080
+    &{headers}=  Create Dictionary    Content-Type=application/json    Accept=application/json
+    ${resp}=    Get Request    checkerservice   /check_template/nosuchcatalog     headers=${headers}
+    Should Be Equal As Strings  ${resp.status_code}     404
+
+Check standalone template
+    CreateSession   checkerservice  http://localhost:8080
+    ${data}=    Get Binary File     ${CURDIR}${/}data${/}standalone.yaml
+    &{headers}=  Create Dictionary    Content-Type=application/json    Accept=application/json
+    ${resp}=    Post Request    checkerservice   /check_template     data=${data}     headers=${headers}
+    Should Be Equal As Strings      ${resp.status_code}     200
+
+Check schema new namespace
+    CreateSession   checkerservice  http://localhost:8080
+    ${data}=    Get Binary File     ${CURDIR}${/}data${/}test_schema.yaml
+    &{headers}=  Create Dictionary    Content-Type=application/json    Accept=application/json
+    ${resp}=    Post Request    checkerservice   /check_template/test/schema.yaml     data=${data}     headers=${headers}
+    Should Be Equal As Strings      ${resp.status_code}     200
+
+Check template in namespace
+    CreateSession   checkerservice  http://localhost:8080
+    ${data}=    Get Binary File     ${CURDIR}${/}data${/}test_template.yaml
+    &{headers}=  Create Dictionary    Content-Type=application/json    Accept=application/json
+    ${resp}=    Post Request    checkerservice   /check_template/test/     data=${data}     headers=${headers}
+    Should Be Equal As Strings      ${resp.status_code}     200
+
+Check delete existing namespace
+    CreateSession   checkerservice  http://localhost:8080
+    &{headers}=  Create Dictionary    Content-Type=application/json    Accept=application/json
+    ${resp}=    Delete Request    checkerservice   /check_template/test/     headers=${headers}
+    Should Be Equal As Strings  ${resp.status_code}     200
diff --git a/test/csit/tests/modeling/javatoscachecker/APIs/data/standalone.yaml b/test/csit/tests/modeling/javatoscachecker/APIs/data/standalone.yaml
new file mode 100644 (file)
index 0000000..26797ab
--- /dev/null
@@ -0,0 +1,21 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+topology_template:
+  node_templates:
+    my_server:
+      type: tosca.nodes.Compute
+      capabilities:
+        # Host container properties
+        host:
+         properties:
+           num_cpus: 1
+           disk_size: 10 GB
+           mem_size: 4096 MB
+        # Guest Operating System properties
+        os:
+          properties:
+            # host Operating System image properties
+            architecture: x86_64
+            type: linux 
+            distribution: rhel 
+            version: 6.5 
diff --git a/test/csit/tests/modeling/javatoscachecker/APIs/data/standalone_with_errors.yaml b/test/csit/tests/modeling/javatoscachecker/APIs/data/standalone_with_errors.yaml
new file mode 100644 (file)
index 0000000..d5c1a15
--- /dev/null
@@ -0,0 +1,23 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: uses unknown capability propertya to trigger an error
+
+topology_template:
+  node_templates:
+    my_server:
+      type: tosca.nodes.Compute
+      capabilities:
+        # Host container properties
+        host:
+         properties:
+           num_cpus: 1
+           disk_size: 10 GB
+           mem_size: 4096 MB
+           virtualization_support: true
+        # Guest Operating System properties
+        os:
+          properties:
+            # host Operating System image properties
+            architecture: x86_64
+            type: linux 
+            distribution: rhel 
+            version: 6.5 
diff --git a/test/csit/tests/modeling/javatoscachecker/APIs/data/test_schema.yaml b/test/csit/tests/modeling/javatoscachecker/APIs/data/test_schema.yaml
new file mode 100644 (file)
index 0000000..9575e27
--- /dev/null
@@ -0,0 +1,17 @@
+tosca_definitions_version: tosca_simple_yaml_1_1
+
+data_types:
+  org.onap.tosca.checker.service.Person:
+    properties:
+      firstName:
+        type: string
+        required: true
+      lastName:
+        type: string
+        required: true
+
+node_types:
+  org.onap.tosca.checker.service.Residence:
+    properties:
+      owner:
+        type: org.onap.tosca.checker.service.Person
diff --git a/test/csit/tests/modeling/javatoscachecker/APIs/data/test_template.yaml b/test/csit/tests/modeling/javatoscachecker/APIs/data/test_template.yaml
new file mode 100644 (file)
index 0000000..478aec0
--- /dev/null
@@ -0,0 +1,11 @@
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+imports:
+  - schema: schema.yaml
+
+topology_template:
+  node_templates:
+    my_house:
+      type: org.onap.tosca.checker.service.Residence
+      properties:
+        owner: {firstName: "Serban", lastName: "Jora"}
index 5ce1f9f..fd5e230 100644 (file)
@@ -12,9 +12,9 @@ ${RESOURCE_PATH_CREATE}        /pdp/api/createPolicy
 ${RESOURCE_PATH_CREATE_PUSH}        /pdp/api/pushPolicy
 ${RESOURCE_PATH_CREATE_DELETE}        /pdp/api/deletePolicy
 ${RESOURCE_PATH_GET_CONFIG}    /pdp/api/getConfig
-${CREATE_CONFIG_VFW_TEMPLATE}    ${CURDIR}/configpolicy_vFW.template
-${CREATE_CONFIG_VDNS_TEMPLATE}    ${CURDIR}/configpolicy_vDNS.template
-${CREATE_CONFIG_VCPE_TEMPLATE}    ${CURDIR}/configpolicy_vCPE.template
+${CREATE_CONFIG_VFW_TEMPLATE}    ${CURDIR}/configpolicy_vFW_R1.template
+${CREATE_CONFIG_VDNS_TEMPLATE}    ${CURDIR}/configpolicy_vDNS_R1.template
+${CREATE_CONFIG_VCPE_TEMPLATE}    ${CURDIR}/configpolicy_vCPE_R1.template
 ${CREATE_OPS_VFW_TEMPLATE}    ${CURDIR}/opspolicy_VFW_R1.template
 ${PUSH_POLICY_TEMPLATE}   ${CURDIR}/pushpolicy.template
 ${CREATE_OPS_VDNS_TEMPLATE}    ${CURDIR}/opspolicy_VDNS_R1.template
@@ -36,8 +36,8 @@ ${OPS_POLICY_VOLTE_NAME}    VoLTE
 ${OPS_POLICY_VOLTE_TYPE}    BRMS_PARAM
 ${file_path}        ../testsuite/robot/assets/templates/ControlLoopDemo__closedLoopControlName.drl
 ${RESOURCE_PATH_UPLOAD}  /pdp/api/policyEngineImport?importParametersJson=%7B%22serviceName%22%3A%22Manyu456%22%2C%20%22serviceType%22%3A%22BRMSPARAM%22%7D
-${CREATE_OPS_VCPE_TEMPLATE}      ${CURDIR}/opspolicy_vCPE.template  
-${CREATE_OPS_VOLTE_TEMPLATE}    ${CURDIR}/opspolicy_vOLTE.template
+${CREATE_OPS_VCPE_TEMPLATE}      ${CURDIR}/opspolicy_vCPE_R1.template  
+${CREATE_OPS_VOLTE_TEMPLATE}    ${CURDIR}/opspolicy_vOLTE_R1.template
 
 
 *** Test Cases ***
@@ -220,7 +220,7 @@ Create Ops VDNS Policy
 Create Config VCPE Policy
     [Documentation]    Create Config Policy
     ${randompolicyname} =     Create Policy Name
-    ${policyname1}=    Catenate   com.${randompolicyname}_vFirewall
+    ${policyname1}=    Catenate   com.${randompolicyname}_vCPE
     ${CONFIG_POLICY_VCPE_NAME}=    Set Test Variable    ${policyname1}
     ${configpolicy}=    Create Dictionary    policy_name=${policyname1}
     ${output} =     Fill JSON Template File     ${CREATE_CONFIG_VCPE_TEMPLATE}    ${configpolicy}
@@ -239,7 +239,7 @@ Get Configs VCPE Policy
 Create Ops vCPE Policy
        [Documentation]    Create Opertional Policy
        ${randompolicyname} =     Create Policy Name
-       ${policyname1}=    Catenate   com.${randompolicyname}
+       ${policyname1}=    Catenate   com.${randompolicyname}_vCPE
        ${OPS_POLICY_VCPE_NAME}=    Set Test Variable    ${policyname1}
        ${dict}=     Create Dictionary    policy_name=${policyname1}
        ${output} =     Fill JSON Template File     ${CREATE_OPS_VCPE_TEMPLATE}    ${dict}
@@ -251,7 +251,7 @@ Create Ops vCPE Policy
 Create Ops VolTE Policy
        [Documentation]    Create Opertional Policy
        ${randompolicyname} =     Create Policy Name
-       ${policyname1}=    Catenate   com.${randompolicyname}
+       ${policyname1}=    Catenate   com.${randompolicyname}_VoLTE
        ${dict}=     Create Dictionary    policy_name=${policyname1}
        ${output} =     Fill JSON Template File     ${CREATE_OPS_VOLTE_TEMPLATE}    ${dict}
     ${put_resp} =    Run Policy Put Request    ${RESOURCE_PATH_CREATE}  ${output}
diff --git a/test/csit/tests/policy/suite1/configpolicy_vCPE_R1.template b/test/csit/tests/policy/suite1/configpolicy_vCPE_R1.template
new file mode 100644 (file)
index 0000000..6dcf3c6
--- /dev/null
@@ -0,0 +1,6 @@
+{
+       "configBody": "{ \"service\": \"policy_tosca_tca\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevCPE\", \"description\": \"MicroService vCPE Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.0.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"policyVersion\": \"v0.0.1\", \"threshholds\": [{ \"severity\": \"MAJOR\", \"fieldPath\": \"$$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": \"0\", \"closedLoopEventStatus\": \"ABATED\", \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"direction\": \"EQUAL\" }, { \"severity\": \"CRITICAL\", \"fieldPath\": \"$$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\", \"thresholdValue\": \"0\", \"closedLoopEventStatus\": \"ONSET\", \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\", \"version\": \"1.0.2\", \"direction\": \"GREATER\" }], \"policyName\": \"DCAE.Config_tca-hi-lo\", \"controlLoopSchemaType\": \"VNF\", \"policyScope\": \"DCAE\", \"eventName\": \"Measurement_vGMUX\" } }",
+       "policyConfigType": "MicroService",
+       "policyName": "${policy_name}",
+       "onapName": "DCAE"
+}
\ No newline at end of file
diff --git a/test/csit/tests/policy/suite1/configpolicy_vDNS_R1.template b/test/csit/tests/policy/suite1/configpolicy_vDNS_R1.template
new file mode 100644 (file)
index 0000000..0a9ecc6
--- /dev/null
@@ -0,0 +1,6 @@
+{
+       "configBody": "{ \"service\": \"policy_tosca_tca\", \"location\": \"SampleServiceLocation\", \"uuid\": \"test\", \"policyName\": \"MicroServicevDNS\", \"description\": \"MicroService vDNS Policy\", \"configName\": \"SampleConfigName\", \"templateVersion\": \"OpenSource.version.1\", \"version\": \"1.0.0\", \"priority\": \"1\", \"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"riskType\": \"SampleRiskType\", \"riskLevel\": \"1\", \"guard\": \"False\", \"content\": { \"policyVersion\": \"v0.0.1\", \"threshholds\": [{ \"severity\": \"CRITICAL\", \"fieldPath\": \"$$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\", \"thresholdValue\": \"300\", \"closedLoopEventStatus\": \"ONSET\", \"closedLoopControlName\": \"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\", \"version\": \"1.0.2\", \"direction\": \"GREATER_OR_EQUAL\" }], \"policyName\": \"DCAE.Config_tca-hi-lo\", \"controlLoopSchemaType\": \"VM\", \"policyScope\": \"DCAE\", \"eventName\": \"vLoadBalancer\" } }",
+       "policyConfigType": "MicroService",
+       "policyName": "${policy_name}",
+       "onapName": "DCAE"
+}
\ No newline at end of file
diff --git a/test/csit/tests/policy/suite1/configpolicy_vFW_R1.template b/test/csit/tests/policy/suite1/configpolicy_vFW_R1.template
new file mode 100644 (file)
index 0000000..4c3617d
--- /dev/null
@@ -0,0 +1,6 @@
+{
+       "configBody": "{\"service\": \"policy_tosca_tca\",\"location\": \"SampleServiceLocation\",\"uuid\": \"test\",\"policyName\": \"MicroServicevFirewall\",\"description\": \"MicroService vFirewall Policy\",\"configName\": \"SampleConfigName\",\"templateVersion\": \"OpenSource.version.1\",\"version\": \"1.0.0\",\"priority\": \"1\",\"policyScope\": \"resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\",\"riskType\": \"SampleRiskType\",\"riskLevel\": \"1\",\"guard\": \"False\",\"content\": {\"policyVersion\": \"v0.0.1\",\"threshholds\": [{\"severity\": \"MAJOR\",\"fieldPath\": \"$$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\",\"thresholdValue\": \"300\",\"closedLoopEventStatus\": \"ONSET\",\"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\",\"version\": \"1.0.2\",\"direction\": \"LESS_OR_EQUAL\"}, {\"severity\": \"CRITICAL\",\"fieldPath\": \"$$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\",\"thresholdValue\": \"700\",\"closedLoopEventStatus\": \"ONSET\",\"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\",\"version\": \"1.0.2\",\"direction\": \"GREATER_OR_EQUAL\"}],\"policyName\": \"DCAE.Config_tca-hi-lo\",\"controlLoopSchemaType\": \"VNF\",\"policyScope\": \"DCAE\",\"eventName\": \"vFirewallBroadcastPackets\"}}",
+       "policyConfigType": "MicroService",
+       "policyName": "${policy_name}",
+       "onapName": "DCAE"
+}
\ No newline at end of file
index b5312b5..92627cc 100644 (file)
@@ -10,7 +10,7 @@
                "RULE": {
                        "templateName": "ClosedLoopControlName",
                        "closedLoopControlName": "ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3",
-                       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3%0D%0A++services%3A%0D%0A++++-+serviceName%3A+d4738992-6497-4dca-9db9%0D%0A++++++serviceInvariantUUID%3A+dc112d6e-7e73-4777-9c6f-1a7fb5fd1b6f%0D%0A++++++serviceUUID%3A+2eea06c6-e1d3-4c3a-b9c4-478c506eeedf%0D%0A++trigger_policy%3A+unique-policy-id-1-scale-up%0D%0A++timeout%3A+1200%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-scale-up%0D%0A++++name%3A+Create+a+new+VF+Module%0D%0A++++description%3A%0D%0A++++actor%3A+MSO%0D%0A++++recipe%3A+VF+Module+Create%0D%0A++++target%3A%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
-               }
+                       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3%0D%0A++trigger_policy%3A+unique-policy-id-1-scale-up%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-scale-up%0D%0A++++name%3A+Create+a+new+VF+Module%0D%0A++++description%3A%0D%0A++++actor%3A+SO%0D%0A++++recipe%3A+VF+Module+Create%0D%0A++++target%3A%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+                       }
        }
 }
\ No newline at end of file
index e989344..a93063f 100644 (file)
@@ -10,8 +10,7 @@
                "RULE": {
                        "templateName": "ClosedLoopControlName",
                        "closedLoopControlName": "ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a",
-                       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++services%3A%0D%0A++++-+serviceInvariantUUID%3A+5cfe6f4a-41bc-4247-8674-ebd4b98e35cc%0D%0A++++++serviceUUID%3A+0f40bba5-986e-4b3c-803f-ddd1b7b25f24%0D%0A++++++serviceName%3A+57e66ea7-0ed6-45c7-970f%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++resourceID%3A+Eace933104d443b496b8.nodes.heat.vpg%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+                       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a%0D%0A++trigger_policy%3A+unique-policy-id-1-modifyConfig%0D%0A++timeout%3A+1200%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-modifyConfig%0D%0A++++name%3A+modify+packet+gen+config%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+ModifyConfig%0D%0A++++target%3A%0D%0A++++++%23+TBD+-+Cannot+be+known+until+instantiation+is+done%0D%0A++++++resourceID%3A+Eace933104d443b496b8.nodes.heat.vpg%0D%0A++++++type%3A+VNF%0D%0A++++retry%3A+0%0D%0A++++timeout%3A+300%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
                        }
-               }
-}      
-
+       }
+}
diff --git a/test/csit/tests/policy/suite1/opspolicy_vCPE_R1.template b/test/csit/tests/policy/suite1/opspolicy_vCPE_R1.template
new file mode 100644 (file)
index 0000000..36695da
--- /dev/null
@@ -0,0 +1,16 @@
+{
+       "policyConfigType": "BRMS_PARAM",
+       "policyName": "${policy_name}",
+       "policyDescription": "BRMS Param vCPE policy",
+       "policyScope": "com",
+       "attributes": {
+           "MATCHING": {
+               "controller" : "amsterdam"
+           },
+               "RULE": {
+                       "templateName": "ClosedLoopControlName",
+                       "closedLoopControlName": "ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e",
+                       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+true%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+APPC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+                       }
+       }
+}
\ No newline at end of file
diff --git a/test/csit/tests/policy/suite1/opspolicy_vOLTE_R1.template b/test/csit/tests/policy/suite1/opspolicy_vOLTE_R1.template
new file mode 100644 (file)
index 0000000..ff5fc42
--- /dev/null
@@ -0,0 +1,16 @@
+{
+       "policyConfigType": "BRMS_PARAM",
+       "policyName": "${policy_name}",
+       "policyDescription": "BRMS Param VOLTE policy",
+       "policyScope": "com",
+       "attributes": {
+               "MATCHING": {
+               "controller" : "amsterdam"
+           },
+               "RULE": {
+                       "templateName": "ClosedLoopControlName",
+                       "closedLoopControlName": "ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b",
+                       "controlLoopYaml": "controlLoop%3A%0D%0A++version%3A+2.0.0%0D%0A++controlLoopName%3A+ControlLoop-VOLTE-2179b738-fd36-4843-a71a-a8c24c70c55b%0D%0A++trigger_policy%3A+unique-policy-id-1-restart%0D%0A++timeout%3A+3600%0D%0A++abatement%3A+false%0D%0A+%0D%0Apolicies%3A%0D%0A++-+id%3A+unique-policy-id-1-restart%0D%0A++++name%3A+Restart+the+VM%0D%0A++++description%3A%0D%0A++++actor%3A+VFC%0D%0A++++recipe%3A+Restart%0D%0A++++target%3A%0D%0A++++++type%3A+VM%0D%0A++++retry%3A+3%0D%0A++++timeout%3A+1200%0D%0A++++success%3A+final_success%0D%0A++++failure%3A+final_failure%0D%0A++++failure_timeout%3A+final_failure_timeout%0D%0A++++failure_retries%3A+final_failure_retries%0D%0A++++failure_exception%3A+final_failure_exception%0D%0A++++failure_guard%3A+final_failure_guard"
+                       }
+       }
+}
\ No newline at end of file
diff --git a/test/ete/labs/windriver/Integration-Jenkins-openrc.sh b/test/ete/labs/windriver/Integration-Jenkins-openrc.sh
new file mode 100644 (file)
index 0000000..0b18012
--- /dev/null
@@ -0,0 +1,52 @@
+#!/usr/bin/env bash
+
+# To use an OpenStack cloud you need to authenticate against the Identity
+# service named keystone, which returns a **Token** and **Service Catalog**.
+# The catalog contains the endpoints for all services the user/tenant has
+# access to - such as Compute, Image Service, Identity, Object Storage, Block
+# Storage, and Networking (code-named nova, glance, keystone, swift,
+# cinder, and neutron).
+#
+# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other
+# OpenStack API is version 3. For example, your cloud provider may implement
+# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is
+# only for the Identity API served through keystone.
+export OS_AUTH_URL=http://10.12.25.2:5000/v3
+
+# With the addition of Keystone we have standardized on the term **project**
+# as the entity that owns the resources.
+export OS_PROJECT_ID=09d8566ea45e43aa974cf447ed591d77
+export OS_PROJECT_NAME="Integration-Jenkins"
+export OS_USER_DOMAIN_NAME="Default"
+if [ -z "$OS_USER_DOMAIN_NAME" ]; then unset OS_USER_DOMAIN_NAME; fi
+
+# unset v2.0 items in case set
+unset OS_TENANT_ID
+unset OS_TENANT_NAME
+
+# In addition to the owning entity (tenant), OpenStack stores the entity
+# performing the action as the **user**.
+export OS_USERNAME="gary_wu"
+
+# Remote Openstack clients will need to set this environment if
+# connecting to an HTTPS enabled endpoint
+CERT_MSG="Please enter a path for your CA certificate pem file, \
+or press enter if you are not using HTTPS "
+read -p "$CERT_MSG" OS_CACERT_INPUT
+if [ ! -z "$OS_CACERT_INPUT" ]
+then
+    export OS_CACERT=$(readlink -f $OS_CACERT_INPUT)
+fi
+
+# With Keystone you pass the keystone password.
+read -sp "Please enter your OpenStack Password for project $OS_PROJECT_NAME as user $OS_USERNAME: " OS_PASSWORD_INPUT
+export OS_PASSWORD=$OS_PASSWORD_INPUT
+
+# If your configuration has multiple regions, we set that information here.
+# OS_REGION_NAME is optional and only valid in certain environments.
+export OS_REGION_NAME="RegionOne"
+# Don't leave a blank variable, unset it if it was empty
+if [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi
+
+export OS_INTERFACE=public
+export OS_IDENTITY_API_VERSION=3
diff --git a/test/ete/scripts/get-floating-ip.sh b/test/ete/scripts/get-floating-ip.sh
new file mode 100644 (file)
index 0000000..55854e7
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+# Get floating IP assigned to a server name
+
+PORT_ID=$(openstack server show -f json $1 | python -c 'import sys, json; print json.load(sys.stdin)["wrs-if:nics"][0]["nic1"]["port_id"]')
+FLOATING_IP=$(openstack floating ip list -f json --port $PORT_ID | python -c 'import sys, json; print json.load(sys.stdin)[0]["Floating IP Address"]')
+echo $FLOATING_IP
index ace96a7..0826aeb 100644 (file)
@@ -6,7 +6,9 @@
     <artifactId>oparent</artifactId>
     <version>0.1.1</version>
   </parent>
+  <groupId>org.onap.integration</groupId>
   <artifactId>version-manifest</artifactId>
+  <version>0.1.0-SNAPSHOT</version>
   <packaging>maven-plugin</packaging>
   <name>ONAP Version Manifest and Maven Plugin</name>
   <url>https://www.onap.org</url>