~launchpad-pqm/launchpad/devel

10637.3.1 by Guilherme Salgado
Use the default python version instead of a hard-coded version
1
#!/usr/bin/python -S
8687.15.7 by Karl Fogel
Add the copyright header block to more files.
2
#
3
# Copyright 2009 Canonical Ltd.  This software is licensed under the
4
# GNU Affero General Public License version 3 (see the file LICENSE).
5
4935.3.7 by Curtis Hovey
Added bad name suppression to cronscripts.
6
# pylint: disable-msg=C0103,W0403
2094 by Canonical.com Patch Queue Manager
[r=spiv,jamesh] Auto Buildd System implementation.
7
# Author: Daniel Silverstone <daniel.silverstone@canonical.com>
8
#         Celso Providelo <celso.providelo@canonical.com>
9
#
10
# Builder Slave Scanner and result collector
11
12
__metaclass__ = type
13
3023.2.18 by Celso Providelo
Fix permissions and pythonpath on buildd cronscripts, fix builddmaster to created timestamp-named upload dirs.
14
import _pythonpath
15
2815.1.1 by Daniel Silverstone
Added configuration section for the builddmaster.
16
from canonical.config import config
8294.6.1 by Julian Edwards
First stab at code-reorg. Still got a discrepancy on stuff I assigned to registry but not migrated yet.
17
from lp.soyuz.scripts.buildd import SlaveScanner
8213.6.1 by Celso Providelo
Moving code from buildd cronscripts to l/scripts/buildd.
18
3673.6.10 by Malcolm Cleaton
Ensure buildd-slavescanner exits with an error if a spawned process-upload does, so logs will be kept
19
2214 by Canonical.com Patch Queue Manager
[trivial] BuildFarm works again, bits repaired and ready for deep redesign.
20
if __name__ == '__main__':
3691.428.5 by Celso Providelo
more review comments.
21
    script = SlaveScanner('slave-scanner', dbuser=config.builddmaster.dbuser)
3691.348.22 by kiko
Convert buildd queue builder and slave scanner cronscripts to use LaunchpadScript. Still needs some locking sanity implemented given that they share locks.
22
    script.lock_or_quit()
4006.1.2 by kiko
Make the Soyuz scripts try/finally their script.run() call (so they clean up their locks when they crash)
23
    try:
5152.5.5 by Celso Providelo
Exclude retry-depwait task from buildd-queue-builder.py cronscript and from BuilddMaster helper class. Remove the global buildd_master lockfile dependency, from now on queue-builder can run periodically as a cronjob in parallel with slave-scanner.
24
        script.run()
4006.1.2 by kiko
Make the Soyuz scripts try/finally their script.run() call (so they clean up their locks when they crash)
25
    finally:
26
        script.unlock()
3691.348.22 by kiko
Convert buildd queue builder and slave scanner cronscripts to use LaunchpadScript. Still needs some locking sanity implemented given that they share locks.
27