forked from IBM/GameOn-Java-Microservices-on-Kubernetes
-
Notifications
You must be signed in to change notification settings - Fork 0
/
replace_ip_OSX.sh
executable file
·63 lines (61 loc) · 1.95 KB
/
replace_ip_OSX.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/bin/bash
if [ -z $1 ]
then
defaultIP=$(cat core/* | grep 169.47.241.213)
if [[ -z $defaultIP ]]
then
echo "169.47.241.213 not found in yaml files. Please use ./scripts/replace_ip_<your-os>.sh <IP-in-the-yaml-files-you-want-to-replace>"
else
kubectl get nodes
IP_ADDR=$(kubectl get nodes | grep Ready | awk '{print $1}' | head -1)
echo "Replacing 169.47.241.213 to $IP_ADDR in core/*.yaml and setup.yaml"
for filename in core/*.yaml
do
sed -i '' s#169\.47\.241\.213#$IP_ADDR# $filename
done
sed -i '' s#169\.47\.241\.213#$IP_ADDR# setup.yaml
fi
else
ip=$1
if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]
then
OIFS=$IFS
IFS='.'
ip=($ip)
IFS=$OIFS
[[ ${ip[0]} -le 255 && ${ip[1]} -le 255 \
&& ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]
stat=$?
if [ $stat -eq 0 ]
then
prevIP=$(cat core/* | grep $1)
if [[ -z $prevIP ]]
then
echo "$1 not found in yaml files. Please check your yaml files."
else
if [[ -z $2 ]]
then
kubectl get nodes
IP_ADDR=$(kubectl get nodes | grep Ready | awk '{print $1}' | head -1)
echo "Replacing $1 to $IP_ADDR in core/*.yaml and setup.yaml"
for filename in core/*.yaml
do
sed -i '' s#$1#$IP_ADDR# $filename
done
sed -i '' s#$1#$IP_ADDR# setup.yaml
else
echo "Replacing $1 to $2 in core/*.yaml and setup.yaml"
for filename in core/*.yaml
do
sed -i '' s#$1#$2# $filename
done
sed -i '' s#$1#$2# setup.yaml
fi
fi
else
echo "Invalid IP"
fi
else
echo "Invalid IP format"
fi
fi