diff options
author | Filipp Lepalaan <filipp@mac.com> | 2015-11-18 22:41:40 +0200 |
---|---|---|
committer | Filipp Lepalaan <filipp@mac.com> | 2015-11-18 22:41:40 +0200 |
commit | 085832888a6ebee7f0b2d23c68ef887833f2a94d (patch) | |
tree | 31363288b92ea742b9e10ff21990bd77b8bdbf82 /servo/management | |
parent | 15ea45e17ebe662b4a105a0a61d6e46dcf591358 (diff) | |
download | Servo-085832888a6ebee7f0b2d23c68ef887833f2a94d.tar.gz Servo-085832888a6ebee7f0b2d23c68ef887833f2a94d.tar.bz2 Servo-085832888a6ebee7f0b2d23c68ef887833f2a94d.zip |
Cleanup
Diffstat (limited to 'servo/management')
-rw-r--r-- | servo/management/commands/checkescalations.py | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/servo/management/commands/checkescalations.py b/servo/management/commands/checkescalations.py index 488bda9..a4dfd5f 100644 --- a/servo/management/commands/checkescalations.py +++ b/servo/management/commands/checkescalations.py @@ -4,6 +4,8 @@ from django.db.models import Q from django.utils import timezone from django.core.management.base import BaseCommand, CommandError +from servo.lib.utils import empty +from servo.exceptions import ConfigurationError from servo.models import Configuration, Note, User, Escalation @@ -11,16 +13,22 @@ class Command(BaseCommand): help = "Check updates for open escalations" def handle(self, *args, **options): + # get local user to create notes as uid = Configuration.conf('imap_act') - - if uid in [None, '']: - return + + if empty(uid): + raise ConfigurationError('Incoming message user not defined') user = User.objects.get(pk=uid) tz = timezone.get_current_timezone() for i in Escalation.objects.exclude(Q(escalation_id='') | Q(status='C')): - i.gsx_account.connect(i.created_by) + # connect per-user since the escalations can be under different ship-tos + try: + i.gsx_account.connect(i.created_by) + except Exception: + continue # skip auth errors so we don't get stuck + r = i.get_escalation().lookup() aware = timezone.make_aware(r.lastModifiedTimestamp, tz) |