github.com/kim0/docker@v0.6.2-0.20161130212042-4addda3f07e7/api/types/plugin.go (about)

     1  package types
     2  
     3  // This file was generated by the swagger tool.
     4  // Editing this file might prove futile when you re-run the swagger generate command
     5  
     6  // Plugin A plugin for the Remote API
     7  // swagger:model Plugin
     8  type Plugin struct {
     9  
    10  	// config
    11  	// Required: true
    12  	Config PluginConfig `json:"Config"`
    13  
    14  	// True when the plugin is running. False when the plugin is not running, only installed.
    15  	// Required: true
    16  	Enabled bool `json:"Enabled"`
    17  
    18  	// Id
    19  	ID string `json:"Id,omitempty"`
    20  
    21  	// manifest
    22  	// Required: true
    23  	Manifest PluginManifest `json:"Manifest"`
    24  
    25  	// name
    26  	// Required: true
    27  	Name string `json:"Name"`
    28  
    29  	// tag
    30  	// Required: true
    31  	Tag string `json:"Tag"`
    32  }
    33  
    34  // PluginConfig Settings that can be modified by users.
    35  // swagger:model PluginConfig
    36  type PluginConfig struct {
    37  
    38  	// args
    39  	// Required: true
    40  	Args []string `json:"Args"`
    41  
    42  	// devices
    43  	// Required: true
    44  	Devices []PluginDevice `json:"Devices"`
    45  
    46  	// env
    47  	// Required: true
    48  	Env []string `json:"Env"`
    49  
    50  	// mounts
    51  	// Required: true
    52  	Mounts []PluginMount `json:"Mounts"`
    53  }
    54  
    55  // PluginManifest The manifest of a plugin.
    56  // swagger:model PluginManifest
    57  type PluginManifest struct {
    58  
    59  	// args
    60  	// Required: true
    61  	Args PluginManifestArgs `json:"Args"`
    62  
    63  	// capabilities
    64  	// Required: true
    65  	Capabilities []string `json:"Capabilities"`
    66  
    67  	// description
    68  	// Required: true
    69  	Description string `json:"Description"`
    70  
    71  	// devices
    72  	// Required: true
    73  	Devices []PluginDevice `json:"Devices"`
    74  
    75  	// documentation
    76  	// Required: true
    77  	Documentation string `json:"Documentation"`
    78  
    79  	// entrypoint
    80  	// Required: true
    81  	Entrypoint []string `json:"Entrypoint"`
    82  
    83  	// env
    84  	// Required: true
    85  	Env []PluginEnv `json:"Env"`
    86  
    87  	// interface
    88  	// Required: true
    89  	Interface PluginManifestInterface `json:"Interface"`
    90  
    91  	// manifest version
    92  	// Required: true
    93  	ManifestVersion string `json:"ManifestVersion"`
    94  
    95  	// mounts
    96  	// Required: true
    97  	Mounts []PluginMount `json:"Mounts"`
    98  
    99  	// network
   100  	// Required: true
   101  	Network PluginManifestNetwork `json:"Network"`
   102  
   103  	// user
   104  	User PluginManifestUser `json:"User,omitempty"`
   105  
   106  	// workdir
   107  	// Required: true
   108  	Workdir string `json:"Workdir"`
   109  }
   110  
   111  // PluginManifestArgs plugin manifest args
   112  // swagger:model PluginManifestArgs
   113  type PluginManifestArgs struct {
   114  
   115  	// description
   116  	// Required: true
   117  	Description string `json:"Description"`
   118  
   119  	// name
   120  	// Required: true
   121  	Name string `json:"Name"`
   122  
   123  	// settable
   124  	// Required: true
   125  	Settable []string `json:"Settable"`
   126  
   127  	// value
   128  	// Required: true
   129  	Value []string `json:"Value"`
   130  }
   131  
   132  // PluginManifestInterface The interface between Docker and the plugin
   133  // swagger:model PluginManifestInterface
   134  type PluginManifestInterface struct {
   135  
   136  	// socket
   137  	// Required: true
   138  	Socket string `json:"Socket"`
   139  
   140  	// types
   141  	// Required: true
   142  	Types []PluginInterfaceType `json:"Types"`
   143  }
   144  
   145  // PluginManifestNetwork plugin manifest network
   146  // swagger:model PluginManifestNetwork
   147  type PluginManifestNetwork struct {
   148  
   149  	// type
   150  	// Required: true
   151  	Type string `json:"Type"`
   152  }
   153  
   154  // PluginManifestUser plugin manifest user
   155  // swagger:model PluginManifestUser
   156  type PluginManifestUser struct {
   157  
   158  	// g ID
   159  	GID uint32 `json:"GID,omitempty"`
   160  
   161  	// UID
   162  	UID uint32 `json:"UID,omitempty"`
   163  }