Kubeedge setup script
[eliot.git] / scripts / src / kubeedge_setup.sh
1 #!/bin/bash -ex
2 ##############################################################################
3 # Copyright (c) 2019 Huawei Tech and others.
4 #
5 # All rights reserved. This program and the accompanying materials
6 # are made available under the terms of the Apache License, Version 2.0
7 # which accompanies this distribution, and is available at
8 # http://www.apache.org/licenses/LICENSE-2.0
9 ##############################################################################
10
11 take_keedge(){
12
13    git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge
14    source ~/.profile
15    cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm
16    make
17 }
18
19 source config_kubeedge
20 common_steps="sudo git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge && \
21 source ~/.profile && \
22 cd $GOPATH/src && \
23 sudo chmod -R 777 github.com && \
24 cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \
25 make"
26
27 certif_copy="cd /etc/kubeedge &&\
28 scp certs.tar.gz"
29
30 edge_start="cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \
31 sudo chmod +x kubeedge && \
32 sudo ./kubeedge join --edgecontrollerip=$masternodeip --edgenodeid=eliotedge02 --k8sserverip=$masternodeip:8080"
33
34 execute_keedge_controller(){
35    cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm
36    sudo chmod +x kubeedge
37    ./kubeedge init
38 }
39
40 exec_edge(){
41 user_check="jenkins"
42    if [ $(whoami) == $user_check ];then
43       cd $HOME/work/workspace/eliot-deploy-kubeedge-virtual-daily-master/scripts/src
44    else
45       cd $HOME/eliot/scripts/src
46    fi
47
48    if [ $(whoami) == $user_check ];then
49       sshpass -p ${edgenodepassword} scp $HOME/work/workspace/eliot-deploy-kubeedge-virtual-daily-master/scripts/src/config_kubeedge ${edgenodeusr}@${edgenodeip}:$HOME
50    else
51       sshpass -p ${edgenodepassword} scp $HOME/eliot/scripts/src/config_kubeedge ${edgenodeusr}@${edgenodeip}:/root
52    fi
53
54    sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} \
55    source config_kubeedge
56
57    source config_kubeedge
58    sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} ${common_steps} < /dev/null
59
60    echo "After cloning the code in ELIOT edge node"
61    sshpass -p ${edgenodepassword} scp /etc/kubeedge/certs.tgz ${edgenodeusr}@${edgenodeip}:/etc/kubeedge
62
63    sshpass -p ${edgenodepassword} \
64    ssh ${edgenodeusr}@${edgenodeip} \
65    tar -xvzf /etc/kubeedge/certs.tgz --directory /etc/kubeedge
66
67    sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} ${edge_start} < /dev/null
68 }
69
70 # start
71
72 source config_kubeedge
73
74 take_keedge
75
76 execute_keedge_controller
77
78 exec_edge
79 sudo kubectl get nodes
80
81 user_chec="jenkins"
82
83 if [ $(whoami) == $user_chec ];then
84
85   chmod +x $HOME/work/workspace/eliot-deploy-kubeedge-virtual-daily-master/scripts/verifyk8s.sh
86   source $HOME/work/workpsace/eliot-deploy-kubeedge-virtual-daily-master/scripts/verifyk8s.sh
87
88 else
89
90   chmod +x $HOME/eliot/scripts/verifyk8s.sh
91   source $HOME/eliot/scripts/verifyk8s.sh
92
93 fi