core

package
v0.11.6 Latest Latest
Warning

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

Go to latest
Published: Jun 29, 2023 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ComposeManifestPath

func ComposeManifestPath(localPath, packageName string) string

func Filter

func Filter(original []contracts.Dependency, filter []string) (filtered []contracts.Dependency)

Types

type ArchiveReader

type ArchiveReader interface {
	Next() (*tar.Header, error)
	io.Reader
}

type CompoundIntegrityCheck

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

func NewCompoundIntegrityCheck

func NewCompoundIntegrityCheck(inners ...contracts.IntegrityCheck) *CompoundIntegrityCheck

func (*CompoundIntegrityCheck) Verify

func (this *CompoundIntegrityCheck) Verify(manifest contracts.Manifest, localPath string) error

type DependencyResolver

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

func NewDependencyResolver

func NewDependencyResolver(
	fileSystem DependencyResolverFileSystem,
	integrityChecker contracts.IntegrityCheck,
	packageInstaller contracts.PackageInstaller,
	dependency contracts.Dependency,
) *DependencyResolver

func (*DependencyResolver) Resolve

func (this *DependencyResolver) Resolve() error

type DependencyResolverFileSystem

type DependencyResolverFileSystem interface {
	contracts.FileChecker
	contracts.FileReader
	contracts.Deleter
}

type FileContentIntegrityCheck

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

func NewFileContentIntegrityCheck

func NewFileContentIntegrityCheck(hasher func() hash.Hash, fileSystem FileOpenChecker, enabled bool) *FileContentIntegrityCheck

func (*FileContentIntegrityCheck) Verify

func (this *FileContentIntegrityCheck) Verify(manifest contracts.Manifest, localPath string) error

type FileListingIntegrityChecker

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

func NewFileListingIntegrityChecker

func NewFileListingIntegrityChecker(fileSystem contracts.FileChecker) *FileListingIntegrityChecker

func (*FileListingIntegrityChecker) Verify

func (this *FileListingIntegrityChecker) Verify(manifest contracts.Manifest, localPath string) error

type FileOpenChecker

type FileOpenChecker interface {
	contracts.FileOpener
	contracts.FileChecker
}

type HashReader

type HashReader struct {
	io.Reader
	hash.Hash
}

func NewHashReader

func NewHashReader(source io.Reader, target hash.Hash) *HashReader

func (*HashReader) Read

func (this *HashReader) Read(buffer []byte) (int, error)

type PackageBuilder

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

func NewPackageBuilder

func NewPackageBuilder(storage PackageBuilderFileSystem, archive contracts.ArchiveWriter, hasher hash.Hash) *PackageBuilder

func (*PackageBuilder) Build

func (this *PackageBuilder) Build() error

func (*PackageBuilder) Contents

func (this *PackageBuilder) Contents() []contracts.ArchiveItem

type PackageBuilderFileSystem

type PackageBuilderFileSystem interface {
	contracts.PathLister
	contracts.FileOpener
	contracts.RootPath
}

type PackageInstaller

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

func NewPackageInstaller

func NewPackageInstaller(downloader contracts.Downloader, filesystem PackageInstallerFileSystem) *PackageInstaller

func (*PackageInstaller) DownloadManifest

func (this *PackageInstaller) DownloadManifest(remoteAddress url.URL) (manifest contracts.Manifest, err error)

func (*PackageInstaller) InstallManifest

func (this *PackageInstaller) InstallManifest(request contracts.InstallationRequest) (manifest contracts.Manifest, err error)

func (*PackageInstaller) InstallPackage

func (this *PackageInstaller) InstallPackage(manifest contracts.Manifest, request contracts.InstallationRequest) error

type RetryClient

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

func NewRetryClient

func NewRetryClient(inner contracts.RemoteStorage, maxRetry int, sleep func(duration time.Duration)) *RetryClient

func (*RetryClient) Download

func (this *RetryClient) Download(request url.URL) (body io.ReadCloser, err error)

func (*RetryClient) Upload

func (this *RetryClient) Upload(request contracts.UploadRequest) (err error)

type UploadConfigLoader

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

func NewUploadConfigLoader

func NewUploadConfigLoader(storage contracts.FileReader, env contracts.Environment, stdin io.Reader, stderr io.Writer) *UploadConfigLoader

func (*UploadConfigLoader) LoadConfig

func (this *UploadConfigLoader) LoadConfig(name string, args []string) (config contracts.UploadConfig, err error)

Jump to

Keyboard shortcuts

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