Releases: warewulf/warewulf
nightly
NIGHTLY RELEASE
Commits from the last 24 hours:
b30a2cf Merge pull request #2063 from cclerget/overlay-conflict-response
c080d9e Removing duplicate CHANGELOG entries from rebase
32222d2 Moving this change in to the future 4.6.6 release
9f2ab51 Return HTTP 409 status when creating an existing overlay
e3a6f22 Merge pull request #2085 from anderbubble/2083-remove-requisite
550eb1e Remove requisite relationship between ignition disk target and service
v4.6.5
Warewulf v4.6.5 is a regularly-scheduled minor release in the v4.6.x series.
- new
wwctl overlay infocommand - fixed
wwctl image import --updateoption - cross-arch support for
wwclient - improved IPv6 support
- improved support for bonded interfaces
- renamed
debian.interfacesoverlay toifupdown - new
systemd-networkdoverlay warewulf-dracutfixes, including "provision-to-disk" fixes
Significant changes are detailed in the release notes. Additional changes may be listed in the CHANGELOG.
v4.6.4
Warewulf v4.6.4 is a regularly-scheduled minor release in the v4.6.x series.
- EL10 support
- improved dnsmasq support
- enhancements to
wwclient wwctl configure warewulfd- fixes for NetworkManager and ifcfg overlays
- fixed unsetting boolean options with
wwctl
Significant changes are detailed in the release notes. Additional changes may be listed in the CHANGELOG.
v4.6.3
Warewulf v4.6.3 is a regularly-scheduled minor release in the v4.6.x series.
- additions to the REST API
- improved IPv6 support
- overlay auto(re)build during node discovery
- automated Warewulf server daemon management
- improved netplan support
- other misc. documentation and bug fixes
Significant changes are detailed in the release notes. Additional changes may be listed in the CHANGELOG.
v4.6.2
Warewulf v4.6.2 was intended to be a regularly-scheduled minor release in the
v4.6.x series, but its release was delayed to include a preview of the ability
to provision node images to local disk, an alternative to provisioning to
volatile memory.
- (preview) support for provisioning to local disk
- improvements to the REST API
- removal of gRPC API infrastructure
- other misc. documentation and bug fixes
Significant changes are detailed in the release
notes. Additional changes
may be listed in the
CHANGELOG.
v4.6.1
Warewulf v4.6.1 is a regularly-scheduled minor release in the v4.6.x series.
- aarch64 packages
- new REST API
- changes to JSON output
- new command-line options
- new IPMI tag to configure interface vlan
- network configuration for
wwclient - new sos plugin
- fixes to
wwctl upgradeand default settings - other misc. bug fixes
Significant changes are detailed in the release notes. Additional changes may be listed in the CHANGELOG.
v4.6.0
Important
This release has been restored after having been erroneously deleted from GitHub. The attached assets have been rebuilt from the original source. Behavior should be 100% identical; but you may notice that package checksums/hashes have changed.
We are investiating methods for preventing this from happening in the future, and apologize for any confusion.
Warewulf v4.6.0 is a significant upgrade, with many changes relative to the v4.5.x series:
- new configuration upgrade system
- changes to the default profile
- renaming containers to (node) images
- new kernel management system
- parallel overlay builds
- sprig functions in overlay templates
- improved network overlays
- nested profiles
- arbitrary "resources" data in nodes.conf
- NFS client configuration in nodes.conf
- emphatically optional syncuser
- improved network boot observability
- movements towards Debian/Ubuntu support
Particularly significant changes, especially those affecting the user interface, are described in the release notes. Additional changes not impacting the user interface are listed in the CHANGELOG.
v4.6.0rc3
Warewulf v4.6.0rc3 is the third release candidate for the upcoming v4.6.0, and is expected to be the last release candidate before the final release. Warewulf v4.6.0 is a major release that includes many significant enhancements, fixes, and changes.
This third release candidate fixes many additional bugs and makes additional expected changes. The full changelog is included below.
For more information regarding changes in v4.6.0, see the v4.6.0rc1 and v4.6.0rc2 releases.
Added
- Added missing hostlist support for
wwctl nodeandwwctl overlay build. #1635 - Added support for comma-separated hostlist patterns. #1635
- Added default value for
warewulf.conf:dhcp.template. #1725 - Added
UniqueFieldtemplate function. #829 - Added
wwctl image build --syncuser. #1321 - Added support for a DNSSEARCH netdev tag in network configuration overlays. #1256
- Added
WW_HISTFILEto control shell history location duringwwctl image shell. #1732 - Added target help in Makefile. #1740
- Added fstab mounts for
/homeand/optto initial default profile. #1744 - Add support for an
IPXEMenuEntrytag to select the boot method during iPXE.
Changed
- Hide internal
wwctl completionandwwctl genconfigcommands. #1716 - Make .ww suffix optional during
wwctl overlay show --render. #649 - DHCP template generates as much of the subnet and range definition as possible. #1469
- Updated overlay flags to
wwctl <node|profile> <add|set> [--runtime-overlays|--system-overlays]. #1495 - syncuser overlay reads host passwd and group database from sysconfdir. #1736
- syncuser overlay skips duplicate users and groups in passwd and group databases. #829
wwctl image syncuser --writeis true by default. #1736- Update syncuser documentation. #1736
- Update PS1 during
wwctl image shellto include working directory by default,
and to includePS1from the environment if present. #1245 - DHCP template generates as much of the subnet and range definition as possible. #1469
- Updated overlay flags to
wwctl <node|profile> <add|set> [--runtime-overlays|--system-overlays]. #1495 - Added logging and updated output during iPXE and GRUB. #1156
- Defined a menu for iPXE. #1156
- Added logging to wwinit scripts. #1156
- Renamed /warewulf/wwinit to /warewulf/prescripts. #1156
- Display auto-detected kernel version during iPXE and GRUB. #1742
- Reduced default verbosity of
wwctl overlay build.
Fixed
- Fixed detection of overlay files in
wwctl overlay list --long. - Fixed panics in
wwctl node sensorsandwwctl node consolewhen ipmi not configured. - Fixed completions for
wwctlcommands. - Return "" when NetDev.IpCIDR is empty.
- Updated
wwctl node exportto include node IDs. #1718 - Don't add "default" profile to new nodes if it does not exist. #1721
- Make DHCP range optional.
- Don't use DHCP for interfaces attached to a bond. #1743
- Wait until ignition has completed before trying to mount.
- Fix timeout problem for wwclient. #1741
- Fixed default "true" state of NetDev.OnBoot. #1754
- Port NFS mounts during
wwctl upgrade nodesbefore applying defaults. #1758
Removed
- Removed partial support for regex searches in node and profile lists. #1635
- Remove redundant
wwctl genconfig completionscommand. #1716 - Remove syncuser warning messages in
wwctlthat assume its use. #1321 - Remove syncuser from the list of default runtime overlays. #1322
- Removed check for "discoverable" profiles during
wwctl upgrade nodes. - Removed
dracut.ipxetemplate. (Usedefault.ipxeand set tagIPXEMenuEntry=dracut.)
v4.6.0rc2
Warewulf v4.6.0rc2 is the second release candidate for the upcoming v4.6.0. Warewulf v4.6.0 is a major release that includes many significant enhancements, fixes, and changes.
This second release candidate fixes many additional bugs and makes additional expected changes. The full changelog is included below.
For more information regarding changes in v4.6.0, see the v4.6.0rc1 release.
Added
- Document defining kernel args that include commas. #1679
- Recommend installing ipmitool with Warewulf package. #970
- Add completion for profile list. #1695
- Add OPTIONS argument for
warewulfd.service. #1707 - Document
warewulf.conf:dhcp.template. #1701 - New template field
IpCIDR. #1700 wwctl configurepersists auto-detected server network settings towarewulf.conf. #1700- Run staticcheck as part of GitHub CI. #1657
Changed
wwctl node list <--yaml|--json>outputs a map keyed by node name. #1667- Don't mount /run during wwinit. #1566
- Simpler permissions in official RPM packages. #1696
- Only calculate image chroot size when requested. #1504
- Create temporary files in overlay directory during
wwctl overlay edit. #1473 - Re-order SSH key types to make ed25519 default. #981
- Don't assume default values for
warewulf.confnetwork settings. #1700 - Omit DHCP pool from
dhcpd.confif any required fields are missing. #1700 warewulf.conf:ipaddr6is no longer required to be a/64or smaller. #1700
Fixed
- Fix default nodes.conf to use the new kernel command line list format. #1670
- Fix
make installwhensudodoes not set$PWD. #1660 - Use sh to parse and exec IPMI command. #1663
- Use configured warewulf.conf path in
wwctl upgrade. #1658 - Fixed negation for slice field elements during profile/node merge. #1677
- Show each overlay only once, even when both site and distribution versions exist. #1675
- Remove a redundant "Building image" log message after image exec. #1694
- Don't populate NetDevs[].Type or NetDevs[].Netmask during upgrade. #1661
- Prefer parent profile values over child profile values. #1672
- Don't attempt to back-up an output file that doesn't exist during upgrade. #1671
- Specify init=/init when booting with Grub+dracut. #1573
- Fix a warewulfd panic when no kernel fields are specified. #1689
- Create site overlay directory. #1690
- Urlencode asset keys during dracut boot. #1610
- Set execute permissions for intermediate directories during
wwctl overlay import --parents. #1655 - Fix log output formatting during overlay build.
- Prevent merging of zero-value net.IP fields. #1710
- Properly handle parsing of server network and netmask from CIDR
warewulf.conf:ipaddr. #1541, #1594 - Populate template field
NetworkCIDR. #1700
Removed
- Remove
warewulf.conf:syslog. #1606
v4.6.0rc1
Warewulf v4.6.0rc1 is the first release candidate for the upcoming v4.6.0. Warewulf v4.6.0 is a major release that includes many significant enhancements, fixes, and changes.
- rename "containers" to "images"
- "sprig" functions in overlay templates
- support for yaml and json formatted output
wwctl upgradeto automatically updatenodes.confandwarewulf.conf- completely re-designed kernel selection support
- nested profiles
- arbitrary node and profile data in new "resources" structure
- moved NFS mount options to resources / fstab overlay
- split overlays by function
- split overlays, site vs distribution
- replaced
defaults.confwith settings on default profile - improved tabular output
- parallel overlay build
- improved networking functionality (static route, vlans, and bonds)
- kernel arguments as a list
- non-zero exit codes on wwctl errors
- fixed argument parsing for
wwctl image exec
This release also includes numerous additional bug fixes and other.
Contributors for this release:
- Adam Michel
- Arian
- Benedikt Braunger
- Beni
- Brandon Biggs
- Brian Clemens (CIQ)
- Christian Goll (Suse)
- Daniele Colombo
- David McFarlane
- Dietmar Rieder
- Elmar Pruesse
- John "griznog" Hanks
- Howard Van Der Wal (CIQ)
- Ian Kaufman
- Josh Burks (ASU)
- Jonathon Anderson (CIQ)
- Nicholas Porter
- Shane Nehring (Iowa State University)
- Stephen Simpson (CIQ)
- Timothy Middelkoop (internet2)
- Tobias Poschwatta
- Tobias Ribizel
- "Jason" Xu Yang
- Yong Qin (Nividia)
The full changelog is included below.
Added
- Added Netplan NIC support for Debian/Ubuntu #1463
- Added documentation on ensuring
systemctl restart warewulfdis ran when editingnodes.conforwarewulf.conf - Add the ability to boot nodes with
wwid=[interface], which replaces
interfacewith the interface MAC address - Added https://github.com/Masterminds/sprig functions to templates #1030
- Add multiple output formats (yaml & json) support. #447
- More aliases for many wwctl commands
- Add support to render template using
hostor$(uname -n)as the value ofoverlay show --render. #623 - Added command line parameters for credentials of a container registry
- Add flag
--buildtowwctl container copy. #1378 - Add
wwctl cleanto remove OCI cache and overlays from deleted nodes - Add
wwctl container import --platform. #1381 - Read environment variables from
/etc/default/warewulfd#725 - Add support for VLANs to NetworkManager, wicked, ifcfg, debian.network_interfaces overlays. #1257
- Add support for static routes to NetworkManager, wicked, ifcfg, debian.network_interfaces overlays. #1257
- Add
wwctl upgrade <config|nodes>. #230, #517 - Better handling of InfiniBand udev net naming. #1227
- use templating mechanism for power commands. #1004
- Document "known issues."
- Add
wwctl <node|profile> <add|set> --kernelversionto specify the desired kernel version or path. #1556 - Add
wwctl container kernelsto list discovered kernels from containers. #1556 - Add possibility to define a softlink target with an overlay template
- Support defining a symlink with an overlay template. #1303
- New "localtime" overlay to define the system time zone. #1303
- Add support for nested profiles. #1572, #1598
- Adds
wwctl container <exec|shell> --build=falseto prevent automatically (re)building the container. #1490, #1489 - Added resources as generic, arbitrary YAML data for nodes and profiles. #1568
- New
fstabresource configures mounts in fstab overlay, including NFS mounts. #515 - Add Dev Container support #1653
- Add man pages and command reference to userdocs. #1488
- Document building images from scratch with Apptainer. #1485
- Added warewulfd:/overlay-file/{overlay}/{path...}?render={id}
Changed
- Renamed "container" to "image" throughout wwctl and overlay templates. #1385
- Locally defined
trhas been dropped, templates updated to use Sprig replace. - Bump github.com/opencontainers/image-spec to 1.1.0
- Bump google.golang.org/grpc 1.62.1
- Bump google.golang.org/protobuf to 1.33.0
- Bump github.com/containers/image/v5 to 5.30.0
- Bump github.com/docker/docker to 25.0.5+incompatible
- Bump github.com/grpc-ecosystem/grpc-gateway/v2 from 2.18.0 to 2.19.1 #1165
- Bump github.com/spf13/cobra from 1.7.0 to 1.8.0 #1166
- Bump github.com/fatih/color from 1.15.0 to 1.17.0 #1224
- Bump github.com/coreos/ignition/v2 from 2.15.0 to 2.19.0 #1239
- Bump github.com/spf13/cobra from 1.8.0 to 1.8.1 #1481
- Bump google.golang.org/protobuf from 1.34.1 to 1.35.1 #1480
- Bump golang.org/x/term from 0.20.0 to 0.25.0 #1476
- Bump github.com/grpc-ecosystem/grpc-gateway/v2 from 2.19.1 to 2.23.0 #1513
- Bump github.com/containers/image/v5 from 5.30.1 to 5.32.2 #1366
- Bump github.com/fatih/color from 1.17.0 to 1.18.0 #1523
- Disable building containers by default when calling
wwctl container copy. #1378 - Split wwinit and generic overlays into discrete functionality. #987
- Updated IgnitionJson to sort filesystems. #1433
wwctl node setrequires mandatory pattern input. #502- Remove NodeInfo (in-memory-only) data structure, consolidating onto NodeConf. #916
- Replace
defaults.confwith settings on the default profile. #917 - Switched from yaml.v2 to yaml.v3 #1462
- Make OCIBlobCache a seperate path and point it to
/var/cache#1459 - Updated various shell scripts for POSIX compatibility. #1464
- Update
wwctl serverto always run in the foreground #508 - Update
wwctl serverto log to stdout rather than a file #503 - Changed
wwctl serverto use "INFO" for send and receive logs #725 - Remove a 3-second sleep during iPXE boot. #1500
- Don't package the API in RPM packages by default. #1493
- Update default
warewulfdport to match shipped configuration. #1448 - Replace
olekukonko/tablewriterwithcheynewallace/tabby. #1497, #1498 - replaced deprecated errors.Wrapf with fmr.Errorf. #1534
- Rename udev net naming file to 70-persistent-net.rules. #1227
- Manage warewulfd template data as a pointer. #1548
- Added test for sending grub.cfg.ww. #1548
- Use a sentinel file to determine container readonly state. #1447
- Bump github.com/Masterminds/sprig/v3 from 3.2.3 to 3.3.0 #1553
- Bump github.com/golang/glog from 1.2.0 to 1.2.3 #1527
- Bump github.com/opencontainers/runc from 1.1.12 to 1.1.14
- Repurpose Kernel.Override to specify the path to the desired kernel within the container. #1556
- Merge Kernel.Override into Kernel.Version to specify the desired kernel version or path. #1556
- Provide detected kernel version to overlay templates. #1556
- Bump github.com/containers/storage from 1.53.0 to 1.55.2 #1316, #892
- Process nodes.conf path dynamically from config. #1595, #1596, #1569
- Split overlays into distribution and site overlays. #831
- Added note to booting userdoc for removing machine-id. #1609
- Log cpio errors more prominently. #1615
- Improved syncuser conflict help text. #1614
- Parallelized overlay build. #1018
- Parallelized and optimized overlay build. #1018
- Added note about dnsmasq interface options in Rocky 9.
- Added retries to curl in wwinit dracut module. #1631
- Added ip= argument to dracut ipxe script. #1630
- Updated network interface bonding configuration and documentation. #1482, #1280
- Refactor Kernel arguments as a slice (list) rather than a single string. #1656
Removed
wwctl node list --fullallhas been removedwwctl profile list --fullallhas been removed- Remove
wwctl server <start,stop,status,restart,reload>#508 - Remove
wwctl overlay build --host#1419 - Remove
wwctl overlay build --nodes#1419 - Remove
wwctl kernel#1556 - Remove
wwctl <node|profile> <add|set> --kerneloverride#1556 - Remove
wwctl container <build|import> --setdefault#1335 - Remove NFS mount options from warewulf.conf. #515
Fixed
- Update links on contributing page to point to warewulf repo.
- Prevent Networkmanager from trying to optain IP address via DHCP
on unused/unmanaged network interfaces. - Systems with no SMBIOS (Raspberry Pi) will create a UUID from
/sys/firmware/devicetree/base/serial-number - Replace slice in templates with sprig substr. #1093
- Fix an invalid format issue for the GitHub nightly build action. #1258
- Return non-zero exit code on overlay build failure #1393
- Return non-zero exit code on container copy failure #1377
- Return non-zero exit code on container sub-commands #1414
- Fix excessive line spacing issue when listing nodes. #1241
- Return non-zero exit code on node sub-commands #1421
- Fix panic when getting a long container list before building the container. #1391
- Return non-zero exit code on power sub-commands #1439
- Fix issue that pattern matching broken on
node set#964 - Fix issue that domain globs not supported during wwctl node delete. #1449
- Fix overlay permissions in /root/ and /root/.ssh/. #1452
- Return non-zero exit code on container sub-commands #1437
- Return non-zero exit code on profile sub-commands #1435
- Fix issue that NetworkManager marks managed interfaces "unmanaged" if they do
not have a device specified. #1154 - Return non-zero exit code on overlay sub-commands #1423
- Simplify passing of arguments to commands through
wwctl container exec. #253 - Don't update IPMI if password isn't set. #638
- Fix issue that
--nettagdeldoes not work properly. #1503 - Fix test for dhcp static configuration #1536 #1537
- Fix issue that initrd fails at downloading runtime overlay with permission denied error,
when warewulf secure option in warewulf.conf is enabled. #806 - Allow iPXE to continue booting without runtime overlay. #806
- Format errors in logs as strings. #1563
- Fix display of profiles during node list. #1496
- Fix internal DelProfile function to correctly operate on profiles rather than nodes. #1622
- Fix parsing of bool co...