Commit Graph

865 Commits

Author SHA1 Message Date
Jonathon Anderson
9e526c23fc Audit and correct documentation, cobra help text, and log messages for accuracy
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-18 16:58:39 -06:00
Jonathon Anderson
4f506e1b16 Clarify functionality of syncuser commands and overlay in documentation
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-18 13:19:01 -06:00
Jonathon Anderson
7909598a3d Distinguish between OS images and overlay images in documentation
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-18 08:10:49 -06:00
Christian Goll
82b7cf9095 Adress linter issues from TLS update 2026-03-11 10:15:06 +01:00
Jonathon Anderson
081d2ec61e Update linter for golang v1.25 compatibility
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-11 09:32:49 +01:00
Jonathon Anderson
939f4290f4 Move stage display formatting to wwctl
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-10 16:11:09 -06:00
Jonathon Anderson
395fa2c283 Support requiring TLS for API access
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-09 21:48:20 -06:00
Jonathon Anderson
a886b4958b Simplify and clarify configuration
- changed "secure port" to "tls port"
- removed the --create flag for "wwctl configure tls"; made it the default behavior
- fixed a TLS creation bug in "wwctl configure --all"
- added logging to "wwctl configure tls" and "wwctl configure --all" (for the tls case)

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-09 21:42:26 -06:00
Jonathon Anderson
ff1bf8030c Remove unused TLS public key
The certificate is used in stead of a discrete public key. The generated public
key was never actually used.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-09 21:35:19 -06:00
Jonathon Anderson
2cac6b11a6 Explicitly set permissions on import TLS keys and certificates
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-09 21:35:19 -06:00
Jonathon Anderson
673d7627b5 Move TLS files from keys/ to tls/
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2026-03-09 21:35:19 -06:00
Christian Goll
bcf53f7efd renamed to tls instead of keys 2026-03-09 21:34:40 -06:00
Christian Goll
a1c11db8cc enable https and key handling
- add key generation and import for warewulfd
- add https port to warewulfd
- configuration optiions for port and

keys
2026-03-09 21:34:40 -06:00
jason scott
8397947d3d Adjusting profile comment field so that it's not inherited by nodes 2026-02-23 15:00:25 -07:00
Josh Burks
634982dc86 Enhance wwdoc comment handling by allowing whitespace trimming and updating regex for parsing
Signed-off-by: Josh Burks <jeburks2@asu.edu>
2026-02-03 17:01:19 -07:00
Christian Goll
a0efd7fe08 Added --partwipe flag for set 2026-01-21 10:38:47 +01:00
Christian Goll
f590da4916 fix wwctl image import --update 2025-12-17 12:30:43 -07:00
Jonathon Anderson
f82d90123a Additional tests for wwctl overlay info
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-12-09 23:16:03 -07:00
Jonathon Anderson
9ed245f9fe Update test suite for wwctl overlay info
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-12-09 23:16:03 -07:00
Jonathon Anderson
4e67db0be6 Reflection-based template walking
Rather than deriving the identity of template variables by string parsing the
name, identify its relationship to the underlying struct using reflection.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-12-09 23:16:00 -07:00
Jonathon Anderson
29136e17d4 Recommended changes from review
- Reorganized documentation
- Reordered columns
- Renamed column names
- Added `--` to options in output
- Updated aliases

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-12-09 22:52:44 -07:00
Christian Goll
0bbab7ac3c allocate writeFile and backupFile just once 2025-12-09 22:52:44 -07:00
Christian Goll
983a359c00 refactor to overlay info 2025-12-09 22:52:44 -07:00
Christian Goll
d1d398d2ff add more generic documentation via wwdoc(n)
doc
2025-12-09 22:52:44 -07:00
Christian Goll
68758e3e45 use comments of variables for help 2025-12-09 22:52:44 -07:00
Christian Goll
facde98fb5 new overlay variables command 2025-12-09 22:52:44 -07:00
Christian Goll
847a4386e1 don't show vars in overlay list
vars
2025-12-09 22:52:44 -07:00
Christian Goll
5d284b1c61 show used Tags for overlays 2025-12-09 22:52:44 -07:00
Timothy Middelkoop
4f58845a9e Add IPv6 support for Dnsmasq and NetworkManager
Signed-off-by: Timothy Middelkoop <tmiddelkoop@internet2.edu>
2025-11-27 01:56:18 +00:00
Jonathon Anderson
be97ef15a0 Manage selinux context of tftp directory
- Fixes: #1997

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-10-29 20:11:41 -06:00
Jonathon Anderson
91a69e8756 Rename debian.interfaces to ifupdown
When I first split the debian interfaces support from wwinit, I was unable to
figure out what it was called. I used the inelegant name "debian.interfaces" to
identify it; but I have since learned that it is called "ifupdown." I have
since learned that there is even a variant implementation, ifupdown-ng, that is
used by Alpine Linux.

This PR renames the overlay to ifupdown, but retains a copy of it at
debian.interfaces for backwards compatibility.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-09-15 09:50:59 -06:00
Jonathon Anderson
59f187bf5e Convert disk booleans from wwbool to *bool
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-09-05 14:16:03 +02:00
Christian Goll
5e40c66381 test for disk vars set to false 2025-09-05 14:15:53 +02:00
Adrian Reber
e86981fd59 fix(wwctl): Create overlay edit tempfile in tmpdir
When editing an overlay, the temporary file was created within the
overlay directory structure. This could lead to the temporary file
being included in the overlay if not cleaned up properly.

This change modifies the behavior to create the temporary file in the
system's default temporary directory, avoiding any potential issues
with the overlay itself.

Not using this change the temporary file can be seen in the overlay:

 DEBUG  : Using temporary file /usr/share/warewulf/overlays/host/ww-overlay-edit-2879742493
 DEBUG  : Checking if path exists as a file: /usr/share/warewulf/overlays/host/rootfs/etc/hosts.ww
 DEBUG  : ExecInteractive(tee, [/usr/share/warewulf/overlays/host/ww-overlay-edit-2879742493])

 # find /srv | grep ww-overlay
 /srv/warewulf/overlays/host/ww-overlay-edit-2879742493

With this patch applied:

 DEBUG  : Using temporary file /tmp/ww-overlay-edit-266752840
 DEBUG  : Checking if path exists as a file: /usr/share/warewulf/overlays/host/rootfs/etc/hosts.ww
 DEBUG  : ExecInteractive(tee, [/tmp/ww-overlay-edit-266752840])

 # find /srv | grep ww-overlay

Assisted-by: Gemini 2.5 Pro
Signed-off-by: Adrian Reber <areber@redhat.com>
2025-09-04 14:10:13 -06:00
Jonathon Anderson
66450a7dcd Simpler names for overlay methods
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-08-27 22:33:18 -06:00
Jonathon Anderson
6fd858899d Fix warewulfd api behavior when deleting distribution overlay
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-08-27 22:25:21 -06:00
Christian Goll
6f4fd60d8f refactored overlay class
overlay.GetOverlay(name) returns now an error if the overlay doesn't
exist. This is the most canonical way to act if there is no overlay.
2025-08-27 22:24:31 -06:00
Jonathon Anderson
b3a6f3d905 Fix a race condition in wwctl overlay edit
Switches to using sha256 rather than mtime to detect changes to an
overlay file.

- Fixes: #1947

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-08-01 01:57:02 -06:00
Christian Goll
2c51ca7fff added warewuld configure option
Co-authored-by: Jonathon Anderson <janderson@ciq.com>
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-07-31 21:47:08 -06:00
Tobias Ribizel
c2a51c2a7e format and changelog
Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2025-07-07 15:44:11 +02:00
Tobias Ribizel
301082cdd7 add docstring for node patterns
Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2025-07-06 16:36:45 +02:00
Jonathon Anderson
2ba6e28215 Remove wwctl node import --csv
- Closes #1862

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-07-02 21:25:54 -06:00
Jonathon Anderson
48bace55f6 Preserve file permissions during wwctl overlay edit
- Fixes: #1886

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-07-02 08:06:13 -06:00
Jonathon Anderson
3db131eadf Fix width of wwctl image shell --help
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-07-02 13:54:56 +02:00
Christian Goll
e72368cd26 fix wwctl profile set for disk/fs/part
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-05-27 13:56:04 -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
Jonathon Anderson
51786b5e4a Fix a panic during wwctl node list --ipmi for nodes with no ipmi configuration. #1847
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-04-01 16:48:43 -06:00
Jonathon Anderson
1883f2e932 Added a test for wwctl node import
To support this, also added `wwctl node import --yes`.

Also corrected the spelling of `--cvs` to `--csv`.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-03-25 20:00:48 -06:00
Jonathon Anderson
09488db3f6 Fix processing of UNDEF and UNSET during wwctl <node|profile> set. #1837
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-03-25 18:16:14 -06:00
Xu YANG
9e9f37208c Merge pull request #1841 from anderbubble/cobra-nargs
Explicitly enforce the number or arguments accepted by some `wwctl` subcommands
2025-03-25 13:47:14 +09:00