Repository: ynput/OpenPype
Issue: Nuke: Local vs Farm Publish family inconsistency

 **Describe the bug**
Local publish produces write family instead of render family from farm (Deadline) publish.

**To Reproduce**
1. use {root[work]}/{project[name]}/{hierarchy}/{asset}/publish/{family}/{subset}/{@version}/<_{output}> for Template Render Folder.
2. Publish locally
3. Publish using farm
4. the family key is render for farm, and write for local

**Expected behavior**
Local and farm publish should produce the same family.


[cuID:OP-3642]

Changed files:
openpype/hosts/nuke/plugins/publish/precollect_instances.py, openpype/hosts/nuke/plugins/publish/precollect_writes.py, openpype/hosts/nuke/plugins/publish/extract_render_local.py

diff --git a/openpype/hosts/nuke/plugins/publish/extract_render_local.py b/openpype/hosts/nuke/plugins/publish/extract_render_local.py
index 1595fe03fb..6f0196690c 100644
--- a/openpype/hosts/nuke/plugins/publish/extract_render_local.py
+++ b/openpype/hosts/nuke/plugins/publish/extract_render_local.py
@@ -105,13 +105,16 @@ class NukeRenderLocal(openpype.api.Extractor):
             instance.data['family'] = 'render'
             families.remove('render.local')
             families.insert(0, "render2d")
+            instance.data["anatomyData"]["family"] = "render"
         elif "prerender.local" in families:
             instance.data['family'] = 'prerender'
             families.remove('prerender.local')
             families.insert(0, "prerender")
+            instance.data["anatomyData"]["family"] = "prerender"
         elif "still.local" in families:
             instance.data['family'] = 'image'
             families.remove('still.local')
+            instance.data["anatomyData"]["family"] = "image"
         instance.data["families"] = families
 
         collections, remainder = clique.assemble(filenames)
@@ -123,4 +126,4 @@ class NukeRenderLocal(openpype.api.Extractor):
 
         self.log.info('Finished render')
 
-        self.log.debug("instance extracted: {}".format(instance.data))
+        self.log.debug("_ instance.data: {}".format(instance.data))
diff --git a/openpype/hosts/nuke/plugins/publish/precollect_instances.py b/openpype/hosts/nuke/plugins/publish/precollect_instances.py
index b0da94c4ce..b396056eb9 100644
--- a/openpype/hosts/nuke/plugins/publish/precollect_instances.py
+++ b/openpype/hosts/nuke/plugins/publish/precollect_instances.py
@@ -50,7 +50,7 @@ class PreCollectNukeInstances(pyblish.api.ContextPlugin):
             # establish families
             family = avalon_knob_data["family"]
             families_ak = avalon_knob_data.get("families", [])
-            families = list()
+            families = []
 
             # except disabled nodes but exclude backdrops in test
             if ("nukenodes" not in family) and (node["disable"].value()):
@@ -111,10 +111,10 @@ class PreCollectNukeInstances(pyblish.api.ContextPlugin):
             self.log.debug("__ families: `{}`".format(families))
 
             # Get format
-            format = root['format'].value()
-            resolution_width = format.width()
-            resolution_height = format.height()
-            pixel_aspect = format.pixelAspect()
+            format_ = root['format'].value()
+            resolution_width = format_.width()
+            resolution_height = format_.height()
+            pixel_aspect = format_.pixelAspect()
 
             # get publish knob value
             if "publish" not in node.knobs():
@@ -125,8 +125,11 @@ class PreCollectNukeInstances(pyblish.api.ContextPlugin):
             self.log.debug("__ _families_test: `{}`".format(_families_test))
             for family_test in _families_test:
                 if family_test in self.sync_workfile_version_on_families:
-                    self.log.debug("Syncing version with workfile for '{}'"
-                                   .format(family_test))
+                    self.log.debug(
+                        "Syncing version with workfile for '{}'".format(
+                            family_test
+                        )
+                    )
                     # get version to instance for integration
                     instance.data['version'] = instance.context.data['version']
 
diff --git a/openpype/hosts/nuke/plugins/publish/precollect_writes.py b/openpype/hosts/nuke/plugins/publish/precollect_writes.py
index a97f34b370..e37cc8a80a 100644
--- a/openpype/hosts/nuke/plugins/publish/precollect_writes.py
+++ b/openpype/hosts/nuke/plugins/publish/precollect_writes.py
@@ -144,8 +144,10 @@ class CollectNukeWrites(pyblish.api.InstancePlugin):
             self.log.debug("colorspace: `{}`".format(colorspace))
 
         version_data = {
-            "families": [f.replace(".local", "").replace(".farm", "")
-                         for f in _families_test if "write" not in f],
+            "families": [
+                _f.replace(".local", "").replace(".farm", "")
+                for _f in _families_test if "write" != _f
+            ],
             "colorspace": colorspace
         }