mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 12:54:40 +01:00
Merge branch 'develop' into enhancement/use-settings-field-in-ayon-settings
# Conflicts: # server_addon/muster/server/settings.py
This commit is contained in:
commit
7de54c6fe5
35 changed files with 100 additions and 1397 deletions
|
|
@ -1,19 +0,0 @@
|
|||
from typing import Type
|
||||
|
||||
from ayon_server.addons import BaseServerAddon
|
||||
|
||||
from .version import __version__
|
||||
from .settings import KitsuSettings, DEFAULT_VALUES
|
||||
|
||||
|
||||
class KitsuAddon(BaseServerAddon):
|
||||
name = "kitsu"
|
||||
title = "Kitsu"
|
||||
version = __version__
|
||||
settings_model: Type[KitsuSettings] = KitsuSettings
|
||||
frontend_scopes = {}
|
||||
services = {}
|
||||
|
||||
async def get_default_settings(self):
|
||||
settings_model_cls = self.get_settings_model()
|
||||
return settings_model_cls(**DEFAULT_VALUES)
|
||||
|
|
@ -1,112 +0,0 @@
|
|||
from pydantic import Field
|
||||
from ayon_server.settings import BaseSettingsModel
|
||||
|
||||
|
||||
class EntityPattern(BaseSettingsModel):
|
||||
episode: str = Field(title="Episode")
|
||||
sequence: str = Field(title="Sequence")
|
||||
shot: str = Field(title="Shot")
|
||||
|
||||
|
||||
def _status_change_cond_enum():
|
||||
return [
|
||||
{"value": "equal", "label": "Equal"},
|
||||
{"value": "not_equal", "label": "Not equal"}
|
||||
]
|
||||
|
||||
|
||||
class StatusChangeCondition(BaseSettingsModel):
|
||||
condition: str = Field(
|
||||
"equal",
|
||||
enum_resolver=_status_change_cond_enum,
|
||||
title="Condition"
|
||||
)
|
||||
short_name: str = Field("", title="Short name")
|
||||
|
||||
|
||||
class StatusChangeProductTypeRequirementModel(BaseSettingsModel):
|
||||
condition: str = Field(
|
||||
"equal",
|
||||
enum_resolver=_status_change_cond_enum,
|
||||
title="Condition"
|
||||
)
|
||||
product_type: str = Field("", title="Product type")
|
||||
|
||||
|
||||
class StatusChangeConditionsModel(BaseSettingsModel):
|
||||
status_conditions: list[StatusChangeCondition] = Field(
|
||||
default_factory=list,
|
||||
title="Status conditions"
|
||||
)
|
||||
product_type_requirements: list[StatusChangeProductTypeRequirementModel] = Field(
|
||||
default_factory=list,
|
||||
title="Product type requirements")
|
||||
|
||||
|
||||
class CustomCommentTemplateModel(BaseSettingsModel):
|
||||
enabled: bool = Field(True)
|
||||
comment_template: str = Field("", title="Custom comment")
|
||||
|
||||
|
||||
class IntegrateKitsuNotes(BaseSettingsModel):
|
||||
"""Kitsu supports markdown and here you can create a custom comment template.
|
||||
|
||||
You can use data from your publishing instance's data.
|
||||
"""
|
||||
|
||||
set_status_note: bool = Field(title="Set status on note")
|
||||
note_status_shortname: str = Field(title="Note shortname")
|
||||
status_change_conditions: StatusChangeConditionsModel = Field(
|
||||
default_factory=StatusChangeConditionsModel,
|
||||
title="Status change conditions"
|
||||
)
|
||||
custom_comment_template: CustomCommentTemplateModel = Field(
|
||||
default_factory=CustomCommentTemplateModel,
|
||||
title="Custom Comment Template",
|
||||
)
|
||||
|
||||
|
||||
class PublishPlugins(BaseSettingsModel):
|
||||
IntegrateKitsuNote: IntegrateKitsuNotes = Field(
|
||||
default_factory=IntegrateKitsuNotes,
|
||||
title="Integrate Kitsu Note"
|
||||
)
|
||||
|
||||
|
||||
class KitsuSettings(BaseSettingsModel):
|
||||
server: str = Field(
|
||||
"",
|
||||
title="Kitsu Server",
|
||||
scope=["studio"],
|
||||
)
|
||||
entities_naming_pattern: EntityPattern = Field(
|
||||
default_factory=EntityPattern,
|
||||
title="Entities naming pattern",
|
||||
)
|
||||
publish: PublishPlugins = Field(
|
||||
default_factory=PublishPlugins,
|
||||
title="Publish plugins",
|
||||
)
|
||||
|
||||
|
||||
DEFAULT_VALUES = {
|
||||
"entities_naming_pattern": {
|
||||
"episode": "E##",
|
||||
"sequence": "SQ##",
|
||||
"shot": "SH##"
|
||||
},
|
||||
"publish": {
|
||||
"IntegrateKitsuNote": {
|
||||
"set_status_note": False,
|
||||
"note_status_shortname": "wfa",
|
||||
"status_change_conditions": {
|
||||
"status_conditions": [],
|
||||
"product_type_requirements": []
|
||||
},
|
||||
"custom_comment_template": {
|
||||
"enabled": False,
|
||||
"comment_template": "{comment}\n\n| | |\n|--|--|\n| version| `{version}` |\n| product type | `{product[type]}` |\n| name | `{name}` |"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1 +0,0 @@
|
|||
__version__ = "0.1.1"
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
from typing import Type
|
||||
|
||||
from ayon_server.addons import BaseServerAddon
|
||||
|
||||
from .version import __version__
|
||||
from .settings import MusterSettings, DEFAULT_VALUES
|
||||
|
||||
|
||||
class MusterAddon(BaseServerAddon):
|
||||
name = "muster"
|
||||
version = __version__
|
||||
title = "Muster"
|
||||
settings_model: Type[MusterSettings] = MusterSettings
|
||||
|
||||
async def get_default_settings(self):
|
||||
settings_model_cls = self.get_settings_model()
|
||||
return settings_model_cls(**DEFAULT_VALUES)
|
||||
|
|
@ -1,40 +0,0 @@
|
|||
from ayon_server.settings import BaseSettingsModel, SettingsField
|
||||
|
||||
|
||||
class TemplatesMapping(BaseSettingsModel):
|
||||
_layout = "compact"
|
||||
name: str = SettingsField(title="Name")
|
||||
value: int = SettingsField(title="mapping")
|
||||
|
||||
|
||||
class MusterSettings(BaseSettingsModel):
|
||||
enabled: bool = True
|
||||
MUSTER_REST_URL: str = SettingsField(
|
||||
"",
|
||||
title="Muster Rest URL",
|
||||
scope=["studio"],
|
||||
)
|
||||
|
||||
templates_mapping: list[TemplatesMapping] = SettingsField(
|
||||
default_factory=list,
|
||||
title="Templates mapping",
|
||||
)
|
||||
|
||||
|
||||
DEFAULT_VALUES = {
|
||||
"enabled": False,
|
||||
"MUSTER_REST_URL": "http://127.0.0.1:9890",
|
||||
"templates_mapping": [
|
||||
{"name": "file_layers", "value": 7},
|
||||
{"name": "mentalray", "value": 2},
|
||||
{"name": "mentalray_sf", "value": 6},
|
||||
{"name": "redshift", "value": 55},
|
||||
{"name": "renderman", "value": 29},
|
||||
{"name": "software", "value": 1},
|
||||
{"name": "software_sf", "value": 5},
|
||||
{"name": "turtle", "value": 10},
|
||||
{"name": "vector", "value": 4},
|
||||
{"name": "vray", "value": 37},
|
||||
{"name": "ffmpeg", "value": 48}
|
||||
]
|
||||
}
|
||||
|
|
@ -1 +0,0 @@
|
|||
__version__ = "0.1.1"
|
||||
Loading…
Add table
Add a link
Reference in a new issue