class FtrackPublishPlugins(BaseSettingsModel):
"""Settings for event handlers running in ftrack service."""
CollectFtrackFamily: CollectFtrackFamilyPlugin = SettingsField(
title="Collect ftrack Family",
default_factory=CollectFtrackFamilyPlugin,
)
CollectFtrackCustomAttributeData: CollectFtrackCustomAttributeDataModel = (
SettingsField(
title="Collect Custom Attribute Data",
default_factory=CollectFtrackCustomAttributeDataModel,
description=(
"Collect custom attributes from ftrack for ftrack entities"
" that can be used in some templates during publishing."
)
)
)
ValidateFtrackAttributes: ValidateFtrackAttributesModel = SettingsField(
title="Validate ftrack Attributes",
default_factory=ValidateFtrackAttributesModel,
)
IntegrateHierarchyToFtrack: IntegrateHierarchyToFtrackModel = (
SettingsField(
title="Integrate Hierarchy to ftrack",
default_factory=IntegrateHierarchyToFtrackModel,
description=(
"Set task status on new task creation."
" ftrack's default status is used otherwise."
)
)
)
IntegrateFtrackDescription: IntegrateFtrackDescriptionModel = (
SettingsField(
title="Integrate ftrack Description",
default_factory=IntegrateFtrackDescriptionModel,
description="Add description to integrated AssetVersion.",
)
)
IntegrateFtrackComponentOverwrite: IntegrateFtrackComponentOverwriteModel = SettingsField(
title="Integrate ftrack Component Overwrite",
default_factory=IntegrateFtrackComponentOverwriteModel,
)
IntegrateFtrackInstance: IntegrateFtrackInstanceModel = SettingsField(
title="Integrate ftrack Instance",
default_factory=IntegrateFtrackInstanceModel,
)
IntegrateFtrackFarmStatus: IntegrateFtrackFarmStatusModel = SettingsField(
title="Integrate ftrack Farm Status",
default_factory=IntegrateFtrackFarmStatusModel,
description=(
"Change status of task when it's product is submitted to farm"
),
)
ftrack_task_status_local_publish: FtrackTaskStatusLocalModel = (
SettingsField(
default_factory=FtrackTaskStatusLocalModel,
title="ftrack Status Local Integration",
)
)
ftrack_task_status_on_farm_publish: FtrackTaskStatusOnFarmModel = (
SettingsField(
default_factory=FtrackTaskStatusOnFarmModel,
title="ftrack Status On Farm Integration",
)
)
IntegrateFtrackTaskStatus: IntegrateFtrackTaskStatusModel = SettingsField(
default_factory=IntegrateFtrackTaskStatusModel,
title="Integrate ftrack Task Status"
)