Update celery environ and tasks

This commit is contained in:
Wayne Witzel III
2017-11-09 17:21:19 -05:00
parent de376292ba
commit 14c5123fda
6 changed files with 61 additions and 28 deletions

View File

@@ -25,7 +25,7 @@ from django.contrib.contenttypes.models import ContentType
from polymorphic.models import PolymorphicModel
# Django-Celery
from djcelery.models import TaskMeta
from django_celery_results.models import TaskResult
# AWX
from awx.main.models.base import * # noqa
@@ -88,7 +88,7 @@ class UnifiedJobTemplate(PolymorphicModel, CommonModelNameNotUnique, Notificatio
ALL_STATUS_CHOICES = OrderedDict(PROJECT_STATUS_CHOICES + INVENTORY_SOURCE_STATUS_CHOICES + JOB_TEMPLATE_STATUS_CHOICES + DEPRECATED_STATUS_CHOICES).items()
# NOTE: Working around a django-polymorphic issue: https://github.com/django-polymorphic/django-polymorphic/issues/229
_base_manager = models.Manager()
base_manager_name = 'base_objects'
class Meta:
app_label = 'main'
@@ -438,7 +438,7 @@ class UnifiedJob(PolymorphicModel, PasswordFieldsModel, CommonModelNameNotUnique
PASSWORD_FIELDS = ('start_args',)
# NOTE: Working around a django-polymorphic issue: https://github.com/django-polymorphic/django-polymorphic/issues/229
_base_manager = models.Manager()
base_manager_name = 'base_objects'
class Meta:
app_label = 'main'
@@ -872,8 +872,8 @@ class UnifiedJob(PolymorphicModel, PasswordFieldsModel, CommonModelNameNotUnique
def celery_task(self):
try:
if self.celery_task_id:
return TaskMeta.objects.get(task_id=self.celery_task_id)
except TaskMeta.DoesNotExist:
return TaskResult.objects.get(task_id=self.celery_task_id)
except TaskResult.DoesNotExist:
pass
def get_passwords_needed_to_start(self):
@@ -1100,7 +1100,7 @@ class UnifiedJob(PolymorphicModel, PasswordFieldsModel, CommonModelNameNotUnique
cancel_fields.append('job_explanation')
self.save(update_fields=cancel_fields)
self.websocket_emit_status("canceled")
if settings.BROKER_URL.startswith('amqp://'):
if settings.CELERY_BROKER_URL.startswith('amqp://'):
self._force_cancel()
return self.cancel_flag