mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
8cb2229cd1
When plugins have a positive refcount, they were not allowed to be removed. However, plugins could still be disabled when volumes referenced it and containers using them were running. This change fixes that by enforcing plugin refcount during disable. A "force" disable option is also added to ignore reference refcounting. Signed-off-by: Anusha Ragunathan <anusha@docker.com>
23 lines
943 B
Go
23 lines
943 B
Go
package plugin
|
|
|
|
import (
|
|
"io"
|
|
"net/http"
|
|
|
|
enginetypes "github.com/docker/docker/api/types"
|
|
"golang.org/x/net/context"
|
|
)
|
|
|
|
// Backend for Plugin
|
|
type Backend interface {
|
|
Disable(name string, config *enginetypes.PluginDisableConfig) error
|
|
Enable(name string, config *enginetypes.PluginEnableConfig) error
|
|
List() ([]enginetypes.Plugin, error)
|
|
Inspect(name string) (enginetypes.Plugin, error)
|
|
Remove(name string, config *enginetypes.PluginRmConfig) error
|
|
Set(name string, args []string) error
|
|
Privileges(name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig) (enginetypes.PluginPrivileges, error)
|
|
Pull(name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig, privileges enginetypes.PluginPrivileges) error
|
|
Push(name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig) error
|
|
CreateFromContext(ctx context.Context, tarCtx io.Reader, options *enginetypes.PluginCreateOptions) error
|
|
}
|