Commit Graph

37 Commits

Author SHA1 Message Date
Dacian Reece-Stremtan
efd63aecd4 IPv6 iPXE support
* Parse address and port with netip w/ tests
* Add Authority to provisioning templates based on remote IP family
  (name based on RFC 3986)
* Add IPv6 support to the default iPXE (tested)
* Update `grub.cfg.ww` to use Authority (untested)

Co-authored-by: Dacian Reece-Stremtan <dacianstremtan@gmail.com>
Co-authored-by: Timothy Middelkoop <tmiddelkoop@internet2.edu>
Signed-off-by: Timothy Middelkoop <tmiddelkoop@internet2.edu>
2025-08-01 14:46:36 -06:00
Jonathon Anderson
b98eae4b01 Refactor ignition support during dracut
- Control root device using the node/profile root field
- Add support for `/warewulf/wwinit.d` to run scripts during first stage
- Move first-stage ignition support to `/warewulf/wwinit.d/`
- Add `wwctl <node|profile> set --parttype`
- Add overlay template functions `SystemdEscape` and `SystemdEscapePath`
- Support configuring ignition with resources

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-06-30 23:19:31 -06:00
Jonathon Anderson
fb9f269fc5 Update ipxe and grub configuration for clarity #1156
Also:

- Defined a menu for iPXE
- Support a IPXEMenuEntry tag to select the boot method
- Merge iPXE dracut support into default.ipxe (use IPXEMenuEntry=dracut)

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-17 02:31:05 -07:00
Jonathon Anderson
45a690ca4e Rename "container" to "image"
- Updated `wwctl upgrade` to handle updates
- Maintained `.Container` and `.ContainerName` in tstruct
- Added `ContainerName()` methods to node and profile objects
- Added `--container`, `-C` aliases to wwctl commands (`<node|profile> <add|set>`)
- Added `wwctl container` alias
- Added support for `container_exit.sh` if `image_exit.sh` is not found

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-19 05:54:19 -07:00
Jonathon Anderson
a844379bc5 Merge --kerneloverride into --kernelversion
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-09 10:02:28 +01:00
Jonathon Anderson
8f21d54243 Refactor kernel support
- Remove kernel imports and kmods images
- Repurpose KernelOverride as container path
- Support Kernel.Version as version prefix for kernel selection
- Compare initramfs by version

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-09 10:02:22 +01:00
Jonathon Anderson
cab56fbea5 Omit initrd=runtime if not loaded
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-13 22:20:26 -07:00
Xu Yang
c6ebac89da add failure downloading runtime message to imgextract part
Signed-off-by: Xu Yang <xyang@ciq.com>
2024-11-13 21:50:03 -07:00
Jonathon Anderson
7b1adf4c12 Simplified CHANGELOG and iPXE error messages
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-13 21:50:03 -07:00
xu yang
7a63e517f7 fix issue that initrd fails at downloading runtime overlay with permission denied error, when warewulf secure option in warewulf.conf is enabled
Signed-off-by: xu yang <xyang@ciq.com>
2024-11-13 21:50:03 -07:00
Jonathon Anderson
94ee0a5bd9 Remove an unnecessary 3s boot from iPXE
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-01 19:07:19 -06:00
Christian Goll
640a046dd9 report error if no container was defined
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-08-02 14:48:02 -06:00
Jonathon Anderson
a1832ad8c1 Complete transfer of Warewulf from HPCng
Warewulf is now being maintained in its own GitHub organization at
github.com/warewulf

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-01-26 21:35:04 -07:00
Ingo Meyer
bc8aa06673 Fix the boot process for Legacy BIOS machines
GitHub PR #235 adds an advanced boot mechanism for UEFI machines which
causes old Legacy BIOS nodes to hit the 3 GB RAM barrier in 32 Bit iPXE
very quickly. Therefore, detect if an EFI or Legacy BIOS is loaded and
fall back to the old boot path in the second case.

