mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
![]() Adds 2 new methods to v2 plugin `Acquire` and `Release` which allow
refcounting directly at the plugin level instead of just the store.
Since a graphdriver is initialized exactly once, and is really managed
by a separate object, it didn't really seem right to call
`getter.Get()` to refcount graphdriver plugins.
On shutdown it was particularly weird where we'd either need to keep a
driver reference in daemon, or keep a reference to the pluggin getter in
the layer store, and even then still store extra details on if the
graphdriver is a plugin or not.
Instead the plugin proxy itself will handle calling the neccessary
refcounting methods directly on the plugin object.
Also adds a new interface in `plugingetter` to account for these new
functions which are not going to be implemented by v1 plugins.
Changes terms `plugingetter.CREATE` and `plugingetter.REMOVE` to
`ACQUIRE` and `RELEASE` respectively, which seems to be better
adjectives for what we're doing.
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit
|
||
---|---|---|
.. | ||
caps | ||
cluster | ||
events | ||
exec | ||
graphdriver | ||
links | ||
logger | ||
network | ||
apparmor_default.go | ||
apparmor_default_unsupported.go | ||
archive.go | ||
archive_unix.go | ||
archive_windows.go | ||
attach.go | ||
auth.go | ||
bindmount_solaris.go | ||
bindmount_unix.go | ||
cache.go | ||
changes.go | ||
checkpoint.go | ||
cluster.go | ||
commit.go | ||
config.go | ||
config_common_unix.go | ||
config_experimental.go | ||
config_solaris.go | ||
config_test.go | ||
config_unix.go | ||
config_unix_test.go | ||
config_windows.go | ||
config_windows_test.go | ||
container.go | ||
container_operations.go | ||
container_operations_solaris.go | ||
container_operations_unix.go | ||
container_operations_windows.go | ||
create.go | ||
create_unix.go | ||
create_windows.go | ||
daemon.go | ||
daemon_experimental.go | ||
daemon_linux.go | ||
daemon_linux_test.go | ||
daemon_solaris.go | ||
daemon_test.go | ||
daemon_unix.go | ||
daemon_unix_test.go | ||
daemon_unsupported.go | ||
daemon_windows.go | ||
debugtrap.go | ||
debugtrap_unix.go | ||
debugtrap_unsupported.go | ||
debugtrap_windows.go | ||
delete.go | ||
delete_test.go | ||
discovery.go | ||
discovery_test.go | ||
disk_usage.go | ||
errors.go | ||
events.go | ||
events_test.go | ||
exec.go | ||
exec_linux.go | ||
exec_solaris.go | ||
exec_windows.go | ||
export.go | ||
getsize_unix.go | ||
health.go | ||
health_test.go | ||
image.go | ||
image_delete.go | ||
image_exporter.go | ||
image_history.go | ||
image_inspect.go | ||
image_pull.go | ||
image_push.go | ||
image_tag.go | ||
images.go | ||
import.go | ||
info.go | ||
info_unix.go | ||
info_windows.go | ||
inspect.go | ||
inspect_solaris.go | ||
inspect_unix.go | ||
inspect_windows.go | ||
keys.go | ||
keys_unsupported.go | ||
kill.go | ||
links.go | ||
links_linux.go | ||
links_linux_test.go | ||
links_notlinux.go | ||
list.go | ||
list_unix.go | ||
list_windows.go | ||
logdrivers_linux.go | ||
logdrivers_windows.go | ||
logs.go | ||
logs_test.go | ||
metrics.go | ||
monitor.go | ||
monitor_linux.go | ||
monitor_solaris.go | ||
monitor_windows.go | ||
mounts.go | ||
names.go | ||
network.go | ||
oci_linux.go | ||
oci_solaris.go | ||
oci_windows.go | ||
pause.go | ||
prune.go | ||
rename.go | ||
resize.go | ||
restart.go | ||
search.go | ||
search_test.go | ||
seccomp_disabled.go | ||
seccomp_linux.go | ||
seccomp_unsupported.go | ||
secrets.go | ||
secrets_linux.go | ||
secrets_unsupported.go | ||
selinux_linux.go | ||
selinux_unsupported.go | ||
start.go | ||
start_unix.go | ||
start_windows.go | ||
stats.go | ||
stats_collector.go | ||
stats_collector_solaris.go | ||
stats_collector_unix.go | ||
stats_collector_windows.go | ||
stats_unix.go | ||
stats_windows.go | ||
stop.go | ||
top_unix.go | ||
top_unix_test.go | ||
top_windows.go | ||
unpause.go | ||
update.go | ||
update_linux.go | ||
update_solaris.go | ||
update_windows.go | ||
volumes.go | ||
volumes_unit_test.go | ||
volumes_unix.go | ||
volumes_windows.go | ||
wait.go | ||
workdir.go |