diff options
-rw-r--r-- | bootstrap/vagrant-onap/Vagrantfile | 1 | ||||
-rwxr-xr-x | bootstrap/vagrant-onap/lib/appc | 49 | ||||
-rwxr-xr-x | bootstrap/vagrant-onap/lib/asdc | 10 | ||||
-rwxr-xr-x | bootstrap/vagrant-onap/lib/sdnc | 26 | ||||
-rw-r--r-- | bootstrap/vagrant-onap/tests/test_appc | 97 | ||||
-rw-r--r-- | bootstrap/vagrant-onap/tests/test_sdnc | 46 |
6 files changed, 166 insertions, 63 deletions
diff --git a/bootstrap/vagrant-onap/Vagrantfile b/bootstrap/vagrant-onap/Vagrantfile index 4b32fef97..21766fe00 100644 --- a/bootstrap/vagrant-onap/Vagrantfile +++ b/bootstrap/vagrant-onap/Vagrantfile @@ -25,6 +25,7 @@ conf = { 'nexus_url_snapshot' => 'https://nexus.onap.org/content/repositories/snapshots', 'gitlab_branch' => 'master', 'build_image' => 'True', + 'pull_docker_image' => 'True', 'odl_version' => '0.5.3-Boron-SR3', 'compile_repo' => 'False', 'enable_oparent' => 'True' diff --git a/bootstrap/vagrant-onap/lib/appc b/bootstrap/vagrant-onap/lib/appc index 8ad73561f..a0959c67a 100755 --- a/bootstrap/vagrant-onap/lib/appc +++ b/bootstrap/vagrant-onap/lib/appc @@ -3,44 +3,41 @@ set -o xtrace source /var/onap/sdnc -source /var/onap/asserts +source /var/onap/functions + +appc_src_folder=$git_src_folder/appc # clone_all_appc_repos() - Function that clones APPC source repo. function clone_all_appc_repos { - local src_folder=/opt/appc - - clone_repo appc $src_folder - clone_repo appc/deployment $src_folder/deployment + clone_repo appc $appc_src_folder + clone_repo appc/deployment $appc_src_folder/deployment } # compile_all_appc_repos() - Function that compiles APPC source repo. function compile_all_appc_repos { - local src_folder=/opt/appc - - compile_src $src_folder - compile_src $src_folder/deployment + compile_src $appc_src_folder + compile_src $appc_src_folder/deployment } -# install_appc() - Function that clones and installs the APPC services from source code -function install_appc { - install_package unzip - local src_folder=/opt/appc - - clone_all_appc_repos - if [[ "$compile_repo" == "True" ]]; then - compile_all_appc_repos - fi +# _build_appc_images() - Function that creates APPC images from source code. +function _build_appc_images { + get_sdnc_images + build_docker_image $appc_src_folder/deployment/installation/appc docker +} +# get_appc_images() - Function that gets or build APPC docker images +function get_appc_images { if [[ "$build_image" == "True" ]]; then - clone_repo sdnc/oam /opt/sdnc/oam - build_sdnc_images /opt/sdnc/oam - build_docker_image $src_folder/deployment/installation/appc docker - asserts_image openecomp/appc-image + _build_appc_images else pull_openecomp_image appc-image openecomp/appc-image:latest pull_openecomp_image dgbuilder-sdnc-image openecomp/dgbuilder-sdnc-image:latest fi - pushd $src_folder/deployment +} + +# install_appc() - Function that clones and installs the APPC services from source code +function install_appc { + pushd $appc_src_folder/deployment/docker-compose install_docker_compose /opt/docker/docker-compose up -d popd @@ -48,5 +45,11 @@ function install_appc { # init_appc() - Function that initialize APPC services function init_appc { + clone_all_appc_repos + if [[ "$compile_repo" == "True" ]]; then + compile_all_appc_repos + fi + + get_appc_images install_appc } diff --git a/bootstrap/vagrant-onap/lib/asdc b/bootstrap/vagrant-onap/lib/asdc index 0c09b0b64..bbd3d3bc5 100755 --- a/bootstrap/vagrant-onap/lib/asdc +++ b/bootstrap/vagrant-onap/lib/asdc @@ -32,8 +32,7 @@ function init_data_folders { mkdir -p /data/logs/BE mkdir -p /data/logs/FE chmod 777 /data - chmod 777 /data/logs/BE - chmod 777 /data/logs/FE + chmod 777 /data/logs } # setup_docker_aliases() - Function that setups the aliases required by sdc scripts @@ -95,8 +94,11 @@ function install_sdc { sed -i "s/\"ueb_url_list\":.*/\"ueb_url_list\": \""$MR_IP_ADDR","$MR_IP_ADDR"\",/g" /data/environments/$ENV_NAME.json sed -i "s/\"fqdn\":.*/\"fqdn\": [\""$MR_IP_ADDR"\", \""$MR_IP_ADDR"\"]/g" /data/environments/$ENV_NAME.json - docker_openecomp_login - bash /data/scripts/docker_run.sh -e $ENV_NAME -r $RELEASE -p $NEXUS_DOCKER_PORT + install_docker + if [[ "$pull_docker_image" == "True" ]]; then + docker_openecomp_login + bash /data/scripts/docker_run.sh -e $ENV_NAME -r $RELEASE -p $NEXUS_DOCKER_PORT + fi } # init_asdc() - Function that initialize SDC services diff --git a/bootstrap/vagrant-onap/lib/sdnc b/bootstrap/vagrant-onap/lib/sdnc index 332632138..9a3f9b032 100755 --- a/bootstrap/vagrant-onap/lib/sdnc +++ b/bootstrap/vagrant-onap/lib/sdnc @@ -4,13 +4,13 @@ set -o xtrace source /var/onap/functions -src_folder=$git_src_folder/openecomp/sdnc +sdnc_src_folder=$git_src_folder/openecomp/sdnc sdnc_repos=("core" "adaptors" "northbound" "plugins" "oam") # clone_all_sdnc_repos() - Function that clones SDNC source repo. function clone_all_sdnc_repos { for dirc in ${sdnc_repos[@]}; do - clone_repo sdnc/$dirc $src_folder/$dirc + clone_repo sdnc/$dirc $sdnc_src_folder/$dirc done } @@ -18,21 +18,21 @@ function clone_all_sdnc_repos { function compile_all_sdnc_repos { for dirc in ${sdnc_repos[@]}; do if [[ "$dirc" == "core" ]]; then - compile_src $src_folder/core/rootpom + compile_src $sdnc_src_folder/core/rootpom fi - compile_src $src_folder/$dirc + compile_src $sdnc_src_folder/$dirc done } -# build_sdnc_images() - Builds SDNC images from source code -function build_sdnc_images { - local folder=${1:-$src_folder/oam} +# _build_sdnc_images() - Builds SDNC images from source code +function _build_sdnc_images { + local folder=$sdnc_src_folder/oam install_package unzip - clone_repo sdnc/oam $src_folder/oam + clone_repo sdnc/oam $folder # The OAM code depends on all the SDNC repos which should be downloaded and compiled first - if [[ "$compile_repo" == "False" ]]; then - compile_src $src_folder/oam/ + if [[ "$compile_repo" != "True" ]]; then + compile_src $folder fi for dirc in ubuntu sdnc admportal dgbuilder; do build_docker_image $folder/installation/$dirc @@ -42,7 +42,7 @@ function build_sdnc_images { # get_sdnc_images() - Build or retrieve necessary images function get_sdnc_images { if [[ "$build_image" == "True" ]]; then - build_sdnc_images + _build_sdnc_images else pull_openecomp_image sdnc-image openecomp/sdnc-image:latest pull_openecomp_image admportal-sdnc-image openecomp/admportal-sdnc-image:latest @@ -53,8 +53,8 @@ function get_sdnc_images { # install_sdnc() - Download and install SDNC services from source code function install_sdnc { - clone_repo sdnc/oam $src_folder/oam - pushd $src_folder/oam/installation/src/main/yaml + clone_repo sdnc/oam $sdnc_src_folder/oam + pushd $sdnc_src_folder/oam/installation/src/main/yaml install_docker_compose /opt/docker/docker-compose up -d popd diff --git a/bootstrap/vagrant-onap/tests/test_appc b/bootstrap/vagrant-onap/tests/test_appc new file mode 100644 index 000000000..0d46ef47d --- /dev/null +++ b/bootstrap/vagrant-onap/tests/test_appc @@ -0,0 +1,97 @@ +#!/bin/bash + +source /var/onap_tests/_test_base +source /var/onap/appc + +covered_functions=( +"clone_all_appc_repos" "compile_all_appc_repos" "get_appc_images" "install_appc" +) + +# test_clone_all_appc_repos() - Verify that the APPC source code is cloned +function test_clone_all_appc_repos { + clone_all_appc_repos + + asserts_file_exist $appc_src_folder/pom.xml + asserts_file_exist $appc_src_folder/deployment/pom.xml +} + +# test_compile_all_appc_repos() - Verify that the APPC source code is compiled properly +function test_compile_all_appc_repos { + clone_all_appc_repos + compile_all_appc_repos + + for adapter in appc-ansible-adapter appc-chef-adapter appc-dmaap-adapter appc-iaas-adapter appc-netconf-adapter appc-rest-adapter appc-rest-healthcheck-adapter; do + asserts_file_exist $appc_src_folder/appc-adapters/$adapter/$adapter-bundle/target/$adapter-bundle-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-adapters/$adapter/$adapter-features/target/$adapter-features-1.1.0-SNAPSHOT.jar + if [[ "$adapter" == "appc-netconf-adapter" ]]; then + asserts_file_exist $appc_src_folder/appc-adapters/$adapter/appc-netconf-installer/target/$adapter-1.1.0-SNAPSHOT.zip + else + asserts_file_exist $appc_src_folder/appc-adapters/$adapter/$adapter-installer/target/$adapter-1.1.0-SNAPSHOT.zip + fi + done + asserts_file_exist $appc_src_folder/appc-adapters/appc-dmaap-adapter/appc-message-adapter-api/target/appc-message-adapter-api-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-adapters/appc-dmaap-adapter/appc-message-adapter-factory/target/appc-message-adapter-factory-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-api/target/appc-ssh-adapter-api-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-features/target/appc-ssh-adapter-features-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-sshd/target/appc-ssh-adapter-sshd-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-adapters/appc-ssh-adapter/appc-ssh-adapter-tests/target/appc-ssh-adapter-tests-1.1.0-SNAPSHOT.jar + + for component in appc-asdc-listener appc-event-listener appc-oam appc-provider; do + asserts_file_exist $appc_src_folder/$component/$component-bundle/target/$component-bundle-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/$component/$component-features/target/$component-features-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/$component/$component-installer/target/$component-1.1.0-SNAPSHOT.zip + done + for component in appc-oam appc-provider; do + asserts_file_exist $appc_src_folder/$component/$component-model/target/$component-model-1.1.0-SNAPSHOT.jar + done + + asserts_file_exist $appc_src_folder/appc-asdc-listener/appc-yang-generator/target/appc-yang-generator-1.1.0-SNAPSHOT.jar + + asserts_file_exist $appc_src_folder/appc-common/target/appc-common-1.1.0-SNAPSHOT.jar + + asserts_file_exist $appc_src_folder/appc-dg/appc-dg-shared/appc-dg-dependency-model/target/appc-dg-dependency-model-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-dg/appc-dg-shared/appc-dg-domain-model-lib/target/appc-dg-domain-model-lib-1.1.0-SNAPSHOT.jar + + asserts_file_exist $appc_src_folder/appc-dispatcher/appc-command-executor/appc-command-executor-api/target/appc-command-executor-api-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-dispatcher/appc-dispatcher-common/appc-data-access-lib/target/appc-data-access-lib-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-dispatcher/appc-dispatcher-common/domain-model-lib/target/domain-model-lib-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-dispatcher/appc-dispatcher-common/execution-queue-management-lib/target/execution-queue-management-lib-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-dispatcher/appc-license-manager/appc-license-manager-api/target/appc-license-manager-api-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-dispatcher/appc-request-handler/appc-request-handler-api/target/appc-request-handler-api-1.1.0-SNAPSHOT.jar + + + asserts_file_exist $appc_src_folder/appc-lifecycle-management/appc-lifecycle-management-api/target/appc-lifecycle-management-api-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-lifecycle-management/appc-lifecycle-management-core/target/appc-lifecycle-management-core-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-lifecycle-management/appc-lifecycle-management-features/target/appc-lifecycle-management-features-1.1.0-SNAPSHOT.jar + asserts_file_exist $appc_src_folder/appc-lifecycle-management/appc-lifecycle-management-installer/target/appc-lifecycle-management-1.1.0-SNAPSHOT.zip + asserts_file_exist $appc_src_folder/appc-lifecycle-management/state-machine-lib/target/state-machine-lib-1.1.0-SNAPSHOT.jar + + asserts_file_exist $appc_src_folder/appc-metric/appc-metric-bundle/target/appc-metric-bundle-1.1.0-SNAPSHOT.jar + + asserts_file_exist $appc_src_folder/deployment/platform-logic/installer/target/platform-logic-installer-1.1.0-SNAPSHOT.zip +} + +# test_get_appc_images() - Verify that APPC Docker images can be retrieved +function test_get_appc_images { + clone_all_appc_repo + get_appc_images + + asserts_image openecomp/appc-image +} + +# test_install_appc() - Verify that the APPC Docker images are up and running +function test_install_appc { + clone_all_appc_repos + get_appc_images + install_appc + + asserts_image_running openecomp/dgbuilder-sdnc-image + asserts_image_running openecomp/appc-image + asserts_image_running mysql/mysql-server:5.6 +} + +if [ "$1" != '*' ]; then + unset covered_functions + covered_functions=$1 +fi +main "${covered_functions[@]}" diff --git a/bootstrap/vagrant-onap/tests/test_sdnc b/bootstrap/vagrant-onap/tests/test_sdnc index 93110a3f0..a60145fbf 100644 --- a/bootstrap/vagrant-onap/tests/test_sdnc +++ b/bootstrap/vagrant-onap/tests/test_sdnc @@ -11,11 +11,11 @@ covered_functions=( function test_clone_all_sdnc_repos { clone_all_sdnc_repos - asserts_file_exist $src_folder/core/pom.xml - asserts_file_exist $src_folder/adaptors/pom.xml - asserts_file_exist $src_folder/northbound/pom.xml - asserts_file_exist $src_folder/plugins/pom.xml - asserts_file_exist $src_folder/oam/pom.xml + asserts_file_exist $sdnc_src_folder/core/pom.xml + asserts_file_exist $sdnc_src_folder/adaptors/pom.xml + asserts_file_exist $sdnc_src_folder/northbound/pom.xml + asserts_file_exist $sdnc_src_folder/plugins/pom.xml + asserts_file_exist $sdnc_src_folder/oam/pom.xml } # test_compile_all_sdnc_repos() - Verify the correct compilation of SDNC projects @@ -24,34 +24,34 @@ function test_compile_all_sdnc_repos { compile_all_sdnc_repos for adaptor in aai-service mdsal-resource resource-assignment sql-resource; do - asserts_file_exist $src_folder/adaptors/$adaptor/features/target/$adaptor-features-1.1.2-SNAPSHOT.jar - asserts_file_exist $src_folder/adaptors/$adaptor/installer/target/sdnc-$adaptor-1.1.2-SNAPSHOT-installer.zip - asserts_file_exist $src_folder/adaptors/$adaptor/provider/target/$adaptor-provider-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/adaptors/$adaptor/features/target/$adaptor-features-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/adaptors/$adaptor/installer/target/sdnc-$adaptor-1.1.2-SNAPSHOT-installer.zip + asserts_file_exist $sdnc_src_folder/adaptors/$adaptor/provider/target/$adaptor-provider-1.1.2-SNAPSHOT.jar done - asserts_file_exist $src_folder/core/dblib/provider/target/dblib-provider-1.1.2-SNAPSHOT.jar - asserts_file_exist $src_folder/core/rootpom/target/rootpom-1.1.0-site_en.xml - asserts_file_exist $src_folder/core/target/sdnc-core-1.1.2-SNAPSHOT-site.xml + asserts_file_exist $sdnc_src_folder/core/dblib/provider/target/dblib-provider-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/core/rootpom/target/rootpom-1.1.0-site_en.xml + asserts_file_exist $sdnc_src_folder/core/target/sdnc-core-1.1.2-SNAPSHOT-site.xml for component in asdcApi dataChange vnfapi vnftools; do - asserts_file_exist $src_folder/northbound/$component/features/target/$component-features-1.1.2-SNAPSHOT.jar - asserts_file_exist $src_folder/northbound/$component/installer/target/sdnc-$component-1.1.2-SNAPSHOT-installer.zip + asserts_file_exist $sdnc_src_folder/northbound/$component/features/target/$component-features-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/northbound/$component/installer/target/sdnc-$component-1.1.2-SNAPSHOT-installer.zip if [[ "$component" != "vnftools" ]]; then - asserts_file_exist $src_folder/northbound/$component/model/target/$component-model-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/northbound/$component/model/target/$component-model-1.1.2-SNAPSHOT.jar fi - asserts_file_exist $src_folder/northbound/$component/provider/target/$component-provider-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/northbound/$component/provider/target/$component-provider-1.1.2-SNAPSHOT.jar done - asserts_file_exist $src_folder/northbound/dmaap-listener/target/dmaap-listener-1.1.2-SNAPSHOT.jar - asserts_file_exist $src_folder/northbound/ueb-listener/target/ueb-listener-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/northbound/dmaap-listener/target/dmaap-listener-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/northbound/ueb-listener/target/ueb-listener-1.1.2-SNAPSHOT.jar - asserts_file_exist $src_folder/oam/admportal/target/admportal.1.1.2-SNAPSHOT.zip - asserts_file_exist $src_folder/oam/dgbuilder/target/dgbuilder.1.1.2-SNAPSHOT.zip - asserts_file_exist $src_folder/oam/platform-logic/installer/target/platform-logic-installer-1.1.2-SNAPSHOT.zip + asserts_file_exist $sdnc_src_folder/oam/admportal/target/admportal.1.1.2-SNAPSHOT.zip + asserts_file_exist $sdnc_src_folder/oam/dgbuilder/target/dgbuilder.1.1.2-SNAPSHOT.zip + asserts_file_exist $sdnc_src_folder/oam/platform-logic/installer/target/platform-logic-installer-1.1.2-SNAPSHOT.zip for plugin in properties-node restapi-call-node; do - asserts_file_exist $src_folder/plugins/$plugin/features/target/$plugin-features-1.1.2-SNAPSHOT.jar - asserts_file_exist $src_folder/plugins/$plugin/installer/target/sdnc-$plugin-1.1.2-SNAPSHOT-installer.zip - asserts_file_exist $src_folder/plugins/$plugin/provider/target/$plugin-provider-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/plugins/$plugin/features/target/$plugin-features-1.1.2-SNAPSHOT.jar + asserts_file_exist $sdnc_src_folder/plugins/$plugin/installer/target/sdnc-$plugin-1.1.2-SNAPSHOT-installer.zip + asserts_file_exist $sdnc_src_folder/plugins/$plugin/provider/target/$plugin-provider-1.1.2-SNAPSHOT.jar done } |