onap on kubernetes source files
[oom.git] / kubernetes / oneclick / createAll.bash
1 #!/bin/bash
2
3 usage() {
4   cat <<EOF
5 Usage: $0 [PARAMs]
6 -u                  : Display usage
7 -n [NAMESPACE]      : Kubernetes namespace (required)
8 -s false            : Exclude services (default: true)
9 -a [APP]            : Specify a specific ONAP component (default: all)
10                       from the following choices:
11                       sdc, aai ,mso, message-router, robot,
12                       vid, sdnc, portal, policy, appc
13 EOF
14 }
15
16 create_namespace() {
17   kubectl create namespace $1-$2
18 }
19
20 create_service() {
21   kubectl --namespace $1-$2 create -f ../$2/all-services.yaml
22 }
23
24 #MAINs
25 NS=
26 INCL_SVC=true
27 APP=
28
29 while getopts ":n:u:s:a:" PARAM; do
30   case $PARAM in
31     u)
32       usage
33       exit 1
34       ;;
35     n)
36       NS=${OPTARG}
37       ;;
38     s)
39       INCL_SVC=${OPTARG}
40       ;;
41     a)
42       APP=${OPTARG}
43       if [[ -z $APP ]]; then
44         usage
45         exit 1
46       fi
47       ;;
48     ?)
49       usage
50       exit
51       ;;
52   esac
53 done
54
55 if [[ -z $NS ]]; then
56   usage
57   exit 1
58 fi
59
60 if [[ ! -z "$APP" ]]; then
61   ONAP_APPS=($APP)
62 else
63   ONAP_APPS=('sdc' 'aai' 'mso' 'message-router' 'robot' 'vid' 'sdnc' 'portal' 'policy' 'appc')
64 fi
65
66 printf "\n********** Creating up ONAP: ${ONAP_APPS[*]}\n"
67
68 for i in ${ONAP_APPS[@]}; do
69   printf "\nCreating namespaces **********\n"
70   create_namespace $NS $i
71
72   if [[ "$INCL_SVC" == true ]]; then
73     printf "\nCreating services **********\n"
74     create_service $NS $i
75   fi
76
77   printf "\n"
78 done
79
80 printf "\n\n********** Creating deployments for  ${ONAP_APPS[*]} ********** \n"
81 for i in ${ONAP_APPS[@]}; do
82   /bin/bash $i.sh $NS $i 'create'
83 done
84
85 printf "**** Done ****"