debci: chroot setup for non-Debian
Hi ci-team,
I'm looking into setting up a debci instance for Freexian's ELTS
offering and have been running into problems that I'd like to see solved
in a generic way. Please Cc me in replies.
As far as I understand things, to set up a worker, one is supposed to
invoke
debci setup --suite ... --arch ... --backend ... --mirror ...
for each relevant configuration. This happens to work well for a few
specific configurations, but when one gets out of tested configuration,
things become strange wrt. apt sources.
debci-setup
-> debci/backends/lxc/create-testbed (using lxc as example here)
-> autopkgtest-build-lxc
-> lxc-create
-> lxc-debian lxc-template
This one consumes the KEYRING environment variable, but
poking through this many layers using an environment
variable feels slightly wrong. In any case, this works
well.
It also uses the --mirror value passed from debci, which
is good.
autopkgtest-build-lxc replaces apt sources, but this can be
influenced using variables such as AUTOPKGTEST_APT_SOURCES.
This kinda works, but it feels strange that I have to change
mirrors in multiple places.
create-testbed again replaces apt sources unless we're on Kali
Linux or Ubuntu.
-> debci-generate-apt-sources --source --dbgsym
Since --dbgsym is unconditional it always adds dbgsym URIs and
also ignores our --mirror and does not allow overriding via
environment variables in a similar way as the other layers
earlier.
I think it is unfortunate, that we have at least three different layers
that modify apt sources in conflicting ways. The architecture seems less
than ideal to me. I'm happy to help rework this. Do you have a vision on
how this is supposed in a generic way for Debian derivatives?
>From a naive point of view, having all these layers deal with
sources.list at the same time seems suboptimal. Personally, I think that
the uppermost layer (debci-generate-apt-sources) or similar should be in
charge of deciding about the contents (and currently is) and all other
layers should be told to use the decision of that layer (as currently
does not happen). Furthermore, debci-setup should be able to customize
debci-generate-apt-sources. Do you agree with these views?
Helmut
Reply to: