mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
fix(nuke): removing Metadata integration, adding presets loading
This commit is contained in:
parent
14e76f6425
commit
0453bb5a78
1 changed files with 26 additions and 14 deletions
|
|
@ -4,7 +4,7 @@ import sys
|
|||
from avalon import io, api as avalon, lib as avalonlib
|
||||
from . import lib
|
||||
# from pypeapp.api import (Templates, Logger, format)
|
||||
from pypeapp import Logger
|
||||
from pypeapp import Logger, config, Anatomy
|
||||
log = Logger().get_logger(__name__, os.getenv("AVALON_APP", "pype-config"))
|
||||
|
||||
|
||||
|
|
@ -19,7 +19,7 @@ def set_session():
|
|||
|
||||
def load_data_from_templates():
|
||||
"""
|
||||
Load Templates `contextual` data as singleton object
|
||||
Load Presets and Anatomy `contextual` data as singleton object
|
||||
[info](https://en.wikipedia.org/wiki/Singleton_pattern)
|
||||
|
||||
Returns:
|
||||
|
|
@ -31,17 +31,29 @@ def load_data_from_templates():
|
|||
if not any([
|
||||
api.Dataflow,
|
||||
api.Anatomy,
|
||||
api.Colorspace,
|
||||
api.Metadata
|
||||
api.Colorspace
|
||||
]
|
||||
):
|
||||
# base = Templates()
|
||||
t = Templates(type=["anatomy", "metadata", "dataflow", "colorspace"])
|
||||
api.Anatomy = t.anatomy
|
||||
api.Metadata = t.metadata.format()
|
||||
data = {"metadata": api.Metadata}
|
||||
api.Dataflow = t.dataflow.format(data)
|
||||
api.Colorspace = t.colorspace
|
||||
presets = config.get_presets()
|
||||
anatomy = Anatomy()
|
||||
|
||||
try:
|
||||
# try if it is not in projects custom directory
|
||||
# `{PYPE_PROJECT_CONFIGS}/[PROJECT_NAME]/init.json`
|
||||
# init.json define preset names to be used
|
||||
p_init = presets["init"]
|
||||
colorspace = presets["colorspace"][p_init["colorspace"]]
|
||||
dataflow = presets["dataflow"][p_init["dataflow"]]
|
||||
except KeyError:
|
||||
log.warning("No projects custom preset available...")
|
||||
colorspace = presets["colorspace"]["default"]
|
||||
dataflow = presets["dataflow"]["default"]
|
||||
log.info("Presets `colorspace` and `dataflow` loaded from `default`...")
|
||||
|
||||
api.Anatomy = anatomy
|
||||
api.Dataflow = dataflow
|
||||
api.Colorspace = colorspace
|
||||
|
||||
log.info("Data from templates were Loaded...")
|
||||
|
||||
|
||||
|
|
@ -59,7 +71,6 @@ def reset_data_from_templates():
|
|||
api.Dataflow = None
|
||||
api.Anatomy = None
|
||||
api.Colorspace = None
|
||||
api.Metadata = None
|
||||
log.info("Data from templates were Unloaded...")
|
||||
|
||||
|
||||
|
|
@ -283,11 +294,12 @@ def get_workdir_template(data=None):
|
|||
load_data_from_templates()
|
||||
|
||||
anatomy = api.Anatomy
|
||||
anatomy_filled = anatomy.format(data or get_context_data())
|
||||
|
||||
try:
|
||||
work = anatomy.work.format(data or get_context_data())
|
||||
work = anatomy_filled["work"]
|
||||
except Exception as e:
|
||||
log.error("{0} Error in "
|
||||
"get_workdir_template(): {1}".format(__name__, e))
|
||||
|
||||
return os.path.join(work.root, work.folder)
|
||||
return work["folder"]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue