diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2021-09-15 09:10:12 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-15 09:10:12 -0400 |
commit | 4b6ffda31c258aadcbc6171a7dd745d0fb17393c (patch) | |
tree | b05003f91e2f1fd73dd1cd945241d3d7188d2b5f /libpod | |
parent | 4dd7bfdfaa3adf95af39fd45f74d49cea0c80064 (diff) | |
parent | 84005330aa3d25cf6134fffc1bf20354d4a3dd85 (diff) | |
download | podman-4b6ffda31c258aadcbc6171a7dd745d0fb17393c.tar.gz podman-4b6ffda31c258aadcbc6171a7dd745d0fb17393c.tar.bz2 podman-4b6ffda31c258aadcbc6171a7dd745d0fb17393c.zip |
Merge pull request #11409 from cdoern/podVolumes
Pod Volumes Support
Diffstat (limited to 'libpod')
-rw-r--r-- | libpod/container_inspect.go | 4 | ||||
-rw-r--r-- | libpod/define/pod_inspect.go | 2 | ||||
-rw-r--r-- | libpod/pod_api.go | 7 |
3 files changed, 11 insertions, 2 deletions
diff --git a/libpod/container_inspect.go b/libpod/container_inspect.go index 2ef4532cd..530160b2d 100644 --- a/libpod/container_inspect.go +++ b/libpod/container_inspect.go @@ -92,7 +92,7 @@ func (c *Container) getContainerInspectData(size bool, driverData *define.Driver } namedVolumes, mounts := c.sortUserVolumes(ctrSpec) - inspectMounts, err := c.getInspectMounts(namedVolumes, c.config.ImageVolumes, mounts) + inspectMounts, err := c.GetInspectMounts(namedVolumes, c.config.ImageVolumes, mounts) if err != nil { return nil, err } @@ -194,7 +194,7 @@ func (c *Container) getContainerInspectData(size bool, driverData *define.Driver // Get inspect-formatted mounts list. // Only includes user-specified mounts. Only includes bind mounts and named // volumes, not tmpfs volumes. -func (c *Container) getInspectMounts(namedVolumes []*ContainerNamedVolume, imageVolumes []*ContainerImageVolume, mounts []spec.Mount) ([]define.InspectMount, error) { +func (c *Container) GetInspectMounts(namedVolumes []*ContainerNamedVolume, imageVolumes []*ContainerImageVolume, mounts []spec.Mount) ([]define.InspectMount, error) { inspectMounts := []define.InspectMount{} // No mounts, return early diff --git a/libpod/define/pod_inspect.go b/libpod/define/pod_inspect.go index f91fd198d..b7a6e76b5 100644 --- a/libpod/define/pod_inspect.go +++ b/libpod/define/pod_inspect.go @@ -57,6 +57,8 @@ type InspectPodData struct { CPUQuota int64 `json:"cpu_quota,omitempty"` // CPUSetCPUs contains linux specific CPU data for the pod CPUSetCPUs string `json:"cpuset_cpus,omitempty"` + // Mounts contains volume related information for the pod + Mounts []InspectMount `json:"mounts,omitempty"` } // InspectPodInfraConfig contains the configuration of the pod's infra diff --git a/libpod/pod_api.go b/libpod/pod_api.go index 5f4d983b9..4e0acf950 100644 --- a/libpod/pod_api.go +++ b/libpod/pod_api.go @@ -582,6 +582,7 @@ func (p *Pod) Inspect() (*define.InspectPodData, error) { // Infra config contains detailed information on the pod's infra // container. var infraConfig *define.InspectPodInfraConfig + var inspectMounts []define.InspectMount if p.state.InfraContainerID != "" { infra, err := p.runtime.GetContainer(p.state.InfraContainerID) if err != nil { @@ -597,6 +598,11 @@ func (p *Pod) Inspect() (*define.InspectPodData, error) { infraConfig.CPUSetCPUs = p.ResourceLim().CPU.Cpus infraConfig.PidNS = p.PidMode() infraConfig.UserNS = p.UserNSMode() + namedVolumes, mounts := infra.sortUserVolumes(infra.Config().Spec) + inspectMounts, err = infra.GetInspectMounts(namedVolumes, infra.config.ImageVolumes, mounts) + if err != nil { + return nil, err + } if len(infra.Config().ContainerNetworkConfig.DNSServer) > 0 { infraConfig.DNSServer = make([]string, 0, len(infra.Config().ContainerNetworkConfig.DNSServer)) @@ -645,6 +651,7 @@ func (p *Pod) Inspect() (*define.InspectPodData, error) { CPUSetCPUs: p.ResourceLim().CPU.Cpus, CPUPeriod: p.CPUPeriod(), CPUQuota: p.CPUQuota(), + Mounts: inspectMounts, } return &inspectData, nil |