Skip to content
Snippets Groups Projects
Emanuele Aina's avatar
Emanuele Aina authored
When virtualization is available, Debos uses systemd-nspawn to run commands in
the "chroot".

systemd-nspawn automatically takes care of setting up a working
/etc/resolv.conf, usually by bind mounting the "host" one:

 https://www.freedesktop.org/software/systemd/man/systemd-nspawn.html#--resolv-conf=

In our case, the host is the VM managed by fakemachine, which is configured to
use systemd-resolved.

The end result is that the stub /etc/resolv.conf pointing to 127.0.0.53 is
copied to our rootfs and included in the generated ospack.

This is arguably a weird corner of Debos, the resolv.conf file should really
not persist out of the chroot:

 https://phabricator.apertis.org/T4308



However, in the past ConnMan used to ship a tmpfiles.d snippet to overwrite
it with a link to /var/run/connman/resolv.conf but since commit 45ccde23a90c
shipped in ConnMan 1.36 the snippet has been changed to no longer overwrite
existing files, causing DNS resolution to fail on our images.

By dropping /etc/resolv.conf at the end of each recipe, after all the
chroot:true actions, we should be able to ensure that the final artifacts
don't ship it and at runtime the ConnMan tmpfiles.d snippet should work
 again as intended.

Signed-off-by: Emanuele Aina's avatarEmanuele Aina <emanuele.aina@collabora.com>
b2756878
History
Name Last commit Last update