Merge branch 'develop' into feature/OP-6539_Traypublisher-advance-editorial-publishing-from-CSV

This commit is contained in:
Jakub Ježek 2024-04-03 16:01:50 +02:00 committed by GitHub
commit f389b8f85e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
319 changed files with 5534 additions and 4038 deletions

View file

@ -6,7 +6,7 @@ from ayon_server.settings import (
from .imageio import BlenderImageIOModel
from .publish_plugins import (
PublishPuginsModel,
PublishPluginsModel,
DEFAULT_BLENDER_PUBLISH_SETTINGS
)
from .render_settings import (
@ -47,8 +47,8 @@ class BlenderSettings(BaseSettingsModel):
default_factory=TemplateWorkfileBaseOptions,
title="Workfile Builder"
)
publish: PublishPuginsModel = SettingsField(
default_factory=PublishPuginsModel,
publish: PublishPluginsModel = SettingsField(
default_factory=PublishPluginsModel,
title="Publish Plugins"
)

View file

@ -66,7 +66,7 @@ class ExtractPlayblastModel(BaseSettingsModel):
return validate_json_dict(value)
class PublishPuginsModel(BaseSettingsModel):
class PublishPluginsModel(BaseSettingsModel):
ValidateCameraZeroKeyframe: ValidatePluginModel = SettingsField(
default_factory=ValidatePluginModel,
title="Validate Camera Zero Keyframe",

View file

@ -42,7 +42,7 @@ class WorkfileModel(BaseSettingsModel):
)
class PublishPuginsModel(BaseSettingsModel):
class PublishPluginsModel(BaseSettingsModel):
CollectRenderPath: CollectRenderPathModel = SettingsField(
default_factory=CollectRenderPathModel,
title="Collect Render Path"
@ -57,8 +57,8 @@ class CelActionSettings(BaseSettingsModel):
workfile: WorkfileModel = SettingsField(
title="Workfile"
)
publish: PublishPuginsModel = SettingsField(
default_factory=PublishPuginsModel,
publish: PublishPluginsModel = SettingsField(
default_factory=PublishPluginsModel,
title="Publish plugins",
)

View file

@ -1,7 +1,6 @@
import os
import sys
import re
import json
import shutil
import argparse
import zipfile
@ -220,7 +219,6 @@ def main(
addons=None,
):
current_dir = Path(os.path.dirname(os.path.abspath(__file__)))
root_dir = current_dir.parent
create_zip = not skip_zip
if output_dir:

View file

@ -87,7 +87,7 @@ class CreateShotClipModel(BaseSettingsModel):
)
class CreatePuginsModel(BaseSettingsModel):
class CreatePluginsModel(BaseSettingsModel):
CreateShotClip: CreateShotClipModel = SettingsField(
default_factory=CreateShotClipModel,
title="Create Shot Clip"

View file

@ -1,8 +1,8 @@
from ayon_server.settings import BaseSettingsModel, SettingsField
from .imageio import FlameImageIOModel, DEFAULT_IMAGEIO_SETTINGS
from .create_plugins import CreatePuginsModel, DEFAULT_CREATE_SETTINGS
from .publish_plugins import PublishPuginsModel, DEFAULT_PUBLISH_SETTINGS
from .create_plugins import CreatePluginsModel, DEFAULT_CREATE_SETTINGS
from .publish_plugins import PublishPluginsModel, DEFAULT_PUBLISH_SETTINGS
from .loader_plugins import LoaderPluginsModel, DEFAULT_LOADER_SETTINGS
@ -11,12 +11,12 @@ class FlameSettings(BaseSettingsModel):
default_factory=FlameImageIOModel,
title="Color Management (ImageIO)"
)
create: CreatePuginsModel = SettingsField(
default_factory=CreatePuginsModel,
create: CreatePluginsModel = SettingsField(
default_factory=CreatePluginsModel,
title="Create plugins"
)
publish: PublishPuginsModel = SettingsField(
default_factory=PublishPuginsModel,
publish: PublishPluginsModel = SettingsField(
default_factory=PublishPluginsModel,
title="Publish plugins"
)
load: LoaderPluginsModel = SettingsField(

View file

@ -121,7 +121,7 @@ class IntegrateBatchGroupModel(BaseSettingsModel):
)
class PublishPuginsModel(BaseSettingsModel):
class PublishPluginsModel(BaseSettingsModel):
CollectTimelineInstances: CollectTimelineInstancesModel = SettingsField(
default_factory=CollectTimelineInstancesModel,
title="Collect Timeline Instances"

View file

@ -15,7 +15,7 @@ class LoadClipModel(BaseSettingsModel):
)
class LoaderPuginsModel(BaseSettingsModel):
class LoaderPluginsModel(BaseSettingsModel):
LoadClip: LoadClipModel = SettingsField(
default_factory=LoadClipModel,
title="Load Clip"

View file

@ -9,11 +9,11 @@ from .create_plugins import (
DEFAULT_CREATE_SETTINGS
)
from .loader_plugins import (
LoaderPuginsModel,
LoaderPluginsModel,
DEFAULT_LOADER_PLUGINS_SETTINGS
)
from .publish_plugins import (
PublishPuginsModel,
PublishPluginsModel,
DEFAULT_PUBLISH_PLUGIN_SETTINGS
)
from .scriptsmenu import (
@ -35,12 +35,12 @@ class HieroSettings(BaseSettingsModel):
default_factory=CreatorPluginsSettings,
title="Creator Plugins",
)
load: LoaderPuginsModel = SettingsField(
default_factory=LoaderPuginsModel,
load: LoaderPluginsModel = SettingsField(
default_factory=LoaderPluginsModel,
title="Loader plugins"
)
publish: PublishPuginsModel = SettingsField(
default_factory=PublishPuginsModel,
publish: PublishPluginsModel = SettingsField(
default_factory=PublishPluginsModel,
title="Publish plugins"
)
scriptsmenu: ScriptsmenuSettings = SettingsField(

View file

@ -49,7 +49,7 @@ class ExtractReviewCutUpVideoModel(BaseSettingsModel):
)
class PublishPuginsModel(BaseSettingsModel):
class PublishPluginsModel(BaseSettingsModel):
CollectInstanceVersion: CollectInstanceVersionModel = SettingsField(
default_factory=CollectInstanceVersionModel,
title="Collect Instance Version"

View file

@ -30,6 +30,15 @@ class ExtMappingItemModel(BaseSettingsModel):
class MayaSettings(BaseSettingsModel):
"""Maya Project Settings."""
use_cbid_workflow: bool = SettingsField(
True, title="Use cbId workflow",
description=(
"When enabled, a per node `cbId` identifier will be created and "
"validated for many product types. This is then used for look "
"publishing and many others. By disabling this, the `cbId` "
"attribute will still be created on scene save but it will not "
"be validated."))
open_workfile_post_initialization: bool = SettingsField(
True, title="Open Workfile Post Initialization")
explicit_plugins_loading: ExplicitPluginsLoadingModel = SettingsField(
@ -88,6 +97,7 @@ DEFAULT_MEL_WORKSPACE_SETTINGS = "\n".join((
))
DEFAULT_MAYA_SETTING = {
"use_cbid_workflow": True,
"open_workfile_post_initialization": True,
"explicit_plugins_loading": DEFAULT_EXPLITCIT_PLUGINS_LOADING_SETTINGS,
"imageio": DEFAULT_IMAGEIO_SETTINGS,

View file

@ -299,6 +299,16 @@ class ExtractAlembicModel(BaseSettingsModel):
families: list[str] = SettingsField(
default_factory=list,
title="Families")
bake_attributes: list[str] = SettingsField(
default_factory=list, title="Bake Attributes",
description="List of attributes that will be included in the alembic "
"export.",
)
bake_attribute_prefixes: list[str] = SettingsField(
default_factory=list, title="Bake Attribute Prefixes",
description="List of attribute prefixes for attributes that will be "
"included in the alembic export.",
)
class ExtractObjModel(BaseSettingsModel):
@ -306,6 +316,12 @@ class ExtractObjModel(BaseSettingsModel):
optional: bool = SettingsField(title="Optional")
class ExtractModelModel(BaseSettingsModel):
enabled: bool = SettingsField(title="Enabled")
optional: bool = SettingsField(title="Optional")
active: bool = SettingsField(title="Active")
class ExtractMayaSceneRawModel(BaseSettingsModel):
"""Add loaded instances to those published families:"""
enabled: bool = SettingsField(title="ExtractMayaSceneRaw")
@ -315,14 +331,13 @@ class ExtractMayaSceneRawModel(BaseSettingsModel):
class ExtractCameraAlembicModel(BaseSettingsModel):
"""
List of attributes that will be added to the baked alembic camera. Needs to be written in python list syntax.
"""
enabled: bool = SettingsField(title="ExtractCameraAlembic")
optional: bool = SettingsField(title="Optional")
active: bool = SettingsField(title="Active")
bake_attributes: str = SettingsField(
"[]", title="Base Attributes", widget="textarea"
"[]", title="Bake Attributes", widget="textarea",
description="List of attributes that will be included in the alembic "
"camera export. Needs to be written as a JSON list.",
)
@validator("bake_attributes")
@ -363,7 +378,9 @@ class ExtractLookModel(BaseSettingsModel):
class ExtractGPUCacheModel(BaseSettingsModel):
enabled: bool = True
enabled: bool = SettingsField(title="Enabled")
optional: bool = SettingsField(title="Optional")
active: bool = SettingsField(title="Active")
families: list[str] = SettingsField(default_factory=list, title="Families")
step: float = SettingsField(1.0, ge=1.0, title="Step")
stepSave: int = SettingsField(1, ge=1, title="Step Save")
@ -790,6 +807,10 @@ class PublishersModel(BaseSettingsModel):
default_factory=ExtractGPUCacheModel,
title="Extract GPU Cache",
)
ExtractModel: ExtractModelModel = SettingsField(
default_factory=ExtractModelModel,
title="Extract Model (Maya Scene)"
)
DEFAULT_SUFFIX_NAMING = {
@ -1185,7 +1206,9 @@ DEFAULT_PUBLISH_SETTINGS = {
"pointcache",
"model",
"vrayproxy.alembic"
]
],
"bake_attributes": [],
"bake_attribute_prefixes": []
},
"ExtractObj": {
"enabled": False,
@ -1330,6 +1353,8 @@ DEFAULT_PUBLISH_SETTINGS = {
},
"ExtractGPUCache": {
"enabled": False,
"optional": False,
"active": True,
"families": [
"model",
"animation",
@ -1342,5 +1367,10 @@ DEFAULT_PUBLISH_SETTINGS = {
"optimizeAnimationsForMotionBlur": True,
"writeMaterials": True,
"useBaseTessellation": True
},
"ExtractModel": {
"enabled": True,
"optional": True,
"active": True,
}
}

View file

@ -1,3 +1,3 @@
# -*- coding: utf-8 -*-
"""Package declaring addon version."""
__version__ = "0.1.10"
__version__ = "0.1.13"

View file

@ -42,7 +42,7 @@ class LoadClipModel(BaseSettingsModel):
)
class LoaderPuginsModel(BaseSettingsModel):
class LoaderPluginsModel(BaseSettingsModel):
LoadImage: LoadImageModel = SettingsField(
default_factory=LoadImageModel,
title="Load Image"

View file

@ -1,7 +1,6 @@
from ayon_server.settings import (
BaseSettingsModel,
SettingsField,
ensure_unique_names
)
from .general import (
@ -29,11 +28,11 @@ from .create_plugins import (
DEFAULT_CREATE_SETTINGS
)
from .publish_plugins import (
PublishPuginsModel,
PublishPluginsModel,
DEFAULT_PUBLISH_PLUGIN_SETTINGS
)
from .loader_plugins import (
LoaderPuginsModel,
LoaderPluginsModel,
DEFAULT_LOADER_PLUGINS_SETTINGS
)
from .workfile_builder import (
@ -76,13 +75,13 @@ class NukeSettings(BaseSettingsModel):
title="Creator Plugins",
)
publish: PublishPuginsModel = SettingsField(
default_factory=PublishPuginsModel,
publish: PublishPluginsModel = SettingsField(
default_factory=PublishPluginsModel,
title="Publish Plugins",
)
load: LoaderPuginsModel = SettingsField(
default_factory=LoaderPuginsModel,
load: LoaderPluginsModel = SettingsField(
default_factory=LoaderPluginsModel,
title="Loader Plugins",
)

View file

@ -219,7 +219,7 @@ class IncrementScriptVersionModel(BaseSettingsModel):
active: bool = SettingsField(title="Active")
class PublishPuginsModel(BaseSettingsModel):
class PublishPluginsModel(BaseSettingsModel):
CollectInstanceData: CollectInstanceDataModel = SettingsField(
title="Collect Instance Version",
default_factory=CollectInstanceDataModel,

View file

@ -69,7 +69,7 @@ class CreateShotClipModels(BaseSettingsModel):
)
class CreatorPuginsModel(BaseSettingsModel):
class CreatorPluginsModel(BaseSettingsModel):
CreateShotClip: CreateShotClipModels = SettingsField(
default_factory=CreateShotClipModels,
title="Create Shot Clip"
@ -84,8 +84,8 @@ class ResolveSettings(BaseSettingsModel):
default_factory=ResolveImageIOModel,
title="Color Management (ImageIO)"
)
create: CreatorPuginsModel = SettingsField(
default_factory=CreatorPuginsModel,
create: CreatorPluginsModel = SettingsField(
default_factory=CreatorPluginsModel,
title="Creator plugins",
)

View file

@ -142,6 +142,7 @@ DEFAULT_SIMPLE_CREATORS = [
"extensions": [
".exr",
".png",
".dng",
".dpx",
".jpg",
".tiff",
@ -165,6 +166,7 @@ DEFAULT_SIMPLE_CREATORS = [
"extensions": [
".exr",
".png",
".dng",
".dpx",
".jpg",
".jpeg",
@ -215,6 +217,7 @@ DEFAULT_SIMPLE_CREATORS = [
".exr",
".jpg",
".jpeg",
".dng",
".dpx",
".bmp",
".tif",

View file

@ -1,7 +1,6 @@
from ayon_server.settings import (
BaseSettingsModel,
SettingsField,
ensure_unique_names,
)
from .imageio import TVPaintImageIOModel