resource

package
v7.1.0 Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdditionalChunkSorting

type AdditionalChunkSorting []string

func (AdditionalChunkSorting) Len

func (s AdditionalChunkSorting) Len() int

func (AdditionalChunkSorting) Less

func (s AdditionalChunkSorting) Less(i, j int) bool

func (AdditionalChunkSorting) Swap

func (s AdditionalChunkSorting) Swap(i, j int)

type Archive

type Archive interface {
	Fingerprint() (string, error)
	Build(expectedFp string) (string, string, error)
	CleanUp(path string)
}

type ArchiveFactoryArgs

type ArchiveFactoryArgs struct {
	Files          []File
	PrepFiles      []File
	Chunks         []string
	FollowSymlinks bool
}

type ArchiveFunc

type ArchiveFunc func(args ArchiveFactoryArgs) Archive

type ArchiveImpl

type ArchiveImpl struct {
	// contains filtered or unexported fields
}

func NewArchiveImpl

func NewArchiveImpl(
	args ArchiveFactoryArgs,
	releaseDirPath string,
	fingerprinter Fingerprinter,
	compressor boshcmd.Compressor,
	digestCalculator bicrypto.DigestCalculator,
	cmdRunner boshsys.CmdRunner,
	fs boshsys.FileSystem,
) ArchiveImpl

func (ArchiveImpl) Build

func (a ArchiveImpl) Build(expectedFp string) (string, string, error)

func (ArchiveImpl) CleanUp

func (a ArchiveImpl) CleanUp(path string)

func (ArchiveImpl) Fingerprint

func (a ArchiveImpl) Fingerprint() (string, error)

type ArchiveIndex

type ArchiveIndex interface {
	Find(name, fingerprint string) (string, string, error)
	Add(name, fingerprint, path, sha1 string) (string, string, error)
}

type File

type File struct {
	Path    string
	DirPath string

	RelativePath string

	// Fingerprinting options
	UseBasename bool
	ExcludeMode bool
}

func NewFile

func NewFile(path, dirPath string) File

func NewFileUsesBasename

func NewFileUsesBasename(path, dirPath string) File

func (File) WithNewDir

func (f File) WithNewDir(dirPath string) File

type FileRelativePathSorting

type FileRelativePathSorting []File

func (FileRelativePathSorting) Len

func (s FileRelativePathSorting) Len() int

func (FileRelativePathSorting) Less

func (s FileRelativePathSorting) Less(i, j int) bool

func (FileRelativePathSorting) Swap

func (s FileRelativePathSorting) Swap(i, j int)

type Fingerprinter

type Fingerprinter interface {
	Calculate([]File, []string) (string, error)
}

type FingerprinterImpl

type FingerprinterImpl struct {
	// contains filtered or unexported fields
}

func NewFingerprinterImpl

func NewFingerprinterImpl(digestCalculator bicrypto.DigestCalculator, fs boshsys.FileSystem, followSymlinks bool) FingerprinterImpl

func (FingerprinterImpl) Calculate

func (f FingerprinterImpl) Calculate(files []File, additionalChunks []string) (string, error)

type Resource

type Resource interface {
	Name() string
	Prefix(prefix string)
	Fingerprint() string

	ArchivePath() string
	ArchiveDigest() string

	Build(dev, final ArchiveIndex) error
	Finalize(final ArchiveIndex) error

	RehashWithCalculator(calculator crypto.DigestCalculator, archiveFilePathReader crypto2.ArchiveDigestFilePathReader) (Resource, error)
}

type ResourceImpl

type ResourceImpl struct {
	// contains filtered or unexported fields
}

func NewExistingResource

func NewExistingResource(name, fp, sha1 string) *ResourceImpl

func NewResource

func NewResource(name, fp string, archive Archive) *ResourceImpl

func NewResourceWithBuiltArchive

func NewResourceWithBuiltArchive(name, fp, path, sha1 string) *ResourceImpl

func (*ResourceImpl) ArchiveDigest

func (r *ResourceImpl) ArchiveDigest() string

func (*ResourceImpl) ArchivePath

func (r *ResourceImpl) ArchivePath() string

func (*ResourceImpl) Build

func (r *ResourceImpl) Build(devIndex, finalIndex ArchiveIndex) error

func (*ResourceImpl) Finalize

func (r *ResourceImpl) Finalize(finalIndex ArchiveIndex) error

func (*ResourceImpl) Fingerprint

func (r *ResourceImpl) Fingerprint() string

func (*ResourceImpl) Name

func (r *ResourceImpl) Name() string

func (*ResourceImpl) Prefix added in v7.1.0

func (r *ResourceImpl) Prefix(prefix string)

func (*ResourceImpl) RehashWithCalculator

func (r *ResourceImpl) RehashWithCalculator(calculator crypto.DigestCalculator, archiveFilePathReader crypto2.ArchiveDigestFilePathReader) (Resource, error)

Directories

Path Synopsis
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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