Merge pull request #3459 from beeankha/email_timeout_option

Provide Default Email Timeout Value

Reviewed-by: https://github.com/softwarefactory-project-zuul[bot]
This commit is contained in:
softwarefactory-project-zuul[bot]
2019-03-22 15:37:02 +00:00
committed by GitHub
2 changed files with 9 additions and 5 deletions

View File

@@ -4618,12 +4618,15 @@ class NotificationTemplateSerializer(BaseSerializer):
object_actual = self.context['view'].get_object() object_actual = self.context['view'].get_object()
else: else:
object_actual = None object_actual = None
for field in notification_class.init_parameters: for field, params in notification_class.init_parameters.items():
if field not in attrs['notification_configuration']: if field not in attrs['notification_configuration']:
missing_fields.append(field) if 'default' in params:
continue attrs['notification_configuration'][field] = params['default']
else:
missing_fields.append(field)
continue
field_val = attrs['notification_configuration'][field] field_val = attrs['notification_configuration'][field]
field_type = notification_class.init_parameters[field]['type'] field_type = params['type']
expected_types = self.type_map[field_type] expected_types = self.type_map[field_type]
if not type(field_val) in expected_types: if not type(field_val) in expected_types:
incorrect_type_fields.append((field, field_type)) incorrect_type_fields.append((field, field_type))

View File

@@ -18,10 +18,11 @@ class CustomEmailBackend(EmailBackend):
"use_ssl": {"label": "Use SSL", "type": "bool"}, "use_ssl": {"label": "Use SSL", "type": "bool"},
"sender": {"label": "Sender Email", "type": "string"}, "sender": {"label": "Sender Email", "type": "string"},
"recipients": {"label": "Recipient List", "type": "list"}, "recipients": {"label": "Recipient List", "type": "list"},
"timeout": {"label": "Timeout", "type": "int"}} "timeout": {"label": "Timeout", "type": "int", "default": 30}}
recipient_parameter = "recipients" recipient_parameter = "recipients"
sender_parameter = "sender" sender_parameter = "sender"
def format_body(self, body): def format_body(self, body):
if "body" in body: if "body" in body:
body_actual = body['body'] body_actual = body['body']