From e946dd529a3bb0c3778729956e0fd2d324de0119 Mon Sep 17 00:00:00 2001 From: Petr Kalis Date: Fri, 24 May 2024 14:11:25 +0200 Subject: [PATCH 1/6] Fix run deadline collectors on preprender Prerender instances (in Nuke) would be skipped and submit to DL would fail --- .../plugins/publish/collect_deadline_server_from_instance.py | 1 + .../ayon_core/modules/deadline/plugins/publish/collect_pools.py | 1 + .../modules/deadline/plugins/publish/collect_user_credentials.py | 1 + 3 files changed, 3 insertions(+) diff --git a/client/ayon_core/modules/deadline/plugins/publish/collect_deadline_server_from_instance.py b/client/ayon_core/modules/deadline/plugins/publish/collect_deadline_server_from_instance.py index 22022831a0..7fe3ceab9d 100644 --- a/client/ayon_core/modules/deadline/plugins/publish/collect_deadline_server_from_instance.py +++ b/client/ayon_core/modules/deadline/plugins/publish/collect_deadline_server_from_instance.py @@ -17,6 +17,7 @@ class CollectDeadlineServerFromInstance(pyblish.api.InstancePlugin): label = "Deadline Webservice from the Instance" targets = ["local"] families = ["render", + "prerender", "rendering", "render.farm", "renderFarm", diff --git a/client/ayon_core/modules/deadline/plugins/publish/collect_pools.py b/client/ayon_core/modules/deadline/plugins/publish/collect_pools.py index 6923c2b16b..fe5c8be49c 100644 --- a/client/ayon_core/modules/deadline/plugins/publish/collect_pools.py +++ b/client/ayon_core/modules/deadline/plugins/publish/collect_pools.py @@ -35,6 +35,7 @@ class CollectDeadlinePools(pyblish.api.InstancePlugin, "houdini"] families = ["render", + "prerender", "rendering", "render.farm", "renderFarm", diff --git a/client/ayon_core/modules/deadline/plugins/publish/collect_user_credentials.py b/client/ayon_core/modules/deadline/plugins/publish/collect_user_credentials.py index 99d75ecb9e..da5d00f24c 100644 --- a/client/ayon_core/modules/deadline/plugins/publish/collect_user_credentials.py +++ b/client/ayon_core/modules/deadline/plugins/publish/collect_user_credentials.py @@ -34,6 +34,7 @@ class CollectDeadlineUserCredentials(pyblish.api.InstancePlugin): "houdini"] families = ["render", + "prerender", "rendering", "render.farm", "renderFarm", From 60c42b4bbbcfe1b8ddf9b1e9bfb7262ef9723b62 Mon Sep 17 00:00:00 2001 From: Petr Kalis Date: Fri, 7 Jun 2024 17:07:42 +0200 Subject: [PATCH 2/6] Standardize families to submit_publish_job --- .../collect_deadline_server_from_instance.py | 23 +++++++------------ .../plugins/publish/collect_pools.py | 21 ++++++----------- .../publish/collect_user_credentials.py | 21 ++++++----------- 3 files changed, 22 insertions(+), 43 deletions(-) diff --git a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py index 7fe3ceab9d..90776220d3 100644 --- a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py +++ b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py @@ -16,21 +16,14 @@ class CollectDeadlineServerFromInstance(pyblish.api.InstancePlugin): order = pyblish.api.CollectorOrder + 0.225 label = "Deadline Webservice from the Instance" targets = ["local"] - families = ["render", - "prerender", - "rendering", - "render.farm", - "renderFarm", - "renderlayer", - "maxrender", - "usdrender", - "redshift_rop", - "arnold_rop", - "mantra_rop", - "karma_rop", - "vray_rop", - "publish.hou", - "image"] # for Fusion + + families = ["render", "render.farm", "render.frames_farm", + "prerender", "prerender.farm", "prerender.frames_farm", + "renderlayer", "imagesequence", "image", + "vrayscene", "maxrender", + "arnold_rop", "mantra_rop", + "karma_rop", "vray_rop", "redshift_rop", + "renderFarm", "usrender", "publish.hou"] def process(self, instance): if not instance.data.get("farm"): diff --git a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py index f2437738ef..b3e0625d3b 100644 --- a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py +++ b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py @@ -36,20 +36,13 @@ class CollectDeadlinePools(pyblish.api.InstancePlugin, "nuke", ] - families = ["render", - "prerender", - "rendering", - "render.farm", - "renderFarm", - "renderlayer", - "maxrender", - "usdrender", - "redshift_rop", - "arnold_rop", - "mantra_rop", - "karma_rop", - "vray_rop", - "publish.hou"] + families = ["render", "render.farm", "render.frames_farm", + "prerender", "prerender.farm", "prerender.frames_farm", + "renderlayer", "imagesequence", "image", + "vrayscene", "maxrender", + "arnold_rop", "mantra_rop", + "karma_rop", "vray_rop", "redshift_rop", + "renderFarm", "usrender", "publish.hou"] primary_pool = None secondary_pool = None diff --git a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py index da9a95a98c..9732b79f5a 100644 --- a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py +++ b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py @@ -31,20 +31,13 @@ class CollectDeadlineUserCredentials(pyblish.api.InstancePlugin): "max", "houdini"] - families = ["render", - "prerender", - "rendering", - "render.farm", - "renderFarm", - "renderlayer", - "maxrender", - "usdrender", - "redshift_rop", - "arnold_rop", - "mantra_rop", - "karma_rop", - "vray_rop", - "publish.hou"] + families = ["render", "render.farm", "render.frames_farm", + "prerender", "prerender.farm", "prerender.frames_farm", + "renderlayer", "imagesequence", "image", + "vrayscene", "maxrender", + "arnold_rop", "mantra_rop", + "karma_rop", "vray_rop", "redshift_rop", + "renderFarm", "usrender", "publish.hou"] def process(self, instance): if not instance.data.get("farm"): From a853d39275fab6b4bf0330a697b96446c2702195 Mon Sep 17 00:00:00 2001 From: Petr Kalis Date: Mon, 10 Jun 2024 17:49:28 +0200 Subject: [PATCH 3/6] Use single list of families All collectors should use same list of families (eg. product types). This list is a bit bigger than list in submit_publish_job which might be by design as some families might be changing during publishing steps. --- server_addon/deadline/client/ayon_deadline/lib.py | 10 ++++++++++ .../publish/collect_deadline_server_from_instance.py | 10 +++------- .../ayon_deadline/plugins/publish/collect_pools.py | 10 +++------- .../plugins/publish/collect_user_credentials.py | 10 +++------- 4 files changed, 19 insertions(+), 21 deletions(-) create mode 100644 server_addon/deadline/client/ayon_deadline/lib.py diff --git a/server_addon/deadline/client/ayon_deadline/lib.py b/server_addon/deadline/client/ayon_deadline/lib.py new file mode 100644 index 0000000000..8822559134 --- /dev/null +++ b/server_addon/deadline/client/ayon_deadline/lib.py @@ -0,0 +1,10 @@ +# describes list of product typed used for plugin filtering for farm publishing +FARM_FAMILIES = [ + "render", "render.farm", "render.frames_farm", + "prerender", "prerender.farm", "prerender.frames_farm", + "renderlayer", "imagesequence", "image", + "vrayscene", "maxrender", + "arnold_rop", "mantra_rop", + "karma_rop", "vray_rop", "redshift_rop", + "renderFarm", "usrender", "publish.hou" +] diff --git a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py index 90776220d3..2c8cbd1620 100644 --- a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py +++ b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_deadline_server_from_instance.py @@ -8,6 +8,8 @@ attribute or using default server if that attribute doesn't exists. import pyblish.api from ayon_core.pipeline.publish import KnownPublishError +from ayon_deadline.lib import FARM_FAMILIES + class CollectDeadlineServerFromInstance(pyblish.api.InstancePlugin): """Collect Deadline Webservice URL from instance.""" @@ -17,13 +19,7 @@ class CollectDeadlineServerFromInstance(pyblish.api.InstancePlugin): label = "Deadline Webservice from the Instance" targets = ["local"] - families = ["render", "render.farm", "render.frames_farm", - "prerender", "prerender.farm", "prerender.frames_farm", - "renderlayer", "imagesequence", "image", - "vrayscene", "maxrender", - "arnold_rop", "mantra_rop", - "karma_rop", "vray_rop", "redshift_rop", - "renderFarm", "usrender", "publish.hou"] + families = FARM_FAMILIES def process(self, instance): if not instance.data.get("farm"): diff --git a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py index b3e0625d3b..b2b6bc60d4 100644 --- a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py +++ b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_pools.py @@ -3,6 +3,8 @@ import pyblish.api from ayon_core.lib import TextDef from ayon_core.pipeline.publish import AYONPyblishPluginMixin +from ayon_deadline.lib import FARM_FAMILIES + class CollectDeadlinePools(pyblish.api.InstancePlugin, AYONPyblishPluginMixin): @@ -36,13 +38,7 @@ class CollectDeadlinePools(pyblish.api.InstancePlugin, "nuke", ] - families = ["render", "render.farm", "render.frames_farm", - "prerender", "prerender.farm", "prerender.frames_farm", - "renderlayer", "imagesequence", "image", - "vrayscene", "maxrender", - "arnold_rop", "mantra_rop", - "karma_rop", "vray_rop", "redshift_rop", - "renderFarm", "usrender", "publish.hou"] + families = FARM_FAMILIES primary_pool = None secondary_pool = None diff --git a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py index 9732b79f5a..ab96ba5828 100644 --- a/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py +++ b/server_addon/deadline/client/ayon_deadline/plugins/publish/collect_user_credentials.py @@ -14,6 +14,8 @@ import pyblish.api from ayon_api import get_server_api_connection +from ayon_deadline.lib import FARM_FAMILIES + class CollectDeadlineUserCredentials(pyblish.api.InstancePlugin): """Collects user name and password for artist if DL requires authentication @@ -31,13 +33,7 @@ class CollectDeadlineUserCredentials(pyblish.api.InstancePlugin): "max", "houdini"] - families = ["render", "render.farm", "render.frames_farm", - "prerender", "prerender.farm", "prerender.frames_farm", - "renderlayer", "imagesequence", "image", - "vrayscene", "maxrender", - "arnold_rop", "mantra_rop", - "karma_rop", "vray_rop", "redshift_rop", - "renderFarm", "usrender", "publish.hou"] + families = FARM_FAMILIES def process(self, instance): if not instance.data.get("farm"): From e7b436a4123ac35a90254e4101c5c3316293748a Mon Sep 17 00:00:00 2001 From: Roy Nieterau Date: Tue, 11 Jun 2024 00:53:07 +0200 Subject: [PATCH 4/6] Actually format the representation name into the log message --- client/ayon_core/plugins/publish/extract_color_transcode.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/ayon_core/plugins/publish/extract_color_transcode.py b/client/ayon_core/plugins/publish/extract_color_transcode.py index 1130c575a3..07f10cb469 100644 --- a/client/ayon_core/plugins/publish/extract_color_transcode.py +++ b/client/ayon_core/plugins/publish/extract_color_transcode.py @@ -364,7 +364,7 @@ class ExtractOIIOTranscode(publish.Extractor): if not repre.get("colorspaceData"): self.log.debug("Representation '{}' has no colorspace data. " - "Skipped.") + "Skipped.".format(repre["name"])) return False return True From 0d4d13e240b57bf4f1589932b3b8e8f9ff00896c Mon Sep 17 00:00:00 2001 From: Roy Nieterau Date: Tue, 11 Jun 2024 00:55:08 +0200 Subject: [PATCH 5/6] Fix typo `_on_refreh_clicked` -> `_on_refresh_clicked` --- client/ayon_core/tools/launcher/ui/hierarchy_page.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/ayon_core/tools/launcher/ui/hierarchy_page.py b/client/ayon_core/tools/launcher/ui/hierarchy_page.py index 226a57930b..ad48e8ac77 100644 --- a/client/ayon_core/tools/launcher/ui/hierarchy_page.py +++ b/client/ayon_core/tools/launcher/ui/hierarchy_page.py @@ -70,7 +70,7 @@ class HierarchyPage(QtWidgets.QWidget): main_layout.addWidget(content_body, 1) btn_back.clicked.connect(self._on_back_clicked) - refresh_btn.clicked.connect(self._on_refreh_clicked) + refresh_btn.clicked.connect(self._on_refresh_clicked) folders_filter_text.textChanged.connect(self._on_filter_text_changed) self._is_visible = False @@ -99,7 +99,7 @@ class HierarchyPage(QtWidgets.QWidget): def _on_back_clicked(self): self._controller.set_selected_project(None) - def _on_refreh_clicked(self): + def _on_refresh_clicked(self): self._controller.refresh() def _on_filter_text_changed(self, text): From 34a055d92baf2928fa607b1b3065a52aa165e760 Mon Sep 17 00:00:00 2001 From: Roy Nieterau Date: Tue, 11 Jun 2024 01:25:15 +0200 Subject: [PATCH 6/6] Fix `super` call --- client/ayon_core/lib/attribute_definitions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/ayon_core/lib/attribute_definitions.py b/client/ayon_core/lib/attribute_definitions.py index 3dd284b8e4..0a9d38ab65 100644 --- a/client/ayon_core/lib/attribute_definitions.py +++ b/client/ayon_core/lib/attribute_definitions.py @@ -281,7 +281,7 @@ class HiddenDef(AbstractAttrDef): def __init__(self, key, default=None, **kwargs): kwargs["default"] = default kwargs["hidden"] = True - super(UnknownDef, self).__init__(key, **kwargs) + super(HiddenDef, self).__init__(key, **kwargs) def convert_value(self, value): return value