summaryrefslogtreecommitdiffstats
path: root/patchwork
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2015-05-28 13:39:05 +0800
committerJeremy Kerr <jk@ozlabs.org>2015-05-28 13:42:11 +0800
commitf7aeab077874d33fc99354661bfeedf508c292b3 (patch)
tree729ba784609e430f7b1a679b9b532ecac9732551 /patchwork
parent8bd43901bccb34f545a1a686b44339ccdb5f44c7 (diff)
downloadpatchwork-f7aeab077874d33fc99354661bfeedf508c292b3.tar.bz2
patchwork-f7aeab077874d33fc99354661bfeedf508c292b3.tar.xz
cron: Move patchwork-cron script to a management command
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'patchwork')
-rwxr-xr-xpatchwork/bin/patchwork-cron.py15
-rwxr-xr-xpatchwork/management/commands/cron.py20
2 files changed, 20 insertions, 15 deletions
diff --git a/patchwork/bin/patchwork-cron.py b/patchwork/bin/patchwork-cron.py
deleted file mode 100755
index 148e97c..0000000
--- a/patchwork/bin/patchwork-cron.py
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/usr/bin/env python
-
-import sys
-from patchwork.utils import send_notifications, do_expiry
-
-def main(args):
- errors = send_notifications()
- for (recipient, error) in errors:
- print "Failed sending to %s: %s" % (recipient.email, ex)
-
- do_expiry()
-
-if __name__ == '__main__':
- sys.exit(main(sys.argv))
-
diff --git a/patchwork/management/commands/cron.py b/patchwork/management/commands/cron.py
new file mode 100755
index 0000000..6217e75
--- /dev/null
+++ b/patchwork/management/commands/cron.py
@@ -0,0 +1,20 @@
+#!/usr/bin/env python
+
+from django.core.management.base import BaseCommand, CommandError
+from patchwork.utils import send_notifications, do_expiry
+
+class Command(BaseCommand):
+ help = ('Run periodic patchwork functions: send notifications and '
+ 'expire unused users')
+
+ def handle(self, *args, **kwargs):
+ errors = send_notifications()
+ for (recipient, error) in errors:
+ self.stderr.write("Failed sending to %s: %s" %
+ (recipient.email, ex))
+
+ do_expiry()
+
+if __name__ == '__main__':
+ sys.exit(main(sys.argv))
+