From 4a265ca4afa765a000d4dadfec84fdca0fb728e1 Mon Sep 17 00:00:00 2001 From: Sebastien Blot Date: Mon, 20 Nov 2023 13:27:46 +0100 Subject: [PATCH] up --- pkg/cwhub/sync.go | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/pkg/cwhub/sync.go b/pkg/cwhub/sync.go index 9651fe2b2..d9e08cd64 100644 --- a/pkg/cwhub/sync.go +++ b/pkg/cwhub/sync.go @@ -10,11 +10,17 @@ import ( "sort" "strings" + "slices" + "github.com/Masterminds/semver/v3" log "github.com/sirupsen/logrus" - "slices" + "gopkg.in/yaml.v3" ) +type localItem struct { + Name string `yaml:"name"` +} + func isYAMLFileName(path string) bool { return strings.HasSuffix(path, ".yaml") || strings.HasSuffix(path, ".yml") } @@ -214,9 +220,22 @@ func (h *Hub) itemVisit(path string, f os.DirEntry, err error) error { _, fileName := filepath.Split(path) + item := localItem{} + itemContent, err := os.ReadFile(path) + + if err != nil { + return fmt.Errorf("failed to read %s: %w", path, err) + } + + err = yaml.Unmarshal(itemContent, &item) + + if err != nil { + return fmt.Errorf("failed to unmarshal %s: %w", path, err) + } + h.Items[info.ftype][info.fname] = &Item{ hub: h, - Name: info.fname, + Name: item.Name, Stage: info.stage, Installed: true, Type: info.ftype,