~andreserl/maas/packaging_fixes_beta6

« back to all changes in this revision

Viewing changes to debian/extras/maas-region-celeryd

  • Committer: MaaS Lander
  • Author(s): Andres Rodriguez
  • Date: 2014-09-29 20:00:48 UTC
  • mfrom: (312.2.1 packaging)
  • Revision ID: maas_lander-20140929200048-tkodg74t4vi0qaub
[r=andreserl][bug=][author=andreserl] * New Upstream Snapshot, Beta 4 bzr3126
* Remove usage of txlongpoll and rabbitmq-server. Handle upgrades
  to ensure these are removed correctly.
* Remove all references to the MAAS celery daemon and config files
  as we don't use it like that anymore.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/python
2
 
import os
3
 
from grp import getgrnam
4
 
from pwd import getpwnam
5
 
 
6
 
def start_celery(args):
7
 
    uid = getpwnam(args.user).pw_uid
8
 
    gid = getgrnam(args.group).gr_gid
9
 
 
10
 
    env = dict(os.environ, PYTHONPATH="/usr/share/maas")
11
 
 
12
 
    command = [
13
 
        'celeryd',
14
 
        '--logfile=%s' % args.logfile,
15
 
        '--schedule=%s' % args.schedule,
16
 
        '--loglevel=INFO',
17
 
        '--beat',
18
 
        '--queues=celery,master',
19
 
        ]
20
 
 
21
 
    # Change gid first, just in case changing the uid might deprive
22
 
    # us of the privileges required to setgid.
23
 
    os.setgid(gid)
24
 
    os.setuid(uid)
25
 
 
26
 
    os.execvpe(command[0], command, env=env)
27
 
 
28
 
def main():
29
 
    import argparse
30
 
    parser = argparse.ArgumentParser(
31
 
           description='MAAS celery daemon config options')
32
 
    parser.add_argument(
33
 
        '--user', '-u', metavar='USER', default='maas',
34
 
        help="System user identity that should run the cluster controller.")
35
 
    parser.add_argument(
36
 
        '--group', '-g', metavar='GROUP', default='maas',
37
 
        help="System group that should run the cluster controller.")
38
 
    parser.add_argument(
39
 
        '--logfile', '-l', metavar='LOGFILE', default='/var/log/maas/celery-region.log',
40
 
        help="Location of the logfile.")
41
 
    parser.add_argument(
42
 
        '--schedule', '-s', metavar='SCHEDULE', default='/var/lib/maas/celerybeat-region-schedule',
43
 
        help="Location of the beat schedule file.")
44
 
 
45
 
    args = args = parser.parse_args()
46
 
 
47
 
    start_celery(args)
48
 
 
49
 
if __name__ == '__main__':
50
 
   main()