Job fails in LXC environments if target has no test action
When I submit a job to lava containing two namespaces, one for an LXC and one for the DUT, the job fails with the following error if it contains no test action on the DUT's namespace:
Traceback (most recent call last): File "/usr/bin/lava-run", line 259, in main job = parse_job_file(logger, options) File "/usr/bin/lava-run", line 168, in parse_job_file env_dut=env_dut, File "/usr/lib/python3/dist-packages/lava_dispatcher/parser.py", line 168, in parse test_counts[namespace], File "/usr/lib/python3/dist-packages/lava_dispatcher/parser.py", line 72, in parse_action Deployment.select(device, parameters)(pipeline, parameters) File "/usr/lib/python3/dist-packages/lava_dispatcher/actions/deploy/ssh.py", line 55, in __init__ parent.add_action(self.action, parameters) File "/usr/lib/python3/dist-packages/lava_dispatcher/action.py", line 103, in add_action action.populate(parameters) File "/usr/lib/python3/dist-packages/lava_dispatcher/actions/deploy/ssh.py", line 95, in populate if "tar_flags" in parameters["deployment_data"].keys() KeyError: 'deployment_data' LAVABug: This is probably a bug in LAVA, please report it. case: job case_id: 246340 definition: lava error_msg: 'deployment_data' error_type: Bug result: fail
This is the complete job output, there is nothing above these lines.
The background is that I have some test cases which are testing services on the DUT from the outside. Thus, I do not need any test actions on the DUT itself, only on the LXC. The DUT needs to be booted, though, so I have deploy and boot actions for it. When I add a dummy test action for the DUT, the job runs correctly. Without this dummy test action, the above error appears.