* 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>
- 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>
- Fix `make deadcode` to properly fail GitHub checks
- Resolve "dead" code by refactoring other code to use it
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Remove API reverse proxy server and google dependencies.
Remove API config.
Remove API client.
Remove API GRPC server.
Remove unused ImageCopy function. image.Duplicate is used.
Update Makefile to avoid protobuf builds.
Signed-off-by: Matt Hink <mhink@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>
This turned out to be the wrong thing; including `$(config)` in dist prevented
it from being re-built with new build-time variables.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
The `cp` operation was copying files to the root of dist, rather than to the
proper relative location. Including them in the dist file mainfest lets tar
handle this properly.
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>
`make dist` may accidentially include previously-made dist tarballs;
this change adjusts the target to exclude these tarballs from the dist.
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>
Building protocol buffers requires fetching utilities from the
Internet. Typically this is done at development time and the finished
buffers are included in dist; but if timestamps get off this can lead
mock to try to rebuild them during an offline build, causing the build
to fail.
This change moves all of the protoc targets into a section of the
Makefile that is disabled during an offline build.
- Closes#1155
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>
Also the boot method is now configured globaly as this is
the only way to make sure that unkonwn nodes get the right
stuff
Signed-off-by: Christian Goll <cgoll@suse.com>
Contrary to #945, marking vendor as phony causes binaries to be re-built
on a repeated call to `make`. Though we can't determine when vendor
needs to be rebuilt, this is preferable to not knowing when Warewulf
binaries need to be rebuilt.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>