@@ -21,6 +21,7 @@ type CommonAPIClient interface {
2121 ImageAPIClient
2222 NodeAPIClient
2323 NetworkAPIClient
24+ PluginAPIClient
2425 ServiceAPIClient
2526 SwarmAPIClient
2627 SecretAPIClient
@@ -104,6 +105,19 @@ type NodeAPIClient interface {
104105 NodeUpdate (ctx context.Context , nodeID string , version swarm.Version , node swarm.NodeSpec ) error
105106}
106107
108+ // PluginAPIClient defines API client methods for the plugins
109+ type PluginAPIClient interface {
110+ PluginList (ctx context.Context ) (types.PluginsListResponse , error )
111+ PluginRemove (ctx context.Context , name string , options types.PluginRemoveOptions ) error
112+ PluginEnable (ctx context.Context , name string ) error
113+ PluginDisable (ctx context.Context , name string ) error
114+ PluginInstall (ctx context.Context , name string , options types.PluginInstallOptions ) error
115+ PluginPush (ctx context.Context , name string , registryAuth string ) error
116+ PluginSet (ctx context.Context , name string , args []string ) error
117+ PluginInspectWithRaw (ctx context.Context , name string ) (* types.Plugin , []byte , error )
118+ PluginCreate (ctx context.Context , createContext io.Reader , options types.PluginCreateOptions ) error
119+ }
120+
107121// ServiceAPIClient defines API client methods for the services
108122type ServiceAPIClient interface {
109123 ServiceCreate (ctx context.Context , service swarm.ServiceSpec , options types.ServiceCreateOptions ) (types.ServiceCreateResponse , error )
0 commit comments