ayon-core/pype/plugins/publish/validate_containers.py
2021-02-16 18:24:04 +01:00

28 lines
724 B
Python

import pyblish.api
import pype.lib
from avalon.tools import cbsceneinventory
class ShowInventory(pyblish.api.Action):
label = "Show Inventory"
icon = "briefcase"
on = "failed"
def process(self, context, plugin):
cbsceneinventory.show()
class ValidateContainers(pyblish.api.ContextPlugin):
"""Containers are must be updated to latest version on publish."""
label = "Validate Containers"
order = pyblish.api.ValidatorOrder
hosts = ["maya", "houdini", "nuke", "harmony", "photoshop"]
optional = True
actions = [ShowInventory]
def process(self, context):
if pype.lib.any_outdated():
raise ValueError("There are outdated containers in the scene.")