mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Merge pull request #12819 from Microsoft/10662-volumesrefactor
Windows: Refactor volumes
This commit is contained in:
commit
f9c27bda1e
3 changed files with 32 additions and 16 deletions
|
@ -13,7 +13,6 @@ import (
|
||||||
"github.com/docker/docker/pkg/chrootarchive"
|
"github.com/docker/docker/pkg/chrootarchive"
|
||||||
"github.com/docker/docker/pkg/mount"
|
"github.com/docker/docker/pkg/mount"
|
||||||
"github.com/docker/docker/pkg/symlink"
|
"github.com/docker/docker/pkg/symlink"
|
||||||
"github.com/docker/docker/pkg/system"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type volumeMount struct {
|
type volumeMount struct {
|
||||||
|
@ -314,21 +313,6 @@ func copyExistingContents(source, destination string) error {
|
||||||
return copyOwnership(source, destination)
|
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 {
|
func (container *Container) mountVolumes() error {
|
||||||
for dest, source := range container.Volumes {
|
for dest, source := range container.Volumes {
|
||||||
v := container.daemon.volumes.Get(source)
|
v := container.daemon.volumes.Get(source)
|
||||||
|
|
24
daemon/volumes_linux.go
Normal file
24
daemon/volumes_linux.go
Normal file
|
@ -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
daemon/volumes_windows.go
Normal file
8
daemon/volumes_windows.go
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
// +build windows
|
||||||
|
|
||||||
|
package daemon
|
||||||
|
|
||||||
|
// Not supported on Windows
|
||||||
|
func copyOwnership(source, destination string) error {
|
||||||
|
return nil
|
||||||
|
}
|
Loading…
Reference in a new issue