Fixes issue with original directory lookup

Fixes a bug where the instance staging directory was being incorrectly used
when looking up the original directory for publish in place workflows,
instead of the staging directory from representation.

Adds debug logging to inspect instance data during integration.
This commit is contained in:
Jakub Jezek 2025-04-11 15:55:05 +02:00
parent ebeb1d1e19
commit 402e98b443
No known key found for this signature in database
GPG key ID: 06DBD609ADF27FD9

View file

@ -2,6 +2,7 @@ import os
import logging import logging
import sys import sys
import copy import copy
from pprint import pformat
import clique import clique
import pyblish.api import pyblish.api
@ -612,6 +613,7 @@ class IntegrateAsset(pyblish.api.InstancePlugin):
is_udim = bool(repre.get("udim")) is_udim = bool(repre.get("udim"))
self.log.debug(pformat(instance.data))
# handle publish in place # handle publish in place
if "{originalDirname}" in template: if "{originalDirname}" in template:
# store as originalDirname only original value without project root # store as originalDirname only original value without project root
@ -619,8 +621,7 @@ class IntegrateAsset(pyblish.api.InstancePlugin):
# used for all represe # used for all represe
# from temp to final # from temp to final
original_directory = ( original_directory = (
instance.data.get("originalDirname") or instance_stagingdir) instance.data.get("originalDirname") or stagingdir)
_rootless = self.get_rootless_path(anatomy, original_directory) _rootless = self.get_rootless_path(anatomy, original_directory)
if _rootless == original_directory: if _rootless == original_directory:
raise KnownPublishError(( raise KnownPublishError((