blob: 617c054efd6f47c8ba1271082218a743dfa4db57 (
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
#!/usr/bin/bash
###
# User variables, you may edit these variables
###
SOURCES=$HOME/park-admin/playbooks-ansible
WORKDIR=/tmp
COUNTLIMIT=10
# Availables options are: 'clearnet' or 'tornetwork'
NETWORK=clearnet
FORK=8
TIMEOUT=240
FLAGS="--force-handlers -f $FORK -T $TIMEOUT"
###
# Stop editing, it is ready
###
# sortie formatée des logs
OK="\e[0m[ \e[92mOK\e[0m ]"
ERROR="\e[0m[ \e[91mERROR\e[0m ]"
INFO="\e[0m[ \e[93mINFO\e[0m ]"
###
# User command-line options
###
while [[ $# -gt 0 ]]
do
case "$1" in
-d|--debug)
COUNTLIMIT=1
shift
;;
*)
echo "Usage: $0 [-d|--debug]"
exit 3
;;
esac
done
###
# End
###
REPLAY=true
COUNT=0
pushd $WORKDIR >/dev/null
if [[ $NETWORK == "clearnet" ]]
then
CMDLINE=ansible-playbook
HOSTFILE=$SOURCES/hosts.net
elif [[ $NETWORK == "tornetwork" ]]
then
CMDLINE="torsocks ansible-playbook"
HOSTFILE=$SOURCES/hosts.tor
fi
# need cleanup before starting loop
rm -f $SOURCES/site.retry
while [[ $REPLAY == "true" ]] && [[ $COUNT -lt $COUNTLIMIT ]]
do
if [[ -f $SOURCES/site.retry ]]
then
LIMIT="--limit @${SOURCES}/site.retry"
echo -e "$OK retry file found"
else
LIMIT=""
echo -e "$INFO retry file not found"
fi
if ( $CMDLINE $FLAGS -i $HOSTFILE $LIMIT $SOURCES/site.yml )
then
REPLAY=false
else
# no infinite loop
COUNT=$((COUNT + 1))
fi
done
popd >/dev/null
echo -e "$OK End of Replay"
echo -e "$INFO Replay launched $COUNT times"
echo -e "$OK Have a nice day $USER !"
|