Fix NONRTRIC installation to use own ChartMuseum
[it/dep.git] / bin / prepare-common-templates
1 #!/bin/bash -x
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
19
20 ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
21
22 #Check for helm3
23 IS_HELM3=$(helm version -c --short|grep -e "^v3")
24
25 # Start Helm local repo if there isn't one
26 HELM_REPO_PID=$(ps -x | grep  "helm serve" | grep -v "grep" | awk '{print $1}')
27
28 if [ -z "$HELM_REPO_PID" ]
29 then
30     if [ -z $IS_HELM3 ]
31     then
32       nohup helm serve >& /dev/null &
33     else
34       nohup helm servecm --port=8879 --context-path=/charts  --storage local >& /dev/null &
35     fi
36 fi
37
38 # Check if servecm plugin is ready to serve request
39 command='curl --silent --output /dev/null  http://127.0.0.1:8879/charts'
40 for i in $(seq 1 5)
41 do $command && s=0 && break || s=$? && echo "Error connecting chartmuseum server. Retrying after 5s" && sleep 5;
42 done
43
44 if [ $s -gt 0 ]
45 then
46         echo "Cmd to test chartmuseum failed with ($s): $command"
47         exit $s
48 fi
49
50 # Package common templates and serve it using Helm local repo
51 if [ $IS_HELM3 ]
52 then 
53   eval $(helm env |grep HELM_REPOSITORY_CACHE)
54   HELM_LOCAL_REPO="${HELM_REPOSITORY_CACHE}/local/"
55   mkdir -p $HELM_LOCAL_REPO
56 else 
57   HELM_HOME=$(helm home)
58   HELM_LOCAL_REPO="${HELM_HOME}/repository/local/"
59 fi
60
61 COMMON_CHART_VERSION=$(cat $ROOT_DIR/../ric-common/Common-Template/helm/ric-common/Chart.yaml | grep version | awk '{print $2}')
62 helm package -d /tmp $ROOT_DIR/../ric-common/Common-Template/helm/ric-common
63 cp /tmp/ric-common-$COMMON_CHART_VERSION.tgz $HELM_LOCAL_REPO
64
65 AUX_COMMON_CHART_VERSION=$(cat $ROOT_DIR/../ric-common/Common-Template/helm/aux-common/Chart.yaml | grep version | awk '{print $2}')
66 helm package -d /tmp $ROOT_DIR/../ric-common/Common-Template/helm/aux-common
67 cp /tmp/aux-common-$AUX_COMMON_CHART_VERSION.tgz $HELM_LOCAL_REPO
68
69 NONRTRIC_COMMON_CHART_VERSION=$(cat $ROOT_DIR/../ric-common/Common-Template/helm/nonrtric-common/Chart.yaml | grep version | awk '{print $2}')
70 helm package -d /tmp $ROOT_DIR/../ric-common/Common-Template/helm/nonrtric-common
71 cp /tmp/nonrtric-common-$NONRTRIC_COMMON_CHART_VERSION.tgz $HELM_LOCAL_REPO
72
73 helm repo index $HELM_LOCAL_REPO
74
75
76 # Make sure that helm local repo is added
77 helm repo remove local
78 helm repo add local http://127.0.0.1:8879/charts
79
80
81