blhc workflow requires an environment, but qa workflow doesn't give it one
I started trying to put together an integration test for the debian_pipeline
workflow. Most of this worked without much trouble, but the blhc
task fails:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/debusine/tasks/_task.py", line 869, in _execute
if not self.configure_for_execution(download_directory):
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/debusine/tasks/blhc.py", line 130, in configure_for_execution
self._prepare_executor_instance()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3/dist-packages/debusine/tasks/_task.py", line 1139, in _prepare_executor_instance
self._prepare_executor()
~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3/dist-packages/debusine/tasks/_task.py", line 1123, in _prepare_executor
assert self.dynamic_data.environment_id
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError
Any task that requires an executor instance also requires an environment, and usually also needs to pin the host architecture to one where we expect an environment to exist. In the blhc
case, these are currently optional, which isn't right.