aboutsummaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorMiloslav Trmač <mitr@redhat.com>2022-08-24 20:36:14 +0200
committerMiloslav Trmač <mitr@redhat.com>2022-08-25 01:52:59 +0200
commitbba306788aba723d8555281eb07edd90a5890e64 (patch)
tree49cd2bc660fa0bfd093077d2b67443f1388dc546 /pkg
parent2f6c145e86027da7ecf352331db70f5e688701b6 (diff)
downloadpodman-bba306788aba723d8555281eb07edd90a5890e64.tar.gz
podman-bba306788aba723d8555281eb07edd90a5890e64.tar.bz2
podman-bba306788aba723d8555281eb07edd90a5890e64.zip
Reorganize descriptionsOfPolicyRequirements a bit
Do the registries.d lookup once, separately from building an entry, so that we can share it across entries. Also prepare a separate res to allow adding multiple entries. Signed-off-by: Miloslav Trmač <mitr@redhat.com>
Diffstat (limited to 'pkg')
-rw-r--r--pkg/trust/trust.go25
1 files changed, 16 insertions, 9 deletions
diff --git a/pkg/trust/trust.go b/pkg/trust/trust.go
index 7412fab20..7b1b798ca 100644
--- a/pkg/trust/trust.go
+++ b/pkg/trust/trust.go
@@ -84,6 +84,18 @@ func getPolicyShowOutput(policyContentStruct policyContent, systemRegistriesDirP
// descriptionsOfPolicyRequirements turns reqs into user-readable policy entries, with Transport/Name/Reponame coming from template, potentially looking up scope (which may be "") in registryConfigs.
func descriptionsOfPolicyRequirements(reqs []repoContent, template Policy, registryConfigs *registryConfiguration, scope string, idReader gpgIDReader) []*Policy {
+ res := []*Policy{}
+
+ var lookasidePath string
+ registryNamespace := registriesDConfigurationForScope(registryConfigs, scope)
+ if registryNamespace != nil {
+ if registryNamespace.Lookaside != "" {
+ lookasidePath = registryNamespace.Lookaside
+ } else { // incl. registryNamespace.SigStore == ""
+ lookasidePath = registryNamespace.SigStore
+ }
+ }
+
entry := template
entry.Type = trustTypeDescription(reqs[0].Type)
uids := []string{}
@@ -96,14 +108,9 @@ func descriptionsOfPolicyRequirements(reqs []repoContent, template Policy, regis
}
}
entry.GPGId = strings.Join(uids, ", ")
+ entry.SignatureStore = lookasidePath
- registryNamespace := registriesDConfigurationForScope(registryConfigs, scope)
- if registryNamespace != nil {
- if registryNamespace.Lookaside != "" {
- entry.SignatureStore = registryNamespace.Lookaside
- } else { // incl. registryNamespace.SigStore == ""
- entry.SignatureStore = registryNamespace.SigStore
- }
- }
- return []*Policy{&entry}
+ res = append(res, &entry)
+
+ return res
}