mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-25 05:14:40 +01:00
add launch command to applications addon
This commit is contained in:
parent
f64bb5c1ea
commit
77e214d8e6
1 changed files with 45 additions and 0 deletions
|
|
@ -110,6 +110,26 @@ class ApplicationsAddon(AYONAddon, IPluginPaths):
|
|||
]
|
||||
}
|
||||
|
||||
def launch_application(
|
||||
self, app_name, project_name, folder_path, task_name
|
||||
):
|
||||
"""Launch application.
|
||||
|
||||
Args:
|
||||
app_name (str): Full application name e.g. 'maya/2024'.
|
||||
project_name (str): Project name.
|
||||
folder_path (str): Folder path.
|
||||
task_name (str): Task name.
|
||||
|
||||
"""
|
||||
app_manager = self.get_applications_manager()
|
||||
return app_manager.launch(
|
||||
app_name,
|
||||
project_name=project_name,
|
||||
folder_path=folder_path,
|
||||
task_name=task_name,
|
||||
)
|
||||
|
||||
# --- CLI ---
|
||||
def cli(self, addon_click_group):
|
||||
main_group = click_wrap.group(
|
||||
|
|
@ -134,6 +154,17 @@ class ApplicationsAddon(AYONAddon, IPluginPaths):
|
|||
default=None
|
||||
)
|
||||
)
|
||||
(
|
||||
main_group.command(
|
||||
self._cli_launch_applications,
|
||||
name="launch",
|
||||
help="Launch application"
|
||||
)
|
||||
.option("--app", help="Application name")
|
||||
.option("--project", help="Project name")
|
||||
.option("--folder", help="Folder path")
|
||||
.option("--task", help="Task name")
|
||||
)
|
||||
# Convert main command to click object and add it to parent group
|
||||
addon_click_group.add_command(
|
||||
main_group.to_click_obj()
|
||||
|
|
@ -171,3 +202,17 @@ class ApplicationsAddon(AYONAddon, IPluginPaths):
|
|||
|
||||
with open(output_json_path, "w") as file_stream:
|
||||
json.dump(env, file_stream, indent=4)
|
||||
|
||||
def _cli_launch_applications(self, project, folder, task, app):
|
||||
"""Produces json file with environment based on project and app.
|
||||
|
||||
Called by farm integration to propagate environment into farm jobs.
|
||||
|
||||
Args:
|
||||
project (str): Project name.
|
||||
folder (str): Folder path.
|
||||
task (str): Task name.
|
||||
app (str): Full application name e.g. 'maya/2024'.
|
||||
|
||||
"""
|
||||
self.launch_application(app, project, folder, task,)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue