With this change, you can specify a port number for wwclient.
If
wwclient:
port: NUMBER
is specified in warewulf.conf, wwclient will bind to the specified local
port NUMBER. If no port is specified, wwclient will use any available
port, or port 987 if secure is true.
Port 987 is in the default port range used by the Linux NFS client
(665-1023, see linux/include/linux/sunrpc/xprtsock.h). Changing
the port can avoid failures when port 987 is already in use.
Signed-off-by: Tobias Poschwatta <poschwatta@zib.de>
The directories for the overlays needed for the bind
mount are now created under conf.Paths.WWChrootdir/$CONTAINERNAME
with the pattern $CONTAINERNAME-run-xxxxxx. This pattern can be
used as lock, so that there can't be congruent shell/exec calls
to the same container.
Signed-off-by: Christian Goll <cgoll@suse.com>
Also refactor New and Get to return pointers to match BaseConf methods.
This makes calling the methods immediately on the return values of the
constructors easier.
Also move config.ConfigFile to buildconfig.go.in. ConfigFile is still
used by wwctl as a default config file to reference; but it is removed
from other locations now.
Removed Persist, as nothing called it.
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
Initialized could be interpreted to mean dynamically initialized as
well. This new name removes that ambiguity.
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
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>
Also moved BaseConfig to a new source file, co-located with its
constructors and methods, and added doc comments.
Signed-off-by: Jonathon Anderson <janderson@ciq.co>