Commit Graph

1201 Commits

Author SHA1 Message Date
Christian Goll
bffbbdeca8 Merge pull request #1393 from upsj/overlay_build_error
Return error code if overlay build fails
2024-09-16 13:01:32 +02:00
Tobias Ribizel
c6b6caeb0b fix lint warnings
Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2024-09-16 12:55:27 +02:00
xu yang
5492ac0107 Return an error during wwctl container import if archive filename contains a colon
Signed-off-by: xu yang <xyang@ciq.com>
2024-09-14 22:18:01 -06:00
Tobias Ribizel
7692babd76 Return error code if overlay build fails
Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2024-09-15 01:43:53 +02:00
Jonathon Anderson
5860334a89 Improve error handling during container file copy removal
Based on feedback at #1365

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-09 11:09:10 +02:00
Jonathon Anderson
9e91b1c19a Rename :cow to :copy
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-09 11:09:10 +02:00
Jonathon Anderson
3a36016707 Refactor of new copy-on-write feature
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-09 11:09:09 +02:00
Jonathon Anderson
173546348f Edited documentation for new copy-on-write feature
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-09 11:09:09 +02:00
Christian Goll
dc263425e2 Added cow option to bind
The option cow can now be set for files which are then
mounted during exec, but copied into the image and removed
if not modified.

Signed-off-by: Christian Goll <cgoll@suse.com>
2024-09-09 11:09:04 +02:00
Jonathon Anderson
d05414436a Additional guidance when syncuser conflicts
- Closes #1359

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-06 14:03:15 -06:00
Jonathon Anderson
f39972f917 Prevent overlays from being improperly used as format strings
`wwctl overlay show --render` shows the rendered overlay with
`wwlog.Info`, but that caused it to be processed as a format string.
This passes an explicit format string first, and then includes the
rendered overlay as a variable to the formatter.

- Fixes #1363

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-06 15:01:49 +02:00
Jonathon Anderson
4a5c1cad12 Simplified slice ordering fix and extended for runtime overlay
- Extends #1357
- Fixes #1259

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-04 19:59:59 -06:00
xu yang
bfa6ad6be8 add test case
Signed-off-by: xu yang <xyang@ciq.com>
2024-09-04 17:10:50 -06:00
xu yang
cc617007cd prefer profile overlay value over node one
Signed-off-by: xu yang <xyang@ciq.com>
2024-09-04 17:10:49 -06:00
Jonathon Anderson
9e0f255fe3 Use wwctl container import --password by default
Retains support for --passwd as a hidden flag targeting the same
variable.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-04 16:52:16 -06:00
Christian Goll
13349bbf66 adding WAREWULF_OCI vars to wwctl
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-09-04 20:52:43 +02:00
Jonathon Anderson
73c70da4ef Refactor url build in wwclient with url.URL
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-04 14:06:56 +02:00
Jonathon Anderson
0b6785f722 Remove specific guidance from wwctl error messages
Guidance to run `wwctl configure dhcp` or `wwctl configure tftp` may be
misleading for sites that are managing these services directly. They are
also too specific, as simply re-running `wwctl configure -a` after
enabling them in the config should also be sufficient.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-03 19:40:59 -06:00
xu yang
6212f40e4c Refine wwctl configure error handling
- Closes #1273

Signed-off-by: xu yang <xyang@ciq.com>
2024-09-03 19:40:28 -06:00
Tobias Poschwatta
b4e1b9cb24 Fix typo in "profile with name ... already exists" message
Signed-off-by: Tobias Poschwatta <poschwatta@zib.de>
2024-08-30 11:45:43 +02:00
Jonathon Anderson
f02af9f242 Container list shows size if any size option specified
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-08-02 16:36:15 -06:00
Christian Goll
553e401fe0 enhanced container list
Container list has now options for full, kernel and size listing. Without any
arguments only available containers are listed. Size is no more fine granular
showing also size of the image, chroot and compressed image

