INNER CODE UNIT · Go
fetchContainerDetails
kubearmor/KubeArmor · deployments/podman/Hook/main.go:292
func fetchContainerDetails(containerID, metadataPath string) (MetadataDetails, error) {
data, err := os.ReadFile(metadataPath)
if err != nil {
return MetadataDetails{}, fmt.Errorf("unable to read metadata file: %w", err)
}
var containers []ContainerMetadata
err = json.Unmarshal(data, &containers)
if err != nil {
return MetadataDetails{}, fmt.Errorf("unable to parse metadata file: %w", err)
}
for _, container := range containers {
if container.ID == containerID {
var details MetadataDetails
err := json.Unmarshal([]byte(container.Metadata), &details)
if err != nil {
return MetadataDetails{}, fmt.Errorf("unable to parse container metadata: %w", err)