github.com/kobeld/docker@v1.12.0-rc1/api/client/plugin/inspect.go (about)

     1  // +build experimental
     2  
     3  package plugin
     4  
     5  import (
     6  	"encoding/json"
     7  
     8  	"github.com/docker/docker/api/client"
     9  	"github.com/docker/docker/cli"
    10  	"github.com/spf13/cobra"
    11  	"golang.org/x/net/context"
    12  )
    13  
    14  func newInspectCommand(dockerCli *client.DockerCli) *cobra.Command {
    15  	cmd := &cobra.Command{
    16  		Use:   "inspect",
    17  		Short: "Inspect a plugin",
    18  		Args:  cli.ExactArgs(1),
    19  		RunE: func(cmd *cobra.Command, args []string) error {
    20  			return runInspect(dockerCli, args[0])
    21  		},
    22  	}
    23  
    24  	return cmd
    25  }
    26  
    27  func runInspect(dockerCli *client.DockerCli, name string) error {
    28  	p, err := dockerCli.Client().PluginInspect(context.Background(), name)
    29  	if err != nil {
    30  		return err
    31  	}
    32  
    33  	b, err := json.MarshalIndent(p, "", "\t")
    34  	if err != nil {
    35  		return err
    36  	}
    37  	_, err = dockerCli.Out().Write(b)
    38  	return err
    39  }