| package main |
| |
| import ( |
| "fmt" |
| |
| "github.com/docker/cli/cli-plugins/metadata" |
| "github.com/docker/cli/cli-plugins/plugin" |
| "github.com/docker/cli/cli/command" |
| "github.com/moby/moby/client" |
| "github.com/spf13/cobra" |
| ) |
| |
| func main() { |
| plugin.Run(func(dockerCli command.Cli) *cobra.Command { |
| return &cobra.Command{ |
| Use: "nopersistentprerun", |
| Short: "Testing without PersistentPreRun hooks", |
| // PersistentPreRunE: Not specified, we need to test that it works in the absence of an explicit call |
| RunE: func(cmd *cobra.Command, args []string) error { |
| cli := dockerCli.Client() |
| ping, err := cli.Ping(cmd.Context(), client.PingOptions{}) |
| if err != nil { |
| return err |
| } |
| fmt.Println(ping.APIVersion) |
| return nil |
| }, |
| } |
| }, |
| metadata.Metadata{ |
| SchemaVersion: "0.1.0", |
| Vendor: "Docker Inc.", |
| Version: "testing", |
| }) |
| } |