74313b150d39960c4fac5de7d14c7538c85111fd
[it/dep.git] / ric-infra / 45-Tiller / bin / install
1 #!/bin/bash
2 ################################################################################
3 #   Copyright (c) 2019 AT&T Intellectual Property.                             #
4 #   Copyright (c) 2019 Nokia.                                                  #
5 #                                                                              #
6 #   Licensed under the Apache License, Version 2.0 (the "License");            #
7 #   you may not use this file except in compliance with the License.           #
8 #   You may obtain a copy of the License at                                    #
9 #                                                                              #
10 #       http://www.apache.org/licenses/LICENSE-2.0                             #
11 #                                                                              #
12 #   Unless required by applicable law or agreed to in writing, software        #
13 #   distributed under the License is distributed on an "AS IS" BASIS,          #
14 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
15 #   See the License for the specific language governing permissions and        #
16 #   limitations under the License.                                             #
17 ################################################################################
18 OVERRIDEYAML=$1
19 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
20 source $DIR/../etc/tiller.conf
21
22 if [ -z "$RICINFRA_RELEASE_NAME" ];then
23     RELEASE_NAME=$helm_release_name
24 else
25     RELEASE_NAME=$RICINFRA_RELEASE_NAME
26 fi
27
28 # Namespace configuration
29 if [ -z "$RICPLT_NAMESPACE" ];then
30     PLT_NAMESPACE=$plt_namespace
31 else
32     PLT_NAMESPACE=$RICPLT_NAMESPACE
33 fi
34
35 if [ -z "$RICXAPP_NAMESPACE" ];then
36     XAPP_NAMESPACE=$xapp_namespace
37 else
38     XAPP_NAMESPACE=$RICXAPP_NAMESPACE
39 fi
40
41 if [ -z "$RICAUX_NAMESPACE" ];then
42     AUX_NAMESPACE=$aux_namespace
43 else
44     AUX_NAMESPACE=$RICAUX_NAMESPACE
45 fi
46
47 if [ -z "$RICINFRA_NAMESPACE" ];then
48     INFRA_NAMESPACE=$infra_namespace
49 else
50     INFRA_NAMESPACE=$RICINFRA_NAMESPACE
51 fi
52
53 if [ -z "$RIC_COMMON_OVERRIDE" ];then
54     COMMON_OVERRIDE="--set global.namespace.platform=$PLT_NAMESPACE --set global.namespace.xapp=$XAPP_NAMESPACE --set global.namespace.aux=$AUX_NAMESPACE --set global.namespace.infra=$INFRA_NAMESPACE"
55 else
56     COMMON_OVERRIDE=$RIC_COMMON_OVERRIDE
57 fi
58
59
60 RICINFRA_COMPONENTS="xapp-tiller"
61
62 echo "Deploying RIC infra components [$RICINFRA_COMPONENTS]"
63 echo "Helm Release Name: $RELEASE_NAME"
64
65
66 COMMON_CHART_VERSION=$(cat $DIR/../../../ric-common/Common-Template/helm/ric-common/Chart.yaml | grep version | awk '{print $2}')
67 helm package -d /tmp $DIR/../../../ric-common/Common-Template/helm/ric-common
68
69
70
71 for component in $RICINFRA_COMPONENTS; do
72
73   mkdir -p $DIR/../helm/$component/charts/
74
75   cp /tmp/ric-common-$COMMON_CHART_VERSION.tgz $DIR/../helm/$component/charts/
76
77   if [ -z $OVERRIDEYAML ]; then
78
79     EMPTY_CHART=$(helm template $DIR/../helm/$component | grep apiVersion:)
80     if [ ! -z "$EMPTY_CHART" ]; then
81       helm install --debug --namespace "${INFRA_NAMESPACE}" --name "${RELEASE_NAME}-$component" $COMMON_OVERRIDE $DIR/../helm/$component
82     fi
83   else
84     EMPTY_CHART=$(helm template -f $OVERRIDEYAML $DIR/../helm/$component | grep apiVersion:)
85     if [ ! -z "$EMPTY_CHART" ]; then
86       helm install -f $OVERRIDEYAML --namespace "${INFRA_NAMESPACE}" --name "${RELEASE_NAME}-$component" $COMMON_OVERRIDE $DIR/../helm/$component
87     fi
88   fi
89 done