]>
Commit | Line | Data |
---|---|---|
e820134d IB |
1 | #!/usr/bin/env bash |
2 | ||
3 | SSH_KEY="$1" | |
4 | ||
5 | TMPDIR=$(mktemp -d) | |
6 | ||
7 | if [ ! -d "$TMPDIR" ]; then | |
8 | echo "gitolite UNKNOWN - impossible to create temp dir" | |
9 | exit 3 | |
10 | fi | |
11 | ||
12 | trap "rm -rf $TMPDIR" EXIT | |
13 | ||
14 | ERRORS="" | |
15 | OUTPUT="" | |
a97118c4 | 16 | PERFS="" |
e820134d IB |
17 | |
18 | cd "$TMPDIR" | |
19 | OUT=$(git clone -q git://git.immae.eu/perso/Immae/Projets/Ruby/Monitor.git 2>&1) | |
20 | ERR=$? | |
21 | if [ -n "$OUT" ]; then | |
22 | OUTPUT="$OUTPUT | |
23 | $OUT" | |
24 | fi | |
25 | if [ "$ERR" != 0 ]; then | |
a97118c4 | 26 | PERFS="$PERFS git=0;;;;" |
e820134d | 27 | ERRORS="$ERRORS git://" |
a97118c4 IB |
28 | else |
29 | PERFS="$PERFS git=1;;;;" | |
e820134d IB |
30 | fi |
31 | rm -rf Monitor | |
32 | ||
33 | OUT=$(git clone -q http://git.immae.eu/perso/Immae/Projets/Ruby/Monitor.git 2>&1) | |
34 | ERR=$? | |
35 | if [ -n "$OUT" ]; then | |
36 | OUTPUT="$OUTPUT | |
37 | $OUT" | |
38 | fi | |
39 | if [ "$ERR" != 0 ]; then | |
40 | ERRORS="$ERRORS http://" | |
a97118c4 IB |
41 | PERFS="$PERFS http=0;;;;" |
42 | else | |
43 | PERFS="$PERFS http=1;;;;" | |
e820134d IB |
44 | fi |
45 | rm -rf Monitor | |
46 | ||
47 | OUT=$(git clone -q https://git.immae.eu/perso/Immae/Projets/Ruby/Monitor.git 2>&1) | |
48 | ERR=$? | |
49 | if [ -n "$OUT" ]; then | |
50 | OUTPUT="$OUTPUT | |
51 | $OUT" | |
52 | fi | |
53 | if [ "$ERR" != 0 ]; then | |
54 | ERRORS="$ERRORS https://" | |
a97118c4 IB |
55 | PERFS="$PERFS https=0;;;;" |
56 | else | |
57 | PERFS="$PERFS https=1;;;;" | |
e820134d IB |
58 | fi |
59 | rm -rf Monitor | |
60 | ||
61 | OUT=$(GIT_SSH_COMMAND="ssh -i $SSH_KEY -o BatchMode=yes -o UserKnownHostsFile=/dev/null -o CheckHostIP=no -o StrictHostKeyChecking=no" git clone -q gitolite@git.immae.eu:perso/Immae/Projets/Ruby/Monitor 2>&1) | |
62 | ERR=$? | |
63 | if [ -n "$OUT" ]; then | |
64 | OUTPUT="$OUTPUT | |
65 | $OUT" | |
66 | fi | |
67 | if [ "$ERR" != 0 ]; then | |
68 | ERRORS="$ERRORS ssh" | |
a97118c4 IB |
69 | PERFS="$PERFS ssh=0;;;;" |
70 | else | |
71 | PERFS="$PERFS ssh=1;;;;" | |
e820134d IB |
72 | fi |
73 | rm -rf Monitor | |
74 | ||
75 | if [ -n "$ERRORS" ]; then | |
a97118c4 | 76 | echo "gitolite CRITICAL - impossible to clone via$ERRORS | $PERFS" |
e820134d IB |
77 | exit 2 |
78 | else | |
a97118c4 | 79 | echo "gitolite OK - ssh, git, http and https work | $PERFS" |
e820134d IB |
80 | exit 0 |
81 | fi |