mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
Publish comments from NukeStudio.
This commit is contained in:
parent
ae3496ceea
commit
46c06ce20d
2 changed files with 50 additions and 2 deletions
24
pype/plugins/ftrack/publish/integrate_ftrack_comments.py
Normal file
24
pype/plugins/ftrack/publish/integrate_ftrack_comments.py
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
import pyblish.api
|
||||
|
||||
|
||||
class IntegrateFtrackComments(pyblish.api.InstancePlugin):
|
||||
"""Create comments in Ftrack."""
|
||||
|
||||
order = pyblish.api.IntegratorOrder
|
||||
label = "Integrate Comments to Ftrack."
|
||||
families = ["shot"]
|
||||
|
||||
def process(self, instance):
|
||||
session = instance.context.data["ftrackSession"]
|
||||
|
||||
entity = session.query(
|
||||
"Shot where name is \"{}\"".format(instance.data["item"].name())
|
||||
).one()
|
||||
|
||||
notes = []
|
||||
for comment in instance.data["comments"]:
|
||||
notes.append(session.create("Note", {"content": comment}))
|
||||
|
||||
entity["notes"].extend(notes)
|
||||
|
||||
session.commit()
|
||||
|
|
@ -30,6 +30,24 @@ class CollectShots(api.ContextPlugin):
|
|||
for key, value in instance.data.iteritems():
|
||||
data[key] = value
|
||||
|
||||
# Collect comments.
|
||||
data["comments"] = []
|
||||
|
||||
# Exclude non-tagged instances.
|
||||
for tag in instance.data["tags"]:
|
||||
if tag["name"].lower() == "comment":
|
||||
data["comments"].append(
|
||||
tag.metadata().dict()["tag.note"]
|
||||
)
|
||||
|
||||
# Find tags on the source clip.
|
||||
tags = instance.data["item"].source().tags()
|
||||
for tag in tags:
|
||||
if tag.name().lower() == "comment":
|
||||
data["comments"].append(
|
||||
tag.metadata().dict()["tag.note"]
|
||||
)
|
||||
|
||||
data["family"] = "shot"
|
||||
data["families"] = []
|
||||
|
||||
|
|
@ -37,8 +55,14 @@ class CollectShots(api.ContextPlugin):
|
|||
|
||||
data["name"] = data["subset"] + "_" + data["asset"]
|
||||
|
||||
data["label"] = data["asset"] + " - " + data["subset"] + " - tasks: {} - assetbuilds: {}".format(
|
||||
data["tasks"], [x["name"] for x in data.get("assetbuilds", [])]
|
||||
data["label"] = (
|
||||
"{} - {} - tasks:{} - assetbuilds:{} - comments:{}".format(
|
||||
data["asset"],
|
||||
data["subset"],
|
||||
data["tasks"],
|
||||
[x["name"] for x in data.get("assetbuilds", [])],
|
||||
len(data["comments"])
|
||||
)
|
||||
)
|
||||
|
||||
# Create instance.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue