Raise PublishValidationError

This commit is contained in:
Roy Nieterau 2023-04-07 12:39:46 +02:00
parent aeb1ae0451
commit 2dd39ade5f

View file

@ -4,11 +4,19 @@ import pyblish.api
from openpype.pipeline.publish import (
RepairAction,
ValidateContentsOrder,
PublishValidationError
)
import openpype.hosts.maya.api.action
def _as_report_list(values, prefix="- ", suffix="\n"):
"""Return list as bullet point list for a report"""
if not values:
return ""
return prefix + (suffix + prefix).join(values)
def get_namespace(node_name):
# ensure only node's name (not parent path)
node_name = node_name.rsplit("|", 1)[-1]
@ -36,7 +44,12 @@ class ValidateNoNamespace(pyblish.api.InstancePlugin):
invalid = self.get_invalid(instance)
if invalid:
raise ValueError("Namespaces found: {0}".format(invalid))
raise PublishValidationError(
"Namespaces found:\n\n{0}".format(
_as_report_list(sorted(invalid))
),
title="Namespaces in model"
)
@classmethod
def repair(cls, instance):