From 5b8dfbd1115ce129feea417b1f88acabf182b31c Mon Sep 17 00:00:00 2001 From: Kern Walster Date: Thu, 6 Jun 2024 16:43:36 +0000 Subject: [PATCH] Allow proxy plugins to have capabilities Signed-off-by: Kern Walster --- cmd/containerd/server/config/config.go | 9 +++++---- cmd/containerd/server/server.go | 1 + 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/cmd/containerd/server/config/config.go b/cmd/containerd/server/config/config.go index 5979ddcd5..c77f165e4 100644 --- a/cmd/containerd/server/config/config.go +++ b/cmd/containerd/server/config/config.go @@ -234,10 +234,11 @@ type CgroupConfig struct { // ProxyPlugin provides a proxy plugin configuration type ProxyPlugin struct { - Type string `toml:"type"` - Address string `toml:"address"` - Platform string `toml:"platform"` - Exports map[string]string `toml:"exports"` + Type string `toml:"type"` + Address string `toml:"address"` + Platform string `toml:"platform"` + Exports map[string]string `toml:"exports"` + Capabilities []string `toml:"capabilities"` } // Decode unmarshals a plugin specific configuration by plugin id diff --git a/cmd/containerd/server/server.go b/cmd/containerd/server/server.go index 3be36f971..6b235e358 100644 --- a/cmd/containerd/server/server.go +++ b/cmd/containerd/server/server.go @@ -542,6 +542,7 @@ func LoadPlugins(ctx context.Context, config *srvconfig.Config) ([]plugin.Regist InitFn: func(ic *plugin.InitContext) (interface{}, error) { ic.Meta.Exports = exports ic.Meta.Platforms = append(ic.Meta.Platforms, p) + ic.Meta.Capabilities = pp.Capabilities conn, err := clients.getClient(address) if err != nil { return nil, err