Conversation
4a2eae4 to
08baedd
Compare
|
Ansible galaxy server flaky issue has been fixed/workaround by PR #463 |
A generic use case for installing to an existing filesystem in the general case will be: - `bootc install to-filesystem` - Inject other configuration or data into `/etc` and/or `/var` (Until such time as we offer an explicit API to do the latter) Add a `--skip-finalize` which will avoid remounting the root. This also should work around qemu-user not implementing the FITRIM ioctl, which can be hit when doing cross-architecture installs. Signed-off-by: Colin Walters <walters@verbum.org>
08baedd to
7efbb96
Compare
|
PR #463 merged. I make a rebase to make test work in this PR. |
|
Fwiw, the FITRIM support to qemu-user got merged Friday (https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034880.html) so we could maybe ask for a backport into fedora (like we did for FIFREEZE/FITHAW). |
|
Yep makes sense, but wouldn't you agree we should still do this PR too? |
jeckersb
left a comment
There was a problem hiding this comment.
Code looks good to me, I will approve with deferral to you guys on whether or not we really need it. Seems like an overall improvement though that lets the user be explicit when it was otherwise implicit before (while still retaining the same behavior if not explicitly providing the flag)
|
Oh auto-merge 🤷♂️ Well... ship it! 😆 |
Sorry, yes - it makes sense on it's own too. So thanks for this :) |
This commit brings back the pre-PR#462 version of BootcDiskImage as BootcLegacyDiskImage. The rational is that right now we cannot use `bootc install to-filesystem` for cross arch building the FITRIM ioctl is not supported by qemu-user To fix this is requires any of the following: 1. ensure bootc-dev/bootc#462 is available everywhere we care about 2. ensure https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html is available everywhere we care about 3. bind mount /usr/bin/true over /usr/bin/fsfreeze inside the buildroot. This bind mount can be done via `org.osbuild.bind` but it leaks into the manifest and that does not feel great. So the alternative is to keep using the "old" pipeline that does not yet use `bootc install to-filesystem` to for cross-arch builds and the new pipeline for everything else. The selection will happen on the level of `bib`. This is all not nice and fragile and needs to be removed/reverted again but short term might be the only thing we can do.
This commit brings back the pre-PR#462 version of BootcDiskImage as BootcLegacyDiskImage. The rational is that right now we cannot use `bootc install to-filesystem` for cross arch building the FITRIM ioctl is not supported by qemu-user To fix this is requires any of the following: 1. ensure bootc-dev/bootc#462 is available everywhere we care about 2. ensure https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html is available everywhere we care about 3. bind mount /usr/bin/true over /usr/bin/fsfreeze inside the buildroot. This bind mount can be done via `org.osbuild.bind` but it leaks into the manifest and that does not feel great. So the alternative is to keep using the "old" pipeline that does not yet use `bootc install to-filesystem` to for cross-arch builds and the new pipeline for everything else. The selection will happen on the level of `bib`. This is all not nice and fragile and needs to be removed/reverted again but short term might be the only thing we can do.
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
Don't adopt systemd boot loaders
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
This is a temporary measure to be able to move to `bootc install to-filesystem` by default. Only for cross arch builds we use the "legacy" pipeline to build an bootc image. This should be removed once either: - bootc-dev/bootc#462 or - https://www.mail-archive.com/qemu-devel@nongnu.org/msg1034508.html are released in the relevant places (centos/rhel).
A generic use case for installing to an existing filesystem in the general case will be:
bootc install to-filesystem/etcand/or/var(Until such time as we offer an explicit API to do the latter)
Add a
--skip-finalizewhich will avoid remounting the root. This also should work around qemu-user not implementing the FITRIM ioctl, which can be hit when doing cross-architecture installs.