소스 검색

Merge pull request #12819 from Microsoft/10662-volumesrefactor

Windows: Refactor volumes
David Calavera 10 년 전
부모
커밋
f9c27bda1e
3개의 변경된 파일32개의 추가작업 그리고 16개의 파일을 삭제
  1. 0 16
      daemon/volumes.go
  2. 24 0
      daemon/volumes_linux.go
  3. 8 0
      daemon/volumes_windows.go

+ 0 - 16
daemon/volumes.go

@@ -13,7 +13,6 @@ import (
 	"github.com/docker/docker/pkg/chrootarchive"
 	"github.com/docker/docker/pkg/mount"
 	"github.com/docker/docker/pkg/symlink"
-	"github.com/docker/docker/pkg/system"
 )
 
 type volumeMount struct {
@@ -314,21 +313,6 @@ func copyExistingContents(source, destination string) error {
 	return copyOwnership(source, destination)
 }
 
-// copyOwnership copies the permissions and uid:gid of the source file
-// into the destination file
-func copyOwnership(source, destination string) error {
-	stat, err := system.Stat(source)
-	if err != nil {
-		return err
-	}
-
-	if err := os.Chown(destination, int(stat.Uid()), int(stat.Gid())); err != nil {
-		return err
-	}
-
-	return os.Chmod(destination, os.FileMode(stat.Mode()))
-}
-
 func (container *Container) mountVolumes() error {
 	for dest, source := range container.Volumes {
 		v := container.daemon.volumes.Get(source)

+ 24 - 0
daemon/volumes_linux.go

@@ -0,0 +1,24 @@
+// +build !windows
+
+package daemon
+
+import (
+	"os"
+
+	"github.com/docker/docker/pkg/system"
+)
+
+// copyOwnership copies the permissions and uid:gid of the source file
+// into the destination file
+func copyOwnership(source, destination string) error {
+	stat, err := system.Stat(source)
+	if err != nil {
+		return err
+	}
+
+	if err := os.Chown(destination, int(stat.Uid()), int(stat.Gid())); err != nil {
+		return err
+	}
+
+	return os.Chmod(destination, os.FileMode(stat.Mode()))
+}

+ 8 - 0
daemon/volumes_windows.go

@@ -0,0 +1,8 @@
+// +build windows
+
+package daemon
+
+// Not supported on Windows
+func copyOwnership(source, destination string) error {
+	return nil
+}