mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Better error message for unknown ShellJobRunner shell plugin
Instead of raising:
```
File "/srv/galaxy/lib/galaxy/jobs/runners/util/cli/__init__.py", line 78, in get_shell_plugin
self.active_cli_shells[requested_shell_settings] = self.cli_shells[shell_plugin](**shell_params)
KeyError: 'ZecureShell'
```
raise:
```
File "/srv/galaxy/lib/galaxy/jobs/runners/util/cli/__init__.py", line 80, in get_shell_plugin
raise ValueError(f"Unknown shell_plugin [{shell_plugin}], available plugins are {list(self.cli_shells.keys())}")
ValueError: Unknown shell_plugin [ZecureShell], available plugins are ['RemoteShell', 'SecureShell', 'GlobusSecureShell', 'ParamikoShell', 'LocalShell']
```
This commit is contained in:
@@ -75,7 +75,10 @@ class CliInterface:
|
||||
shell_plugin = shell_params.get('plugin', DEFAULT_SHELL_PLUGIN)
|
||||
requested_shell_settings = json.dumps(shell_params, sort_keys=True)
|
||||
if requested_shell_settings not in self.active_cli_shells:
|
||||
self.active_cli_shells[requested_shell_settings] = self.cli_shells[shell_plugin](**shell_params)
|
||||
shell_plugin_class = self.cli_shells.get(shell_plugin)
|
||||
if not shell_plugin_class:
|
||||
raise ValueError(f"Unknown shell_plugin [{shell_plugin}], available plugins are {list(self.cli_shells.keys())}")
|
||||
self.active_cli_shells[requested_shell_settings] = shell_plugin_class(**shell_params)
|
||||
return self.active_cli_shells[requested_shell_settings]
|
||||
|
||||
def get_job_interface(self, job_params):
|
||||
|
||||
Reference in New Issue
Block a user