diff --git a/pype/nuke/__init__.py b/pype/nuke/__init__.py index c5d3652a73..8fc7cd3599 100644 --- a/pype/nuke/__init__.py +++ b/pype/nuke/__init__.py @@ -53,7 +53,7 @@ class NukeHandler(api.Logger.logging.Handler): msg = self.format(record) if record.levelname.lower() in [ - "warning", + # "warning", "critical", "fatal", "error" @@ -67,7 +67,7 @@ if nuke_handler.get_name() \ not in [handler.get_name() for handler in api.Logger.logging.root.handlers[:]]: api.Logger.logging.getLogger().addHandler(nuke_handler) - api.Logger.logging.getLogger().setLevel(api.Logger.logging.DEBUG) + api.Logger.logging.getLogger().setLevel(api.Logger.logging.INFO) if not self.nLogger: self.nLogger = api.Logger @@ -114,12 +114,7 @@ def install(): # Disable all families except for the ones we explicitly want to see family_states = [ "write", - "lifeGroup", - "backdrop", - "imagesequence", - "mov" - "camera", - "pointcache", + "review" ] avalon.data["familiesStateDefault"] = False diff --git a/pype/plugins/ftrack/integrate_ftrack_instances.py b/pype/plugins/ftrack/integrate_ftrack_instances.py index 441dd6f88d..b927e2b445 100644 --- a/pype/plugins/ftrack/integrate_ftrack_instances.py +++ b/pype/plugins/ftrack/integrate_ftrack_instances.py @@ -13,6 +13,7 @@ class IntegrateFtrackInstance(pyblish.api.InstancePlugin): order = pyblish.api.IntegratorOrder + 0.48 label = 'Integrate Ftrack Component' + families = ["render.frames", "still.frames"] family_mapping = {'camera': 'cam', 'look': 'look', @@ -23,7 +24,8 @@ class IntegrateFtrackInstance(pyblish.api.InstancePlugin): 'pointcache': 'cache', 'review': 'mov', 'write': 'img', - 'render': 'render'} + 'render': 'render' + } def process(self, instance): diff --git a/pype/plugins/nuke/publish/collect_writes.py b/pype/plugins/nuke/publish/collect_writes.py index c13f3dcaa4..fec9af26f6 100644 --- a/pype/plugins/nuke/publish/collect_writes.py +++ b/pype/plugins/nuke/publish/collect_writes.py @@ -58,19 +58,29 @@ class CollectNukeWrites(pyblish.api.ContextPlugin): # preredered frames if not node["render"].value(): - families = "prerendered.frames" - collected_frames = os.listdir(output_dir) - self.log.debug("collected_frames: {}".format(label)) - if "files" not in instance.data: - instance.data["files"] = list() - instance.data["files"].append(collected_frames) - instance.data['transfer'] = False + try: + families = [ + "{}.frames".format(instance.data["avalonKnob"]["families"]), + 'ftrack' + ] + collected_frames = os.listdir(output_dir) + self.log.debug("collected_frames: {}".format(label)) + if "files" not in instance.data: + instance.data["files"] = list() + instance.data["files"].append(collected_frames) + instance.data['transfer'] = False + except Exception: + node["render"].setValue(True) + raise self.log.warning("needs to refresh the publishing") else: # dealing with local/farm rendering if node["render_farm"].value(): - families = "{}.farm".format(instance.data["avalonKnob"]["families"][0]) + families = [ + "{}.farm".format(instance.data["avalonKnob"]["families"])] else: - families = "{}.local".format(instance.data["avalonKnob"]["families"]) + families = [ + "{}.local".format(instance.data["avalonKnob"]["families"]) + ] self.log.debug("checking for error: {}".format(label)) instance.data.update({ @@ -78,7 +88,7 @@ class CollectNukeWrites(pyblish.api.ContextPlugin): "outputDir": output_dir, "ext": ext, "label": label, - "families": [families, 'ftrack'], + "families": families, "startFrame": first_frame, "endFrame": last_frame, "outputType": output_type, diff --git a/pype/plugins/nuke/publish/integrate_rendered_frames.py b/pype/plugins/nuke/publish/integrate_rendered_frames.py index 8c178df4e4..e73733bdf6 100644 --- a/pype/plugins/nuke/publish/integrate_rendered_frames.py +++ b/pype/plugins/nuke/publish/integrate_rendered_frames.py @@ -24,7 +24,7 @@ class IntegrateFrames(pyblish.api.InstancePlugin): label = "Integrate Frames" order = pyblish.api.IntegratorOrder - families = ["prerendered.frames"] + families = ["render.frames", "still.frames", "prerender.frames"] def process(self, instance): @@ -211,7 +211,6 @@ class IntegrateFrames(pyblish.api.InstancePlugin): template = anatomy.render.path instance.data["transfers"].append([src, dst]) - representation = { "schema": "pype:representation-2.0", "type": "representation", @@ -223,21 +222,23 @@ class IntegrateFrames(pyblish.api.InstancePlugin): # Imprint shortcut to context # for performance reasons. "context": { - "root": root, - "project": PROJECT, - "projectcode": project['data']['code'], - 'task': api.Session["AVALON_TASK"], - "silo": asset['silo'], - "asset": ASSET, - "family": instance.data['family'], - "subset": subset["name"], - "version": version["name"], - "hierarchy": hierarchy, - "representation": ext[1:] + "root": root, + "project": PROJECT, + "projectcode": project['data']['code'], + 'task': api.Session["AVALON_TASK"], + "silo": asset['silo'], + "asset": ASSET, + "family": instance.data['family'], + "subset": subset["name"], + "version": version["name"], + "hierarchy": hierarchy, + "representation": ext[1:] } } destination_list.append(dst) instance.data['destination_list'] = destination_list + self.log.warning("instance: {}".format(instance)) + instance[0]["render"].setValue(False) representations.append(representation) self.log.info("Registering {} items".format(len(representations)))