Commit Graph

16 Commits

Author SHA1 Message Date
jason scott
8397947d3d Adjusting profile comment field so that it's not inherited by nodes 2026-02-23 15:00:25 -07: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
2e860c3462 changed SetId() to setId() 2025-07-02 13:51:07 +02:00
Jonathon Anderson
b98eae4b01 Refactor ignition support during dracut
- 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>
2025-06-30 23:19:31 -06:00
Jonathon Anderson
87da57d1a2 Return "" when NetDev.IpCIDR is empty
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-10 10:26:01 +01:00
Jonathon Anderson
6bfcfc5fda Prevent merging of zero-value net.IP fields
- Fixes: #1710

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-06 16:43:21 -07:00
Jonathon Anderson
e3d90cd323 Prefer parent profile values over child profile values.
- Fixes: #1672

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-03 12:16:12 +01:00
Jonathon Anderson
f931eb6a0a Fixed negation for slice field elements during profile/node merge
- Fixes: #1677

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-01 13:32:10 +01:00
Jonathon Anderson
c06f558cf4 fixup! Use Node literal in MergeNode, not EmptyNode()
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-18 10:12:08 -07:00
Jonathon Anderson
b50fb3f3ef Fix handling of net.IP during node merge
Because net.IP is derived from []byte, it was being handled by mergo as a
slice. This adds an additional transformer that handles net.IP specifically,
and also watches for this type in field tracking.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-18 10:07:19 -07:00
Jonathon Anderson
dae8d004b3 Use Node literal in MergeNode, not EmptyNode()
EmptyNode populates empty sub-structs, which interferes with omitempty during
serialization.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-18 09:48:26 -07:00
Jonathon Anderson
f0e634183e Consolidate MergeNode merge behavior to an inner merge function
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-18 09:47:45 -07:00
Jonathon Anderson
e478adc45d Add InterfaceTransformer{} to a Merge call that omitted it
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-18 07:33:11 -07:00
Jonathon Anderson
bc52f3b7d7 Recommended changes from review of #1568
- Make Resources an `interface{}` to support arbitrary yaml
- Remove `wwctl resource` as incompatible with arbitrary yaml
- Revert changes to host overlay templates
- Remove NFS mount options from warewulf.conf
- Replace NFS support / resource prefix with "fstab" resource
- Move resources to profiles
- Migrate warewulf.conf mounts to nodes.conf with `wwctl upgrade`
- Add documentation

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-01-17 10:33:37 -07:00
Jonathon Anderson
83af6021c0 Recast Profiles as a Profile field and support recursion
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-25 09:10:05 -07:00
Jonathon Anderson
1a3d037703 Refactor GetNode merging with new MergeNode method
- Adds many tests for node+profile merging
- Ensures that tracked fields match mergo results

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-12-25 09:07:28 -07:00