Commit Graph

84 Commits

Author SHA1 Message Date
Jonathon Anderson
c96e496a9f Capture overlaydir as its own variable in the specfile
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-09-04 15:38:23 -06:00
Jonathon Anderson
79d058f202 Prevent brp-mangle-shebangs from updating overlays
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-09-04 15:38:22 -06:00
Jonathon Anderson
a979bb1bef Update golang BuildRequires in warewulf.spec.in
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-09-04 13:35:03 -06:00
Timothy Middelkoop
c1027053d0 Add support for EL10
* 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>
2025-08-24 21:43:14 +00:00
Jonathon Anderson
61fa859da5 Fix a syntax error in the RPM specfile
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>
2025-08-01 11:50:13 -06:00
Jonathon Anderson
db3a3fee05 Additional overlays to support provision-to-disk without ignition
- 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>
2025-06-30 23:24:20 -06:00
Jonathon Anderson
4a246e1b72 Release v4.6.1
- Back-port previous GitHub release notes to `.github/releases/`
- Fix SUSE and Rocky Linux 8 builds

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-04-04 05:12:57 -06:00
Jonathon Anderson
b797b8eceb Fix date in warewulf.spec.in changelog
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-04-03 23:25:54 -06:00
Jonathon Anderson
4005afac4c Add a new OpenAPI v3 REST API to warewulfd at /api
Co-authored-by: jason yang <jasonyangshadow@gmail.com>

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-04-03 07:12:03 -06:00
Stephen Simpson
2852cd5e88 Added new sosreport plugin
New sos report plugin added as separate RPM

Signed-off-by: Stephen Simpson <ssimpson89@users.noreply.github.com>
2025-03-18 10:34:39 -06:00
Christian Goll
6914a4050a Add help to Makefile
Signed-off-by: Christian Goll <cgoll@suse.com>
2025-02-14 18:33:43 -07:00
Jonathon Anderson
ea7cd49f85 Simplify Makefile and spec
- explicitly indicate what to include in dist
- prevent duplication of files in specfile

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-05 09:23:06 -07:00
Jonathon Anderson
38791c74ad Create site overlay directory
-Fixes: #1690

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-04 09:03:08 +01:00
Jonathon Anderson
c946b25bf2 Recommend installing ipmitool with Warewulf package
- Fixes: #970

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-30 16:41:40 -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
ed78da4123 Move distribution overlays to datadir
This typically puts the overlays into `/usr/share/warewulf/overlays/`.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-20 11:12:47 +01:00
Jonathon Anderson
a8b2f11114 Include localtime overlay in RPM package
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-17 18:48:00 -07:00
Jonathon Anderson
7cc9198c5a Package the netplan overlay
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-10 23:54:20 -07:00
Jonathon Anderson
621ee19571 Require gpgme-devel even when not building the API
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-22 18:32:06 -07:00
Jonathon Anderson
b9a1f31308 Resolve redundant file entries in warewulf.spec
- Closes #1526

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-07 22:48:14 -07:00
Jonathon Anderson
23d8dba7e4 Don't package the API in RPM packages by default
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-06 18:23:27 -07:00
Jonathon Anderson
2b05ec9da0 Fix warewulf.spec.in to use new overlay path
Fixes a bug introduced in #1456

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-10-28 17:27:30 -06:00
Tobias Ribizel
bb2b6291b5 Set restrictive permissions on /root/.ssh in generic overlay
The permissions get used to overwrite the ones in the node filesystem.

Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2024-10-28 15:45:14 -06:00
Jonathon Anderson
fbd5ca9895 Recommended refactors
- 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>
2024-10-28 15:20:41 -06:00
Jonathon Anderson
053dd9953a Split overlays into discrete functionality and test
- 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>
2024-09-26 10:48:38 -06:00
Jonathon Anderson
e2da5b6d09 Restore use of dmidecode in dracut for assettag and uuid
This prevents exposing these values in /proc/cmdline.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-05 18:41:19 -04:00
Jonathon Anderson
624631a4d5 Use the wwinit uri built by iPXE during dracut
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-05 18:41:18 -04:00
Josh Burks
70204649c0 added requires cpio,curl,dmidecode to warewulf-dracut spec
Signed-off-by: Josh Burks <jeburks2@asu.edu>
2024-09-05 18:41:18 -04:00
Jonathon Anderson
614cb9a339 Fixes for logrotate.d packaging
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-08-02 17:36:32 -06:00
Christian Goll
fbf3e3c0a8 Add a logrotate config for warewulfd.log
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-08-02 17:06:21 -06:00
Jonathon Anderson
18cebb8652 New warewulf-dracut subpackage
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>
2024-06-06 03:15:08 -04:00
Jonathon Anderson
864a4e7447 Don't build the API for CentOS 7
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>
2024-04-17 19:54:18 -06:00
Christian Goll
46bed17a5b change ipxe at built time
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-04-03 23:38:55 -06:00
Jonathon Anderson
f641b1d3f9 Fix ipxe-bootimgs in warewulf.spec.in for el7
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-03-09 22:18:38 -07:00
Jonathon Anderson
cc9f316af1 Update changelog in warewulf.spec
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-03-09 17:54:31 -07:00
Jonathon Anderson
6cc13455f6 Move overlays to rootfs and and set ownership
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>
2024-02-17 10:39:06 -07: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
Christian Goll
725176cfed cleanup code after review
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-01-17 18:02:04 -07:00
Jonathon Anderson
038329ebce Remove ipxe binaries and configure for Rocky Linux
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2023-12-09 01:29:48 -07:00
Christian Goll
7e1cb014c2 use distribution ipxe binaries
exclude .github and .vscode for make dist
honor git tag when generating spec file

Signed-off-by: Christian Goll <cgoll@suse.com>
2023-12-08 22:38:57 -07:00
griznog
8098d1881e Minor fixes to enable building rpms for Fedora 2023-11-23 09:10:12 -06:00
Jonathon Anderson
db9a81da73 Fix use of OFFLINE_BUILD in warewulf.spec
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>
2023-10-16 10:17:22 +02:00
Jonathon Anderson
1047032bae Updated Makefile to account for vendor/ in dist
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>
2023-08-31 16:35:21 -06:00
Jonathon Anderson
ab537a8136 Update ciq.com URLs
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-08-23 14:51:11 -06:00
Jonathon Anderson
c1d56885ac Refactor Makefile config / Defaults.mk
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>
2023-08-10 11:43:46 -06:00
Jonathon Anderson
97248797f5 Restore %config(noreplace) to nodes.conf
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>
2023-08-09 11:50:10 -06:00
Jonathon Anderson
92f94a6630 Fix duplicate entries in rpm %files
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>
2023-08-08 09:59:40 -06:00
Jonathon Anderson
8c95a57089 Fixes to build process
* Fixed a misspelling of genconfig in Makefile
* Updated completions path in warewulf.spec.in

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-03-22 15:30:33 -06:00
jcsiadal
f25d2ec8d5 Update spec and Makefile
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-10-17 21:58:03 +00:00
Christian Goll
cb0a7b402e Merge pull request #511 from anderbubble/issues/510
new man pages for warewulf.conf and nodes.conf
2022-08-31 11:51:05 +02:00