8000 Merge pull request #38017 from thaJeztah/add_devicemapper_deprecation… · moby/moby@512531f · GitHub
[go: up one dir, main page]

Skip to content

Commit 512531f

Browse files
authored
Merge pull request #38017 from thaJeztah/add_devicemapper_deprecation_warning
Deprecate "devicemapper" storage driver, and add warning
2 parents 1f48759 + 06fcabb commit 512531f

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

daemon/graphdriver/driver.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ type Options struct {
195195
func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, error) {
196196
if name != "" {
197197
logrus.Debugf("[graphdriver] trying provided driver: %s", name) // so the logs show specified driver
198+
logDeprecatedWarning(name)
198199
return GetDriver(name, pg, config)
199200
}
200201

@@ -232,6 +233,7 @@ func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, err
232233
}
233234

234235
logrus.Infof("[graphdriver] using prior storage driver: %s", name)
236+
logDeprecatedWarning(name)
235237
return driver, nil
236238
}
237239
}
@@ -245,6 +247,7 @@ func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, err
245247
}
246248
return nil, err
247249
}
250+
logDeprecatedWarning(name)
248251
return driver, nil
249252
}
250253

@@ -257,6 +260,7 @@ func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, err
257260
}
258261
return nil, err
259262
}
263+
logDeprecatedWarning(name)
260264
return driver, nil
261265
}
262266
return nil, fmt.Errorf("No supported storage backend found")
@@ -305,3 +309,20 @@ func isEmptyDir(name string) bool {
305309
}
306310
return false
307311
}
312+
313+
// isDeprecated checks if a storage-driver is marked "deprecated"
314+
func isDeprecated(name string) bool {
315+
switch name {
316+
// NOTE: when deprecating a driver, update daemon.fillDriverInfo() accordingly
317+
case "devicemapper":
318+
return true
319+
}
320+
return false
321+
}
322+
323+
// logDeprecatedWarning logs a warning if the given storage-driver is marked "deprecated"
324+
func logDeprecatedWarning(name string) {
325+
if isDeprecated(name) {
326+
logrus.Warnf("[graphdriver] WARNING: the %s storage-driver is deprecated, and will be removed in a future release", name)
327+
}
328+
}

daemon/info.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,10 @@ func (daemon *Daemon) fillDriverInfo(v *types.Info) {
131131
if len(daemon.graphDrivers) > 1 {
132132
drivers += fmt.Sprintf(" (%s) ", os)
133133
}
134+
switch gd {
135+
case "devicemapper":
136+
v.Warnings = append(v.Warnings, fmt.Sprintf("WARNING: the %s storage-driver is deprecated, and will be removed in a future release.", gd))
137+
}
134138
}
135139
drivers = strings.TrimSpace(drivers)
136140

0 commit comments

Comments
 (0)
0