github.com/flavio/docker@v0.1.3-0.20170117145210-f63d1a6eec47/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 Engine 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  	// name
    22  	// Required: true
    23  	Name string `json:"Name"`
    24  
    25  	// settings
    26  	// Required: true
    27  	Settings PluginSettings `json:"Settings"`
    28  }
    29  
    30  // PluginConfig The config of a plugin.
    31  // swagger:model PluginConfig
    32  type PluginConfig struct {
    33  
    34  	// args
    35  	// Required: true
    36  	Args PluginConfigArgs `json:"Args"`
    37  
    38  	// description
    39  	// Required: true
    40  	Description string `json:"Description"`
    41  
    42  	// documentation
    43  	// Required: true
    44  	Documentation string `json:"Documentation"`
    45  
    46  	// entrypoint
    47  	// Required: true
    48  	Entrypoint []string `json:"Entrypoint"`
    49  
    50  	// env
    51  	// Required: true
    52  	Env []PluginEnv `json:"Env"`
    53  
    54  	// interface
    55  	// Required: true
    56  	Interface PluginConfigInterface `json:"Interface"`
    57  
    58  	// linux
    59  	// Required: true
    60  	Linux PluginConfigLinux `json:"Linux"`
    61  
    62  	// mounts
    63  	// Required: true
    64  	Mounts []PluginMount `json:"Mounts"`
    65  
    66  	// network
    67  	// Required: true
    68  	Network PluginConfigNetwork `json:"Network"`
    69  
    70  	// propagated mount
    71  	// Required: true
    72  	PropagatedMount string `json:"PropagatedMount"`
    73  
    74  	// user
    75  	User PluginConfigUser `json:"User,omitempty"`
    76  
    77  	// work dir
    78  	// Required: true
    79  	WorkDir string `json:"WorkDir"`
    80  
    81  	// rootfs
    82  	Rootfs *PluginConfigRootfs `json:"rootfs,omitempty"`
    83  }
    84  
    85  // PluginConfigArgs plugin config args
    86  // swagger:model PluginConfigArgs
    87  type PluginConfigArgs struct {
    88  
    89  	// description
    90  	// Required: true
    91  	Description string `json:"Description"`
    92  
    93  	// name
    94  	// Required: true
    95  	Name string `json:"Name"`
    96  
    97  	// settable
    98  	// Required: true
    99  	Settable []string `json:"Settable"`
   100  
   101  	// value
   102  	// Required: true
   103  	Value []string `json:"Value"`
   104  }
   105  
   106  // PluginConfigInterface The interface between Docker and the plugin
   107  // swagger:model PluginConfigInterface
   108  type PluginConfigInterface struct {
   109  
   110  	// socket
   111  	// Required: true
   112  	Socket string `json:"Socket"`
   113  
   114  	// types
   115  	// Required: true
   116  	Types []PluginInterfaceType `json:"Types"`
   117  }
   118  
   119  // PluginConfigLinux plugin config linux
   120  // swagger:model PluginConfigLinux
   121  type PluginConfigLinux struct {
   122  
   123  	// allow all devices
   124  	// Required: true
   125  	AllowAllDevices bool `json:"AllowAllDevices"`
   126  
   127  	// capabilities
   128  	// Required: true
   129  	Capabilities []string `json:"Capabilities"`
   130  
   131  	// devices
   132  	// Required: true
   133  	Devices []PluginDevice `json:"Devices"`
   134  }
   135  
   136  // PluginConfigNetwork plugin config network
   137  // swagger:model PluginConfigNetwork
   138  type PluginConfigNetwork struct {
   139  
   140  	// type
   141  	// Required: true
   142  	Type string `json:"Type"`
   143  }
   144  
   145  // PluginConfigRootfs plugin config rootfs
   146  // swagger:model PluginConfigRootfs
   147  type PluginConfigRootfs struct {
   148  
   149  	// diff ids
   150  	DiffIds []string `json:"diff_ids"`
   151  
   152  	// type
   153  	Type string `json:"type,omitempty"`
   154  }
   155  
   156  // PluginConfigUser plugin config user
   157  // swagger:model PluginConfigUser
   158  type PluginConfigUser struct {
   159  
   160  	// g ID
   161  	GID uint32 `json:"GID,omitempty"`
   162  
   163  	// UID
   164  	UID uint32 `json:"UID,omitempty"`
   165  }
   166  
   167  // PluginSettings Settings that can be modified by users.
   168  // swagger:model PluginSettings
   169  type PluginSettings struct {
   170  
   171  	// args
   172  	// Required: true
   173  	Args []string `json:"Args"`
   174  
   175  	// devices
   176  	// Required: true
   177  	Devices []PluginDevice `json:"Devices"`
   178  
   179  	// env
   180  	// Required: true
   181  	Env []string `json:"Env"`
   182  
   183  	// mounts
   184  	// Required: true
   185  	Mounts []PluginMount `json:"Mounts"`
   186  }