Merge pull request #3713 from pypeclub/feature/OP-3789_Remove-constants-from-avalon_context

General: Move constants from lib to client
This commit is contained in:
Jakub Trllo 2022-08-24 11:13:49 +02:00 committed by GitHub
commit 9c86a2a879
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 34 additions and 29 deletions

View file

@ -1,3 +1,4 @@
import re
import uuid
import copy
import collections
@ -11,6 +12,11 @@ from .mongo import get_project_connection
REMOVED_VALUE = object()
PROJECT_NAME_ALLOWED_SYMBOLS = "a-zA-Z0-9_"
PROJECT_NAME_REGEX = re.compile(
"^[{}]+$".format(PROJECT_NAME_ALLOWED_SYMBOLS)
)
CURRENT_PROJECT_SCHEMA = "openpype:project-3.0"
CURRENT_PROJECT_CONFIG_SCHEMA = "openpype:config-2.0"
CURRENT_ASSET_DOC_SCHEMA = "openpype:asset-3.0"

View file

@ -1,6 +1,5 @@
"""Should be used only inside of hosts."""
import os
import re
import copy
import platform
import logging
@ -16,6 +15,13 @@ from openpype.client import (
get_last_version_by_subset_name,
get_workfile_info,
)
from openpype.client.operations import (
CURRENT_ASSET_DOC_SCHEMA,
CURRENT_PROJECT_SCHEMA,
CURRENT_PROJECT_CONFIG_SCHEMA,
PROJECT_NAME_ALLOWED_SYMBOLS,
PROJECT_NAME_REGEX,
)
from .profiles_filtering import filter_profiles
from .path_templates import StringTemplate
@ -24,15 +30,13 @@ legacy_io = None
log = logging.getLogger("AvalonContext")
# Backwards compatibility - should not be used anymore
# - Will be removed in OP 3.16.*
CURRENT_DOC_SCHEMAS = {
"project": "openpype:project-3.0",
"asset": "openpype:asset-3.0",
"config": "openpype:config-2.0"
"project": CURRENT_PROJECT_SCHEMA,
"asset": CURRENT_ASSET_DOC_SCHEMA,
"config": CURRENT_PROJECT_CONFIG_SCHEMA
}
PROJECT_NAME_ALLOWED_SYMBOLS = "a-zA-Z0-9_"
PROJECT_NAME_REGEX = re.compile(
"^[{}]+$".format(PROJECT_NAME_ALLOWED_SYMBOLS)
)
class AvalonContextDeprecatedWarning(DeprecationWarning):

View file

@ -18,6 +18,7 @@ from openpype.client import (
get_archived_assets,
get_asset_ids_with_subsets
)
from openpype.client.operations import CURRENT_ASSET_DOC_SCHEMA
from openpype.pipeline import AvalonMongoDB, schema
from openpype_modules.ftrack.lib import (
@ -35,7 +36,6 @@ from openpype_modules.ftrack.lib.avalon_sync import (
convert_to_fps,
InvalidFpsValue
)
from openpype.lib import CURRENT_DOC_SCHEMAS
class SyncToAvalonEvent(BaseEvent):
@ -1236,7 +1236,7 @@ class SyncToAvalonEvent(BaseEvent):
"_id": mongo_id,
"name": name,
"type": "asset",
"schema": CURRENT_DOC_SCHEMAS["asset"],
"schema": CURRENT_ASSET_DOC_SCHEMA,
"parent": proj["_id"],
"data": {
"ftrackId": ftrack_ent["id"],

View file

@ -14,6 +14,11 @@ from openpype.client import (
get_versions,
get_representations
)
from openpype.client.operations import (
CURRENT_ASSET_DOC_SCHEMA,
CURRENT_PROJECT_SCHEMA,
CURRENT_PROJECT_CONFIG_SCHEMA,
)
from openpype.api import (
Logger,
get_anatomy_settings
@ -32,14 +37,6 @@ import ftrack_api
log = Logger.get_logger(__name__)
# Current schemas for avalon types
CURRENT_DOC_SCHEMAS = {
"project": "openpype:project-3.0",
"asset": "openpype:asset-3.0",
"config": "openpype:config-2.0"
}
class InvalidFpsValue(Exception):
pass
@ -2063,7 +2060,7 @@ class SyncEntitiesFactory:
item["_id"] = new_id
item["parent"] = self.avalon_project_id
item["schema"] = CURRENT_DOC_SCHEMAS["asset"]
item["schema"] = CURRENT_ASSET_DOC_SCHEMA
item["data"]["visualParent"] = avalon_parent
new_id_str = str(new_id)
@ -2198,8 +2195,8 @@ class SyncEntitiesFactory:
project_item["_id"] = new_id
project_item["parent"] = None
project_item["schema"] = CURRENT_DOC_SCHEMAS["project"]
project_item["config"]["schema"] = CURRENT_DOC_SCHEMAS["config"]
project_item["schema"] = CURRENT_PROJECT_SCHEMA
project_item["config"]["schema"] = CURRENT_PROJECT_CONFIG_SCHEMA
self.ftrack_avalon_mapper[self.ft_project_id] = new_id
self.avalon_ftrack_mapper[new_id] = self.ft_project_id

View file

@ -13,10 +13,8 @@ from openpype.client import (
get_assets,
get_asset_ids_with_subsets,
)
from openpype.lib import (
CURRENT_DOC_SCHEMAS,
PypeLogger,
)
from openpype.client.operations import CURRENT_ASSET_DOC_SCHEMA
from openpype.lib import Logger
from .constants import (
IDENTIFIER_ROLE,
@ -203,7 +201,7 @@ class HierarchyModel(QtCore.QAbstractItemModel):
@property
def log(self):
if self._log is None:
self._log = PypeLogger.get_logger("ProjectManagerModel")
self._log = Logger.get_logger("ProjectManagerModel")
return self._log
@property
@ -1961,7 +1959,7 @@ class AssetItem(BaseItem):
}
schema_name = (
self._origin_asset_doc.get("schema")
or CURRENT_DOC_SCHEMAS["asset"]
or CURRENT_ASSET_DOC_SCHEMA
)
doc = {

View file

@ -5,8 +5,8 @@ from .constants import (
NAME_ALLOWED_SYMBOLS,
NAME_REGEX
)
from openpype.lib import (
create_project,
from openpype.lib import create_project
from openpype.client.operations import (
PROJECT_NAME_ALLOWED_SYMBOLS,
PROJECT_NAME_REGEX
)