Jonathon Anderson
ca61494297
Change image provision directory to "images"
...
Previous name (before #1641 ) was "container." New name (from #1641 ) was "image"
but a plural name seems better.
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2025-01-19 14:42:45 -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
2408555748
Merge pull request #1628 from anderbubble/ciq-merge-fixes
...
Fixes for MergeNode handling of NetDevs, Tags, IpmiConf, KernelConf, and net.IP
2025-01-21 22:00:06 -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
c33b4dd4c2
Adjust umask during overlay build
...
- Fixes : #1629
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2025-01-17 23:05:13 -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
eff1edd038
Fixing tests in review of #1568
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2025-01-17 01:27:15 -07:00
Christian Goll
07c77a63d5
use list of resources in profiles/nodes
...
access the resource not at node or profile level but
in the templates as global variable
Signed-off-by: Christian Goll <cgoll@suse.com >
2025-01-16 23:00:37 -07:00
Christian Goll
5ff27061a3
added remote resources
...
Signed-off-by: Christian Goll <cgoll@suse.com >
2025-01-16 23:00:37 -07:00
Christian Goll
aec61328fc
added failing test for set --onboot
2025-01-15 10:36:22 +01:00
Jonathon Anderson
a18913924d
Benchmarking for wwctl overlay build
...
- Benchmarks overlay build in an environment with 1000 nodes
- Updates testenv to support both benchmarks and tests
To execute:
```
go test github.com/warewulf/warewulf/internal/app/wwctl/overlay/build -bench Benchmark_Overlay_Build
```
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-25 12:34:23 -07:00
Jonathon Anderson
1a3b9a16ed
Add wwctl container <exec|shell> --build=false
...
- Closes #1490
- Closes #1489
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2025-01-08 20:37:29 +01:00
Christian Goll
8ef063a093
Check ip addresses formatting
...
Signed-off-by: Christian Goll <cgoll@suse.com >
2024-12-25 09:10:05 -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
deaf9c99d7
Remove DEBUG logging in test suite
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-25 09:10:02 -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
Jonathon Anderson
c244adc7f6
Performance improvements for overlay build
...
Rendering overlay templates requires fetching and populating / merging all
other nodes, because overlay templates have access to all cluster node info.
This was previously being done for each template render, but is not being done
once for each render operation and re-used for each template render.
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-25 08:48:14 -07:00
Jonathon Anderson
a59403ab3b
Parallel overlay builds
...
- Closes #1018
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-25 08:48:14 -07:00
Jonathon Anderson
d0f4eaa9bb
Remove wwctl overlay <build|import> --setdefault
...
- Closes : #1335
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-24 23:14:12 -07:00
Jonathon Anderson
9c42f3c475
Only import files into site overlays
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-20 11:12:47 +01:00
Jonathon Anderson
1fb67d666f
Avoid creating directories or cloning a site overlay until edit is ready to write
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-20 11:12:47 +01:00
Jonathon Anderson
0b00233ab7
Move tstruct.Overlay from wwctl to overlay.InitStruct
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-20 11:12:47 +01:00
Jonathon Anderson
c03dc9436b
Add an Overlay type with helper methods
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-20 11:12:47 +01:00
Jonathon Anderson
ac49ecef70
Rename and refactor overlay constructor functions
...
- Reduces redundancy
- Adds clarity
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-20 11:12:47 +01:00
Jonathon Anderson
717241aa18
Add methods to config.New().Paths for site and distribution overlays
...
- SiteOverlaySourcedir() uses WWOverlaydir (/var/lib/warewulf/overlays)
- DistributionOverlaySourcedir() uses Datadir (/usr/share/warewulf/overlays)
- config.New().Warewulf.DataStore moved to config.New().Paths.Datadir
- FindOverlays() ignores missing distribution overlay directory
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-20 11:12:47 +01:00
Christian Goll
e2c03ce863
added test for precedence
...
Signed-off-by: Christian Goll <cgoll@suse.com >
2024-12-20 11:12:46 +01:00
Christian Goll
d5fc7e9320
introduce site overlays
...
site overlays are place in sysconfdir/overlays and take
precedence over distribution overlays with the same name.
Every `wwctl overlay` command changing overlays will create
an site overlay. distribution overlays can't be deleted or
modified with wwctl.
Signed-off-by: Christian Goll <cgoll@suse.com >
2024-12-20 11:12:41 +01:00
Jonathon Anderson
a80ba8ee01
Configure nodes.conf path dynamically from config
...
Removes the use of init() to initialize the variable.
- Closes : #1596
- See also: #1569
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-17 11:04:43 -07:00
Jonathon Anderson
facba28e0f
Rename "preferred" kernel to "default" kernel
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-09 10:02:29 +01:00
Jonathon Anderson
6f4d33b19e
Move wwctl kernel list to wwctl container kernels
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-09 10:02:28 +01:00
Jonathon Anderson
a844379bc5
Merge --kerneloverride into --kernelversion
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-09 10:02:28 +01:00
Jonathon Anderson
8f21d54243
Refactor kernel support
...
- Remove kernel imports and kmods images
- Repurpose KernelOverride as container path
- Support Kernel.Version as version prefix for kernel selection
- Compare initramfs by version
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-12-09 10:02:22 +01:00
Christian Goll
d584c14403
Merge pull request #1564 from anderbubble/issues/1447
...
Use a sentinel file to determine container readonly state
2024-12-02 09:03:02 +01:00
Jonathon Anderson
07f6402520
Use a sentinel file to determine container readonly state. #1447
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-29 10:37:52 -07:00
Christian Goll
ab0eddea53
Merge pull request #1565 from anderbubble/issues/1419
...
Remove wwctl overlay build --host
2024-11-28 08:43:05 +01:00
Jonathon Anderson
e098455f7c
Fix display of profiles in node list
...
- Closes #1496
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-25 11:32:03 +01:00
Jonathon Anderson
eace23802f
Remove wwctl overlay build --host #1419
...
Remove the ability to "build" the host overlay with `wwctl overlay
build`. This also obsoletes the `--nodes` flag, which is also removed.
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-24 22:48:19 -07:00
Jonathon Anderson
5834b82f93
Format errors in logs as strings
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-23 22:47:48 -07:00
Christian Goll
c0d2e3714c
add tag to tags not nettag
...
Signed-off-by: Christian Goll <cgoll@suse.com >
2024-11-14 17:17:43 -07:00
Jonathon Anderson
55694e4694
Fix wwctl upgrade config description
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 09:23:41 -07:00
Christian Goll
a05c494638
fix tests after refactor
...
Signed-off-by: Christian Goll <cgoll@suse.com >
2024-11-11 10:56:30 +01:00
Christian Goll
a9eb4c3e26
Merge pull request #1524 from anderbubble/refactor-node-and-upgrade
...
Support cross-version upgrades
2024-11-11 10:45:47 +01:00
Xu Yang
0c2fc13a1d
fix issue that --neettagdel does not work properly
...
Signed-off-by: Xu Yang <xyang@ciq.com >
2024-11-11 07:54:05 +00:00
Xu Yang
7f6cfafec9
hotfix failure test suite
...
Signed-off-by: Xu Yang <xyang@ciq.com >
2024-11-11 07:36:49 +00:00
Jonathon Anderson
ab6c6d2a05
Mark two upgrade arguments as required
...
Based on TSC feedback.
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 00:09:50 -07:00
Jonathon Anderson
e80c639b11
Convert config to *bool
...
Supports leaving booleans unspecified in YAML.
Boolean methods allow the templates to continue using previous names for
boolean values.
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 00:09:48 -07:00
Jonathon Anderson
b37d49d6de
Support upgrading warewulf.conf
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 00:09:45 -07:00
Jonathon Anderson
6a1abd52a5
Support printing upgraded nodes.conf
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 00:09:43 -07:00
Jonathon Anderson
393629321c
Optionally replace wwinit and generic overlays during upgrade
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 00:09:41 -07:00
Jonathon Anderson
981d11a012
Initial wwctl upgrade command
...
Signed-off-by: Jonathon Anderson <janderson@ciq.com >
2024-11-11 00:09:38 -07:00