Skip to content

Commit

Permalink
explicitly show plugins as unsupported on !linux
Browse files Browse the repository at this point in the history
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
  • Loading branch information
vieux committed Nov 16, 2016
1 parent 5f577bf commit a813946
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 0 deletions.
2 changes: 2 additions & 0 deletions plugin/backend.go → plugin/backend_linux.go
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
// +build linux

package plugin

import (
Expand Down
60 changes: 60 additions & 0 deletions plugin/backend_unsupported.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// +build !linux

package plugin

import (
"errors"
"io"
"net/http"

"github.com/docker/docker/api/types"
"golang.org/x/net/context"
)

var ErrNotSupported = errors.New("plugins are not supported on this platform")

// Disable deactivates a plugin, which implies that they cannot be used by containers.
func (pm *Manager) Disable(name string) error {
return ErrNotSupported
}

// Enable activates a plugin, which implies that they are ready to be used by containers.
func (pm *Manager) Enable(name string) error {
return ErrNotSupported
}

// Inspect examines a plugin config
func (pm *Manager) Inspect(name string) (tp types.Plugin, err error) {
return tp, ErrNotSupported
}

// Pull pulls a plugin and computes the privileges required to install it.
func (pm *Manager) Pull(name string, metaHeader http.Header, authConfig *types.AuthConfig) (types.PluginPrivileges, error) {
return nil, ErrNotSupported
}

// List displays the list of plugins and associated metadata.
func (pm *Manager) List() ([]types.Plugin, error) {
return nil, ErrNotSupported
}

// Push pushes a plugin to the store.
func (pm *Manager) Push(name string, metaHeader http.Header, authConfig *types.AuthConfig) error {
return ErrNotSupported
}

// Remove deletes plugin's root directory.
func (pm *Manager) Remove(name string, config *types.PluginRmConfig) error {
return ErrNotSupported
}

// Set sets plugin args
func (pm *Manager) Set(name string, args []string) error {
return ErrNotSupported
}

// CreateFromContext creates a plugin from the given pluginDir which contains
// both the rootfs and the config.json and a repoName with optional tag.
func (pm *Manager) CreateFromContext(ctx context.Context, tarCtx io.Reader, options *types.PluginCreateOptions) error {
return ErrNotSupported
}

0 comments on commit a813946

Please sign in to comment.