Skip to content

Commit d7cb25d

Browse files
committed
cri: add deprecation warning for mirrors
Signed-off-by: Samuel Karp <[email protected]>
1 parent 58cc275 commit d7cb25d

3 files changed

Lines changed: 36 additions & 0 deletions

File tree

pkg/cri/config/config.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -397,6 +397,7 @@ func ValidatePluginConfig(ctx context.Context, c *PluginConfig) ([]deprecation.W
397397
if useConfigPath {
398398
return warnings, errors.New("`mirrors` cannot be set when `config_path` is provided")
399399
}
400+
warnings = append(warnings, deprecation.CRIRegistryMirrors)
400401
log.G(ctx).Warning("`mirrors` is deprecated, please use `config_path` instead")
401402
}
402403

pkg/cri/config/config_test.go

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,37 @@ func TestValidateConfig(t *testing.T) {
115115
},
116116
expectedErr: "`mirrors` cannot be set when `config_path` is provided",
117117
},
118+
"deprecated mirrors": {
119+
config: &PluginConfig{
120+
ContainerdConfig: ContainerdConfig{
121+
DefaultRuntimeName: RuntimeDefault,
122+
Runtimes: map[string]Runtime{
123+
RuntimeDefault: {},
124+
},
125+
},
126+
Registry: Registry{
127+
Mirrors: map[string]Mirror{
128+
"example.com": {},
129+
},
130+
},
131+
},
132+
expected: &PluginConfig{
133+
ContainerdConfig: ContainerdConfig{
134+
DefaultRuntimeName: RuntimeDefault,
135+
Runtimes: map[string]Runtime{
136+
RuntimeDefault: {
137+
Sandboxer: string(ModePodSandbox),
138+
},
139+
},
140+
},
141+
Registry: Registry{
142+
Mirrors: map[string]Mirror{
143+
"example.com": {},
144+
},
145+
},
146+
},
147+
warnings: []deprecation.Warning{deprecation.CRIRegistryMirrors},
148+
},
118149
"privileged_without_host_devices_all_devices_allowed without privileged_without_host_devices": {
119150
config: &PluginConfig{
120151
ContainerdConfig: ContainerdConfig{

pkg/deprecation/deprecation.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,16 @@ const (
2525
PullSchema1Image Warning = Prefix + "pull-schema-1-image"
2626
// GoPluginLibrary is a warning for the use of dynamic library Go plugins
2727
GoPluginLibrary Warning = Prefix + "go-plugin-library"
28+
// CRIRegistryMirrors is a warning for the use of the `mirrors` property
29+
CRIRegistryMirrors Warning = Prefix + "cri-registry-mirrors"
2830
)
2931

3032
var messages = map[Warning]string{
3133
PullSchema1Image: "Schema 1 images are deprecated since containerd v1.7 and removed in containerd v2.0. " +
3234
`Since containerd v1.7.8, schema 1 images are identified by the "io.containerd.image/converted-docker-schema1" label.`,
3335
GoPluginLibrary: "Dynamically-linked Go plugins as containerd runtimes are deprecated since containerd v2.0 and removed in containerd v2.1.",
36+
CRIRegistryMirrors: "The `mirrors` property of `[plugins.\"io.containerd.grpc.v1.cri\".registry]` is deprecated since containerd v1.5 and will be removed in containerd v2.0." +
37+
"Use `config_path` instead.",
3438
}
3539

3640
// Valid checks whether a given Warning is valid

0 commit comments

Comments
 (0)