Merge pull request #36009 from ripcurld0/small_nitpick

Small nitpick: create ErrVolumeTargetIsRoot in the volume package
This commit is contained in:
Sebastiaan van Stijn 2018-01-15 12:19:23 +01:00 committed by GitHub
commit fb13aeef0f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 3 deletions

View file

@ -2,7 +2,6 @@ package volume
import (
"errors"
"fmt"
"path"
"github.com/docker/docker/api/types/mount"
@ -10,7 +9,7 @@ import (
var lcowSpecificValidators mountValidator = func(m *mount.Mount) error {
if path.Clean(m.Target) == "/" {
return fmt.Errorf("invalid specification: destination can't be '/'")
return ErrVolumeTargetIsRoot
}
if m.Type == mount.TypeNamedPipe {
return errors.New("Linux containers on Windows do not support named pipe mounts")

View file

@ -29,7 +29,7 @@ func linuxSplitRawSpec(raw string) ([]string, error) {
func linuxValidateNotRoot(p string) error {
p = path.Clean(strings.Replace(p, `\`, `/`, -1))
if p == "/" {
return fmt.Errorf("invalid specification: destination can't be '/'")
return ErrVolumeTargetIsRoot
}
return nil
}

View file

@ -1,6 +1,7 @@
package volume
import (
"errors"
"runtime"
"github.com/docker/docker/api/types/mount"
@ -13,6 +14,10 @@ const (
OSWindows = "windows"
)
// ErrVolumeTargetIsRoot is returned when the target destination is root.
// It's used by both LCOW and Linux parsers.
var ErrVolumeTargetIsRoot = errors.New("invalid specification: destination can't be '/'")
// Parser represents a platform specific parser for mount expressions
type Parser interface {
ParseMountRaw(raw, volumeDriver string) (*MountPoint, error)