Windows: Add volume support

Signed-off-by: John Howard <jhoward@microsoft.com>
This commit is contained in:
John Howard 2015-09-09 19:23:06 -07:00 committed by Vincent Demeester
parent 74d0203af0
commit af6e545164
2 changed files with 0 additions and 61 deletions

View File

@ -9,7 +9,6 @@ import (
"strings" "strings"
"github.com/docker/docker/pkg/parsers" "github.com/docker/docker/pkg/parsers"
"github.com/docker/docker/volume"
) )
var ( var (
@ -214,14 +213,6 @@ func ValidateDevice(val string) (string, error) {
return validatePath(val, ValidDeviceMode) return validatePath(val, ValidDeviceMode)
} }
// ValidatePath validates a path for volumes
// It will make sure 'val' is in the form:
// [host-dir:]container-path[:rw|ro]
// It also validates the mount mode.
func ValidatePath(val string) (string, error) {
return validatePath(val, volume.ValidMountMode)
}
func validatePath(val string, validator func(string) bool) (string, error) { func validatePath(val string, validator func(string) bool) (string, error) {
var containerPath string var containerPath string
var mode string var mode string

View File

@ -274,58 +274,6 @@ func TestValidateLink(t *testing.T) {
} }
} }
func TestValidatePath(t *testing.T) {
valid := []string{
"/home",
"/home:/home",
"/home:/something/else",
"/with space",
"/home:/with space",
"relative:/absolute-path",
"hostPath:/containerPath:ro",
"/hostPath:/containerPath:rw",
"/rw:/ro",
"/path:rw",
"/path:ro",
"/rw:rw",
}
invalid := map[string]string{
"": "bad format for path: ",
"./": "./ is not an absolute path",
"../": "../ is not an absolute path",
"/:../": "../ is not an absolute path",
"/:path": "path is not an absolute path",
":": "bad format for path: :",
"/tmp:": " is not an absolute path",
":test": "bad format for path: :test",
":/test": "bad format for path: :/test",
"tmp:": " is not an absolute path",
":test:": "bad format for path: :test:",
"::": "bad format for path: ::",
":::": "bad format for path: :::",
"/tmp:::": "bad format for path: /tmp:::",
":/tmp::": "bad format for path: :/tmp::",
"path:ro": "path is not an absolute path",
"/path:/path:sw": "bad mode specified: sw",
"/path:/path:rwz": "bad mode specified: rwz",
}
for _, path := range valid {
if _, err := ValidatePath(path); err != nil {
t.Fatalf("ValidatePath(`%q`) should succeed: error %q", path, err)
}
}
for path, expectedError := range invalid {
if _, err := ValidatePath(path); err == nil {
t.Fatalf("ValidatePath(`%q`) should have failed validation", path)
} else {
if err.Error() != expectedError {
t.Fatalf("ValidatePath(`%q`) error should contain %q, got %q", path, expectedError, err.Error())
}
}
}
}
func TestValidateDevice(t *testing.T) { func TestValidateDevice(t *testing.T) {
valid := []string{ valid := []string{
"/home", "/home",