Support for an autopkgtest_backend: auto setting
User story
I would like to request this feature as an authenticated user, willing to use debian_pipeline-based workflows, that include enabled autopkgtest and autopkgtest for reverse dependencies tasks. I would like that those autopkgtest jobs run on the "minimal" backend supporting the restrictions found in the package's tests, i.e. lxc containers or qemu when isolation-container and isolation-machine are needed, respectively. For any other autopkgtest, running on the unshare backed should be enough. Taking the liberty of using openssh as example, the 1:10.0p1-1 version of that package includes four autopkgtests, all of them require isolation-container. And those autopkgtests are skipped in the current debusine.d.n upload-to-unstable's autopkgtest task, since it runs on the unshare by-default backend. With the proposed feature, I would like that such autopkgtest task runs on lxc (or qemu), making the autopkgtest task's outcome more meaningful.
Moreover, openssh's systemd reverse dependency includes an autopkgtest that requires isolation-machine: https://debusine.debian.net/debian/developers/work-request/85195/. So it would be awesome if, under the autopkgtest for reverse dependencies tasks, systemds runs on the qemu` backend.
As far as I understand, there are currently no clear plans about how a regular user could override the settings defined in the workflow template. I think that a dynamic autopkgtest backend definition mechanism would help, especially if several people could prepare updates for a package during the lifecycle of a debian release (maintenance team, sec team, LTS/ELTS team), so the debusine pipeline could provide consistent results at each release-based workflow.
Error handling
Implementation plan
Open questions
Notes
This issue description can be modified to integrate feedback from comments and from associated merge requests.