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