This commit fixes GitHub issue #497.
2022-07-21 19:37:29 +02:00
Gregory Kurtzer
c8b6c24d6c Removing compression (again) from initrd PXE 2022-05-26 19:56:04 -07:00
Gregory Kurtzer
6ccc3ceecb Readded compression to the GET request
This works around an out of memory issue reported in IRC from
Norm Gaywood (thanks Norm!)
2022-05-25 23:10:10 -07:00
Gregory Kurtzer
419cb1487c revert my change to always send compressed image 2022-05-25 14:48:29 -07:00
Gregory Kurtzer
d3e59d55fe Minor change as sending uncompressed images doesn't seem necessary.
This can be reverted if I'm missing something in #423.
2022-05-24 22:16:27 -07:00
Gregory Kurtzer
25293267f2 Added runtime overlay back to default ipxe template with some cleanups 2022-05-24 21:57:27 -07:00
Carter Dodd
9c5759c857 Remove new dhcp config options
Discussion indicated a need for more general handling of network config.
Avoids adding new options that may become deprecated in the near future.
2022-05-19 19:02:58 -05:00
Carter Dodd
7ecaae1361 Fix only serve/check Secure for runtime 2022-05-16 12:38:53 -05:00
Carter Dodd
379faad51d Refactor of server, logging, building of images, template updates
* Combine provision response handling, add hwaddr and interface to dhcp
* Simplify stage cases, add backward compatible uri parse
* Move control of image compression to client
* Fix kernel search path for ubuntu, buffer template generation
* Implement cpio and gz as functions, add log named functions
* Generalize fs image creation routine
* Combine daemonLogf to generalized wwlog
* Fix template newline insertion, update dhcp and hosts tmpl
* Update IPXE template to handle non-compressed files
* Update DHCP template to set network interfaces and server IP assignment
* Update DHCP/hosts templates to choose a host-name self-consistently
2022-05-13 16:52:59 -05:00
griznog
580d402b57 Make displaying the kernel handle the default case when an override is
not specified.
2022-02-24 13:22:50 -06:00
Gregory Kurtzer
5a0c13225e Utilize containerized kernel and remove kernel Support 2022-02-15 06:49:24 +00:00
Gregory Kurtzer
7f9216bdd8 Added the runtime overlay request to the default PXE template 2022-02-09 20:11:03 +00:00
Christian Goll
56fe1355ce runtme overlay can only be downloaded by wwclien 2022-01-26 17:28:08 +01:00
Gregory Kurtzer
84b618fb7b Fixed booting issues with /bin directory existing in overlay. 2022-01-26 01:59:34 +00:00
Gregory Kurtzer
b068c187af Update wwclient to send hwaddr and asset/uuid tags 2022-01-24 01:29:05 +00:00
Gregory Kurtzer
d9c13c3f36 Initial commit of asset key tag security check 2022-01-24 00:32:02 +00:00
Gregory Kurtzer
00d8d42e9d First pass at a rework of the overlay subsystem in Warewulf 2021-12-29 16:11:25 -08:00
Gregory Kurtzer
02163769b1 Testing an iPXE fix/suggestion from Ben Allen. (Thanks!) 2021-03-10 15:09:06 -08:00
Gregory Kurtzer
93a2eeaf2c Sleep and reboot on PXE error 2021-02-23 19:52:11 -08:00
Gregory Kurtzer
8c11c2b304 Renamed vnfs to container, finished VNFS and kernel refactoring 2020-12-06 00:47:00 -08:00
Gregory Kurtzer
5368998c3b Remove extra slash in default ipxe template 2020-11-26 19:21:34 -08:00
Gregory Kurtzer
663d3bb653 Templated iPxe config properly and added "Kernel Args" node config 2020-11-11 23:32:27 -08:00
Gregory Kurtzer
6960cdeafa Some minor boot cleanups and feature adds 2020-11-04 19:06:25 -08:00
Gregory Kurtzer
d2ed5766cd Added configuration pkg, iPXE templating, clean up, etc. 2020-11-04 18:45:36 -08:00