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 }