contenthash

package
v0.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2024 License: Apache-2.0 Imports: 33 Imported by: 37

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthChecksum        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowChecksum          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupChecksum = fmt.Errorf("proto: unexpected end of group")
)
View Source
var CacheRecordType_name = map[int32]string{
	0: "FILE",
	1: "DIR",
	2: "DIR_HEADER",
	3: "SYMLINK",
}
View Source
var CacheRecordType_value = map[string]int32{
	"FILE":       0,
	"DIR":        1,
	"DIR_HEADER": 2,
	"SYMLINK":    3,
}

Functions

func Checksum

func Checksum(ctx context.Context, ref cache.ImmutableRef, path string, opts ChecksumOpts, s session.Group) (digest.Digest, error)

func ClearCacheContext added in v0.6.0

func ClearCacheContext(md cache.RefMetadata)

func NewFileHash

func NewFileHash(path string, fi os.FileInfo) (hash.Hash, error)

NewFileHash returns new hash that is used for the builder cache keys

func NewFromStat

func NewFromStat(stat *fstypes.Stat) (hash.Hash, error)

func SetCacheContext

func SetCacheContext(ctx context.Context, md cache.RefMetadata, cc CacheContext) error

func WriteV1TarsumHeaders

func WriteV1TarsumHeaders(h *tar.Header, w io.Writer)

WriteV1TarsumHeaders writes a tar header to a writer in V1 tarsum format.

Types

type CacheContext

type CacheContext interface {
	Checksum(ctx context.Context, ref cache.Mountable, p string, opts ChecksumOpts, s session.Group) (digest.Digest, error)
	HandleChange(kind fsutil.ChangeKind, p string, fi os.FileInfo, err error) error
}

func GetCacheContext

func GetCacheContext(ctx context.Context, md cache.RefMetadata) (CacheContext, error)

type CacheRecord

type CacheRecord struct {
	Digest   github_com_opencontainers_go_digest.Digest `protobuf:"bytes,1,opt,name=digest,proto3,customtype=github.com/opencontainers/go-digest.Digest" json:"digest"`
	Type     CacheRecordType                            `protobuf:"varint,2,opt,name=type,proto3,enum=contenthash.CacheRecordType" json:"type,omitempty"`
	Linkname string                                     `protobuf:"bytes,3,opt,name=linkname,proto3" json:"linkname,omitempty"`
}

func (*CacheRecord) Descriptor

func (*CacheRecord) Descriptor() ([]byte, []int)

func (*CacheRecord) GetLinkname

func (m *CacheRecord) GetLinkname() string

func (*CacheRecord) GetType

func (m *CacheRecord) GetType() CacheRecordType

func (*CacheRecord) Marshal

func (m *CacheRecord) Marshal() (dAtA []byte, err error)

func (*CacheRecord) MarshalTo

func (m *CacheRecord) MarshalTo(dAtA []byte) (int, error)

func (*CacheRecord) MarshalToSizedBuffer added in v0.7.0

func (m *CacheRecord) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*CacheRecord) ProtoMessage

func (*CacheRecord) ProtoMessage()

func (*CacheRecord) Reset

func (m *CacheRecord) Reset()

func (*CacheRecord) Size

func (m *CacheRecord) Size() (n int)

func (*CacheRecord) String

func (m *CacheRecord) String() string

func (*CacheRecord) Unmarshal

func (m *CacheRecord) Unmarshal(dAtA []byte) error

func (*CacheRecord) XXX_DiscardUnknown added in v0.4.0

func (m *CacheRecord) XXX_DiscardUnknown()

func (*CacheRecord) XXX_Marshal added in v0.4.0

func (m *CacheRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CacheRecord) XXX_Merge added in v0.4.0

func (m *CacheRecord) XXX_Merge(src proto.Message)

func (*CacheRecord) XXX_Size added in v0.4.0

func (m *CacheRecord) XXX_Size() int

func (*CacheRecord) XXX_Unmarshal added in v0.4.0

func (m *CacheRecord) XXX_Unmarshal(b []byte) error

type CacheRecordType

type CacheRecordType int32
const (
	CacheRecordTypeFile      CacheRecordType = 0
	CacheRecordTypeDir       CacheRecordType = 1
	CacheRecordTypeDirHeader CacheRecordType = 2
	CacheRecordTypeSymlink   CacheRecordType = 3
)

func (CacheRecordType) EnumDescriptor

