5 source /var/onap/functions
7 src_folder=$git_src_folder/mso
8 mso_repos=("mso" "mso/chef-repo" "mso/docker-config" "mso/libs"
11 # clone_all_mso_repos() - Function that clones MSO source repo.
12 function clone_all_mso_repos {
13 for repo in ${mso_repos[@]}; do
14 clone_repo $repo $src_folder${repo#*mso}
18 # compile_all_mso_repos() - Function that compiles MSO source repo.
19 function compile_all_mso_repos {
20 for repo in ${mso_repos[@]}; do
21 compile_src $src_folder${repo#*mso}
25 # get_mso_images() - Function that retrieves or create MSO Docker images
26 function get_mso_images {
27 if [[ "$build_image" == "True" ]]; then
28 export GIT_NO_PROJECT=/opt/
29 compile_src $src_folder
30 build_docker_image $src_folder/packages/docker docker
34 # install_mso() - Install MSO Docker configuration project
35 function install_mso {
36 MSO_ENCRYPTION_KEY=$(cat /opt/mso/docker-config/encryption.key)
37 echo -n "$openstack_api_key" | openssl aes-128-ecb -e -K $MSO_ENCRYPTION_KEY -nosalt | xxd -c 256 -p > /opt/config/api_key.txt
39 # Deployments in OpenStack require a keystone file
40 if [ -e /opt/config/keystone.txt ]; then
41 KEYSTONE_URL=$(cat /opt/config/keystone.txt)
42 DCP_CLLI="DEFAULT_KEYSTONE"
43 AUTH_TYPE="USERNAME_PASSWORD"
45 KEYSTONE_URL="https://identity.api.rackspacecloud.com/v2.0"
46 DCP_CLLI="RAX_KEYSTONE"
47 AUTH_TYPE="RACKSPACE_APIKEY"
50 # Update the MSO configuration file.
51 read -d '' MSO_CONFIG_UPDATES <<-EOF
59 "environmentName": "$dmaap_topic"
62 "mso-po-adapter-config":
67 "dcp_clli": "$DCP_CLLI",
68 "identity_url": "$KEYSTONE_URL",
69 "mso_id": "$openstack_username",
70 "mso_pass": "$openstack_password",
71 "admin_tenant": "service",
72 "member_role": "admin",
73 "tenant_metadata": "true",
74 "identity_server_type": "KEYSTONE",
75 "identity_authentication_type": "$AUTH_TYPE"
82 export MSO_CONFIG_UPDATES
83 export MSO_DOCKER_IMAGE_VERSION=$docker_version
85 is_package_installed docker-ce || install_docker
86 install_docker_compose
87 # Deploy the environment
88 pushd $src_folder/docker-config
90 if [[ "$build_image" == "True" ]]; then
93 # This script takes in input 2 nexus repos (the first one for the MSO image, the second one for mariadb)
94 bash deploy.sh $nexus_docker_repo $nexus_username $nexus_password $nexus_docker_repo $nexus_username $nexus_password
99 # init_mso() - Function that initialize MSO services
101 if [[ "$clone_repo" == "True" ]]; then
103 if [[ "$compile_repo" == "True" ]]; then
104 compile_all_mso_repos
108 if [[ "$skip_get_images" == "False" ]]; then
110 if [[ "$skip_install" == "False" ]]; then