I have a webless Pulsar app in a fairly minimal Singularity container connected to a MQ but every job fails with inability to load a basic LocalShell. Looking at the code I am not sure why the default shell is not loaded, the only traceback I get is included below.
2021-07-27 12:36:56,371 ERROR [pulsar.managers.stateful][[manager=production]-[action=preprocess]-[job=26202110]] Failed job preprocessing for job 26202110:
Traceback (most recent call last):
File "/mnt/pulsar/venv/lib/python3.8/site-packages/pulsar/managers/stateful.py", line 129, in _handling_of_preprocessing_state
self._proxied_manager.launch(
File "/mnt/pulsar/venv/lib/python3.8/site-packages/pulsar/managers/queued_cli.py", line 25, in launch
shell, job_interface = self.__get_cli_plugins()
File "/mnt/pulsar/venv/lib/python3.8/site-packages/pulsar/managers/queued_cli.py", line 54, in __get_cli_plugins
return self.cli_interface.get_plugins(self.shell_params, self.job_params)
File "/mnt/pulsar/venv/lib/python3.8/site-packages/pulsar/managers/util/cli/__init__.py", line 54, in get_plugins
shell = self.get_shell_plugin(shell_params)
File "/mnt/pulsar/venv/lib/python3.8/site-packages/pulsar/managers/util/cli/__init__.py", line 62, in get_shell_plugin
self.active_cli_shells[requested_shell_settings] = self.cli_shells[shell_plugin](**shell_params)
KeyError: 'LocalShell'
I have a webless Pulsar app in a fairly minimal Singularity container connected to a MQ but every job fails with inability to load a basic LocalShell. Looking at the code I am not sure why the default shell is not loaded, the only traceback I get is included below.
relevant section of app.py: