@@ -38,8 +38,7 @@ type cleanupFunc func()
38
38
type newRegistryFunc func (t * testing.T , serverCert * x509.Certificate ) (image.Registry , cleanupFunc )
39
39
40
40
func caDirForCert (t * testing.T , serverCert * x509.Certificate ) string {
41
- caDir , err := os .MkdirTemp ("" , "opm-registry-test-ca-" )
42
- require .NoError (t , err )
41
+ caDir := t .TempDir ()
43
42
caFile , err := os .Create (filepath .Join (caDir , "ca.crt" ))
44
43
require .NoError (t , err )
45
44
@@ -51,6 +50,29 @@ func caDirForCert(t *testing.T, serverCert *x509.Certificate) string {
51
50
return caDir
52
51
}
53
52
53
+ const insecureSignaturePolicy = `{
54
+ "default": [
55
+ {
56
+ "type": "insecureAcceptAnything"
57
+ }
58
+ ],
59
+ "transports":
60
+ {
61
+ "docker-daemon":
62
+ {
63
+ "": [{"type":"insecureAcceptAnything"}]
64
+ }
65
+ }
66
+ }`
67
+
68
+ func createSignaturePolicyFile (t * testing.T ) string {
69
+ policyDir := t .TempDir ()
70
+ policyFilePath := filepath .Join (policyDir , "policy.json" )
71
+ err := os .WriteFile (policyFilePath , []byte (insecureSignaturePolicy ), 0600 )
72
+ require .NoError (t , err )
73
+ return policyFilePath
74
+ }
75
+
54
76
func poolForCert (serverCert * x509.Certificate ) * x509.CertPool {
55
77
rootCAs := x509 .NewCertPool ()
56
78
rootCAs .AddCert (serverCert )
@@ -61,10 +83,12 @@ func TestRegistries(t *testing.T) {
61
83
registries := map [string ]newRegistryFunc {
62
84
"containersimage" : func (t * testing.T , serverCert * x509.Certificate ) (image.Registry , cleanupFunc ) {
63
85
caDir := caDirForCert (t , serverCert )
86
+ policyFile := createSignaturePolicyFile (t )
64
87
sourceCtx := & types.SystemContext {
65
88
OCICertPath : caDir ,
66
89
DockerCertPath : caDir ,
67
90
DockerPerHostCertDirPath : caDir ,
91
+ SignaturePolicyPath : policyFile ,
68
92
}
69
93
r , err := containersimageregistry .New (sourceCtx , containersimageregistry .WithTemporaryImageCache ())
70
94
require .NoError (t , err )
0 commit comments