Commit Graph

62 Commits

Author SHA1 Message Date
Jonathon Anderson
7b2f278f94 Refactor and fix bugs in syncuids
Closes #840

* SyncUids can now return applicable errors even during showOnly, so
  updated ContainerImport to ignore errors during showOnly.
* Fixed handling of file gids during SyncUids

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2023-08-08 11:25:09 -06:00
Jonathon Anderson
a10fdb3808 Remove config.DataStore()
Comments in the code were already disparaging of config.DataStore(), but
implied that its presence made other code more readable. It was only
used in two places and, imo, how I've refactored it is more explicit and
clear than it was.

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
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
063c05602d Merge pull request #665 from mslacken/ContainerMnt
Container mnt
2023-02-24 15:13:12 +01:00
Christian Goll
7e64e995cb Merge pull request #653 from anderbubble/650-syncuser-error-message
Refactor some variables in syncuser and correct error message
2023-02-03 12:27:15 +01:00
Jonathon Anderson
e8e9c4f3bd Merge branch 'development' into lint-update 2023-02-02 14:38:33 -07:00
Christian Goll
157c3cd923 getting defaults mounts from warewulf.conf 2023-01-31 16:04:08 +01:00
Christian Goll
d82314460f added support for mounts.conf for container exec 2023-01-31 16:04:07 +01:00
Jonathon Anderson
7e94c265f0 Refactor some variables in syncuser and correct error message
- Rename some internal variables to make the function easier to follow
- Refactor some code to make it simpler
- Remove some commented-out code
- Fix an error message

Closes #650

Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-01-24 22:06:19 -06:00
Jonathon Anderson
42f4f1db34 Simpler symlink handling in KernelFind
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2023-01-17 23:43:22 -07:00
Christian
750358646d resolve symlink for kernel version 2023-01-16 14:34:16 +01:00
mslacken
ab0ee87629 updated linter and fixed deprecated stuff 2022-10-14 17:40:16 +02:00
Christian Goll
4fe584547b Merge branch 'development' into wwlog-newlines 2022-10-13 14:46:03 +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
c75f4e468c remove also the container image on delete 2022-09-14 14:42:33 +02:00
Jonathon Anderson
cac614a4b7 Correct handling of exclude patterns
Signed-off-by: Jonathon Anderson <janderson@ciq.co>
2022-09-11 19:25:40 -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
Jonathon Anderson
1ed5a531bb Removed extra period from log message
I think the `.` in `uid./gid not synced` is erroneous.
2022-08-31 11:53:37 -06: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
2efcbe0348 syncucer will only write witrh syncuser switch
uid/gid are not synced at container import but checked. An apropriate
message is printed, regarding users which are not present on host.
The `wwctl container syncuser` needs the `--write` switch to actually
write to the container.

The command `wwctl container syncuser` will always operate at the
container level, but as the 'generic` overlay reads in the container
passwd/group, following two steps will update the passwd/group on a
running cluster:
1. Add passwd/group to container
wwctl container syncuser --write CONTAINER
2. Synchronize overlay
wwctl overlay build -N
2022-05-12 11:18:53 +02:00
jcsiadal
4260c97552 Fix container excludes
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-05-05 04:39:36 +00:00
Christian Goll
7f1636c9a9 created syncuids.go with code from utils.go 2022-04-06 21:44:00 +02:00
Christian Goll
61eae386af Just check syncuids on default 2022-04-06 21:44:00 +02:00
Christian Goll
1afa58ae57 Fixed wrong collision for group 0(root) 2022-04-06 21:44:00 +02:00
Christian Goll
23ba9ca61a fixed linting 2022-04-06 21:44:00 +02:00
Christian Goll
8c7fd7d140 basic function comparing uids of host/container 2022-04-06 21:44:00 +02:00
Gregory Kurtzer
ca6a805731 Sort kernel paths to find the biggest version.
Note we can do better as this is an alpha sort, so 9 is always bigger than 10.
2022-02-24 22:10:28 -08:00
Gregory Kurtzer
9edef29ebd Change exclude name to plural 2022-02-24 22:03:01 -08:00
Gregory Kurtzer
99bdc8a35a Fix issue with improper kernel version probe 2022-02-24 22:01:46 -08:00
Gregory Kurtzer
a6c793caca Fixes for kernel identification within the container 2022-02-16 04:48:17 +00:00
Gregory Kurtzer
5a0c13225e Utilize containerized kernel and remove kernel Support 2022-02-15 06:49:24 +00:00
Christian Goll
9bf492f79b moved exlucde file location and find -xdev 2022-02-03 09:48:11 +01:00
Christian Goll
2e44c51554 check if ./.ww4/exludes exist and use if 2022-01-31 15:05:11 +01:00
Gregory Kurtzer
d35f368b21 Build configs should not be globally writable (thanks Jeremy) 2022-01-19 06:01:33 +00:00
Gregory Kurtzer
8da7dd415a Extend and optimize relocatable build config infrastructure 2022-01-15 04:00:18 +00:00
jcsiadal
b515442872 Fix oci dir & some formatting
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>
2022-01-11 05:55:24 +00:00
jcsiadal
8e626e9a62 Add config option for shared state dir
Signed-off-by: jcsiadal <jeremy.c.siadal@intel.com>

Changes default share to /srv/warewulf
Update specfile
Some changes to match Golang standards
2022-01-11 05:52:58 +00:00
WestleyR
4edc16953e Fix linting issues 2021-09-07 20:48:51 -07:00
Gregory Kurtzer
c60be743ba Update sources to use upstream errors package 2021-09-06 14:50:27 -07:00
Gregory Kurtzer
d9289f9f26 VNFS is current isn't an error 2021-08-20 18:43:14 -07:00
Gregory Kurtzer
4732868966 Slight modification to Yong's pigz conditional 2021-04-25 12:25:34 -07:00
Yong Qin
2e1017ca63 When available, use "pigz" to speedup compression. 2021-04-24 21:00:22 -07:00
Gregory Kurtzer
ad6dec792b Readding Yong's addition of graphdriver/copy 2021-04-23 21:49:25 -07:00
Gregory Kurtzer
72ae24c5bc Docker requirement was breaking build. 2021-04-23 19:39:02 -07:00
Yong Qin
0346d98d46 Fixed the bug with importing container/vnfs from a directory. 2021-04-07 11:25:57 -07:00
Niko Kivel
1d396df056 fixed problems with wrongly identified invalid characters 2021-03-18 11:30:33 +01:00