25 lines
		
	
	
		
			755 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			755 B
		
	
	
	
		
			Go
		
	
	
| package storage
 | |
| 
 | |
| import (
 | |
| 	"context"
 | |
| 
 | |
| 	"github.com/distribution/distribution/v3"
 | |
| 	digest "github.com/opencontainers/go-digest"
 | |
| )
 | |
| 
 | |
| // signedManifestHandler is a ManifestHandler that unmarshals v1 manifests but
 | |
| // refuses to Put v1 manifests
 | |
| type v1UnsupportedHandler struct {
 | |
| 	innerHandler ManifestHandler
 | |
| }
 | |
| 
 | |
| var _ ManifestHandler = &v1UnsupportedHandler{}
 | |
| 
 | |
| func (v *v1UnsupportedHandler) Unmarshal(ctx context.Context, dgst digest.Digest, content []byte) (distribution.Manifest, error) {
 | |
| 	return v.innerHandler.Unmarshal(ctx, dgst, content)
 | |
| }
 | |
| 
 | |
| func (v *v1UnsupportedHandler) Put(ctx context.Context, manifest distribution.Manifest, skipDependencyVerification bool) (digest.Digest, error) {
 | |
| 	return digest.Digest(""), distribution.ErrSchemaV1Unsupported
 | |
| }
 |