debian-forge/osbuild
David Rheinsberg 58d368df0d osbuild: unify libdir handling
We want to run stages and other scripts inside of the nspawn containers
we use to build pipelines. Since our pipelines are meant to be
self-contained, this should imply that the build-root must have osbuild
installed. However, this has not been the case so far for several
reasons including:

  1. OSBuild is not packaged for all the build-roots we want to support
     and thus we have the chicken-and-egg problem.

  2. During testing and development, we want to support using a local
     `libdir`.

  3. We already provide an API to the container. Importing scripts from
     the outside just makes this API bigger, but does not change the
     fact that build-roots are not self-contained. Same is true for the
     running kernel, and probably much more..

With all this in mind, our strategy probably still is to eventually
package osbuild for the build-root. This would significantly reduce our
API exposure, points-of-failure, and host-reliance. However, this switch
might still be some weeks out.

With this in mind, though, we can expect the ideal setup to have a full
osbuild available in the build-root. Hence, any script we import so far
should be able to access the entire `libdir`. This commit unifies the
libdir handling by installing the symlinks into `libdir` and providing
a single bind-mount of the module-path into `libdir`.

We can always decide to scratch that in the future when we scratch the
libdir-import from the host-root. Until then, I believe this commit
nicely unifies the way we import the module both in a local checkout as
well as in the container.
2020-04-21 13:44:43 +02:00
..
util util/selinux: add simple setfiles wrapper 2020-04-15 15:39:45 +02:00
__init__.py pipeline: return logs in --json mode 2019-12-14 13:49:24 +01:00
__main__.py osbuild: add --output-directory=DIR 2020-04-15 15:40:17 +02:00
api.py api: add barriers 2020-02-06 19:01:12 +01:00
buildroot.py osbuild: unify libdir handling 2020-04-21 13:44:43 +02:00
loop.py loop: fix FD leak in mknod() 2020-04-21 13:02:29 +02:00
objectstore.py objectstore: use ioctl to clear immutable flag 2020-03-30 23:58:33 +02:00
pipeline.py osbuild: unify libdir handling 2020-04-21 13:44:43 +02:00
remoteloop.py remoteloop: drop O_DIRECT 2020-02-06 19:01:12 +01:00
sources.py sources: add org.osbuild.files source 2020-02-06 19:01:12 +01:00
tmpfs.py osbuild: split package into separate files 2019-08-21 09:56:50 +04:00
treesum.py treesum: don't use dir_fd parameter in os.scandir() 2019-11-29 00:45:14 +01:00