* Upadate dev container to use EL10
* Update CI to use EL10
* Update spec file for EL10
* Add `make rpm` target for building RPMs
* Use `mktemp` for `make dist` to use devcontainer filesystem
* Set default dhcpd and tftpd to dnsmasq for EL10
* Fix dnsmasq template tftp paths to use basename
Signed-off-by: Timothy Middelkoop <tmiddelkoop@internet2.edu>
This error was apparently being ignored by rpmbuild; but it was called
out by Copilot during a recent review.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- sfdisk - partitions the disk
- mkfs - formats partitions
- mkswap - formats partitions for swap
- systemd.mount - explicit creation of systemd mount units
- systemd.swap - explicit creation of systemd swap units
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- Back-port previous GitHub release notes to `.github/releases/`
- Fix SUSE and Rocky Linux 8 builds
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- 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>
- make sure spec sets new cache dir
- move clean out of api
- capture warewulfconf.Paths.Cachedir+"/warewulf" in once place
- split Clean() into multiple functions
- remove WriteFileAbs
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- Closes#987
To make the overlays testable in isolation, and after discussion with
the TSC, removed host/time/source from overlay files.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
warewulf-dracut includes a dracut module to be installed in a container
image to support building an initramfs that can boot from Warewulf.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
A recent security update breaks compatibility with CentOS 7 through
gpgme. This change omits building the API by default and does not build
it when packaging for EL 7.
- Closes#1171
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Move all overlay contents to a rootfs subdirectory, which was already
supported, and set ownership to root:root.
Closes#1078
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
warewulf.spec appears to expect that an offline build would be requested
with `--with offline`; but conditional builds are not supported by mock.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
The previous PR #890 introduced a `Defaults.mk` target for defining
default variables for future calls to `make`. This functionality was
already present in a different form, but this new "real" target had an
unintended side-effect of causing the target to be called automatically
at reference, even the optional reference `-include Defaults.mk`. This
is undesirable as it causes the generation of defaults even during a
`make clean`.
This commit resolves these issues and further refactors the Makefile,
building on the work in #890, but with additional understanding:
* Convert the `Defaults.mk` target to the "phony" `defaults` target,
preventing automatic generation
* Refactor and split `clean` targets
* Update `cleanvendor` to reflect `OFFLINE_BUILD`, similar to the
`vendor` target
* Move "tools" targets into `Tools.mk`
* Add `ARCH` to `Variables.mk` for architecture-specific actions
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Makefile has included a Defaults.mk file to store variable configuration
from one run for implicit inclusion in future runs, but the creation of
this file has been automatic and opaque, and the state of it managed by
a series of PHONY targets (e.g., config, genconfig, rm_config). This
commit refactors config to name its files explicitly (so they can be
more properly monitored by make) and makes the generation of Defaults.mk
explicit so that its behavior is more obvious.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
The previous PR #888 erroneously removed the %config(noreplace) macro from the
nodes.conf file. This PR restores it.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
The inclusion of %{_sysconfdir}/warewulf/* and
%{_sysconfdir}/warewulf/nodes.conf caused nodes.conf to be listed twice,
generating a warning.
The inclusion of %{srvdir}/warewulf, which is redundant with
%{_sharedstatedir}/warewulf, caused all files in
%{_sharedstatedir}/warewulf/overlays to be listed twice, generating a
warning.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>