|
@@ -195,6 +195,7 @@ type Options struct {
|
|
func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, error) {
|
|
func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, error) {
|
|
if name != "" {
|
|
if name != "" {
|
|
logrus.Debugf("[graphdriver] trying provided driver: %s", name) // so the logs show specified driver
|
|
logrus.Debugf("[graphdriver] trying provided driver: %s", name) // so the logs show specified driver
|
|
|
|
+ logDeprecatedWarning(name)
|
|
return GetDriver(name, pg, config)
|
|
return GetDriver(name, pg, config)
|
|
}
|
|
}
|
|
|
|
|
|
@@ -232,6 +233,7 @@ func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, err
|
|
}
|
|
}
|
|
|
|
|
|
logrus.Infof("[graphdriver] using prior storage driver: %s", name)
|
|
logrus.Infof("[graphdriver] using prior storage driver: %s", name)
|
|
|
|
+ logDeprecatedWarning(name)
|
|
return driver, nil
|
|
return driver, nil
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -245,6 +247,7 @@ func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, err
|
|
}
|
|
}
|
|
return nil, err
|
|
return nil, err
|
|
}
|
|
}
|
|
|
|
+ logDeprecatedWarning(name)
|
|
return driver, nil
|
|
return driver, nil
|
|
}
|
|
}
|
|
|
|
|
|
@@ -257,6 +260,7 @@ func New(name string, pg plugingetter.PluginGetter, config Options) (Driver, err
|
|
}
|
|
}
|
|
return nil, err
|
|
return nil, err
|
|
}
|
|
}
|
|
|
|
+ logDeprecatedWarning(name)
|
|
return driver, nil
|
|
return driver, nil
|
|
}
|
|
}
|
|
return nil, fmt.Errorf("No supported storage backend found")
|
|
return nil, fmt.Errorf("No supported storage backend found")
|
|
@@ -305,3 +309,20 @@ func isEmptyDir(name string) bool {
|
|
}
|
|
}
|
|
return false
|
|
return false
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+// isDeprecated checks if a storage-driver is marked "deprecated"
|
|
|
|
+func isDeprecated(name string) bool {
|
|
|
|
+ switch name {
|
|
|
|
+ // NOTE: when deprecating a driver, update daemon.fillDriverInfo() accordingly
|
|
|
|
+ case "devicemapper":
|
|
|
|
+ return true
|
|
|
|
+ }
|
|
|
|
+ return false
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+// logDeprecatedWarning logs a warning if the given storage-driver is marked "deprecated"
|
|
|
|
+func logDeprecatedWarning(name string) {
|
|
|
|
+ if isDeprecated(name) {
|
|
|
|
+ logrus.Warnf("[graphdriver] WARNING: the %s storage-driver is deprecated, and will be removed in a future release", name)
|
|
|
|
+ }
|
|
|
|
+}
|