Use id/policy-id in mapping.yaml (#32)
This commit is contained in:
@@ -28,7 +28,7 @@ type PolicyMappings struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type PolicyMapping struct {
|
type PolicyMapping struct {
|
||||||
Name string `json:"namespace"`
|
Id string `json:"id"`
|
||||||
Description string `json:"description"`
|
Description string `json:"description"`
|
||||||
Origin PolicyOrigin `json:"origin"`
|
Origin PolicyOrigin `json:"origin"`
|
||||||
Files []PolicyMappingFile `json:"files"`
|
Files []PolicyMappingFile `json:"files"`
|
||||||
@@ -39,8 +39,8 @@ type PolicyMappingFile struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type PolicyMirror struct {
|
type PolicyMirror struct {
|
||||||
Name string `json:"name"`
|
PolicyId string `json:"policy-id"`
|
||||||
Mirror MirrorSpec `json:"mirror"`
|
Mirror MirrorSpec `json:"mirror"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type MirrorSpec struct {
|
type MirrorSpec struct {
|
||||||
@@ -152,7 +152,7 @@ func findPolicyMatch(named reference.Named, mappings *PolicyMappings) (*PolicyMa
|
|||||||
if slices.Contains(mirror.Mirror.Domains, reference.Domain(named)) &&
|
if slices.Contains(mirror.Mirror.Domains, reference.Domain(named)) &&
|
||||||
strings.HasPrefix(reference.Path(named), mirror.Mirror.Prefix) {
|
strings.HasPrefix(reference.Path(named), mirror.Mirror.Prefix) {
|
||||||
for _, mapping := range mappings.Policies {
|
for _, mapping := range mappings.Policies {
|
||||||
if mapping.Name == mirror.Name {
|
if mapping.Id == mirror.PolicyId {
|
||||||
return &mapping, nil
|
return &mapping, nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -189,7 +189,7 @@ func ResolvePolicy(ctx context.Context, resolver oci.AttestationResolver, opts *
|
|||||||
// it's a mirror of a tuf policy
|
// it's a mirror of a tuf policy
|
||||||
if mirror != nil {
|
if mirror != nil {
|
||||||
for _, mapping := range tufMappings.Policies {
|
for _, mapping := range tufMappings.Policies {
|
||||||
if mapping.Name == mirror.Name {
|
if mapping.Id == mirror.PolicyId {
|
||||||
return resolveTufPolicy(opts, &mapping)
|
return resolveTufPolicy(opts, &mapping)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ policies:
|
|||||||
- origin:
|
- origin:
|
||||||
domain: docker.io
|
domain: docker.io
|
||||||
prefix: library/
|
prefix: library/
|
||||||
name: docker-official-images
|
id: docker-official-images
|
||||||
description: Docker Official Images
|
description: Docker Official Images
|
||||||
files:
|
files:
|
||||||
- path: doi/policy.rego
|
- path: doi/policy.rego
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ policies:
|
|||||||
- origin:
|
- origin:
|
||||||
domain: docker.io
|
domain: docker.io
|
||||||
prefix: library/
|
prefix: library/
|
||||||
name: docker-official-images
|
id: docker-official-images
|
||||||
description: Docker Official Images
|
description: Docker Official Images
|
||||||
files:
|
files:
|
||||||
- path: doi/policy.rego
|
- path: doi/policy.rego
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ policies:
|
|||||||
- origin:
|
- origin:
|
||||||
domain: docker.io
|
domain: docker.io
|
||||||
prefix: library/
|
prefix: library/
|
||||||
name: docker-official-images
|
id: docker-official-images
|
||||||
description: Docker Official Images
|
description: Docker Official Images
|
||||||
files:
|
files:
|
||||||
- path: doi/policy.rego
|
- path: doi/policy.rego
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ policies:
|
|||||||
- origin:
|
- origin:
|
||||||
domain: docker.io
|
domain: docker.io
|
||||||
prefix: library/
|
prefix: library/
|
||||||
name: docker-official-images
|
id: docker-official-images
|
||||||
description: Docker Official Images
|
description: Docker Official Images
|
||||||
files:
|
files:
|
||||||
- path: doi/policy.rego
|
- path: doi/policy.rego
|
||||||
|
|||||||
4
test/testdata/local-policy/mapping.yaml
vendored
4
test/testdata/local-policy/mapping.yaml
vendored
@@ -5,14 +5,14 @@ policies:
|
|||||||
- origin:
|
- origin:
|
||||||
domain: docker.io
|
domain: docker.io
|
||||||
prefix: library/
|
prefix: library/
|
||||||
name: test-images
|
id: test-images
|
||||||
description: Local test images
|
description: Local test images
|
||||||
files:
|
files:
|
||||||
- path: doi/data.yaml
|
- path: doi/data.yaml
|
||||||
- path: doi/policy.rego
|
- path: doi/policy.rego
|
||||||
|
|
||||||
mirrors:
|
mirrors:
|
||||||
- name: test-images
|
- policy-id: test-images
|
||||||
mirror:
|
mirror:
|
||||||
domains: [localhost:5001]
|
domains: [localhost:5001]
|
||||||
prefix: ""
|
prefix: ""
|
||||||
|
|||||||
Reference in New Issue
Block a user