From 8840b92da603f9db5ba2590f4b0836ad580fbe56 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Thu, 15 Mar 2018 17:09:31 -0400 Subject: Remove ability to specify mount label when mounting Signed-off-by: Matthew Heon Closes: #506 Approved by: rhatdan --- cmd/podman/mount.go | 2 +- completions/bash/podman | 1 - libpod/container_api.go | 27 ++++++++------------------- 3 files changed, 9 insertions(+), 21 deletions(-) diff --git a/cmd/podman/mount.go b/cmd/podman/mount.go index 6c6b89ee9..2d274cfaf 100644 --- a/cmd/podman/mount.go +++ b/cmd/podman/mount.go @@ -79,7 +79,7 @@ func mountCmd(c *cli.Context) error { if err != nil { return errors.Wrapf(err, "error looking up container %q", args[0]) } - mountPoint, err := ctr.Mount(ctr.MountLabel()) + mountPoint, err := ctr.Mount() if err != nil { return errors.Wrapf(err, "error mounting container %q", ctr.ID()) } diff --git a/completions/bash/podman b/completions/bash/podman index 7e60d1e81..d4334d68b 100644 --- a/completions/bash/podman +++ b/completions/bash/podman @@ -1000,7 +1000,6 @@ _podman_mount() { " local options_with_args=" - --label --format " diff --git a/libpod/container_api.go b/libpod/container_api.go index cfffa2232..ef94aa4c9 100644 --- a/libpod/container_api.go +++ b/libpod/container_api.go @@ -368,7 +368,7 @@ func (c *Container) Attach(noStdin bool, keys string) error { // Mount mounts a container's filesystem on the host // The path where the container has been mounted is returned -func (c *Container) Mount(label string) (string, error) { +func (c *Container) Mount() (string, error) { if !c.locked { c.lock.Lock() defer c.lock.Unlock() @@ -378,27 +378,11 @@ func (c *Container) Mount(label string) (string, error) { } } - // return mountpoint if container already mounted - if c.state.Mounted { - return c.state.Mountpoint, nil - } - - mountLabel := label - if label == "" { - mountLabel = c.config.MountLabel - } - mountPoint, err := c.runtime.store.Mount(c.ID(), mountLabel) - if err != nil { + if err := c.mountStorage(); err != nil { return "", err } - c.state.Mountpoint = mountPoint - c.state.Mounted = true - if err := c.save(); err != nil { - return "", err - } - - return mountPoint, nil + return c.state.Mountpoint, nil } // Unmount unmounts a container's filesystem on the host @@ -416,6 +400,11 @@ func (c *Container) Unmount() error { return errors.Wrapf(ErrCtrStateInvalid, "cannot remove storage for container %s as it is running or paused", c.ID()) } + // Check if we have active exec sessions + if len(c.state.ExecSessions) != 0 { + return errors.Wrapf(ErrCtrStateInvalid, "container %s has active exec sessions, refusing to clean up", c.ID()) + } + return c.cleanupStorage() } -- cgit v1.2.3-54-g00ecf