40a937785df568d1726e95142002168033e9e75b
[iec.git] / scripts / nginx.sh
1 #!/bin/bash -ex
2
3 NGINX_APP=~/nginx-app.yaml
4
5 cat <<EOF > "${NGINX_APP}"
6 apiVersion: v1
7 kind: Service
8 metadata:
9   name: nginx
10   labels:
11     app: nginx
12 spec:
13   type: NodePort
14   ports:
15   - port: 80
16     protocol: TCP
17     name: http
18   selector:
19     app: nginx
20 ---
21 apiVersion: v1
22 kind: ReplicationController
23 metadata:
24   name: nginx
25 spec:
26   replicas: 2
27   template:
28     metadata:
29       labels:
30         app: nginx
31     spec:
32       containers:
33       - name: nginx
34         image: nginx
35         ports:
36         - containerPort: 80
37 EOF
38
39 if ! kubectl get services | grep -q nginx; then
40   kubectl create -f "${NGINX_APP}"
41 fi
42 kubectl get nodes
43 kubectl get services
44 kubectl get pods
45 kubectl get rc
46
47 attempts=60
48 while [ $attempts -gt 0 ]
49 do
50   if [ 3 == "$(kubectl get pods | grep -c -e STATUS -e Running)" ]; then
51     break
52   fi
53   ((attempts-=1))
54   sleep 10
55 done
56 [ $attempts -gt 0 ] || exit 1
57
58 svcip=$(kubectl get services nginx  -o json | grep clusterIP | cut -f4 -d'"')
59 sleep 10
60 wget "http://$svcip"
61 kubectl delete -f "${NGINX_APP}"
62 kubectl get rc
63 kubectl get pods
64 kubectl get services