From a473a80cda988ed8a82282d1b8bcc926e6544068 Mon Sep 17 00:00:00 2001 From: Mauro Morales Date: Wed, 29 Mar 2023 16:25:38 +0200 Subject: [PATCH] sparkles: Custom partitioning refactor config (#1180) * Introduce config/collector package to split the collection of config sources out of the config package. Each consumer of the new package will take care of unmarshalling the yaml to a specific Config struct, do validations etc. * Add tests and remove garbage * Follow all config_url chains and test it * Add missing options file and refactor cmdline code * Consolidate the way we merge configs no matter where they come from * Allow and use only files with valid headers Config is specific to Kairos while Collector is generic. This will allow us to do validations which are just related to Kairos at the config level, while including every type of key and querying of the full yaml at the Collector level splitting the responsibilities of each package. --------- Signed-off-by: Mauro Morales Signed-off-by: Dimitris Karakasilis --- go.mod | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index c043e23..4516c3b 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/jaypipes/ghw v0.10.0 github.com/joho/godotenv v1.5.1 github.com/kairos-io/kairos-sdk v0.0.2-0.20230317135804-ad3c0f6cd6dd - github.com/kairos-io/kcrypt v0.5.1 + github.com/kairos-io/kcrypt v0.5.2-0.20230323162016-6c283fa40615 github.com/labstack/echo/v4 v4.10.2 github.com/mudler/go-nodepair v0.0.0-20221223092639-ba399a66fdfb github.com/mudler/go-pluggable v0.0.0-20230126220627-7710299a0ae5 @@ -40,6 +40,8 @@ require ( atomicgo.dev/cursor v0.1.1 // indirect atomicgo.dev/keyboard v0.2.9 // indirect github.com/StackExchange/wmi v1.2.1 // indirect + github.com/anatol/devmapper.go v0.0.0-20220907161421-ba4de5fc0fd1 // indirect + github.com/anatol/luks.go v0.0.0-20230125211543-ada2562d4206 // indirect github.com/atotto/clipboard v0.1.4 // indirect github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59 // indirect github.com/aymanbagabas/go-osc52 v1.2.1 // indirect @@ -52,6 +54,7 @@ require ( github.com/codingsince1985/checksum v1.2.6 // indirect github.com/containerd/console v1.0.3 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect + github.com/dgryski/go-camellia v0.0.0-20191119043421-69a8a13fb23d // indirect github.com/disintegration/imaging v1.6.2 // indirect github.com/eliukblau/pixterm v1.3.1 // indirect github.com/fsnotify/fsnotify v1.5.4 // indirect @@ -91,6 +94,7 @@ require ( github.com/muesli/termenv v0.13.0 // indirect github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646 // indirect github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/otiai10/copy v1.9.0 // indirect github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/rivo/uniseg v0.4.4 // indirect @@ -99,6 +103,7 @@ require ( github.com/stretchr/objx v0.5.0 // indirect github.com/swaggest/refl v1.1.0 // indirect github.com/twpayne/go-vfs v1.7.2 // indirect + github.com/urfave/cli v1.22.12 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/fasttemplate v1.2.2 // indirect github.com/wayneashleyberry/terminal-dimensions v1.1.0 // indirect @@ -109,7 +114,7 @@ require ( go.uber.org/goleak v1.1.12 // indirect go.uber.org/multierr v1.9.0 // indirect go.uber.org/zap v1.24.0 // indirect - golang.org/x/crypto v0.6.0 // indirect + golang.org/x/crypto v0.7.0 // indirect golang.org/x/image v0.0.0-20191206065243-da761ea9ff43 // indirect golang.org/x/sys v0.6.0 // indirect golang.org/x/term v0.6.0 // indirect