From d985b1215a2a7024ff49ee5904d46f572670d3df Mon Sep 17 00:00:00 2001 From: Jim Ladd Date: Wed, 16 Oct 2019 21:26:02 -0700 Subject: [PATCH] In awxkit, add support for wf approval notification templates --- awxkit/awxkit/api/mixins/has_notifications.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/awxkit/awxkit/api/mixins/has_notifications.py b/awxkit/awxkit/api/mixins/has_notifications.py index e75c01b098..aced603af2 100644 --- a/awxkit/awxkit/api/mixins/has_notifications.py +++ b/awxkit/awxkit/api/mixins/has_notifications.py @@ -4,19 +4,26 @@ import awxkit.exceptions as exc notification_endpoints = ("notification_templates", "notification_templates_started", "notification_templates_error", "notification_templates_success") +wfjt_notification_endpoints = notification_endpoints + ('notification_templates_approvals',) class HasNotifications(object): def add_notification_template(self, notification_template, endpoint="notification_templates_success"): - if endpoint not in notification_endpoints: + from awxkit.api.pages.workflow_job_templates import WorkflowJobTemplate + supported_endpoints = wfjt_notification_endpoints if isinstance(self, WorkflowJobTemplate) \ + else notification_endpoints + if endpoint not in supported_endpoints: raise ValueError('Unsupported notification endpoint "{0}". Please use one of {1}.' .format(endpoint, notification_endpoints)) with suppress(exc.NoContent): self.related[endpoint].post(dict(id=notification_template.id)) def remove_notification_template(self, notification_template, endpoint="notification_templates_success"): - if endpoint not in notification_endpoints: + from awxkit.api.pages.workflow_job_templates import WorkflowJobTemplate + supported_endpoints = wfjt_notification_endpoints if isinstance(self, WorkflowJobTemplate) \ + else notification_endpoints + if endpoint not in supported_endpoints: raise ValueError('Unsupported notification endpoint "{0}". Please use one of {1}.' .format(endpoint, notification_endpoints)) with suppress(exc.NoContent):