blob: 0332027c44e70048bcf4944e04289573d15ce090 (
plain)
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
|
#!/bin/bash
set -eu
getaddr()
{
awk -v "name=$1" '$1 == name { print $2 }' "$hosts_in" |
sed 's/ansible_ssh_host=//'
}
count_workers()
{
grep -Ec '^worker[[:digit:]]+' "$1"
}
mkhosts()
{
local n="$1"
for i in $(seq "$n")
do
echo "worker$i hostname=worker$i ansible_ssh_host=$(getaddr worker$i)"
done
echo
echo "[ickhost]"
for i in $(seq "$n")
do
echo "worker$i"
done
echo
echo "[workers]"
for i in $(seq "$n")
do
echo "worker$i"
done
}
hosts_in="$1"
controller_domain="$2"
apt_domain="$controller_domain"
shift 2
nw="$(count_workers "$hosts_in")"
mkhosts "$nw" > hosts.tmp
ansible-playbook -i hosts.tmp ick-workers.yml \
-e "controller_domain=$controller_domain" \
-e "apt_domain=$apt_domain)" \
"$@"
|