Adding required DB table for LCM functionality
[appc/deployment.git] / installation / appc / src / main / scripts / startODL.sh
1 #!/bin/bash
2
3 ###
4 # ============LICENSE_START=======================================================
5 # APPC
6 # ================================================================================
7 # Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
8 # ================================================================================
9 # Licensed under the Apache License, Version 2.0 (the "License");
10 # you may not use this file except in compliance with the License.
11 # You may obtain a copy of the License at
12
13 #      http://www.apache.org/licenses/LICENSE-2.0
14
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS,
17 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 # See the License for the specific language governing permissions and
19 # limitations under the License.
20 # ============LICENSE_END=========================================================
21 # ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 ###
23
24 #
25 # This script takes care of installing the SDN-C & APP-C platform components 
26 #  if not already installed, and starts the APP-C Docker Container
27 #
28
29 ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
30 ODL_ADMIN_PASSWORD=${ODL_ADMIN_PASSWORD:-Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U}
31 SDNC_HOME=${SDNC_HOME:-/opt/openecomp/sdnc}
32 APPC_HOME=${APPC_HOME:-/opt/openecomp/appc}
33 SLEEP_TIME=${SLEEP_TIME:-120}
34 MYSQL_PASSWD=${MYSQL_PASSWD:-openECOMP1.0}
35
36 #
37 # Adding the DMAAP_TOPIC_ENV variable into APPC-ASDC-LISTENER properties
38 #
39 DMAAP_TOPIC_ENV=${DMAAP_TOPIC_ENV}
40
41 if [ -z "$DMAAP_TOPIC_ENV" ]
42         then
43         echo "DMAAP_TOPIC_ENV shell variable is empty. Adding default value OS-ETE-DFW"
44                 DMAAP_TOPIC_ENV="OS-ETE-DFW"
45         else
46                 echo "DMAAP_TOPIC_ENV shell variable exists and it's $DMAAP_TOPIC_ENV"
47 fi
48
49 echo "Adding a value to property appc.asdc.env in appc.properties for appc-asdc-listener feature"
50 echo "" >> $APPC_HOME/data/properties/appc.properties
51 echo "appc.asdc.env=$DMAAP_TOPIC_ENV" >> $APPC_HOME/data/properties/appc.properties
52 echo "" >> $APPC_HOME/data/properties/appc.properties
53
54
55
56 #
57 # Add the DB hostnames in /etc/hosts (IP address is the MySQL DB IP)
58 #
59 RUN echo "172.19.0.2      dbhost sdnctldb01 sdnctldb02" >> /etc/hosts
60
61
62
63 #
64 # Wait for database to init properly
65 #
66 echo "Waiting for mysql"
67 until mysql -h dbhost -u root -p${MYSQL_PASSWD} mysql &> /dev/null
68 do
69   printf "."
70   sleep 1
71 done
72 echo -e "\nmysql ready"
73
74 if [ ! -f ${SDNC_HOME}/.installed ]
75 then
76         echo "Installing SDN-C database"
77         ${SDNC_HOME}/bin/installSdncDb.sh
78         echo "Installing APP-C database"
79         ${APPC_HOME}/bin/installAppcDb.sh
80         echo "Starting OpenDaylight"
81         ${ODL_HOME}/bin/start
82         echo "Waiting ${SLEEP_TIME} seconds for OpenDaylight to initialize"
83         sleep ${SLEEP_TIME}
84         echo "Installing SDN-C platform features"
85         ${SDNC_HOME}/bin/installFeatures.sh
86         if [ -x ${SDNC_HOME}/svclogic/bin/install.sh ]
87         then
88                 echo "Installing directed graphs"
89                 ${SDNC_HOME}/svclogic/bin/install.sh
90         fi
91         
92         echo "Installing APP-C platform features"
93         ${APPC_HOME}/bin/installFeatures.sh
94         if [ -x ${APPC_HOME}/svclogic/bin/install.sh ]
95         then
96                 echo "Installing directed graphs for APP-C"
97                 ${APPC_HOME}/svclogic/bin/install.sh
98         fi
99
100         echo "Restarting OpenDaylight"
101         ${ODL_HOME}/bin/stop
102         echo "Installed at `date`" > ${SDNC_HOME}/.installed
103 fi
104
105 exec ${ODL_HOME}/bin/karaf