github.com/demonoid81/moby@v0.0.0-20200517203328-62dd8e17c460/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 if the plugin is running. False if 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 // Docker Version used to create the plugin 46 DockerVersion string `json:"DockerVersion,omitempty"` 47 48 // documentation 49 // Required: true 50 Documentation string `json:"Documentation"` 51 52 // entrypoint 53 // Required: true 54 Entrypoint []string `json:"Entrypoint"` 55 56 // env 57 // Required: true 58 Env []PluginEnv `json:"Env"` 59 60 // interface 61 // Required: true 62 Interface PluginConfigInterface `json:"Interface"` 63 64 // ipc host 65 // Required: true 66 IpcHost bool `json:"IpcHost"` 67 68 // linux 69 // Required: true 70 Linux PluginConfigLinux `json:"Linux"` 71 72 // mounts 73 // Required: true 74 Mounts []PluginMount `json:"Mounts"` 75 76 // network 77 // Required: true 78 Network PluginConfigNetwork `json:"Network"` 79 80 // pid host 81 // Required: true 82 PidHost bool `json:"PidHost"` 83 84 // propagated mount 85 // Required: true 86 PropagatedMount string `json:"PropagatedMount"` 87 88 // user 89 User PluginConfigUser `json:"User,omitempty"` 90 91 // work dir 92 // Required: true 93 WorkDir string `json:"WorkDir"` 94 95 // rootfs 96 Rootfs *PluginConfigRootfs `json:"rootfs,omitempty"` 97 } 98 99 // PluginConfigArgs plugin config args 100 // swagger:model PluginConfigArgs 101 type PluginConfigArgs struct { 102 103 // description 104 // Required: true 105 Description string `json:"Description"` 106 107 // name 108 // Required: true 109 Name string `json:"Name"` 110 111 // settable 112 // Required: true 113 Settable []string `json:"Settable"` 114 115 // value 116 // Required: true 117 Value []string `json:"Value"` 118 } 119 120 // PluginConfigInterface The interface between Docker and the plugin 121 // swagger:model PluginConfigInterface 122 type PluginConfigInterface struct { 123 124 // Protocol to use for clients connecting to the plugin. 125 ProtocolScheme string `json:"ProtocolScheme,omitempty"` 126 127 // socket 128 // Required: true 129 Socket string `json:"Socket"` 130 131 // types 132 // Required: true 133 Types []PluginInterfaceType `json:"Types"` 134 } 135 136 // PluginConfigLinux plugin config linux 137 // swagger:model PluginConfigLinux 138 type PluginConfigLinux struct { 139 140 // allow all devices 141 // Required: true 142 AllowAllDevices bool `json:"AllowAllDevices"` 143 144 // capabilities 145 // Required: true 146 Capabilities []string `json:"Capabilities"` 147 148 // devices 149 // Required: true 150 Devices []PluginDevice `json:"Devices"` 151 } 152 153 // PluginConfigNetwork plugin config network 154 // swagger:model PluginConfigNetwork 155 type PluginConfigNetwork struct { 156 157 // type 158 // Required: true 159 Type string `json:"Type"` 160 } 161 162 // PluginConfigRootfs plugin config rootfs 163 // swagger:model PluginConfigRootfs 164 type PluginConfigRootfs struct { 165 166 // diff ids 167 DiffIds []string `json:"diff_ids"` 168 169 // type 170 Type string `json:"type,omitempty"` 171 } 172 173 // PluginConfigUser plugin config user 174 // swagger:model PluginConfigUser 175 type PluginConfigUser struct { 176 177 // g ID 178 GID uint32 `json:"GID,omitempty"` 179 180 // UID 181 UID uint32 `json:"UID,omitempty"` 182 } 183 184 // PluginSettings Settings that can be modified by users. 185 // swagger:model PluginSettings 186 type PluginSettings struct { 187 188 // args 189 // Required: true 190 Args []string `json:"Args"` 191 192 // devices 193 // Required: true 194 Devices []PluginDevice `json:"Devices"` 195 196 // env 197 // Required: true 198 Env []string `json:"Env"` 199 200 // mounts 201 // Required: true 202 Mounts []PluginMount `json:"Mounts"` 203 }