(ctx context.Context, found containerwalker.Found)
| 72 | } |
| 73 | |
| 74 | func (x *containerInspector) Handler(ctx context.Context, found containerwalker.Found) error { |
| 75 | ctx, cancel := context.WithTimeout(ctx, 5*time.Second) |
| 76 | defer cancel() |
| 77 | |
| 78 | n, err := containerinspector.Inspect(ctx, found.Container) |
| 79 | if err != nil { |
| 80 | return err |
| 81 | } |
| 82 | |
| 83 | containerLabels, err := found.Container.Labels(ctx) |
| 84 | if err != nil { |
| 85 | return err |
| 86 | } |
| 87 | ports, err := portutil.LoadPortMappings(x.dataStore, x.namespace, n.ID, containerLabels) |
| 88 | if err != nil { |
| 89 | return err |
| 90 | } |
| 91 | if n.Process != nil && n.Process.NetNS != nil && len(ports) > 0 { |
| 92 | n.Process.NetNS.PortMappings = ports |
| 93 | } |
| 94 | |
| 95 | switch x.mode { |
| 96 | case "native": |
| 97 | x.entries = append(x.entries, n) |
| 98 | case "dockercompat": |
| 99 | d, err := dockercompat.ContainerFromNative(n) |
| 100 | if err != nil { |
| 101 | return err |
| 102 | } |
| 103 | if x.size { |
| 104 | resourceUsage, allResourceUsage, err := imgutil.ResourceUsage(ctx, x.snapshotter, d.ID) |
| 105 | if err == nil { |
| 106 | d.SizeRw = &resourceUsage.Size |
| 107 | d.SizeRootFs = &allResourceUsage.Size |
| 108 | } |
| 109 | } |
| 110 | x.entries = append(x.entries, d) |
| 111 | return err |
| 112 | default: |
| 113 | return fmt.Errorf("unknown mode %q", x.mode) |
| 114 | } |
| 115 | return nil |
| 116 | } |
nothing calls this directly
no test coverage detected