1package 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
8type 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
35type 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
101type 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
122type PluginConfigInterface struct {
123
124	// socket
125	// Required: true
126	Socket string `json:"Socket"`
127
128	// types
129	// Required: true
130	Types []PluginInterfaceType `json:"Types"`
131}
132
133// PluginConfigLinux plugin config linux
134// swagger:model PluginConfigLinux
135type PluginConfigLinux struct {
136
137	// allow all devices
138	// Required: true
139	AllowAllDevices bool `json:"AllowAllDevices"`
140
141	// capabilities
142	// Required: true
143	Capabilities []string `json:"Capabilities"`
144
145	// devices
146	// Required: true
147	Devices []PluginDevice `json:"Devices"`
148}
149
150// PluginConfigNetwork plugin config network
151// swagger:model PluginConfigNetwork
152type PluginConfigNetwork struct {
153
154	// type
155	// Required: true
156	Type string `json:"Type"`
157}
158
159// PluginConfigRootfs plugin config rootfs
160// swagger:model PluginConfigRootfs
161type PluginConfigRootfs struct {
162
163	// diff ids
164	DiffIds []string `json:"diff_ids"`
165
166	// type
167	Type string `json:"type,omitempty"`
168}
169
170// PluginConfigUser plugin config user
171// swagger:model PluginConfigUser
172type PluginConfigUser struct {
173
174	// g ID
175	GID uint32 `json:"GID,omitempty"`
176
177	// UID
178	UID uint32 `json:"UID,omitempty"`
179}
180
181// PluginSettings Settings that can be modified by users.
182// swagger:model PluginSettings
183type PluginSettings struct {
184
185	// args
186	// Required: true
187	Args []string `json:"Args"`
188
189	// devices
190	// Required: true
191	Devices []PluginDevice `json:"Devices"`
192
193	// env
194	// Required: true
195	Env []string `json:"Env"`
196
197	// mounts
198	// Required: true
199	Mounts []PluginMount `json:"Mounts"`
200}
201