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 }