Remove duplicate error messages from cli commands

Since we never use the cobras "SilenceErrors" or "SilenceUsage",
a command executed with "cmd.Execute()" will never return an error
without printing it.

The current behavior results in all error messages being printed twice:

Example:

$ kubectl abc
Error: unknown command "abc" for "kubectl"
Run 'kubectl --help' for usage.
unknown command "abc" for "kubectl"

This applies to all cli commands using Cobra. To verify, follow the code
path of the Execute function:

https://github.com/spf13/cobra/blob/c439c4fa0937/command.go#L793
Signed-off-by: Odin Ugedal <odin@ugedal.com>
This commit is contained in:
Odin Ugedal 2019-06-27 21:50:29 +02:00
parent 34b66e5225
commit 7caf51daa4
No known key found for this signature in database
GPG Key ID: AFF9C8242CF7A7AF
10 changed files with 0 additions and 19 deletions

View File

@ -20,7 +20,6 @@ limitations under the License.
package main
import (
"fmt"
"math/rand"
"os"
"time"
@ -48,7 +47,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "error: %v\n", err)
os.Exit(1)
}
}

View File

@ -61,7 +61,6 @@ func main() {
basename := filepath.Base(os.Args[0])
if err := commandFor(basename, hyperkubeCommand, allCommandFns).Execute(); err != nil {
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
}

View File

@ -19,7 +19,6 @@ limitations under the License.
package main
import (
"fmt"
"math/rand"
"os"
"time"
@ -43,7 +42,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "error: %v\n", err)
os.Exit(1)
}
}

View File

@ -21,7 +21,6 @@ limitations under the License.
package main
import (
"fmt"
"math/rand"
"os"
"time"
@ -45,7 +44,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
}

View File

@ -18,7 +18,6 @@ package main
import (
goflag "flag"
"fmt"
"math/rand"
"os"
"time"
@ -47,7 +46,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "error: %v\n", err)
os.Exit(1)
}
}

View File

@ -17,7 +17,6 @@ limitations under the License.
package main
import (
"fmt"
"math/rand"
"os"
"time"
@ -45,7 +44,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
}

View File

@ -17,7 +17,6 @@ limitations under the License.
package main
import (
"fmt"
"os"
"k8s.io/klog"
@ -27,8 +26,6 @@ import (
func main() {
klog.InitFlags(nil)
if err := app.Run(); err != nil {
fmt.Fprintf(os.Stderr, "error: %v\n", err)
os.Exit(1)
}
os.Exit(0)
}

View File

@ -18,7 +18,6 @@ package main
import (
goflag "flag"
"fmt"
"math/rand"
"os"
"time"
@ -48,7 +47,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
}

View File

@ -21,7 +21,6 @@ limitations under the License.
package main
import (
"fmt"
"math/rand"
"os"
"time"
@ -40,7 +39,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
}

View File

@ -116,7 +116,6 @@ func main() {
defer logs.FlushLogs()
if err := command.Execute(); err != nil {
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
}