Commit Graph

159 Commits

Author SHA1 Message Date
Christian Goll
ff7608251a advanced command line completion for wwctl overlay
Signed-off-by: Christian Goll <cgoll@suse.com>
2023-09-13 12:03:43 +02:00
Jonathon Anderson
9cf47da963 Fix warewulfd for new contextual overlay names
The recent PR #883 replaced the standard overlay naming convention with
static names for each of the runtime and wwinit/system contexts; but the
method by which it left the "legacy" naming convention in place led to a
bug where warewulfd was still attempting to serve overlays with the
previous naming convention, though this name wasn't being built.

This PR refactors contextual overlay image naming to be, I think, a more
typical golang pattern, and updates affected code to match.

This PR also included tests for all functions modified by this change.

Fixes #896

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2023-09-02 11:18:38 -06:00
Jonathon Anderson
9058682b18 Add tests for disk data and ignition json
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2023-08-22 14:28:02 -06:00
Christian Goll
a7df560a30 Add json output for ignition
Signed-off-by: Christian Goll <cgoll@suse.com>
2023-08-21 16:19:13 -06:00
griznog
13c426de1c Add an argument to the runtime/system overlay related functions to carry the context to getOverlayFile() for building the img name. 2023-07-27 07:27:20 -05:00
Jonathon Anderson
4622153a82 Support subdirectories in ipxe paths
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-04-19 14:02:43 -06:00
Jonathon Anderson
8321193645 Refactor and document config/datastructure
Also adjusted case for initialisms (e.g., DHCP, TFTP, NFS).

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-04-19 14:02:43 -06:00
Jonathon Anderson
70292276e2 Rename BaseConf.New to BaseConf.Get
Since BaseConf.New could return a cached BaseConf, rather than always
constructing a new struct, I've renamed it to Get to more accurately
reflect its use. A new New() method is called by Get and always
initializes a new struct.

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-04-19 14:02:43 -06:00
Jonathon Anderson
c461e65a98 Rename pkg/warewulfconf to pkg/config
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-04-19 14:02:43 -06:00
Christian Goll
ce43dfa0b7 removed getters as configs must exportable
Signed-off-by: Christian Goll <cgoll@suse.de>
2023-03-06 10:20:00 +01:00
Christian Goll
ca088d123d paths need to be visibale for marshalling
Signed-off-by: Christian Goll <cgoll@suse.de>
2023-03-03 16:12:53 +01:00
Christian Goll
377702a179 make the configuration to be based in warewulf.conf
defaults will be se by the Makefile

Signed-off-by: Christian Goll <cgoll@suse.de>
2023-03-03 16:02:41 +01:00
Christian Goll
78978ad233 added warewulfconf as command line parameter
the environment variable WAREWULFCONF is also recognized

Signed-off-by: Christian Goll <cgoll@suse.de>
2023-03-03 11:18:49 +01:00
Christian Goll
11fa27f3e9 Merge pull request #651 from mslacken/MakeIpxeConfig
make ipxe binary source configurable
2023-02-24 15:12:26 +01:00
Jonathon Anderson
e8e9c4f3bd Merge branch 'development' into lint-update 2023-02-02 14:38:33 -07:00
Christian Goll
32ab50f299 make ipxe binary source configureable 2023-01-24 12:11:11 +01:00
Christian Goll
ab9c0534f5 Merge pull request #646 from anderbubble/627-remove-redundant-code
Remove redundant code
2023-01-18 21:25:55 +01:00
David McFarlane
950099f9dc Set umask to 0000 while overlays are being built. Fixes #584 2023-01-18 14:34:40 +11:00
Jonathon Anderson
3638378eaa Remove redundant code
Pointed out in #627

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-01-16 14:42:06 -07:00
Jonathon Anderson
15879eb991 Use node.NewInfo constructor in configure hostfile
Also used in overlay, as I was looking there already.

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-11-11 11:42:40 -06:00
Logan Harbour
99ec5acb59 Fix typos 2022-11-08 09:53:22 -07:00
David McFarlane
0d6dcba38a Fix use of uninitialised Tags map 2022-11-01 13:38:19 +11:00
mslacken
ab0ee87629 updated linter and fixed deprecated stuff 2022-10-14 17:40:16 +02:00
Jonathon Anderson
0b3e862bea Remove trailing newline from wwlog
I noticed that some wwlog calls included a trailing newline, but others
did not. I tested both in isolation and discovered that the behavior was
consistent regardless of whether a trailing newline was included. I
further confirmed in code that wwlog appends a trailing newline
automatically if it is not present; so a trailing newline is unnecessary
in individual calls.

This commit removes trailing newlines from all calls to make them
consistent. It also replaces two calls to wwlog.Printf. (see #534)

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-09-15 12:38:03 -06:00
Christian Goll
6cc58fcfff Merge pull request #534 from anderbubble/wwlog-printf-cleanup
Replace all instances of wwlog.Printf
2022-09-14 08:18:44 +02:00
Christian Goll
2352aa0d51 Merge pull request #477 from mslacken/configure-hostfile
readded configure hostfile command
2022-09-13 11:26:23 +02:00
Christian Goll
edf42d61aa Merge pull request #495 from mslacken/reflections-cmdline
Use reflection for node and profile manipulation
2022-09-12 16:36:39 +02:00
Jonathon Anderson
22910958b5 Replace all instances of wwlog.Printf
wwlog provides named loggers for each level, which requires
less code and is clearer than wwlog.Printf. The code has
included a mix of both, but this commit consolidates existing
code on the per-level functions.

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-09-11 08:00:23 -06:00
Jonathon Anderson
cd8b0d86c5 Fix a typo in symlink wwbackup implementation
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-09-02 15:40:45 -06:00
Christian Goll
bc647f0bf3 Fix IpCIDR for templates 2022-08-12 10:17:32 +02:00
Christian Goll
8c2d40881d use reflect on overlays 2022-08-10 17:09:10 +02:00
Christian Goll
b548d8583d reflection on constructor 2022-08-03 11:28:15 +02:00
Christian Goll
29573e26ad added more values 2022-07-07 11:39:02 +02:00
Christian Goll
ed21052462 readded configure hostfile command 2022-06-27 11:50:27 +02:00
Christian Goll
d976e7fc31 Merge pull request #467 from mslacken/single-Overlay
enable overlay rendering
2022-06-24 09:50:14 +02:00
Gregory M. Kurtzer
4d44d3a299 Merge pull request #438 from kcdodd/fix/srvdisco
Fix server thread safety of discoverable node and overlay build
2022-06-09 22:18:23 -07:00
Christian Goll
9e5b2d1aa3 added the wwctl overlay parse command
The `wwctl overlay parse -n NODE FILE` will interpret the given overlay file and print it stdout, via wwlog.PRINTF.
The overlay code had to be refactored for this, but hopefully this makes the code a bit more readable. Also the tstruct has not its own initilization code.
2022-06-08 15:10:46 +02:00
Christian Goll
dfe3f907b9 moved TemplateStruct init to own function 2022-06-08 15:10:43 +02:00
Christian Goll
1b02c89ca7 moved overlay parsing to own function 2022-06-08 15:08:43 +02:00
Christian Goll
ecea7a949f create symlink if target exists 2022-06-08 10:56:42 +02:00
Carter Dodd
fc8d3863d8 use wwctl to re-build provision overlays, update to pass overlaynames 2022-06-04 11:14:48 -05:00
Gregory Kurtzer
e188edcf7a gofmt cleanup 2022-05-25 14:17:01 -07:00
Carter Dodd
a36467b2a8 Merge upstream 2022-05-13 19:42:18 -05:00
Carter Dodd
379faad51d Refactor of server, logging, building of images, template updates
* Combine provision response handling, add hwaddr and interface to dhcp
* Simplify stage cases, add backward compatible uri parse
* Move control of image compression to client
* Fix kernel search path for ubuntu, buffer template generation
* Implement cpio and gz as functions, add log named functions
* Generalize fs image creation routine
* Combine daemonLogf to generalized wwlog
* Fix template newline insertion, update dhcp and hosts tmpl
* Update IPXE template to handle non-compressed files
* Update DHCP template to set network interfaces and server IP assignment
* Update DHCP/hosts templates to choose a host-name self-consistently
2022-05-13 16:52:59 -05:00
Christian Goll
9c21f2bade Merge pull request #419 from jcsiadal/nodefault
Renames instances of "Default" to "Primary" in netdev source code
2022-05-12 11:58:47 +02:00
Christian Goll
121c12b5e4 Readd BuildTimeUnix 2022-05-05 16:15:06 +02:00
Christian Goll
de819b5583 only add split function in templates 2022-05-05 16:13:01 +02:00
jcsiadal
9b6b93a5cb Rename default to primary in src
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-05-05 03:13:21 +00:00
Christian Goll
7ce286ac3e updated overlay includes mire vars and split func 2022-05-03 14:52:17 +02:00
griznog
bada0f738b Add BuildTimeUnix containing Unix time (seconds since epoch). 2022-04-15 10:36:40 -05:00