diff options
Diffstat (limited to 'bootstrap/vagrant-onap/lib')
-rwxr-xr-x | bootstrap/vagrant-onap/lib/_onap_functions | 9 | ||||
-rwxr-xr-x | bootstrap/vagrant-onap/lib/ccsdk | 64 | ||||
-rwxr-xr-x | bootstrap/vagrant-onap/lib/robot | 49 | ||||
-rwxr-xr-x | bootstrap/vagrant-onap/lib/vfc | 31 |
4 files changed, 142 insertions, 11 deletions
diff --git a/bootstrap/vagrant-onap/lib/_onap_functions b/bootstrap/vagrant-onap/lib/_onap_functions index 9e06010ed..18a465948 100755 --- a/bootstrap/vagrant-onap/lib/_onap_functions +++ b/bootstrap/vagrant-onap/lib/_onap_functions @@ -28,6 +28,15 @@ function pull_openecomp_image { docker logout } +# pull_onap_image() - Pull Docker container image from a Docker Registry Hub +function pull_onap_image { + local image=$1 + local tag=$2 + docker_openecomp_login + pull_docker_image $nexus_docker_repo/onap/${image}:$docker_version $tag + docker logout +} + # configure_bind()- Configure bind utils function configure_bind { _install_bind diff --git a/bootstrap/vagrant-onap/lib/ccsdk b/bootstrap/vagrant-onap/lib/ccsdk new file mode 100755 index 000000000..d115eaa0f --- /dev/null +++ b/bootstrap/vagrant-onap/lib/ccsdk @@ -0,0 +1,64 @@ +#!/bin/bash + +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") + +# 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 + 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 + done +} + +# _build_ccsdk_images() - Build CCSDK Docker images from source code +function _build_ccsdk_images { + install_package unzip + compile_src $ccsdk_src_folder/distribution + clone_repo ccsdk/distribution $ccsdk_src_folder/distribution + for image in ubuntu opendaylight odlsli dgbuilder-docker; do + build_docker_image $ccsdk_src_folder/distribution/$image docker + done +} + +# get_ccsdk_images() - Get CCSDK Docker images +function get_ccsdk_images { + if [[ "$build_image" == "True" ]]; then + _build_ccsdk_images + else + for image in ubuntu odl dgbuilder; do + pull_onap_image ccsdk-$image-image + done + fi + +} + +# install_ccsdk() - +function install_ccsdk { + echo "pass" +} + +# init_ccsdk() - Function that initialize Multi Cloud services +function init_ccsdk { + if [[ "$clone_repo" == "True" ]]; then + clone_ccsdk_repos + if [[ "$compile_repo" == "True" ]]; then + compile_ccsdk_repos + fi + fi + install_ccsdk +} diff --git a/bootstrap/vagrant-onap/lib/robot b/bootstrap/vagrant-onap/lib/robot index 4102680ef..34b431a54 100755 --- a/bootstrap/vagrant-onap/lib/robot +++ b/bootstrap/vagrant-onap/lib/robot @@ -2,12 +2,34 @@ set -o xtrace -# install_testsuite_properties() - Download and install testsuite properties -function install_testsuite_properties { +source /var/onap/functions + +robot_src_folder=$git_src_folder/testsuite +robot_repos=("heatbridge" "properties" "python-testing-utils") + +# clone_robot_repos() - Function that clones Robot source repo. +function clone_robot_repos { + clone_repo testsuite $robot_src_folder + + for dirc in ${robot_repos[@]}; do + clone_repo testsuite/$dirc $robot_src_folder/$dirc + done +} + +# compile_robot_repos() - Function that compile Robot source repo. +function compile_robot_repos { + install_python_package tox + compile_src $robot_src_folder + + for dirc in ${robot_repos[@]}; do + compile_src $robot_src_folder/$dirc + done +} + +# _setup_ete_folder() - Create and copy ete folder structure +function _setup_ete_folder { mkdir -p /opt/eteshare/config - local src_folder=/opt/testsuite/properties - clone_repo testsuite/properties $src_folder cp $src_folder/integration_* /opt/eteshare/config cp $src_folder/vm_config2robot.sh /opt/eteshare/config cp $src_folder/ete.sh /opt @@ -17,15 +39,26 @@ function install_testsuite_properties { chmod +x /opt/demo.sh } -# run_testsuite_image() - Pull and run testsuite docker image -function run_testsuite_image { +# get_robot_images() - Pull or build the Robot Docker images +function get_robot_images { pull_openecomp_image testsuite +} + +# install_robot() - Run Robot services +function install_robot { docker rm -f openecompete_container docker run -d --name openecompete_container -v /opt/eteshare:/share -p 88:88 $nexus_docker_repo/openecomp/testsuite:$docker_version } # init_robot() - Function that initialize Robot services function init_robot { - install_testsuite_properties - run_testsuite_image + if [[ "$clone_repo" == "True" ]]; then + clone_robot_repos + _setup_ete_folder + if [[ "$compile_repo" == "True" ]]; then + compile_robot_repos + fi + fi + get_robot_images + install_robot } diff --git a/bootstrap/vagrant-onap/lib/vfc b/bootstrap/vagrant-onap/lib/vfc index 9c232be28..2b0634bc6 100755 --- a/bootstrap/vagrant-onap/lib/vfc +++ b/bootstrap/vagrant-onap/lib/vfc @@ -23,6 +23,11 @@ function compile_all_vfc_repos { tox -e py27 popd + + pushd $src_folder/nfvo/lcm + tox -e py27 + popd + # TODO(sshank): Add compile for other vfc_repos. (Both Java and Python based.) # Python based: # gvnfm/vnflcm/lcm @@ -30,7 +35,6 @@ function compile_all_vfc_repos { # gvnfm/vnfres/res # nfvo/driver/vnfm/gvnfm/gvnfmadapter # nfvo/driver/vnfm/svnfm/zte/vmanager - # nfvo/lcm # Java based: # nfvo/catalog @@ -42,10 +46,30 @@ function compile_all_vfc_repos { # nfvo/wfengine } +# build_nfvo_lcm_image() - Build VFC NFVO LCM docker image +function build_nfvo_lcm_image { + pushd $src_folder/nfvo/lcm/docker + sed -i '$ d' build_image.sh + ./build_image.sh + popd +} + +# get_vfc_images() - Build VFC docker images +function get_vfc_images { + if [[ "$build_image" == "True" ]]; then + install_docker + build_nfvo_lcm_image + # TODO(sshank): Add other VFC component docker image builds when they are ready. + else + pull_onap_image vfc/nslcm + fi +} + # install_vfc() - Download and install vfc service from source code function install_vfc { - # TODO(sshank): Add further installation steps if necessary. - echo "" + nslcm_image=`docker images | grep nslcm | grep latest| awk '{print $1 ":" $2}'` + docker run -d --name vfc-nslcm -p 3306:3306 -p 8403:8403 -e MSB_ADDR=127.0.0.1 $nslcm_image + # TODO(sshank): Run other VFC component docker images when they are ready. } # init_vfc() - Function that initialize VF-C services @@ -59,5 +83,6 @@ function init_vfc { fi fi + get_vfc_images install_vfc } |