13 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Fixed
- The correct header is now displayed when
-alflags are specified to overlay list. - Added a missing
.wwextension to the70-ww4-netname.rulestemplate in the wwinit overlay. - Restrict access to
/warewulf/configto root only. (#728, #742) - KERNEL VERSION column is too short. #690
- Add support for resolving absolute path automatically. #493
- The network device "OnBoot" parameter correctly configures the ONBOOT ifcfg parameter. (#644)
- Add support for listing profile/node via comma-separated values. #739
- Sort the node list returned entries by name.
- 'wwctl node edit' inconsistent state with warewulfd. #691
- Add
--parentsoption tooverlay importsubcommand to create necessary parent folder. #608
Changed
-
The primary hostname and warewulf server fqdn are now the canonical name in
/etc/hosts -
new subcommand
wwctl genconfis available with following subcommands:completionswhich will create the files used for bash-completion. Also fish an zsh completions can be generateddefaultswhich will generate a validdefaults.confmanwhich will generate the man pages in the specified directoryreferencewhich will generate a reference documentation for the wwctl commandswarwulfconf printwhich will print the usedwarewulf.conf. If there is no validwarewulf.confa valid configuration is provided, prefilled with default values and an IP configuration derived from the network configuration of the host
-
All paths can now be configured in
warewulf.conf, check the paths section of ofwwctl --emptyconf genconfig warewulfconf printfor the available paths. -
Added experimental dnsmasq support.
-
Refactored
profile addcommand to make it alikenode add. #658 #659 -
The ifcfg ONBOOT parameter is no longer statically
true, so unconfigured interfaces may not be enabled by default. (#644) -
new subcommand
wwctl genconfis available with following subcommands:completionswhich will create the files used for bash-completion. Also fish an zsh completions can be generateddefaultswhich will generate a validdefaults.confmanwhich will generate the man pages in the specified directoryreferencewhich will generate a reference documentation for the wwctl commandswarwulfconf printwhich will print the usedwarewulf.conf. If there is no validwarewulf.confa valid configuration is provided, prefilled with default values and an IP configuration derived from the network configuration of the host
-
All paths can now be configured in
warewulf.conf, check the paths section of ofwwctl --emptyconf genconfig warewulfconf printfor the available paths. -
Added experimental dnsmasq support.
-
new subcommand
wwctl genconfis available with following subcommands:completionswhich will create the files used for bash-completion. Also fish an zsh completions can be generateddefaultswhich will generate a validdefaults.confmanwhich will generate the man pages in the specified directoryreferencewhich will generate a reference documentation for the wwctl commandswarwulfconf printwhich will print the usedwarewulf.conf. If there is no validwarewulf.confa valid configuration is provided, prefilled with default values and an IP configuration derived from the network configuration of the host
-
All paths can now be configured in
warewulf.conf, check the paths section of ofwwctl --emptyconf genconfig warewulfconf printfor the available paths. -
Added experimental dnsmasq support.
-
Check for formal correct IP and MAC addresses for command line options and when reading in the configurations
[4.4.0] 2023-01-18
Added
- New Docker container node image for CentOS 7. #621
Fixed
- Replaced an invalid variable name in a NetworkManager overlay template. #626
- The 'nodes' alias now correctly refers to 'node' rather than 'profile'.
- Fixed a typo in a log message. #631
- Boolean attributes now correctly account for profile and default values. #630
- Kernel version is shown correctly for symlink'd kernels #640
- Changing a profile always adds an empty default interface. #661
[4.4.0rc3] 2022-12-23
Added
- New
defaults.confman page. #593 - A new debug overlay includes a template which demonstrates accessing all available variables. #599
- Distribute a README along with staticfiles. #189
- Add a
-yflag towwctl profile add. #610 - Distribute a source RPM with GitHub releases. #614
Changed
- No longer ask for confirmation when deleting 0 nodes. #603
- Ask for confirmation during
wwctl container delete. #606
Fixed
wwctl profile setnow indicates "profiles" in output where it previously mistakenly indicated "nodes." #600- Set correct overlay permissions for a NetworkManager configuration file. #591
Fixed
- Directories within overlays no longer lose group/other write permissions #584
[4.4.0rc2] 2022-12-09
Added
- The environment variable
WW_CONTAINER_SHELLis defined in awwctl container shellenvironment to indicate the container in use. #579 - Network interface configuration (
ifcfg) files now include the interface name and type. #457
Fixed
- Work-around for older versions of gzip that lack a
--keepflag duringwwctl container build. #580 - The default ipxe template is once again specified as a built-in
default and in
defaults.conf. #581 wwctl container listno longer segfaults when a container chroot is present without a built image. #585wwctl configure hostfilenow correctly detects the presence of the hostfile overlay template. #571wwctl overlay buildno longer panics when rendering an template for a node which has tags set. #568- Minor typographical fixes. #569
[4.4.0rc1] 2022-10-27
Added
- iPXE binaries included with Warewulf now support VLAN tagging. #563
wwctl container listnow shows the container creation date, modification date, and size. #537wwctl node editsupports directly editing or defining node configuration YAML in an editor. #540wwctl node exportandwwctl node importsupport importing and exporting node definitions as YAML or (for import) CSV. The CSV file must have a header in where the first field must always be the nodename, and the rest of the fields are the same as the long commandline options. Network device must have the formnet.$NETNAME.$NETOPTION. (e.g.,net.default.ipaddr) #540- The
warewulfd.servicesystemd unit file now supportsexecreloadandexecstop. #550 - Network interfaces now accept an
mtuattribute. #549 - The
wwinitoverlay now supports network interface configuration via NetworkManager for Ethernet and InfiniBand interfaces. #539 - Default node attribute values (e.g., for kernel arguments) are now
read in from a
defaults.confconfiguration file. If this file is not present, built-in default values are used. #539 - Warewulf documentation is now managed alongside the Warewulf source code in a single code repository so that documentation may be updated alongside code changes.
- New man pages for
warewulf.confandnodes.conf#510 - An initial cut of the Warewulf API #471
wwctl show --rendershows overlay templates as they would be rendered on a given target node. #467wwctl sshnow supports Bash completion. #466
Changed
wwctl overlay editno longer saves a new template to the overlay if the template is not modified from its initial state. #522- The wwinit overlay now only sets a name for a network interface if that interface has a MAC address defined. #553
wwctl container deletenow also deletes the built images associated with that container. #214- Unified internal code paths for
wwctl profileandwwctl nodecommands, and between the on disk YAML format and the in memory format, enabling the command-line options to be autogenerated from the datastructures and ensuring that profile and node capabilities remain in sync. Multiple command line arguments have been updated or changed. #495, #637 wwctl powercommands no longer separates node output with additional whitespace. #514
Fixed
/etc/warewulf/excludes(read from the node image) once again excludes files from being included in the node image. #532wwctl sshalways uses a node's primary interface. #544wwctl container shownow correctly shows the kernel version. #542- System users are no longer prevented from logging into compute nodes. #538
wwctl overlay chownnow correctly handles uid and gid arguments. #530wwctl overlay chownno longer sets gid to0when unspecified. #531- Corrected the path for
.wwbackupfiles in some situations. #524 - Bypass
imgextractfor legacy BIOS machines to avoid 32-bit memory limitations. #497 warewulfdno longer panics when network interface tags are defined. #468- The wwinit overlay now configures the network device type. #465
- Minor typographical fixes. #528, #519
[4.3.0] 2022-06-25
Added
- All configurations files for the host (/etc/exports, /etc/dhcpd.conf, /etc/hosts) are now populated from the (OVERLAYDIR/host/etc/{exports|dhcpd|hosts}.ww . Also other configuration files like prometheus.yml.ww or slurm.conf.ww which depend on the cluster nodes can be placed. Also the new templated functions {{ abort }}, {{ IncludeBlock }} abd {{ no_backup }} are allowed now.
- nodes and profiles can now have multiple system and runtime overlays, as a comma separated list. The overlays of the profile and the nodes are combined.
- simple ipv6 support is now enabled. In
warewulf.confthe optionipaddr6/Ipv6netmust be set to enable ipv6. If enabled on of these options is set a node will get a derived ipv6 in the schemeipv6net:ipaddr4. This address can also be overwritten for every node - Multiple files can now created from a single
template.wwfile with the{{ file FILENAME }}command in the template. The command is expanded to the magic template command{{ /* file FILENAME */}}which is picked up by wwctl and everything which comes after this magic comment will be written to the fileFILENAME. This mechanism is leveraged in the configuration files for the network, seeifcfg.xml.wwandifcgf.ww. - Networks can now have arbitrary keys value pairs in the profiles and on the node, so that things like bridges and mtu sizes can be set
- oci container tar balls can be imported with the 'file://$PATH' scheme
- uids and gids of a container can now get synced at import time, so that at least users with the same name have the same uid. This is not necessarily needed for warewulf, but services like munge.
Changed
- Provision interface is not tied to 'eth0' any more. The provision interface must be have the 'primary' flag now. The file `nodes.conf' must be changed accordingly.
- the provisioning network is now called primary and not default
- Creating of '/etc/exports' can now be disabled, so that
wwctl configure -awont overwrite a existing '/etc/exports'. - The yaml format for nodes has now sub-keys for ipmi and kernel, old nodes.conf files have to to be changed accordingly
- host overlays can globaly disbaled, but are enabled per default
wwctl overlay build -Hwill only build the overlays which are assigned to the nodes
[4.1.0] - 2021-07-29
Added
- Support for ARM nodes
- firewalld service file for warewulfd
-yoption to skip "Are you sure" querieswwctl kernel deletecommandwwctl vnfsalias forwwctl container- Support for authenticated OCI registries
- warewulfd can reload config on SIGHUP and when the config file changes
- Node database index to improve lookup speeds
- Kernels and containers can be imported from a chroot subdirectory
- Systemd service file
Changed
wwctl node listoutput beautification- Log timestamps are more precise
- PID file and log files are now in
/var/runand/var/log, respectively make installno longer overwrites preexisting configuration files- Kernel modules and overlays are now compressed
rootfstypenow usesrootfsin default kernel arguments- iPXE binaries updated
- Installed container directory is deleted when import fails
- Default iPXE script now reboots erroring nodes every 15 seconds
- Only open
/etc/hostswhen writing
Removed
wwctl configure--persistflags have been removed.configurecommands persist changes by default unless--showis used- In-repository documentation: has been moved to it's own repository
Fixed
- Importing containers from directory
- Debug log verbosity option takes precedence over verbose option
wwctl node list -noutput is formatted corectly- Container names can contain an underscore
wwctl overlay build --alldoes not require an argument- specfile date format works with older versions of rpmbuild
- Use SystemOverlay when building system overlay
- dhcpd template now references correct wwctl subcommand
wwctl node set kernelargsandwwctl profile set kernelargschange kernel arguments