Remove customize src_folder variables
[integration.git] / bootstrap / vagrant-onap / lib / sdc
1 #!/bin/bash
2
3 source /var/onap/functions
4
5 # _init_data_folders() - Function that initialize the data folders
6 function _init_data_folders {
7     mkdir -p /data/environments
8     mkdir -p /data/scripts
9     mkdir -p /data/logs/BE
10     mkdir -p /data/logs/FE
11     chmod 777 /data
12     chmod 777 /data/logs
13 }
14
15 # _setup_docker_aliases() - Function that setups the aliases required by sdc scripts
16 function _setup_docker_aliases {
17     cat <<EOL > /root/.bash_aliases
18 alias dcls='/data/scripts/docker_clean.sh \$1'
19 alias dlog='/data/scripts/docker_login.sh \$1'
20 alias drun='/data/scripts/docker_run.sh'
21 alias health='/data/scripts/docker_health.sh'
22 EOL
23 }
24
25 # get_sdc_images() - Function that retrieves the SDC docker images
26 function get_sdc_images {
27     build_docker_image ${src_folders[sdc]}/sdc-docker-base
28     build_docker_image ${src_folders[sdc]}/utils/webseal-simulator docker
29     if [[ "$build_image" == "True" ]]; then
30         compile_src  ${src_folders[sdc]}
31         for project in catalog-fe test-apis-ci; do
32             compile_src  ${src_folders[sdc]}/$project
33         done
34         build_docker_image ${src_folders[sdc]}/sdc-os-chef docker
35     else
36         for image in elasticsearch init-elasticsearch cassandra kibana backend frontend sanity; do
37             pull_onap_image sdc-$image &
38         done
39         wait_docker_pull
40     fi
41 }
42
43 # install_sdc() - Function that pull templates and executes
44 function install_sdc {
45     local ENV_NAME=$dmaap_topic
46     local MR_IP_ADDR='10.0.11.1'
47
48     pushd ${src_folders[sdc]}/utils/webseal-simulator
49     bash scripts/simulator_docker_run.sh
50     popd
51
52     _init_data_folders
53     cp ${src_folders[sdc]}/sdc-os-chef/environments/Template.json /data/environments
54     cp ${src_folders[sdc]}/sdc-os-chef/scripts/docker_run.sh /data/scripts
55     cp ${src_folders[sdc]}/sdc-os-chef/scripts/docker_health.sh /data/scripts
56     cp ${src_folders[sdc]}/sdc-os-chef/scripts/docker_login.sh /data/scripts
57     cp ${src_folders[sdc]}/sdc-os-chef/scripts/docker_clean.sh /data/scripts
58     cp ${src_folders[sdc]}/sdc-os-chef/scripts/simulator_docker_run.sh /data/scripts
59
60     chmod +x /data/scripts/*.sh
61
62     cat /data/environments/Template.json | sed "s/yyy/"$IP_ADDRESS"/g" > /data/environments/$ENV_NAME.json
63     sed -i "s/xxx/"$ENV_NAME"/g" /data/environments/$ENV_NAME.json
64     sed -i "s/\"ueb_url_list\":.*/\"ueb_url_list\": \""$MR_IP_ADDR","$MR_IP_ADDR"\",/g" /data/environments/$ENV_NAME.json
65     sed -i "s/\"fqdn\":.*/\"fqdn\": [\""$MR_IP_ADDR"\", \""$MR_IP_ADDR"\"]/g" /data/environments/$ENV_NAME.json
66
67     install_docker
68     if [[ "$skip_get_images" == "False" ]]; then
69         bash /data/scripts/docker_run.sh -e $ENV_NAME -l
70     else
71         bash /data/scripts/docker_run.sh -e $ENV_NAME -r $docker_version -p $(echo $nexus_docker_repo | cut -d':' -f2)
72     fi
73 }
74
75 # init_sdc() - Function that initialize SDC services
76 function init_sdc {
77     mount_external_partition sdb /data/
78     if [[ "$clone_repo" == "True" ]]; then
79         clone_repos "sdc"
80         if [[ "$compile_repo" == "True" ]]; then
81             compile_repos "sdc"
82         fi
83     fi
84
85     if [[ "$skip_get_images" == "False" ]]; then
86         get_sdc_images
87     fi
88     if [[ "$skip_install" == "False" ]]; then
89         install_sdc
90     fi
91     _setup_docker_aliases
92 }