From 45df199703908d039eec95d024d2230c18f905db Mon Sep 17 00:00:00 2001 From: Aaron Tan Date: Mon, 7 Nov 2016 11:37:11 -0500 Subject: [PATCH 1/3] Implement workflow JT schedule. --- awx/api/serializers.py | 2 +- awx/api/urls.py | 1 + awx/api/views.py | 11 +++++++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index d7c17238d7..e8735c7c62 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -2197,7 +2197,7 @@ class WorkflowJobTemplateSerializer(LabelsListMixin, UnifiedJobTemplateSerialize res = super(WorkflowJobTemplateSerializer, self).get_related(obj) res.update(dict( jobs = reverse('api:workflow_job_template_jobs_list', args=(obj.pk,)), - #schedules = reverse('api:workflow_job_template_schedules_list', args=(obj.pk,)), + schedules = reverse('api:workflow_job_template_schedules_list', args=(obj.pk,)), launch = reverse('api:workflow_job_template_launch', args=(obj.pk,)), workflow_nodes = reverse('api:workflow_job_template_workflow_nodes_list', args=(obj.pk,)), labels = reverse('api:workflow_job_template_label_list', args=(obj.pk,)), diff --git a/awx/api/urls.py b/awx/api/urls.py index 2e1ad4afad..f760506309 100644 --- a/awx/api/urls.py +++ b/awx/api/urls.py @@ -262,6 +262,7 @@ workflow_job_template_urls = patterns('awx.api.views', url(r'^(?P[0-9]+)/$', 'workflow_job_template_detail'), url(r'^(?P[0-9]+)/jobs/$', 'workflow_job_template_jobs_list'), url(r'^(?P[0-9]+)/launch/$', 'workflow_job_template_launch'), + url(r'^(?P[0-9]+)/schedules/$', 'workflow_job_template_schedules_list'), url(r'^(?P[0-9]+)/workflow_nodes/$', 'workflow_job_template_workflow_nodes_list'), url(r'^(?P[0-9]+)/labels/$', 'workflow_job_template_label_list'), # url(r'^(?P[0-9]+)/cancel/$', 'workflow_job_template_cancel'), diff --git a/awx/api/views.py b/awx/api/views.py index 53df80bff1..ff80ff18d3 100644 --- a/awx/api/views.py +++ b/awx/api/views.py @@ -2827,6 +2827,17 @@ class WorkflowJobTemplateJobsList(SubListAPIView): relationship = 'jobs' parent_key = 'workflow_job_template' +class WorkflowJobTemplateSchedulesList(SubListCreateAttachDetachAPIView): + + view_name = _("Workflow Job Template Schedules") + + model = Schedule + serializer_class = ScheduleSerializer + parent_model = WorkflowJobTemplate + relationship = 'schedules' + parent_key = 'unified_job_template' + new_in_310 = True + # TODO: class WorkflowJobList(ListCreateAPIView): From a80c8077d20a3598b94c2ac2a4a9c65022daf114 Mon Sep 17 00:00:00 2001 From: Aaron Tan Date: Mon, 7 Nov 2016 11:51:35 -0500 Subject: [PATCH 2/3] Update _get_unified_job_field_names. --- awx/main/models/workflow.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/awx/main/models/workflow.py b/awx/main/models/workflow.py index b267343ea3..86c302fe75 100644 --- a/awx/main/models/workflow.py +++ b/awx/main/models/workflow.py @@ -290,7 +290,7 @@ class WorkflowJobTemplate(UnifiedJobTemplate, WorkflowJobOptions, ResourceMixin) @classmethod def _get_unified_job_field_names(cls): - return ['name', 'description', 'extra_vars', 'labels',] + return ['name', 'description', 'job_type', 'extra_vars', 'labels', 'schedule'] def get_absolute_url(self): return reverse('api:workflow_job_template_detail', args=(self.pk,)) From cd14b62b23f14b3120a843de0731da23d033bc00 Mon Sep 17 00:00:00 2001 From: Aaron Tan Date: Mon, 7 Nov 2016 16:16:13 -0500 Subject: [PATCH 3/3] typo fix. --- awx/main/models/workflow.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/awx/main/models/workflow.py b/awx/main/models/workflow.py index 86c302fe75..158efabeb4 100644 --- a/awx/main/models/workflow.py +++ b/awx/main/models/workflow.py @@ -290,7 +290,7 @@ class WorkflowJobTemplate(UnifiedJobTemplate, WorkflowJobOptions, ResourceMixin) @classmethod def _get_unified_job_field_names(cls): - return ['name', 'description', 'job_type', 'extra_vars', 'labels', 'schedule'] + return ['name', 'description', 'extra_vars', 'labels', 'schedule', 'launch_type'] def get_absolute_url(self): return reverse('api:workflow_job_template_detail', args=(self.pk,))