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>
This commit is contained in:
Jonathon Anderson
2024-12-23 18:17:57 -07:00
parent 276e67fc54
commit a18913924d
55 changed files with 3361 additions and 245 deletions

View File

@@ -9,7 +9,7 @@ import (
func Test_Basic(t *testing.T) {
env := New(t)
defer env.RemoveAll(t)
defer env.RemoveAll()
nodedb, err := node.New()
assert.NoError(t, err)
nodes, err := nodedb.FindAllNodes()
@@ -19,13 +19,13 @@ func Test_Basic(t *testing.T) {
func Test_two_nodes(t *testing.T) {
env := New(t)
env.WriteFile(t, "etc/warewulf/nodes.conf", `nodeprofiles:
env.WriteFile("etc/warewulf/nodes.conf", `nodeprofiles:
default: {}
nodes:
node1: {}
node2: {}
`)
defer env.RemoveAll(t)
defer env.RemoveAll()
nodedb, err := node.New()
assert.NoError(t, err)
nodes, err := nodedb.FindAllNodes()