summaryrefslogtreecommitdiff
path: root/libpod/container_internal.go
diff options
context:
space:
mode:
authorumohnani8 <umohnani@redhat.com>2018-06-11 15:27:42 -0400
committerAtomic Bot <atomic-devel@projectatomic.io>2018-07-09 19:30:03 +0000
commit4855998f1cf533b27e48b2ded5541841fe6a3ea6 (patch)
tree7bb7e276e04f7d235e667bf088e5c87e43a74924 /libpod/container_internal.go
parentc7424b69911222c2dc92a41308685f1e6d36fb53 (diff)
downloadpodman-4855998f1cf533b27e48b2ded5541841fe6a3ea6.tar.gz
podman-4855998f1cf533b27e48b2ded5541841fe6a3ea6.tar.bz2
podman-4855998f1cf533b27e48b2ded5541841fe6a3ea6.zip
Add --volumes-from flag to podman run and create
podman now supports --volumes-from flag, which allows users to add all the volumes an existing container has to a new one. Signed-off-by: umohnani8 <umohnani@redhat.com> Closes: #931 Approved by: mheon
Diffstat (limited to 'libpod/container_internal.go')
-rw-r--r--libpod/container_internal.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/libpod/container_internal.go b/libpod/container_internal.go
index 94cd74c09..eb9b39a02 100644
--- a/libpod/container_internal.go
+++ b/libpod/container_internal.go
@@ -1108,7 +1108,7 @@ func (c *Container) generateHosts() (string, error) {
return c.writeStringToRundir("hosts", hosts)
}
-func (c *Container) addImageVolumes(ctx context.Context, g *generate.Generator) error {
+func (c *Container) addLocalVolumes(ctx context.Context, g *generate.Generator) error {
mountPoint := c.state.Mountpoint
if !c.state.Mounted {
return errors.Wrapf(ErrInternal, "container is not mounted")
@@ -1121,6 +1121,17 @@ func (c *Container) addImageVolumes(ctx context.Context, g *generate.Generator)
if err != nil {
return err
}
+ // Add the built-in volumes of the container passed in to --volumes-from
+ for _, vol := range c.config.LocalVolumes {
+ if imageData.ContainerConfig.Volumes == nil {
+ imageData.ContainerConfig.Volumes = map[string]struct{}{
+ vol: {},
+ }
+ } else {
+ imageData.ContainerConfig.Volumes[vol] = struct{}{}
+ }
+ }
+
for k := range imageData.ContainerConfig.Volumes {
mount := spec.Mount{
Destination: k,