blob: ed37c38dc66411b6e6ce58c53246f3e4241d0a04 (
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
|
#!/bin/sh
#
# Copyright (c) 2013 Nagios Plugins Development Team
#
# Originally written by Holger Weiss <holger@zedat.fu-berlin.de>.
#
# This file is free software; the Nagios Plugins Development Team gives
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY, to the extent permitted by law; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
set -e
set -u
umask 022
export PATH='/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin'
mirrors='
ftp://ftp.fu-berlin.de/unix/network/nagios-plugins/
ftp://ftp.lysator.liu.se/pub/nagios-plugins/
'
prefix='/home/plugins'
myself=${0##*/}
download_dir="$prefix/web/download"
temp_dir=$(mktemp -d "/tmp/$myself.XXXXXX")
trap 'rm -rf "$temp_dir"' EXIT
cd "$temp_dir"
date -d 'yesterday' '+%F' >'expected'
for mirror in $mirrors
do
url="${mirror%/}/timestamp"
if curl -s -S -O "$url" >'curl.log' 2>&1
then
cmp -s 'expected' 'timestamp' \
|| echo >&2 "$mirror is outdated ($(cat 'timestamp'))."
else
echo >&2 "Cannot fetch $url: $(cat 'curl.log')"
fi
done
cd "$OLDPWD"
date '+%F' >"$download_dir/timestamp"
|