Jarrod Johnson
12d886a4f6
Add more imgutil documentation
2025-11-25 13:19:03 -05:00
Jarrod Johnson
afd2b6c219
Add storage drivers to imgutil for el8 diskless
2025-08-20 10:04:13 -04:00
Jarrod Johnson
551862e85e
Only start ssh if requested on cmdline
2025-06-17 10:53:55 -04:00
Jarrod Johnson
a36040fa92
Include el10 imgutil contents
2025-06-17 10:39:34 -04:00
Jarrod Johnson
bb7e0d1d1e
Correct mistake in the previous commit
2025-06-17 10:27:40 -04:00
Jarrod Johnson
cb1f06fecf
Add EL10 Diskless
2025-06-17 10:14:09 -04:00
Jarrod Johnson
7dd5c36e78
Remove EL7, add EL10 to the spec for imgutil
2025-06-10 13:25:15 -04:00
Jarrod Johnson
26f3ee539f
Add el10 to imgutil spec
2025-06-10 13:01:08 -04:00
Jarrod Johnson
dcfb028ba9
Add popular virtual machine storage drivers to imgutil
2025-06-09 15:57:02 -04:00
Jarrod Johnson
df354c2f7d
Add some network drivers to cloning/diskless
...
The r8169 enjoys some popularity.
Also, we'd like to be able to try out diskless/cloning with
VMs, so vmxnet3 and virtio_net are handy to round that out.
2025-05-08 11:21:27 -04:00
Jarrod Johnson
febccf4d5e
Fix imgutil with el8 diskless
2025-05-06 08:39:53 -04:00
Jarrod Johnson
543a42edd6
Disable SELinux policy in EL diskless images
...
The SELinux policies do not currently work in a diskless
build, disable by default, though a user may try to enable
it manually after build.
2025-02-06 16:30:06 -05:00
Jarrod Johnson
f19234419d
Implement non-root ssh for SUSE diskless
2024-09-19 13:15:10 -04:00
Jarrod Johnson
97e29a5655
Change versioning to consistently produce prerelease consistent with rpm and deb
2024-09-04 10:11:47 -04:00
Jarrod Johnson
ca4955101d
Improve "realness" of imgutil exec context
...
Utilities that expected /dev/pts will now be satisfied,
as a new /dev/pts is mounted.
Further, systemd added a check in various utilities that
was fouled by the previous method of appearing to have a
root filesystem.
Before, after chroot, we would bind mount / to itself, and this
made things using /proc/mounts, /proc/self/mountinfo, df, mount,
etc happy that there is a real looking root filesystem.
However, by doing it after the chroot, systemd could statx on '..' and
get a different mnt id than /. So it had to be done prior to the
chroot. However it also had to be done before other mounts as
bind mounting over it would block the submounts.
This more closely imitates the initramfs behavior, where '/' starts life
as a 'real' filesystem before being mounted up and switched into.
This behavior was made to imitate the 'start_root.c' behavior as that
seems to be more broadly successful.
2024-08-07 08:40:10 -04:00
Jarrod Johnson
187fda4bb8
Add debootstrap dependency for imgutil
2024-08-07 07:58:08 -04:00
Jarrod Johnson
7ab7600492
Add cpio dependency for imgutil
2024-08-07 07:56:11 -04:00
Jarrod Johnson
f2b9a4fa5d
Improve handling of ssh service being pre-hooked
2024-08-06 12:25:21 -04:00
Jarrod Johnson
c91af840e5
Robust handling of relative link resolv.conf
...
resolv.conf may be a relative link, normal file, or absolute link.
Handle all cases.
2024-07-24 11:12:31 -04:00
Jarrod Johnson
8f58567a70
Add ssh to default services of a built ubuntu image
2024-07-23 11:05:51 -04:00
Jarrod Johnson
cf4475cfcc
Escape the '\W' to avoid stepping on python processing
2024-07-23 10:23:05 -04:00
Jarrod Johnson
1ade704daa
Fix imgutil copy of ubuntu sources
2024-07-22 16:40:44 -04:00
Jarrod Johnson
34b03da494
Update for Ubuntu 24.04 diskless
2024-07-22 16:33:07 -04:00
Jarrod Johnson
4f18294d93
Fix path in debian build for imgutil
2024-07-22 13:57:38 -04:00
Jarrod Johnson
7154a1d60c
Add control file for deb build of imgutil
2024-07-22 13:47:36 -04:00
Jarrod Johnson
69fa3f10c0
Add deb packaging of imgutil
2024-07-22 13:47:29 -04:00
Jarrod Johnson
60fe306890
Numerous fixes
...
Normalize cloning by wipefs prior to image2disk
Have imgutil filter out zram mounts.
Fix syncfiles error handling.
2024-03-15 13:03:46 -04:00
Jarrod Johnson
e90f2829ab
Filter bind mounts from imgutil capture
...
If bind mounts are in use, it will foul the capture.
Notably, one example is if you install the firefox snap in
ubuntu, snapd creates a bind mount.
This will ignore bind mounts, and rely upon the system to
put it straight.
2023-11-08 09:37:44 -05:00
Jarrod Johnson
f88b44dee2
Fix issues with imgutil
2023-09-20 10:13:34 -04:00
Jarrod Johnson
50d5cead06
Add prereq checks to EL cloning
2023-09-12 16:55:19 -04:00
Jarrod Johnson
b77d8b1f21
Make yaml import conditional
...
Only Ubuntu requires it, but tends to have it.
Other distributions do not tend to have it.
2023-09-12 10:45:15 -04:00
Jarrod Johnson
f82829aa0c
Add dependency checking to imgutil capture
...
This will more quickly indicate problems in a profile trying to capture.
First iteration will address Ubuntu.
2023-09-08 17:10:27 -04:00
Jarrod Johnson
8de6f4356d
Fix sense of new flag
...
Accidently made flag exactly opposite of intended
2023-09-07 15:12:43 -04:00
Jarrod Johnson
fe78034eaa
Add '-y' to imgutil build
...
Allow non-interactive imgutil build.
2023-09-07 14:56:07 -04:00
Jarrod Johnson
22cb2bdc40
Handle Ubuntu hardcoded grub cfg
...
Ubuntu hardcodes grub.cfg to
another location.
Make a stub file as a flag to guide osimage
to know where grub.cfg goes.
2023-08-29 10:57:25 -04:00
Jarrod Johnson
899ce7f055
Correct spelling of hooks directory in Ubuntu cloning
2023-08-17 16:27:45 -04:00
Jarrod Johnson
7e209e412a
Make confluent hook executable in ubuntu diskless
2023-08-17 16:16:36 -04:00
Jarrod Johnson
7051f467bb
Avoid a deprectationwarning in copytree handling
...
While trying to address one
deprecationwarning, we
hit another. Check if the
new function exists and use it,
falling back to distutils if
everything fails.
2023-08-17 14:49:44 -04:00
Jarrod Johnson
b88ccc292c
Avoid deprecation on distutils with newer python
...
Unfortunately, python 3.6 needs the distutils version, but we should avoid it altogether
by python 3.10, but by 3.10 the shutil.copytree can do it.
2023-08-17 14:36:38 -04:00
Jarrod Johnson
c47066d713
Include ubuntu material in packaging
2023-08-17 14:11:41 -04:00
Jarrod Johnson
8ddcf45e1d
Create links for ubuntu20.04 and ubuntu22.04
2023-08-17 14:03:55 -04:00
Jarrod Johnson
58cc9840b3
Prune out any netplan configuration, if exists
...
To mitigate chance of network configuration
being tanked by image based
net config, mask it when capturing.
2023-08-16 14:28:10 -04:00
Jarrod Johnson
84d23bb1fd
Begin work on Ubuntu cloning
2023-08-16 12:00:50 -04:00
Jarrod Johnson
5068cda2cf
Catch another sort of exception for non-rpm distributions
...
subprocess may produce a different sort of exception if
rpm doesn't exist at all
2023-08-14 09:23:00 -04:00
Jarrod Johnson
c9d9a3cc54
Add EL9 cloning support
...
Main difference from EL8 is different grub strategy. To cope, capture
the uuid of new /boot and manipulate the
stub grub.cfg with the right uuid.
In EL8, the efi has the main grub, EL9 changes to have /boot host the 'real' grub,
causing us to have to modify the stub grub.
2023-07-25 17:09:37 -04:00
Jarrod Johnson
a523df80e8
Handle newer SuSE
...
After SP4, suse drops mkinird requirement.
Switch to dracut -f in such a scenario.
2023-05-16 14:51:27 -04:00
Jarrod Johnson
e93e4abd83
Add clear error when base profile doesn't exist
...
If the user specifies a wrong '-b',
indicate clearly that is the case,
and do so early.
2023-05-10 08:40:45 -04:00
Jarrod Johnson
340ccc422c
Specify check for arch override of addons.cpio
...
For now, keep using x86_64 as
default, but allow overrides
for other architectures.
One day it may be cleaner to move all addons.cpio to
arch specific subdirs.
2023-01-31 15:27:45 -05:00
Jarrod Johnson
5c309db47c
Further ARMv8 support
...
Handle aarch64 differences in
at least some distributions.
2023-01-31 11:20:40 -05:00
Jarrod Johnson
627bc9ffe3
Modify pkglist for aarch64
2023-01-27 12:14:37 -05:00