moby--moby/pkg/plugins
Brian Goff b27f70d45a Fix issue with plugin scanner going to deep
The plugin spec says that plugins can live in one of:

- /var/run/docker/plugins/<name>.sock
- /var/run/docker/plugins/<name>/<name>.sock
- /etc/docker/plugins/<name>.[json,spec]
- /etc/docker/plugins/<name>/<name>.<json,spec>
- /usr/lib/docker/plugins/<name>.<json,spec>
- /usr/lib/docker/plugins/<name>/<name>.<json,spec>

However, the plugin scanner which is used by the volume list API was
doing `filepath.Walk`, which will walk the entire tree for each of the
supported paths.
This means that even v2 plugins in
`/var/run/docker/plugins/<id>/<name>.sock` were being detected as a v1
plugin.
When the v1 plugin loader tried to load such a plugin it would log an
error that it couldn't find it because it doesn't match one of the
supported patterns... e.g. when in a subdir, the subdir name must match
the plugin name for the socket.

There is no behavior change as the error is only on the `Scan()` call,
which is passing names to the plugin registry when someone calls the
volume list API.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-02-02 16:49:14 -05:00
..
pluginrpc-gen Add deadcode linter 2017-08-21 18:18:50 -04:00
transport Increase the Coverage of pkg/plugins 2017-06-12 12:23:10 +05:00
client.go Add timeouts for volume plugin ops 2018-01-16 20:30:49 -05:00
client_test.go Increase the Coverage of pkg/plugins 2017-06-12 12:23:10 +05:00
discovery.go Fix issue with plugin scanner going to deep 2018-02-02 16:49:14 -05:00
discovery_test.go
discovery_unix.go
discovery_unix_test.go Fix issue with plugin scanner going to deep 2018-02-02 16:49:14 -05:00
discovery_windows.go
errors.go
plugin_test.go Fix issue with plugin scanner going to deep 2018-02-02 16:49:14 -05:00
plugins.go Update logrus to v1.0.1 2017-07-31 13:16:46 -07:00
plugins_unix.go
plugins_windows.go