mirror of
https://github.com/ansible/awx.git
synced 2026-02-28 16:28:43 -03:30
AC-1040 Update jobs models and migrations (work in progress).
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
# Copyright (c) 2014 AnsibleWorks, Inc.
|
||||
# All Rights Reserved.
|
||||
|
||||
|
||||
# Django
|
||||
from django.conf import settings
|
||||
from django.db import models
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
@@ -9,12 +10,13 @@ from django.utils.translation import ugettext_lazy as _
|
||||
__all__ = ['ActivityStream']
|
||||
|
||||
|
||||
class ActivityStream(models.Model):
|
||||
class ActivityStreamBase(models.Model):
|
||||
'''
|
||||
Model used to describe activity stream (audit) events
|
||||
'''
|
||||
|
||||
class Meta:
|
||||
abstract = True
|
||||
app_label = 'main'
|
||||
|
||||
OPERATION_CHOICES = [
|
||||
@@ -39,15 +41,15 @@ class ActivityStream(models.Model):
|
||||
inventory = models.ManyToManyField("Inventory", blank=True)
|
||||
host = models.ManyToManyField("Host", blank=True)
|
||||
group = models.ManyToManyField("Group", blank=True)
|
||||
inventory_source = models.ManyToManyField("InventorySource", blank=True)
|
||||
inventory_update = models.ManyToManyField("InventoryUpdate", blank=True)
|
||||
#inventory_source = models.ManyToManyField("InventorySource", blank=True)
|
||||
#inventory_update = models.ManyToManyField("InventoryUpdate", blank=True)
|
||||
credential = models.ManyToManyField("Credential", blank=True)
|
||||
team = models.ManyToManyField("Team", blank=True)
|
||||
project = models.ManyToManyField("Project", blank=True)
|
||||
project_update = models.ManyToManyField("ProjectUpdate", blank=True)
|
||||
#project = models.ManyToManyField("Project", blank=True)
|
||||
#project_update = models.ManyToManyField("ProjectUpdate", blank=True)
|
||||
permission = models.ManyToManyField("Permission", blank=True)
|
||||
job_template = models.ManyToManyField("JobTemplate", blank=True)
|
||||
job = models.ManyToManyField("Job", blank=True)
|
||||
#job_template = models.ManyToManyField("JobTemplate", blank=True)
|
||||
#job = models.ManyToManyField("Job", blank=True)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('api:activity_stream_detail', args=(self.pk,))
|
||||
@@ -62,3 +64,62 @@ class ActivityStream(models.Model):
|
||||
raise
|
||||
kwargs.pop('update_fields')
|
||||
super(ActivityStream, self).save(*args, **kwargs)
|
||||
|
||||
|
||||
if getattr(settings, 'UNIFIED_JOBS_STEP') == 0:
|
||||
|
||||
class ActivityStream(ActivityStreamBase):
|
||||
|
||||
class Meta:
|
||||
app_label = 'main'
|
||||
|
||||
inventory_source = models.ManyToManyField("InventorySource", blank=True)
|
||||
inventory_update = models.ManyToManyField("InventoryUpdate", blank=True)
|
||||
project = models.ManyToManyField("Project", blank=True)
|
||||
project_update = models.ManyToManyField("ProjectUpdate", blank=True)
|
||||
job_template = models.ManyToManyField("JobTemplate", blank=True)
|
||||
job = models.ManyToManyField("Job", blank=True)
|
||||
|
||||
unified_job_template = models.ManyToManyField("UnifiedJobTemplate", blank=True, related_name='activity_stream_as_unified_job_template+')
|
||||
unified_job = models.ManyToManyField("UnifiedJob", blank=True, related_name='activity_stream_as_unified_job+')
|
||||
|
||||
new_inventory_source = models.ManyToManyField("InventorySourceNew", blank=True)
|
||||
new_inventory_update = models.ManyToManyField("InventoryUpdateNew", blank=True)
|
||||
new_project = models.ManyToManyField("ProjectNew", blank=True)
|
||||
new_project_update = models.ManyToManyField("ProjectUpdateNew", blank=True)
|
||||
new_job_template = models.ManyToManyField("JobTemplateNew", blank=True)
|
||||
new_job = models.ManyToManyField("JobNew", blank=True)
|
||||
|
||||
if getattr(settings, 'UNIFIED_JOBS_STEP') == 1:
|
||||
|
||||
class ActivityStream(ActivityStreamBase):
|
||||
|
||||
class Meta:
|
||||
app_label = 'main'
|
||||
|
||||
unified_job_template = models.ManyToManyField("UnifiedJobTemplate", blank=True, related_name='activity_stream_as_unified_job_template+')
|
||||
unified_job = models.ManyToManyField("UnifiedJob", blank=True, related_name='activity_stream_as_unified_job+')
|
||||
|
||||
new_inventory_source = models.ManyToManyField("InventorySourceNew", blank=True)
|
||||
new_inventory_update = models.ManyToManyField("InventoryUpdateNew", blank=True)
|
||||
new_project = models.ManyToManyField("ProjectNew", blank=True)
|
||||
new_project_update = models.ManyToManyField("ProjectUpdateNew", blank=True)
|
||||
new_job_template = models.ManyToManyField("JobTemplateNew", blank=True)
|
||||
new_job = models.ManyToManyField("JobNew", blank=True)
|
||||
|
||||
if getattr(settings, 'UNIFIED_JOBS_STEP') == 2:
|
||||
|
||||
class ActivityStream(ActivityStreamBase):
|
||||
|
||||
class Meta:
|
||||
app_label = 'main'
|
||||
|
||||
unified_job_template = models.ManyToManyField("UnifiedJobTemplate", blank=True, related_name='activity_stream_as_unified_job_template+')
|
||||
unified_job = models.ManyToManyField("UnifiedJob", blank=True, related_name='activity_stream_as_unified_job+')
|
||||
|
||||
inventory_source = models.ManyToManyField("InventorySource", blank=True)
|
||||
inventory_update = models.ManyToManyField("InventoryUpdate", blank=True)
|
||||
project = models.ManyToManyField("Project", blank=True)
|
||||
project_update = models.ManyToManyField("ProjectUpdate", blank=True)
|
||||
job_template = models.ManyToManyField("JobTemplate", blank=True)
|
||||
job = models.ManyToManyField("Job", blank=True)
|
||||
|
||||
Reference in New Issue
Block a user