Commit Graph

46 Commits

Author SHA1 Message Date
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
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
a0c58e4183 Simplify passing of arguments through wwctl container exec
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-11-06 15:43:14 -07:00
Christian Goll
d24a92965f Merge pull request #1406 from anderbubble/1389-rundir-help-text
Additional help test when container.RunDir already exists
2024-09-25 11:10:22 +02:00
xu yang
94e203dd2e return non-zero exit code on container sub-commands
Signed-off-by: xu yang <xyang@ciq.com>
2024-09-25 08:50:50 +00:00
Jonathon Anderson
836b791d74 Additional help test when container.RunDir already exists
- Closes #1389

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-19 11:40:10 -06:00
Jonathon Anderson
96119484d8 Move syncuser pass from shell to exec
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-09-17 21:26:32 -06:00
xu yang
0b3eace403 Add syncuser to wwctl container shell and switch to mtime
Signed-off-by: xu yang <xyang@ciq.com>
2024-09-17 21:26:30 -06: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
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
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
Jonathon Anderson
6b8ca378d8 Refactor syncuser to reduce walking the container fs
- Closes #1209

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-06-03 19:18:25 -06:00
Jonathon Anderson
a1832ad8c1 Complete transfer of Warewulf from HPCng
Warewulf is now being maintained in its own GitHub organization at
github.com/warewulf

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2024-01-26 21:35:04 -07:00
Christian Goll
4379c4c18d use grub/shim from host system
Also the boot method is now configured globaly as this is
the only way to make sure that unkonwn nodes get the right
stuff

Signed-off-by: Christian Goll <cgoll@suse.com>
2024-01-17 18:02:04 -07:00
Christian Goll
03ef7447e9 copy shim/grub on default profile container change
Signed-off-by: Christian Goll <cgoll@suse.com>
2024-01-17 18:02:04 -07:00
Christian Goll
3eaeac46d2 use canonical os.TempDir 2023-02-03 15:39:00 +01:00
Christian Goll
05237935eb node option also for shell and respect env $SHELL 2023-01-31 18:05:18 +01:00
Christian Goll
317cd5d4e0 add option for node rendering 2023-01-31 17:45:09 +01:00
Christian Goll
71a3867bbe create temporary dir for overlayfs not in __child 2023-01-31 16:04:07 +01:00
Christian Goll
5249931ab0 do not call container exec for shell call 2023-01-31 16:04:07 +01:00
Christian Goll
55f61a7c18 pass log level to container exec 2023-01-31 16:03:57 +01: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
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
Gregory Kurtzer
8717b91938 Avoid container build if exit non-zero 2022-05-25 14:46:16 -07:00
Gregory Kurtzer
60b586b69a Don't do SyncUids by default always 2022-05-03 21:52:13 -07:00
Christian Goll
7e42286610 fixed linting 2022-04-07 11:35:34 +02:00
Christian Goll
2567246067 fixed linting 2022-04-06 21:44:00 +02:00
Christian Goll
db2dcbfbe2 will always run syncuids on exec and import 2022-04-06 21:44:00 +02:00
Christian Goll
5fb10130f3 check for modifcation of passwd/group after exec 2022-04-06 21:44:00 +02:00
Gregory Kurtzer
2260be9f8f Working implemnetation of #271 2022-02-13 04:22:12 +00:00
Christian Goll
10fdacee77 added wwctl container shell 2022-02-09 10:54:57 +01:00
Christian Goll
100cfe6a13 finaly added /usr/bin/bash as default to cnt exec 2022-02-04 11:06:27 +01:00
Christian Goll
9d80a71cd8 will exec /usr/bin/bash if no cmd is provided 2022-01-31 17:06:56 +01:00
Gregory Kurtzer
09a83ff904 Container exec fixups 2021-09-08 11:40:14 -07:00
WestleyR
4edc16953e Fix linting issues 2021-09-07 20:48:51 -07:00
Gregory Kurtzer
b3027e44ba Missed a debug Println() 2021-08-20 18:19:37 -07:00
Gregory Kurtzer
7826f69656 Support binds in container exec command
This addresses issue #88.
2021-08-20 14:16:16 -07:00
Gregory Kurtzer
6357e31438 Support container import of chroot directory 2021-02-24 21:01:56 -08:00
Ian Kaneshiro
846b45524c Tidy up
- Ran goimports to format code and imports
- Removed unused module from go.mod
- Added .editorconfig to keep formatting standard across contributors
2021-02-16 11:54:12 -08:00
Gregory Kurtzer
62a1abaab3 Cleanups and minor fixups 2020-12-13 22:45:08 -08:00
Gregory Kurtzer
3041fcac6b Added wwctl container exec ... feature 2020-12-06 09:33:36 -08:00