Build packages against a hosted repository
#1093 (comment 660347) shows being able to publish a package to a repository. However, the real use of this will be when we can publish multiple packages to the same repository and show them working well together. At the moment I think one can sort of do this using extra_repositories (defined in the PackageBuild task and also present in several workflows), but it's manual and clunky.
In my view, if you're building "in" a repository (which is currently not a very clearly defined concept, but is triggered by setting publish_target in debian_pipeline), then we should always add that repository during builds and tests. There's no reason to opt out of this any more than there would be a reason to opt out of the basic apt sources provided by the environment.
It may be convenient to expand extra_repositories with a specialized syntax for referring to Debusine hosted repositories, since we don't need to spell out the URL or the signing key in those cases; we just need a suite collection lookup (and maybe components).
When publishing to a repository, the debian_pipeline workflow can add that repository to extra_repositories. (This is likely better than trying to do it at the workflow template level, since we may still want to allow people to add additional external repositories, and even the More flexible workflow templates blueprint doesn't allow for a template that sets one entry in a list but also allows the user to append to it.)
I think there might be something to be said for renaming debian_pipeline's publish_target parameter to something more generic like suite, expressing the fact that it would influence how builds and tests are performed as well as where packages are published.