-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplugin.go
More file actions
163 lines (123 loc) · 3.1 KB
/
Copy pathplugin.go
File metadata and controls
163 lines (123 loc) · 3.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
package types
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
// Plugin A plugin for the Remote API
// swagger:model Plugin
type Plugin struct {
// config
// Required: true
Config PluginConfig `json:"Config"`
// True when the plugin is running. False when the plugin is not running, only installed.
// Required: true
Enabled bool `json:"Enabled"`
// Id
ID string `json:"Id,omitempty"`
// manifest
// Required: true
Manifest PluginManifest `json:"Manifest"`
// name
// Required: true
Name string `json:"Name"`
// tag
// Required: true
Tag string `json:"Tag"`
}
// PluginConfig Settings that can be modified by users.
// swagger:model PluginConfig
type PluginConfig struct {
// args
// Required: true
Args []string `json:"Args"`
// devices
// Required: true
Devices []PluginDevice `json:"Devices"`
// env
// Required: true
Env []string `json:"Env"`
// mounts
// Required: true
Mounts []PluginMount `json:"Mounts"`
}
// PluginManifest The manifest of a plugin.
// swagger:model PluginManifest
type PluginManifest struct {
// args
// Required: true
Args PluginManifestArgs `json:"Args"`
// capabilities
// Required: true
Capabilities []string `json:"Capabilities"`
// description
// Required: true
Description string `json:"Description"`
// devices
// Required: true
Devices []PluginDevice `json:"Devices"`
// documentation
// Required: true
Documentation string `json:"Documentation"`
// entrypoint
// Required: true
Entrypoint []string `json:"Entrypoint"`
// env
// Required: true
Env []PluginEnv `json:"Env"`
// interface
// Required: true
Interface PluginManifestInterface `json:"Interface"`
// manifest version
// Required: true
ManifestVersion string `json:"ManifestVersion"`
// mounts
// Required: true
Mounts []PluginMount `json:"Mounts"`
// network
// Required: true
Network PluginManifestNetwork `json:"Network"`
// user
User PluginManifestUser `json:"User,omitempty"`
// workdir
// Required: true
Workdir string `json:"Workdir"`
}
// PluginManifestArgs plugin manifest args
// swagger:model PluginManifestArgs
type PluginManifestArgs struct {
// description
// Required: true
Description string `json:"Description"`
// name
// Required: true
Name string `json:"Name"`
// settable
// Required: true
Settable []string `json:"Settable"`
// value
// Required: true
Value []string `json:"Value"`
}
// PluginManifestInterface The interface between Docker and the plugin
// swagger:model PluginManifestInterface
type PluginManifestInterface struct {
// socket
// Required: true
Socket string `json:"Socket"`
// types
// Required: true
Types []PluginInterfaceType `json:"Types"`
}
// PluginManifestNetwork plugin manifest network
// swagger:model PluginManifestNetwork
type PluginManifestNetwork struct {
// type
// Required: true
Type string `json:"Type"`
}
// PluginManifestUser plugin manifest user
// swagger:model PluginManifestUser
type PluginManifestUser struct {
// g ID
GID uint32 `json:"GID,omitempty"`
// UID
UID uint32 `json:"UID,omitempty"`
}