Fix audit creation with no name and no goal or audit_template
Currently, in that case it was failing because watcher tried to create a name based on a goal automatically and the goal is not defined. This patch is moving the check for goal specification in the audit creation call earlier, and if there is not goal defined, it returns an invalid call error. This patch is also modifying the existing error for this case to check the expected behavior. Closes-Bug: #2110947 Change-Id: I6f3d73b035e8081e86ce82c205498432f0e0fc33
This commit is contained in:
@@ -114,6 +114,11 @@ class AuditPostType(wtypes.Base):
|
||||
if self.audit_type not in audit_type_values:
|
||||
raise exception.AuditTypeNotFound(audit_type=self.audit_type)
|
||||
|
||||
if not self.audit_template_uuid and not self.goal:
|
||||
message = _(
|
||||
'A valid goal or audit_template_id must be provided')
|
||||
raise exception.Invalid(message)
|
||||
|
||||
if (self.audit_type == objects.audit.AuditType.ONESHOT.value and
|
||||
self.interval not in (wtypes.Unset, None)):
|
||||
raise exception.AuditIntervalNotAllowed(audit_type=self.audit_type)
|
||||
@@ -612,11 +617,6 @@ class AuditsController(rest.RestController):
|
||||
if self.from_audits:
|
||||
raise exception.OperationNotPermitted
|
||||
|
||||
if not audit._goal_uuid:
|
||||
raise exception.Invalid(
|
||||
message=_('A valid goal_id or audit_template_id '
|
||||
'must be provided'))
|
||||
|
||||
strategy_uuid = audit.strategy_uuid
|
||||
no_schema = True
|
||||
if strategy_uuid is not None:
|
||||
|
||||
Reference in New Issue
Block a user