summaryrefslogtreecommitdiff
path: root/libpod
diff options
context:
space:
mode:
Diffstat (limited to 'libpod')
-rw-r--r--libpod/container_inspect.go4
-rw-r--r--libpod/define/info.go2
-rw-r--r--libpod/define/pod_inspect.go2
-rw-r--r--libpod/info.go6
-rw-r--r--libpod/pod_api.go7
5 files changed, 19 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/info.go b/libpod/define/info.go
index 73df80087..f4aa0031c 100644
--- a/libpod/define/info.go
+++ b/libpod/define/info.go
@@ -78,7 +78,9 @@ type IDMappings struct {
// for libpod
type DistributionInfo struct {
Distribution string `json:"distribution"`
+ Variant string `json:"variant,omitempty"`
Version string `json:"version"`
+ Codename string `json:"codename,omitempty"`
}
// ConmonInfo describes the conmon executable being used
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/info.go b/libpod/info.go
index 31ec9cdc1..2eba4bbff 100644
--- a/libpod/info.go
+++ b/libpod/info.go
@@ -370,9 +370,15 @@ func (r *Runtime) GetHostDistributionInfo() define.DistributionInfo {
if strings.HasPrefix(l.Text(), "ID=") {
dist.Distribution = strings.TrimPrefix(l.Text(), "ID=")
}
+ if strings.HasPrefix(l.Text(), "VARIANT_ID=") {
+ dist.Variant = strings.Trim(strings.TrimPrefix(l.Text(), "VARIANT_ID="), "\"")
+ }
if strings.HasPrefix(l.Text(), "VERSION_ID=") {
dist.Version = strings.Trim(strings.TrimPrefix(l.Text(), "VERSION_ID="), "\"")
}
+ if strings.HasPrefix(l.Text(), "VERSION_CODENAME=") {
+ dist.Codename = strings.Trim(strings.TrimPrefix(l.Text(), "VERSION_CODENAME="), "\"")
+ }
}
return dist
}
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