diff --git a/server_addon/harmony/harmony/ayon_harmony/api/README.md b/server_addon/harmony/harmony/ayon_harmony/api/README.md index b8d1dbc100..6666ede83c 100644 --- a/server_addon/harmony/harmony/ayon_harmony/api/README.md +++ b/server_addon/harmony/harmony/ayon_harmony/api/README.md @@ -5,7 +5,7 @@ The easiest way to setup for using Toon Boom Harmony is to use the built-in launch: ``` -python -c "import ayon_core.hosts.harmony.api as harmony;harmony.launch("path/to/harmony/executable")" +python -c "import ayon_harmony.api as harmony;harmony.launch("path/to/harmony/executable")" ``` Communication with Harmony happens with a server/client relationship where the server is in the Python process and the client is in the Harmony process. Messages between Python and Harmony are required to be dictionaries, which are serialized to strings: @@ -59,7 +59,7 @@ You can show the Workfiles app when Harmony launches by setting environment vari ### Low level messaging To send from Python to Harmony you can use the exposed method: ```python -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from uuid import uuid4 @@ -75,7 +75,7 @@ print(harmony.send({"function": func, "args": ["Python"]})["result"]) To send a function with multiple arguments its best to declare the arguments within the function: ```python -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from uuid import uuid4 signature = str(uuid4()).replace("-", "_") @@ -114,7 +114,7 @@ PypeHarmony.myAwesomeFunction = function() { Then you can call that javascript code from your Python like: ```Python -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony harmony.send({"function": "PypeHarmony.myAwesomeFunction"}); @@ -159,7 +159,7 @@ Now in python, just read all those files and send them to Harmony. ```python from pathlib import Path -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony path_to_js = Path('/path/to/my/js') script_to_send = "" @@ -178,7 +178,7 @@ harmony.send({"function": "Master.Boo.B"}) ### Scene Save Instead of sending a request to Harmony with `scene.saveAll` please use: ```python -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony harmony.save_scene() ``` @@ -195,7 +195,7 @@ These plugins were made with the [polly config](https://github.com/mindbender-st #### Creator Plugin ```python -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from uuid import uuid4 @@ -213,7 +213,7 @@ class CreateComposite(harmony.Creator): The creator plugin can be configured to use other node types. For example here is a write node creator: ```python from uuid import uuid4 -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class CreateRender(harmony.Creator): @@ -244,7 +244,7 @@ class CreateRender(harmony.Creator): ```python import pyblish.api from ayon_core.pipeline import AYON_INSTANCE_ID, AVALON_INSTANCE_ID -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class CollectInstances(pyblish.api.ContextPlugin): @@ -292,7 +292,7 @@ import os from uuid import uuid4 import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony import clique @@ -423,7 +423,7 @@ class ExtractImage(pyblish.api.InstancePlugin): import os from uuid import uuid4 -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony signature = str(uuid4()).replace("-", "_") copy_files = """function copyFile(srcFilename, dstFilename) diff --git a/server_addon/harmony/harmony/ayon_harmony/api/TB_sceneOpened.js b/server_addon/harmony/harmony/ayon_harmony/api/TB_sceneOpened.js index cdf60c1aa8..00858b6de1 100644 --- a/server_addon/harmony/harmony/ayon_harmony/api/TB_sceneOpened.js +++ b/server_addon/harmony/harmony/ayon_harmony/api/TB_sceneOpened.js @@ -387,7 +387,7 @@ function start() { */ self.onCreator = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['creator'] }, false); @@ -402,7 +402,7 @@ function start() { */ self.onWorkfiles = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['workfiles'] }, false); @@ -417,7 +417,7 @@ function start() { */ self.onLoad = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['loader'] }, false); @@ -433,7 +433,7 @@ function start() { */ self.onPublish = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['publish'] }, false); @@ -449,7 +449,7 @@ function start() { */ self.onManage = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['sceneinventory'] }, false); @@ -465,7 +465,7 @@ function start() { */ self.onSubsetManage = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['subsetmanager'] }, false); @@ -482,7 +482,7 @@ function start() { self.onSetSceneSettings = function() { app.avalonClient.send( { - "module": "ayon_core.hosts.harmony.api", + "module": "ayon_harmony.api", "method": "ensure_scene_settings", "args": [] }, @@ -500,7 +500,7 @@ function start() { */ self.onExperimentalTools = function() { app.avalonClient.send({ - 'module': 'ayon_core.hosts.harmony.api.lib', + 'module': 'ayon_harmony.api.lib', 'method': 'show', 'args': ['experimental_tools'] }, false); @@ -550,7 +550,7 @@ function ensureSceneSettings() { var app = QCoreApplication.instance(); app.avalonClient.send( { - "module": "ayon_core.hosts.harmony.api", + "module": "ayon_harmony.api", "method": "ensure_scene_settings", "args": [] }, diff --git a/server_addon/harmony/harmony/ayon_harmony/api/launch_script.py b/server_addon/harmony/harmony/ayon_harmony/api/launch_script.py index 3c809e210f..6327682a43 100644 --- a/server_addon/harmony/harmony/ayon_harmony/api/launch_script.py +++ b/server_addon/harmony/harmony/ayon_harmony/api/launch_script.py @@ -8,7 +8,7 @@ workfile or others. import os import sys -from ayon_core.hosts.harmony.api.lib import main as host_main +from ayon_harmony.api.lib import main as host_main # Get current file to locate start point of sys.argv CURRENT_FILE = os.path.abspath(__file__) diff --git a/server_addon/harmony/harmony/ayon_harmony/api/lib.py b/server_addon/harmony/harmony/ayon_harmony/api/lib.py index f9980cb65e..900d66fa0c 100644 --- a/server_addon/harmony/harmony/ayon_harmony/api/lib.py +++ b/server_addon/harmony/harmony/ayon_harmony/api/lib.py @@ -186,7 +186,7 @@ def launch(application_path, *args): """ from ayon_core.pipeline import install_host - from ayon_core.hosts.harmony import api as harmony + from ayon_harmony import api as harmony install_host(harmony) @@ -486,7 +486,7 @@ def imprint(node_id, data, remove=False): remove (bool): Removes the data from the scene. Example: - >>> from ayon_core.hosts.harmony.api import lib + >>> from ayon_harmony.api import lib >>> node = "Top/Display" >>> data = {"str": "something", "int": 1, "float": 0.32, "bool": True} >>> lib.imprint(layer, data) diff --git a/server_addon/harmony/harmony/ayon_harmony/api/pipeline.py b/server_addon/harmony/harmony/ayon_harmony/api/pipeline.py index 1e3ea0ba21..229dcf307e 100644 --- a/server_addon/harmony/harmony/ayon_harmony/api/pipeline.py +++ b/server_addon/harmony/harmony/ayon_harmony/api/pipeline.py @@ -15,11 +15,11 @@ from ayon_core.pipeline import ( from ayon_core.pipeline.load import get_outdated_containers from ayon_core.pipeline.context_tools import get_current_folder_entity -from ayon_core.hosts.harmony import HARMONY_ADDON_ROOT -import ayon_core.hosts.harmony.api as harmony +from ayon_harmony import HARMONY_ADDON_ROOT +import ayon_harmony.api as harmony -log = logging.getLogger("ayon_core.hosts.harmony") +log = logging.getLogger("ayon_harmony") PLUGINS_DIR = os.path.join(HARMONY_ADDON_ROOT, "plugins") PUBLISH_PATH = os.path.join(PLUGINS_DIR, "publish") diff --git a/server_addon/harmony/harmony/ayon_harmony/api/plugin.py b/server_addon/harmony/harmony/ayon_harmony/api/plugin.py index 29ebdb2b8d..6ec876af62 100644 --- a/server_addon/harmony/harmony/ayon_harmony/api/plugin.py +++ b/server_addon/harmony/harmony/ayon_harmony/api/plugin.py @@ -1,5 +1,5 @@ from ayon_core.pipeline import LegacyCreator -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class Creator(LegacyCreator): diff --git a/server_addon/harmony/harmony/ayon_harmony/hooks/pre_launch_args.py b/server_addon/harmony/harmony/ayon_harmony/hooks/pre_launch_args.py index 4d38cd09b3..2fdb5ae620 100644 --- a/server_addon/harmony/harmony/ayon_harmony/hooks/pre_launch_args.py +++ b/server_addon/harmony/harmony/ayon_harmony/hooks/pre_launch_args.py @@ -7,7 +7,7 @@ from ayon_core.lib import ( is_using_ayon_console, ) from ayon_applications import PreLaunchHook, LaunchTypes -from ayon_core.hosts.harmony import get_launch_script_path +from ayon_harmony import get_launch_script_path def get_launch_kwargs(kwargs): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_farm_render.py b/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_farm_render.py index 3039d56ead..270acdd199 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_farm_render.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_farm_render.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """Create Composite node for render on farm.""" -import ayon_core.hosts.harmony.api as harmony -from ayon_core.hosts.harmony.api import plugin +import ayon_harmony.api as harmony +from ayon_harmony.api import plugin class CreateFarmRender(plugin.Creator): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_render.py b/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_render.py index 23e02bd8a5..d4622a3202 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_render.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_render.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """Create render node.""" -import ayon_core.hosts.harmony.api as harmony -from ayon_core.hosts.harmony.api import plugin +import ayon_harmony.api as harmony +from ayon_harmony.api import plugin class CreateRender(plugin.Creator): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_template.py b/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_template.py index c16e429436..79fd315998 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_template.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/create/create_template.py @@ -1,4 +1,4 @@ -from ayon_core.hosts.harmony.api import plugin +from ayon_harmony.api import plugin class CreateTemplate(plugin.Creator): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_audio.py b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_audio.py index d23f3ed034..3ba27d005f 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_audio.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_audio.py @@ -2,7 +2,7 @@ from ayon_core.pipeline import ( load, get_representation_path, ) -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony sig = harmony.signature() func = """ diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_background.py b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_background.py index dad6ac2f22..7f0e5c5563 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_background.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_background.py @@ -6,7 +6,7 @@ from ayon_core.pipeline import ( get_representation_path, ) from ayon_core.pipeline.context_tools import is_representation_from_latest -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony copy_files = """function copyFile(srcFilename, dstFilename) diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_imagesequence.py b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_imagesequence.py index f81ebca9af..a1b890300c 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_imagesequence.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_imagesequence.py @@ -11,7 +11,7 @@ from ayon_core.pipeline import ( get_representation_path, ) from ayon_core.pipeline.context_tools import is_representation_from_latest -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class ImageSequenceLoader(load.LoaderPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_palette.py b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_palette.py index 24f4b4e8d4..930792aacf 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_palette.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_palette.py @@ -5,7 +5,7 @@ from ayon_core.pipeline import ( load, get_representation_path, ) -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class ImportPaletteLoader(load.LoaderPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template.py b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template.py index 96dadb0375..1d183ed156 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template.py @@ -11,7 +11,7 @@ from ayon_core.pipeline import ( get_representation_path, ) from ayon_core.pipeline.context_tools import is_representation_from_latest -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class TemplateLoader(load.LoaderPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template_workfile.py b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template_workfile.py index fa5ffe5105..0967eb9a30 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template_workfile.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/load/load_template_workfile.py @@ -7,7 +7,7 @@ from ayon_core.pipeline import ( load, get_representation_path, ) -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class ImportTemplateLoader(load.LoaderPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_current_file.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_current_file.py index ebe123eacc..cfa14aaa05 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_current_file.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_current_file.py @@ -3,7 +3,7 @@ import os import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class CollectCurrentFile(pyblish.api.ContextPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_farm_render.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_farm_render.py index c63eb114e5..4730821dd8 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_farm_render.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_farm_render.py @@ -7,7 +7,7 @@ import attr from ayon_core.lib import get_formatted_current_time from ayon_core.pipeline import publish from ayon_core.pipeline.publish import RenderInstance -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony @attr.s diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_instances.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_instances.py index 5aad7d4751..a98ee3e98b 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_instances.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_instances.py @@ -3,7 +3,7 @@ import json import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class CollectInstances(pyblish.api.ContextPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_palettes.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_palettes.py index 9e0b500663..818d9afc8a 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_palettes.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_palettes.py @@ -4,7 +4,7 @@ import json import re import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class CollectPalettes(pyblish.api.ContextPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_scene.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_scene.py index bc2ccca1be..48f8aa0d3b 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_scene.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/collect_scene.py @@ -3,7 +3,7 @@ import os import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class CollectScene(pyblish.api.ContextPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_palette.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_palette.py index 9f12c78d9f..ad1d38e862 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_palette.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_palette.py @@ -5,7 +5,7 @@ import csv from PIL import Image, ImageDraw, ImageFont -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from ayon_core.pipeline import publish diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_render.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_render.py index 391661a118..407a44c81a 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_render.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_render.py @@ -3,7 +3,7 @@ import tempfile import subprocess import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony import ayon_core.lib import clique diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_save_scene.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_save_scene.py index 1be74ba3a4..77ebc5b5a6 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_save_scene.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_save_scene.py @@ -1,5 +1,5 @@ import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class ExtractSaveScene(pyblish.api.ContextPlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_template.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_template.py index b2c7fa8174..650765771c 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_template.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/extract_template.py @@ -4,7 +4,7 @@ import os import shutil from ayon_core.pipeline import publish -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class ExtractTemplate(publish.Extractor): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/increment_workfile.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/increment_workfile.py index 16332a5283..fa43455b0d 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/increment_workfile.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/increment_workfile.py @@ -3,7 +3,7 @@ import os import pyblish.api from ayon_core.pipeline.publish import get_errored_plugins_from_context from ayon_core.lib import version_up -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony class IncrementWorkfile(pyblish.api.InstancePlugin): diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_audio.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_audio.py index 808734a061..f2c1cfc9b4 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_audio.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_audio.py @@ -2,7 +2,7 @@ import os import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from ayon_core.pipeline import PublishXmlValidationError diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_instances.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_instances.py index 1200f6266b..8152aeeadf 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_instances.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_instances.py @@ -1,6 +1,6 @@ import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from ayon_core.pipeline import get_current_folder_path from ayon_core.pipeline.publish import ( ValidateContentsOrder, diff --git a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_scene_settings.py b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_scene_settings.py index dc3db3b544..3a4847d9fe 100644 --- a/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_scene_settings.py +++ b/server_addon/harmony/harmony/ayon_harmony/plugins/publish/validate_scene_settings.py @@ -6,7 +6,7 @@ import re import pyblish.api -import ayon_core.hosts.harmony.api as harmony +import ayon_harmony.api as harmony from ayon_core.pipeline import PublishXmlValidationError