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> Upstream-commit: 8cb2229cd18c53bdbf36301f26db565a50027d6a Component: engine
20 lines
438 B
Go
20 lines
438 B
Go
package client
|
|
|
|
import (
|
|
"net/url"
|
|
|
|
"github.com/docker/docker/api/types"
|
|
"golang.org/x/net/context"
|
|
)
|
|
|
|
// PluginDisable disables a plugin
|
|
func (cli *Client) PluginDisable(ctx context.Context, name string, options types.PluginDisableOptions) error {
|
|
query := url.Values{}
|
|
if options.Force {
|
|
query.Set("force", "1")
|
|
}
|
|
resp, err := cli.post(ctx, "/plugins/"+name+"/disable", query, nil, nil)
|
|
ensureReaderClosed(resp)
|
|
return err
|
|
}
|