mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Skip evaluation of symlinks to data root on IoT Core
Signed-off-by: Darren Stahl <darst@microsoft.com>
This commit is contained in:
parent
9c446a4d00
commit
8e71b1e210
4 changed files with 23 additions and 3 deletions
|
@ -40,7 +40,6 @@ import (
|
|||
"github.com/docker/docker/layer"
|
||||
"github.com/docker/docker/libcontainerd"
|
||||
"github.com/docker/docker/migrate/v1"
|
||||
"github.com/docker/docker/pkg/fileutils"
|
||||
"github.com/docker/docker/pkg/idtools"
|
||||
"github.com/docker/docker/pkg/plugingetter"
|
||||
"github.com/docker/docker/pkg/registrar"
|
||||
|
@ -537,7 +536,7 @@ func NewDaemon(config *config.Config, registryService registry.Service, containe
|
|||
if err != nil {
|
||||
return nil, fmt.Errorf("Unable to get the TempDir under %s: %s", config.Root, err)
|
||||
}
|
||||
realTmp, err := fileutils.ReadSymlinkedDirectory(tmp)
|
||||
realTmp, err := getRealPath(tmp)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("Unable to get the full path to the TempDir (%s): %s", tmp, err)
|
||||
}
|
||||
|
@ -1143,7 +1142,7 @@ func CreateDaemonRoot(config *config.Config) error {
|
|||
if _, err := os.Stat(config.Root); err != nil && os.IsNotExist(err) {
|
||||
realRoot = config.Root
|
||||
} else {
|
||||
realRoot, err = fileutils.ReadSymlinkedDirectory(config.Root)
|
||||
realRoot, err = getRealPath(config.Root)
|
||||
if err != nil {
|
||||
return fmt.Errorf("Unable to get the full path to root (%s): %s", config.Root, err)
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@ import (
|
|||
"strings"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/docker/docker/pkg/fileutils"
|
||||
"github.com/docker/docker/pkg/mount"
|
||||
)
|
||||
|
||||
|
@ -86,3 +87,7 @@ func getCleanPatterns(id string) (regexps []*regexp.Regexp) {
|
|||
}
|
||||
return
|
||||
}
|
||||
|
||||
func getRealPath(path string) (string, error) {
|
||||
return fileutils.ReadSymlinkedDirectory(path)
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ import (
|
|||
"github.com/docker/docker/container"
|
||||
"github.com/docker/docker/image"
|
||||
"github.com/docker/docker/layer"
|
||||
"github.com/docker/docker/pkg/fileutils"
|
||||
"github.com/docker/docker/pkg/idtools"
|
||||
"github.com/docker/docker/pkg/parsers/kernel"
|
||||
"github.com/docker/docker/pkg/sysinfo"
|
||||
|
@ -525,3 +526,7 @@ func setupDaemonProcess(config *Config) error {
|
|||
func (daemon *Daemon) setupSeccompProfile() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func getRealPath(path string) (string, error) {
|
||||
return fileutils.ReadSymlinkedDirectory(path)
|
||||
}
|
||||
|
|
|
@ -14,6 +14,7 @@ import (
|
|||
"github.com/docker/docker/container"
|
||||
"github.com/docker/docker/daemon/config"
|
||||
"github.com/docker/docker/image"
|
||||
"github.com/docker/docker/pkg/fileutils"
|
||||
"github.com/docker/docker/pkg/idtools"
|
||||
"github.com/docker/docker/pkg/parsers"
|
||||
"github.com/docker/docker/pkg/platform"
|
||||
|
@ -628,3 +629,13 @@ func (daemon *Daemon) verifyVolumesInfo(container *container.Container) error {
|
|||
func (daemon *Daemon) setupSeccompProfile() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func getRealPath(path string) (string, error) {
|
||||
if system.IsIoTCore() {
|
||||
// Due to https://github.com/golang/go/issues/20506, path expansion
|
||||
// does not work correctly on the default IoT Core configuration.
|
||||
// TODO @darrenstahlmsft remove this once golang/go/20506 is fixed
|
||||
return path, nil
|
||||
}
|
||||
return fileutils.ReadSymlinkedDirectory(path)
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue