Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Lars Wirzenius <liw@liw.fi>
Sponsored-by: author
|
|
Signed-off-by: Lars Wirzenius <liw@liw.fi>
Sponsored-by: author
|
|
Signed-off-by: Lars Wirzenius <liw@liw.fi>
Sponsored-by: author
|
|
|
|
|
|
debootstrap seems to create it, so that it can resolve DNS names in
the chroot. However, we don't want it in the final image.
Signed-off-by: Lars Wirzenius <liw@liw.fi>
Sponsored-by: author
|
|
|
|
I don't know if it boots, sorry.
Sponsored-by: author
|
|
pc.vmdb is long gone.
Reported-by: Simon Josefsson
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
|
|
The lvscan_plugin is used to detect logical volumes in existing disk
images. The volumes are tagged by the plugin, enabling them to be
mounted.
|
|
virtualfs_plugin.py now bind-mounts `/dev` from the build host into the
chroot to allow grub_plugin to support grub_install when the root
filesystem is inside an LVM volume
|
|
Update grub_plugin.py to mount the `/proc` filesystem before calling
`get_image_loop_device()`, because the `/proc` filesystem is required by
the `lvs` command used to probe for a rootfs inside LVM volumes.
|
|
|
|
Enable support for running vmdb2 with a disk image that has already
been partitioned, with pre-existing filesystems in those partitions.
The kpartx_plugin's new "tags" key takes a list of partition/mountpoint
tags to use when referring to the partitions later in the vmdb2 spec
file.
The mount_plugin has been updated to detect the filesystem and uuid if
the mountpoint tags for the disk image were defined via the new "tags"
kpartx_plugin key, rather than via invoking the mkfs plugin. This allows
the mount_plugin to use the fstype to determine if zerofree can be run
on a partition when it is unmounted during build teardown.
|
|
The grub_plugin mounts a subset of the filesystems mounted by the
virtualfs_plugin. When `vmdb2` is run on Docker for Mac and
virtualfs_plugin and grub_plugin are both used, the rootfs cannot be
unmounted during teardown because some virtualfs mounts have been
mounted twice but only unmounted once. This results in leaked
device-mapper entries after each execution of `vmdb2`
To fix this issue, these plugins now only mount filesystems that
have not already been mounted.
|
|
Fix a kpartx plugin failure when no free loop devices are available: in
this scenario, the `kpartx -asv` command can fail. To resolve this,
`losetup -f --show <image-file>` is now executed first, which will to
create a new loop device if required, before mapping the partitions
using `kpartx`.
|
|
Normalizing mountpoint paths fixes a bug where vmdb2 incorrectly
determined that mountpoints were not mounted because the (un-normalized)
paths in the state object didn't match the (normalized) paths in
`/proc/mounts`
(the previous attempt to merge this accidentally deleted the for loop on
line 57...)
|
|
Add an optional `tls_ca_certs` key which takes a list of paths to TLS
Certificate Authority (CA) cert files to install in the image after the
debootstrap process has completed. This allows the use of package
repositories with HTTPS transports that use TLS certificates issued by
private CAs. Note that the CA cert files being installed must have a
`.crt` suffix in order to be used.
|
|
Default is to test several Debian releases on several architectures,
but sometimes that's not needed, until at the final stages of a merge
cycle. When something faster is needed, only specific releases on
amd64 are tested. Much speed, very fast.
Sponsored-by: author
|
|
The `force` key enables overwriting of an existing rootfs tarball by
`vmdb2`, allowing the tarball to be used as both a build input and a
build output. This can be useful in multi-stage build chains where a
"common base OS" rootfs filesystem is populated and packaged as a rootfs
tarball by `vmdb2`, and this tarball is consumed by multiple downstream
`vmdb2` builds that extract the tarball into disk images that have
different partition layouts and/or filesystems.
|
|
This breaks things, so reverting while we figure out a fix.
|
|
Normalizing mountpoint paths fixes a bug where vmdb2 incorrectly
determined that mountpoints were not mounted because the (un-normalized)
paths in the state object didn't match the (normalized) paths in
`/proc/mounts`
|
|
When `/etc/resolv.conf` is a symlink in the target image (which will be
the case for many modern Linuxes that use systemd-resolved), copy the
host's `/etc/resolv.conf` to the symlink's target location. This will
allow systemd to be able to use the `/etc/resolv.conf` symlink when the
image is booted.
|
|
Sort entries that are written to `/etc/fstab` by mount_point. This
ensures that the entries are listed in dependency order, allowing for
all mountpoints to be mounted by `mount -a` in a single pass. For
example, this is useful when the mount points `/`, `/boot`, and
`/boot/efi` are all defined in `/etc/fstab`
|
|
Specifying extra_vars inline makes the variables visible in the build
output, which in turn makes post-build debugging easier when things go
wrong
|
|
When executed with `--verbose`, send stdout and stderr data from
subprocesses to `sys.stdout` and `sys.stderr` as it is generated to
provide better feedback for long-running processes like ansible which
produce a lot of output
|
|
We ran zerofree with -v, which outputs progress percentages, and
that's not actually useful. Drop the -v for a cleaner log.
Sponsored-by: author
|
|
Commit 8a9977b introduced a bug whereby if the new /etc/default/grub
file contents were shorter in overall length than the original content,
then a trailing portion of the previous content would remain in the
file. This commit ensures that the new file is truncated to the new
length to prevent this.
|
|
Sponsored-by: author
|
|
Let user modify that via Ansible or something, if they care.
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
They were basically doing the same thing.
Sponsored-by: author
|
|
Drop attempts to use Subplot. It's not happening now, maybe later.
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|
|
Sponsored-by: author
|