X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5bc5b8c150860a22d7a66b14aedddf30e270c7b6..d90fffe9d937d3e05c04106904b18dc4da235bc6:/lib/cmd/cmd.go diff --git a/lib/cmd/cmd.go b/lib/cmd/cmd.go index 611c95d234..3d4092e6b8 100644 --- a/lib/cmd/cmd.go +++ b/lib/cmd/cmd.go @@ -2,7 +2,7 @@ // // SPDX-License-Identifier: Apache-2.0 -// package cmd helps define reusable functions that can be exposed as +// Package cmd helps define reusable functions that can be exposed as // [subcommands of] command line programs. package cmd @@ -16,6 +16,8 @@ import ( "runtime" "sort" "strings" + + "github.com/sirupsen/logrus" ) type Handler interface { @@ -53,12 +55,12 @@ func (versionCommand) RunCommand(prog string, args []string, stdin io.Reader, st // // Example: // -// os.Exit(Multi(map[string]Handler{ -// "foobar": HandlerFunc(func(prog string, args []string) int { -// fmt.Println(args[0]) -// return 2 -// }), -// })("/usr/bin/multi", []string{"foobar", "baz"})) +// os.Exit(Multi(map[string]Handler{ +// "foobar": HandlerFunc(func(prog string, args []string) int { +// fmt.Println(args[0]) +// return 2 +// }), +// })("/usr/bin/multi", []string{"foobar", "baz"}, os.Stdin, os.Stdout, os.Stderr)) // // ...prints "baz" and exits 2. type Multi map[string]Handler @@ -153,3 +155,9 @@ func SubcommandToFront(args []string, flagset FlagSet) []string { copy(newargs[flagargs+1:], args[flagargs+1:]) return newargs } + +type NoPrefixFormatter struct{} + +func (NoPrefixFormatter) Format(entry *logrus.Entry) ([]byte, error) { + return []byte(entry.Message + "\n"), nil +}