platformCompressionMap prepares a mapping of platformComparable -> CompressionAlgorithmNames for given digests
(list internalManifest.List, instanceDigests []digest.Digest)
| 71 | |
| 72 | // platformCompressionMap prepares a mapping of platformComparable -> CompressionAlgorithmNames for given digests |
| 73 | func platformCompressionMap(list internalManifest.List, instanceDigests []digest.Digest) (map[platformComparable]*set.Set[string], error) { |
| 74 | res := make(map[platformComparable]*set.Set[string]) |
| 75 | for _, instanceDigest := range instanceDigests { |
| 76 | instanceDetails, err := list.Instance(instanceDigest) |
| 77 | if err != nil { |
| 78 | return nil, fmt.Errorf("getting details for instance %s: %w", instanceDigest, err) |
| 79 | } |
| 80 | platform := platformV1ToPlatformComparable(instanceDetails.ReadOnly.Platform) |
| 81 | platformSet, ok := res[platform] |
| 82 | if !ok { |
| 83 | platformSet = set.New[string]() |
| 84 | res[platform] = platformSet |
| 85 | } |
| 86 | platformSet.AddSeq(slices.Values(instanceDetails.ReadOnly.CompressionAlgorithmNames)) |
| 87 | } |
| 88 | return res, nil |
| 89 | } |
| 90 | |
| 91 | func validateCompressionVariantExists(input []OptionCompressionVariant) error { |
| 92 | for _, option := range input { |
no test coverage detected
searching dependent graphs…