github.com/franc20/ayesa_sap@v7.0.0-beta.28.0.20200124003224-302d4d52fa6c+incompatible/plugin/v7/plugin_examples/app_plugin.go (about)

     1  // +build V7
     2  
     3  package main
     4  
     5  import (
     6  	"fmt"
     7  	"os"
     8  
     9  	plugin "code.cloudfoundry.org/cli/plugin/v7"
    10  )
    11  
    12  type AppPlugin struct{}
    13  
    14  func (c *AppPlugin) Run(cliConnection plugin.CliConnection, args []string) {
    15  	if args[0] == "v7-app-plugin" {
    16  		app, err := cliConnection.GetApp("dora")
    17  		if err != nil {
    18  			panic(err)
    19  		}
    20  
    21  		fmt.Fprintf(os.Stdout, "%+v\n", app)
    22  	}
    23  }
    24  
    25  func (c *AppPlugin) GetMetadata() plugin.PluginMetadata {
    26  	return plugin.PluginMetadata{
    27  		Name: "v7-app-plugin",
    28  		Version: plugin.VersionType{
    29  			Major: 1,
    30  			Minor: 0,
    31  			Build: 0,
    32  		},
    33  		MinCliVersion: plugin.VersionType{
    34  			Major: 6,
    35  			Minor: 7,
    36  			Build: 0,
    37  		},
    38  		Commands: []plugin.Command{
    39  			{
    40  				Name:     "v7-app-plugin",
    41  				HelpText: "v7-app-plugin",
    42  			},
    43  		},
    44  	}
    45  }
    46  
    47  func main() {
    48  	plugin.Start(new(AppPlugin))
    49  }