mirror of
https://github.com/moby/moby.git
synced 2025-04-18 20:44:11 +03:00
container: Container.SetupWorkingDirectory: remove use of pkg/idtools
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
parent
3e993060ee
commit
97688e8d06
@ -30,7 +30,6 @@ import (
|
||||
"github.com/docker/docker/image"
|
||||
libcontainerdtypes "github.com/docker/docker/libcontainerd/types"
|
||||
"github.com/docker/docker/oci"
|
||||
"github.com/docker/docker/pkg/idtools"
|
||||
"github.com/docker/docker/restartmanager"
|
||||
"github.com/docker/docker/volume"
|
||||
volumemounts "github.com/docker/docker/volume/mounts"
|
||||
@ -321,7 +320,7 @@ func (container *Container) CommitInMemory(store *ViewDB) error {
|
||||
}
|
||||
|
||||
// SetupWorkingDirectory sets up the container's working directory as set in container.Config.WorkingDir
|
||||
func (container *Container) SetupWorkingDirectory(rootIdentity idtools.Identity) error {
|
||||
func (container *Container) SetupWorkingDirectory(uid int, gid int) error {
|
||||
if container.Config.WorkingDir == "" {
|
||||
return nil
|
||||
}
|
||||
@ -332,7 +331,7 @@ func (container *Container) SetupWorkingDirectory(rootIdentity idtools.Identity)
|
||||
return err
|
||||
}
|
||||
|
||||
if err := user.MkdirAllAndChown(pth, 0o755, rootIdentity.UID, rootIdentity.GID, user.WithOnlyNew); err != nil {
|
||||
if err := user.MkdirAllAndChown(pth, 0o755, uid, gid, user.WithOnlyNew); err != nil {
|
||||
pthInfo, err2 := os.Stat(pth)
|
||||
if err2 == nil && pthInfo != nil && !pthInfo.IsDir() {
|
||||
return errors.Errorf("Cannot mkdir: %s is not a directory", container.Config.WorkingDir)
|
||||
|
@ -28,8 +28,7 @@ func (daemon *Daemon) createContainerOSSpecificSettings(ctx context.Context, con
|
||||
}
|
||||
defer daemon.Unmount(container)
|
||||
|
||||
uid, gid := daemon.idMapping.RootPair()
|
||||
if err := container.SetupWorkingDirectory(idtools.Identity{UID: uid, GID: gid}); err != nil {
|
||||
if err := container.SetupWorkingDirectory(daemon.idMapping.RootPair()); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,6 @@ import (
|
||||
"github.com/docker/docker/internal/rootless/specconv"
|
||||
"github.com/docker/docker/oci"
|
||||
"github.com/docker/docker/oci/caps"
|
||||
"github.com/docker/docker/pkg/idtools"
|
||||
volumemounts "github.com/docker/docker/volume/mounts"
|
||||
"github.com/moby/sys/mount"
|
||||
"github.com/moby/sys/mountinfo"
|
||||
@ -712,8 +711,7 @@ func withCommonOptions(daemon *Daemon, daemonCfg *dconfig.Config, c *container.C
|
||||
Path: c.BaseFS,
|
||||
Readonly: c.HostConfig.ReadonlyRootfs,
|
||||
}
|
||||
uid, gid := daemon.idMapping.RootPair()
|
||||
if err := c.SetupWorkingDirectory(idtools.Identity{UID: uid, GID: gid}); err != nil {
|
||||
if err := c.SetupWorkingDirectory(daemon.idMapping.RootPair()); err != nil {
|
||||
return err
|
||||
}
|
||||
cwd := c.Config.WorkingDir
|
||||
|
@ -1,7 +1,5 @@
|
||||
package daemon // import "github.com/docker/docker/daemon"
|
||||
|
||||
import "github.com/docker/docker/pkg/idtools"
|
||||
|
||||
// ContainerCreateWorkdir creates the working directory. This solves the
|
||||
// issue arising from https://github.com/docker/docker/issues/27545,
|
||||
// which was initially fixed by https://github.com/docker/docker/pull/27884. But that fix
|
||||
@ -18,6 +16,5 @@ func (daemon *Daemon) ContainerCreateWorkdir(cID string) error {
|
||||
return err
|
||||
}
|
||||
defer daemon.Unmount(container)
|
||||
uid, gid := daemon.idMapping.RootPair()
|
||||
return container.SetupWorkingDirectory(idtools.Identity{UID: uid, GID: gid})
|
||||
return container.SetupWorkingDirectory(daemon.idMapping.RootPair())
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user