aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-03-06 23:02:06 +0900
committerOphestra <cat@gensokyo.uk>2026-03-06 23:10:43 +0900
commit5ea4dae4b807d39997bbf6615b9a01b59463e4bb (patch)
tree799be43f8d39055c57fbefae642d3cf579c85d8d
parenteb1a3918a8ed809954a8c751ea3f842848f9f4dc (diff)
cmd/mbf: info accept multiple names
This also improves formatting for use with multiple info blocks. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--cmd/mbf/main.go38
1 files changed, 20 insertions, 18 deletions
diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go
index 8c253940..2820b60c 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)
- segments = append(segments, "description:\n\t"+meta.Description)
- if meta.Website != "" {
+ meta := rosa.GetMetadata(p)
+ fmt.Println("description : " + meta.Description)
+ if meta.Website != "" {
+ fmt.Println("website : " + strings.TrimSuffix(meta.Website, "/"))
+ }
- segments = append(segments,
- "website:\n\t"+strings.TrimSuffix(meta.Website, "/"),
- )
+ if i != len(args)-1 {
+ fmt.Println()
+ }
}
-
- fmt.Println(strings.Join(segments, "\n\n"))
- return nil
}
+ return nil
},
)