From 5ea4dae4b807d39997bbf6615b9a01b59463e4bb Mon Sep 17 00:00:00 2001 From: Ophestra Date: Fri, 6 Mar 2026 23:02:06 +0900 Subject: [PATCH] cmd/mbf: info accept multiple names This also improves formatting for use with multiple info blocks. Signed-off-by: Ophestra --- cmd/mbf/main.go | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go index 8c25394..2820b60 100644 --- a/cmd/mbf/main.go +++ b/cmd/mbf/main.go @@ -135,30 +135,32 @@ func main() { "info", "Display out-of-band metadata of an artifact", func(args []string) error { - if len(args) != 1 { - return errors.New("info requires 1 argument") + if len(args) == 0 { + return errors.New("info requires at least 1 argument") } - if p, ok := rosa.ResolveName(args[0]); !ok { - return fmt.Errorf("unknown artifact %q", args[0]) - } else { - segments := make([]string, 0, 3) - if version := rosa.Std.Version(p); version != rosa.Unversioned { - segments = append(segments, "version:\n\t"+version) + for i, name := range args { + if p, ok := rosa.ResolveName(name); !ok { + return fmt.Errorf("unknown artifact %q", name) + } else { + var suffix string + if version := rosa.Std.Version(p); version != rosa.Unversioned { + suffix += "-" + version + } + fmt.Println("name : " + name + suffix) + + meta := rosa.GetMetadata(p) + fmt.Println("description : " + meta.Description) + if meta.Website != "" { + fmt.Println("website : " + strings.TrimSuffix(meta.Website, "/")) + } + + if i != len(args)-1 { + fmt.Println() + } } - - meta := rosa.GetMetadata(p) - segments = append(segments, "description:\n\t"+meta.Description) - if meta.Website != "" { - - segments = append(segments, - "website:\n\t"+strings.TrimSuffix(meta.Website, "/"), - ) - } - - fmt.Println(strings.Join(segments, "\n\n")) - return nil } + return nil }, )