Signed-off-by: Christian Goll <cgoll@suse.com>
2024-08-02 16:34:54 -06:00
Christian Goll
6f5f6f07ee removed dead boot method from defaults.conf
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-08-02 14:32:29 -06:00
Christian Goll
c9c38542f4 added completion to overlay chmod/chown/delete/edit
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-08-02 13:55:56 -06:00
Jonathon Anderson
6028a6eb58 Minor adjustments to exitEval and msgStr
For grammar clarity, and consistency.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-08-02 13:29:59 -06:00
Christian Goll
9d2853ad64 Show pending container build status during container exec, shell
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-08-02 11:43:05 -06:00
Jonathon Anderson
212b57f095 Merge pull request #1309 from griznog/sanitize-wwclient-url-data
sanitize wwclient url data
2024-08-02 10:50:26 -06:00
griznog
103852df78 Sanitize/escape asset tag strings from dmidecode. 2024-08-02 09:13:47 -06:00
Tobias Poschwatta
971d9e2118 Add option for wwclient port number
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>
2024-08-02 11:09:16 +02:00
xu yang
cec903aeeb resovle the comments
Signed-off-by: xu yang <xyang@ciq.com>
2024-07-25 06:42:16 +00:00
xu yang
62d9b5f71d fix the failure when updating overlay files existing on different partitions
Signed-off-by: xu yang <xyang@ciq.com>
2024-07-25 02:29:29 +00:00
Jonathon Anderson
9050622f68 Ensure autobuilt overlays include contextual overlay contents.
Following #1249, autobuilt overlays were being built with no contents.

This change follows the pattern in `wwctl overlay build` to include configured
overlays when none are explicitly specified.

Inspired by #1296.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-07-10 16:06:06 -04:00
David McFarlane
5bb73c90c5 Accept + within kernel versions 2024-07-05 15:29:50 -06:00
Christian Goll
2dfd28cb6c Add tests for kernel versions containing +
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-07-05 15:29:37 -06:00
Christian Goll
4a4fcc97d4 wwctl overlay list completes existing overlays
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-07-05 15:17:23 -06:00
Jonathon Anderson
0b765d242a Extend new syncuser handling for +/- entries
Since these lines are being omitted in the final sync'd passwd/group
file, a new message indicates that the line is being skipped; but it is
no longer denoted as a parse error.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-07-04 23:54:46 -06:00
Christian Goll
ba3c24e1c3 ignore +:: style lines in passwd/group
The lines +::::: or +::: are used in passwd/group as
placeholer for users added form the network via ldap/nis/sssd.
These lines should not trigger a warning.

Signed-off-by: Christian Goll <cgoll@suse.com>
2024-07-04 23:54:46 -06:00
Christian Goll
cfacb4d520 mount /sys and /run during container exec
Also unify mounting of sys, run, proc, and dev as occuring within the
chroot and without bind mounts from the host.

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-07-04 07:54:55 +02:00
xu yang
371e4d63a6 Fix multiple issues in wwctl overlay edit
- Fixes #1236
- Fixes #1235

Signed-off-by: xu yang <xyang@ciq.com>
2024-07-03 17:57:25 -06:00
Jonathon Anderson
75d9ac5fb2 Capture "broken" symlinks during container build
- Fixes #1267

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-07-01 17:12:25 -06:00
Christian Goll
d233b4f71d Merge pull request #1270 from jeburks2/wwclient_dmidecode
Asset-tag fixes in dhcpd.conf.ww and wwclient
2024-06-24 16:42:29 +02:00
xu yang
170d03e751 fix the issue that system/runtime overlays are not auto-rebuilt
Signed-off-by: xu yang <xyang@ciq.com>
2024-06-19 09:31:32 +00:00
Josh Burks
790375822c wwclient: added dmidecode as a method to obtain asset-tag if smbios fails fix #1110"
Signed-off-by: Josh Burks <jeburks2@asu.edu>
2024-06-18 09:08:19 -07:00
Tobias Ribizel
faacb1cc4e Add test for FindFilterFiles
Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2024-06-17 00:01:14 +02:00
Tobias Ribizel
a6a0538f42 Fix FindFilterFiles
There are two bugs in the handling of exclusion patterns:
- The paths being checked against patterns are relative,
  so leading / need to be stripped
- filepath.Match only does a string comparison,
  and the paths we traverse don't include trailing /

Signed-off-by: Tobias Ribizel <mail@ribizel.de>
2024-06-17 00:01:04 +02:00
xu yang
c28404ea6c Add test cases for container exec
Signed-off-by: xu yang <xyang@ciq.com>
2024-06-11 23:59:36 -06:00
Jonathon Anderson
5bb13c8baf Fix regression in container exec argument parsing
- Fixes #1250

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-06-11 23:57:58 -06:00
Jonathon Anderson
2c5e079d33 Refactor overlayDir to container.RunDir()
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-06-07 14:18:19 -06:00
Christian Goll
0eba837950 use warewulf.conf from parent on child
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>
2024-06-06 16:46:10 -04:00
Christian Goll
dc6db3d565 using the right overlay directory and remove it
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-06-06 16:46:10 -04:00