Commit Graph

73 Commits

Author SHA1 Message Date
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
Jonathon Anderson
e2b87ac63d Capture wwapi binaries in rpm spec
Naive implementation; but without some declaration rpmbuild fails.

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-08-24 06:21:46 -06:00
Jonathon Anderson
247c61295c Install new config file man pages
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-08-24 06:15:36 -06:00
Christian Goll
d03619935e fixed up spec file 2022-04-26 15:03:48 +02:00
jcsiadal
8827937a9d Update for LSB compliance
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-03-09 07:32:02 +00:00
jcsiadal
e99c48577c Update build variables
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-03-09 06:21:32 +00:00
Gregory Kurtzer
1c088fadda Fixed rpmbuild 2022-03-05 08:29:49 -08:00
Gregory Kurtzer
8f9719a1e3 Fixing RPM build error caused by #301 (ref #305) 2022-03-05 08:22:30 -08:00
Gregory Kurtzer
1b5d6a8245 Fixed missing tftp files (ref #299) 2022-02-13 04:29:05 +00:00
Gregory M. Kurtzer
67ee3bf5f8 Revert "Move configuration code out of wwctl" 2022-02-11 16:20:05 -08:00
jcsiadal
c9c8a683a7 Updates specfile to match distro guidelines. Suppots modifying client directory path at build time.
- Support relocating client files at build time (required for LSB compliant nodes)
- OS varable added to perform some make choices
- Saving and exporting the Makefile vars now scripted using list of variables
- Updated specfile to match RH and SUSE requirements and guidelines
- Moved /usr/local/var to /var/local; dynamic files shall not use /usr.
- State files use %sharedstatedir for path (std for SLE and RHEL)
- Release value adjusted to meet different DEB and RPM reqs.

Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-02-10 19:47:50 +00:00
Gregory Kurtzer
f04527f45a Full URL to pristine source 2022-01-19 06:05:46 +00:00