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
|
#!/bin/sh
# This script performs nightly chores. It should be run from
# cron as the launchpad user once a day. Typically the output
# will be sent to an email address for inspection.
# Note that http/ftp proxies are needed by the product
# release finder
# Only run this script on forster
THISHOST=`uname -n`
if [ "forster" != "$THISHOST" ]
then
echo "This script must be run on forster."
exit 1
fi
# Only run this as the launchpad user
USER=`whoami`
if [ "launchpad" != "$USER" ]
then
echo "Must be launchpad user to run this script."
exit 1
fi
export LPCONFIG=production
export http_proxy=http://squid.internal:3128/
export ftp_proxy=http://squid.internal:3128/
LOCK=/var/lock/launchpad_nightly.lock
lockfile -r0 -l 259200 $LOCK
if [ $? -ne 0 ]; then
echo Unable to grab $LOCK lock - aborting
ps fuxwww
exit 1
fi
cd /srv/launchpad.net/production/launchpad/cronscripts
echo == Expiring memberships `date` ==
python flag-expired-memberships.py -q
echo == Recalculating karma `date` ==
python foaf-update-karma-cache.py -q
echo == Updating cached statistics `date` ==
python update-stats.py -q
echo == Updating package cache `date` ==
python update-pkgcache.py -q
echo == Updating CVE database `date` ==
python update-cve.py -q
echo == Updating bugtask target name caches `date` ==
python update-bugtask-targetnamecaches.py -q
echo == Expiring questions `date` ==
python expire-questions.py
### echo == Expiring bugs `date` ==
### python expire-bugtasks.py
echo == Product Release Finder `date` ==
python product-release-finder.py -q
echo == Updating bug watches `date` ==
python checkwatches.py
echo == POFile stats `date` ==
python rosetta-pofile-stats.py
rm -f $LOCK
|