func (CacheRecordType) EnumDescriptor() ([]byte, []int)

func (CacheRecordType) String

func (x CacheRecordType) String() string

type CacheRecordWithPath

type CacheRecordWithPath struct {
	Path   string       `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	Record *CacheRecord `protobuf:"bytes,2,opt,name=record,proto3" json:"record,omitempty"`
}

func (*CacheRecordWithPath) Descriptor

func (*CacheRecordWithPath) Descriptor() ([]byte, []int)

func (*CacheRecordWithPath) GetPath

func (m *CacheRecordWithPath) GetPath() string

func (*CacheRecordWithPath) GetRecord

func (m *CacheRecordWithPath) GetRecord() *CacheRecord

func (*CacheRecordWithPath) Marshal

func (m *CacheRecordWithPath) Marshal() (dAtA []byte, err error)

func (*CacheRecordWithPath) MarshalTo

func (m *CacheRecordWithPath) MarshalTo(dAtA []byte) (int, error)

func (*CacheRecordWithPath) MarshalToSizedBuffer added in v0.7.0

func (m *CacheRecordWithPath) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*CacheRecordWithPath) ProtoMessage

func (*CacheRecordWithPath) ProtoMessage()

func (*CacheRecordWithPath) Reset

func (m *CacheRecordWithPath) Reset()

func (*CacheRecordWithPath) Size

func (m *CacheRecordWithPath) Size() (n int)

func (*CacheRecordWithPath) String

func (m *CacheRecordWithPath) String() string

func (*CacheRecordWithPath) Unmarshal

func (m *CacheRecordWithPath) Unmarshal(dAtA []byte) error

func (*CacheRecordWithPath) XXX_DiscardUnknown added in v0.4.0

func (m *CacheRecordWithPath) XXX_DiscardUnknown()

func (*CacheRecordWithPath) XXX_Marshal added in v0.4.0

func (m *CacheRecordWithPath) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CacheRecordWithPath) XXX_Merge added in v0.4.0

func (m *CacheRecordWithPath) XXX_Merge(src proto.Message)

func (*CacheRecordWithPath) XXX_Size added in v0.4.0

func (m *CacheRecordWithPath) XXX_Size() int

func (*CacheRecordWithPath) XXX_Unmarshal added in v0.4.0

func (m *CacheRecordWithPath) XXX_Unmarshal(b []byte) error

type CacheRecords

type CacheRecords struct {
	Paths []*CacheRecordWithPath `protobuf:"bytes,1,rep,name=paths,proto3" json:"paths,omitempty"`
}

func (*CacheRecords) Descriptor

func (*CacheRecords) Descriptor() ([]byte, []int)

func (*CacheRecords) GetPaths

func (m *CacheRecords) GetPaths() []*CacheRecordWithPath

func (*CacheRecords) Marshal

func (m *CacheRecords) Marshal() (dAtA []byte, err error)

func (*CacheRecords) MarshalTo

func (m *CacheRecords) MarshalTo(dAtA []byte) (int, error)

func (*CacheRecords) MarshalToSizedBuffer added in v0.7.0

func (m *CacheRecords) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*CacheRecords) ProtoMessage

func (*CacheRecords) ProtoMessage()

func (*CacheRecords) Reset

func (m *CacheRecords) Reset()

func (*CacheRecords) Size

func (m *CacheRecords) Size() (n int)

func (*CacheRecords) String

func (m *CacheRecords) String() string

func (*CacheRecords) Unmarshal

func (m *CacheRecords) Unmarshal(dAtA []byte) error

func (*CacheRecords) XXX_DiscardUnknown added in v0.4.0

func (m *CacheRecords) XXX_DiscardUnknown()

func (*CacheRecords) XXX_Marshal added in v0.4.0

func (m *CacheRecords) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*CacheRecords) XXX_Merge added in v0.4.0

func (m *CacheRecords) XXX_Merge(src proto.Message)

func (*CacheRecords) XXX_Size added in v0.4.0

func (m *CacheRecords) XXX_Size() int

func (*CacheRecords) XXX_Unmarshal added in v0.4.0

func (m *CacheRecords) XXX_Unmarshal(b []byte) error

type ChecksumOpts added in v0.9.0

type ChecksumOpts struct {
	FollowLinks     bool
	Wildcard        bool
	IncludePatterns []string
	ExcludePatterns []string
}

type Hashed

type Hashed interface {
	Digest() digest.Digest
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL