New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plugin ID uniqueness not enforced at registration #3210
Comments
The plugin URI Maybe we should use plugin URI instead? We may want to keep the required plugin consistent #3197 But please note that we need to handle backward compatibility if we change this. See #3196 |
Hm, but we do use ID to find plugin config, so it seems that we do assume ID is unique, maybe we should enforce the uniqueness as is suggested by this issue if we do expect it to be unique. If we only expect URI to be unique, we should probably indexing plugin config with URI as well. |
I think we may want to finalize this in 1.3, or else it will be even harder to change in the future, given that we introduced a new option |
Given that we've been using plugin ID for We should probably:
|
If the approach is to simply enforce uniqueness, and if no one else is already working on this, I'd be happy to take a pass at a PR to do this. @Random-Liu, @crosbymichael - should I move forward with this, or do we need more discussion on the approach? |
Closes containerd#3210 Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Closes containerd#3210 Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Description
Plugin registration does not enforce uniqueness of plugin IDs. This leads to an issue when attempting to disable plugins because when
plugin.Graph
loops through the registered plugins to match against the disabled list, it only removes the first plugin with a given ID (presumably on the assumption of uniqueness of plugin IDs).I'm opening this issue to:
GRPCPlugin
andContentPlugin
both named "content".Steps to reproduce the issue:
"content"
in thedisabled_plugins
slice in the containerd config fileDescribe the results you received:
It is not possible to disable a specific one of either the
GRPCPlugin
orContentPlugin
named "content" reliably.Describe the results you expected:
Disabling a plugin by providing it's ID in the config file.
Output of
containerd --version
:The text was updated successfully, but these errors were encountered: