mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
Merge pull request #10 from ynput/bugfix/OP-7353-make_houdini_submissions_respect_pools_groups
Bugfix: Make houdini submissions respect pools groups
This commit is contained in:
commit
11e89c100e
5 changed files with 96 additions and 25 deletions
|
|
@ -31,14 +31,22 @@ class CollectDeadlinePools(pyblish.api.InstancePlugin,
|
|||
"harmony"
|
||||
"nuke",
|
||||
"maya",
|
||||
"max"]
|
||||
"max",
|
||||
"houdini"]
|
||||
|
||||
families = ["render",
|
||||
"rendering",
|
||||
"render.farm",
|
||||
"renderFarm",
|
||||
"renderlayer",
|
||||
"maxrender"]
|
||||
"maxrender",
|
||||
"usdrender",
|
||||
"redshift_rop",
|
||||
"arnold_rop",
|
||||
"mantra_rop",
|
||||
"karma_rop",
|
||||
"vray_rop",
|
||||
"publish.hou"]
|
||||
|
||||
primary_pool = None
|
||||
secondary_pool = None
|
||||
|
|
|
|||
|
|
@ -45,9 +45,11 @@ class HoudiniCacheSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline
|
|||
targets = ["local"]
|
||||
|
||||
priority = 50
|
||||
chunk_size = 999999
|
||||
group = None
|
||||
jobInfo = {}
|
||||
pluginInfo = {}
|
||||
group = None
|
||||
|
||||
|
||||
def get_job_info(self):
|
||||
job_info = DeadlineJobInfo(Plugin="Houdini")
|
||||
|
|
@ -88,7 +90,7 @@ class HoudiniCacheSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline
|
|||
|
||||
attr_values = self.get_attr_values_from_data(instance.data)
|
||||
|
||||
job_info.ChunkSize = instance.data["chunkSize"]
|
||||
job_info.ChunkSize = instance.data.get("chunk_size", self.chunk_size)
|
||||
job_info.Comment = context.data.get("comment")
|
||||
job_info.Priority = attr_values.get("priority", self.priority)
|
||||
job_info.Group = attr_values.get("group", self.group)
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ from openpype_modules.deadline.abstract_submit_deadline import DeadlineJobInfo
|
|||
from ayon_core.lib import (
|
||||
is_in_tests,
|
||||
BoolDef,
|
||||
TextDef,
|
||||
NumberDef
|
||||
)
|
||||
|
||||
|
|
@ -79,16 +80,21 @@ class HoudiniSubmitDeadline(
|
|||
use_published = True
|
||||
|
||||
# presets
|
||||
priority = 50
|
||||
chunk_size = 1
|
||||
export_priority = 50
|
||||
export_chunk_size = 10
|
||||
group = ""
|
||||
export_group = ""
|
||||
|
||||
priority = 50
|
||||
chunk_size = 1
|
||||
group = ""
|
||||
|
||||
@classmethod
|
||||
def get_attribute_defs(cls):
|
||||
return [
|
||||
BoolDef(
|
||||
"suspend_publish",
|
||||
default=False,
|
||||
label="Suspend publish"
|
||||
),
|
||||
NumberDef(
|
||||
"priority",
|
||||
label="Priority",
|
||||
|
|
@ -103,10 +109,15 @@ class HoudiniSubmitDeadline(
|
|||
minimum=1,
|
||||
maximum=1000
|
||||
),
|
||||
TextDef(
|
||||
"group",
|
||||
default=cls.group,
|
||||
label="Group Name"
|
||||
),
|
||||
NumberDef(
|
||||
"export_priority",
|
||||
label="Export Priority",
|
||||
default=cls.priority,
|
||||
default=cls.export_priority,
|
||||
decimals=0
|
||||
),
|
||||
NumberDef(
|
||||
|
|
@ -117,11 +128,11 @@ class HoudiniSubmitDeadline(
|
|||
minimum=1,
|
||||
maximum=1000
|
||||
),
|
||||
BoolDef(
|
||||
"suspend_publish",
|
||||
default=False,
|
||||
label="Suspend publish"
|
||||
)
|
||||
TextDef(
|
||||
"export_group",
|
||||
default=cls.export_group,
|
||||
label="Export Group Name"
|
||||
),
|
||||
]
|
||||
|
||||
def get_job_info(self, dependency_job_ids=None):
|
||||
|
|
@ -163,15 +174,6 @@ class HoudiniSubmitDeadline(
|
|||
job_info.UserName = context.data.get(
|
||||
"deadlineUser", getpass.getuser())
|
||||
|
||||
if split_render_job and is_export_job:
|
||||
job_info.Priority = attribute_values.get(
|
||||
"export_priority", self.export_priority
|
||||
)
|
||||
else:
|
||||
job_info.Priority = attribute_values.get(
|
||||
"priority", self.priority
|
||||
)
|
||||
|
||||
if is_in_tests():
|
||||
job_info.BatchName += datetime.now().strftime("%d%m%Y%H%M%S")
|
||||
|
||||
|
|
@ -192,15 +194,23 @@ class HoudiniSubmitDeadline(
|
|||
|
||||
job_info.Pool = instance.data.get("primaryPool")
|
||||
job_info.SecondaryPool = instance.data.get("secondaryPool")
|
||||
job_info.Group = self.group
|
||||
|
||||
if split_render_job and is_export_job:
|
||||
job_info.Priority = attribute_values.get(
|
||||
"export_priority", self.export_priority
|
||||
)
|
||||
job_info.ChunkSize = attribute_values.get(
|
||||
"export_chunk", self.export_chunk_size
|
||||
)
|
||||
job_info.Group = self.export_group
|
||||
else:
|
||||
job_info.Priority = attribute_values.get(
|
||||
"priority", self.priority
|
||||
)
|
||||
job_info.ChunkSize = attribute_values.get(
|
||||
"chunk", self.chunk_size
|
||||
)
|
||||
job_info.Group = self.group
|
||||
|
||||
job_info.Comment = context.data.get("comment")
|
||||
|
||||
|
|
|
|||
|
|
@ -211,6 +211,32 @@ class HarmonySubmitDeadlineModel(BaseSettingsModel):
|
|||
department: str = SettingsField(title="Department")
|
||||
|
||||
|
||||
class HoudiniSubmitDeadlineModel(BaseSettingsModel):
|
||||
"""Houdini deadline render submitter settings."""
|
||||
enabled: bool = SettingsField(title="Enabled")
|
||||
optional: bool = SettingsField(title="Optional")
|
||||
active: bool = SettingsField(title="Active")
|
||||
|
||||
priority: int = SettingsField(title="Priority")
|
||||
chunk_size: int = SettingsField(title="Chunk Size")
|
||||
group: str = SettingsField(title="Group")
|
||||
|
||||
export_priority: int = SettingsField(title="Export Priority")
|
||||
export_chunk_size: int = SettingsField(title="Export Chunk Size")
|
||||
export_group: str = SettingsField(title="Export Group")
|
||||
|
||||
|
||||
class HoudiniCacheSubmitDeadlineModel(BaseSettingsModel):
|
||||
"""Houdini deadline cache submitter settings."""
|
||||
enabled: bool = SettingsField(title="Enabled")
|
||||
optional: bool = SettingsField(title="Optional")
|
||||
active: bool = SettingsField(title="Active")
|
||||
|
||||
priority: int = SettingsField(title="Priority")
|
||||
chunk_size: int = SettingsField(title="Chunk Size")
|
||||
group: str = SettingsField(title="Group")
|
||||
|
||||
|
||||
class AfterEffectsSubmitDeadlineModel(BaseSettingsModel):
|
||||
"""After Effects deadline submitter settings."""
|
||||
|
||||
|
|
@ -332,6 +358,12 @@ class PublishPluginsModel(BaseSettingsModel):
|
|||
HarmonySubmitDeadline: HarmonySubmitDeadlineModel = SettingsField(
|
||||
default_factory=HarmonySubmitDeadlineModel,
|
||||
title="Harmony Submit to deadline")
|
||||
HoudiniCacheSubmitDeadline: HoudiniCacheSubmitDeadlineModel = SettingsField(
|
||||
default_factory=HoudiniCacheSubmitDeadlineModel,
|
||||
title="Houdini Submit cache to deadline")
|
||||
HoudiniSubmitDeadline: HoudiniSubmitDeadlineModel = SettingsField(
|
||||
default_factory=HoudiniSubmitDeadlineModel,
|
||||
title="Houdini Submit render to deadline")
|
||||
MaxSubmitDeadline: MaxSubmitDeadlineModel = SettingsField(
|
||||
default_factory=MaxSubmitDeadlineModel,
|
||||
title="Max Submit to deadline")
|
||||
|
|
@ -416,6 +448,25 @@ DEFAULT_DEADLINE_PLUGINS_SETTINGS = {
|
|||
"group": "",
|
||||
"department": ""
|
||||
},
|
||||
"HoudiniCacheSubmitDeadline": {
|
||||
"enabled": True,
|
||||
"optional": False,
|
||||
"active": True,
|
||||
"priority": 50,
|
||||
"chunk_size": 999999,
|
||||
"group": ""
|
||||
},
|
||||
"HoudiniSubmitDeadline": {
|
||||
"enabled": True,
|
||||
"optional": False,
|
||||
"active": True,
|
||||
"priority": 50,
|
||||
"chunk_size": 1,
|
||||
"group": "",
|
||||
"export_priority": 50,
|
||||
"export_chunk_size": 10,
|
||||
"export_group": ""
|
||||
},
|
||||
"MaxSubmitDeadline": {
|
||||
"enabled": True,
|
||||
"optional": False,
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
__version__ = "0.1.9"
|
||||
__version__ = "0.1.10"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue