store

package
v0.1.23-oss Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2026 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNoProvider = errors.New("no remote providers are enabled")

Functions

func ReadAllBlob

func ReadAllBlob(ctx context.Context, store entities.BlobStore, hash entities.Hash) (content []byte, retErr error)

func StoreBlob

func StoreBlob(ctx context.Context, store entities.BlobStore, content []byte) (entities.Hash, int64, error)

StoreBlob writes a blob to the store and returns its hash.

Types

type CASStore

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

func NewCASStore

func NewCASStore(cacheDir string, localOnly bool, fetchTimeout time.Duration) (*CASStore, error)

func NewCASStoreWithOpts

func NewCASStoreWithOpts(opts CASStoreOpts) (*CASStore, error)

Alternative factory function to avoid callsite thrash.

func (*CASStore) AddMapResult

func (c *CASStore) AddMapResult(ctx context.Context, from, to entities.Hash) error

AddMapResult implements entities.CASStore

func (*CASStore) CAS

func (c *CASStore) CAS() cas.Store

func (*CASStore) CachemanClient

func (c *CASStore) CachemanClient() *client.Client

func (*CASStore) Close

func (c *CASStore) Close() error

func (*CASStore) GetObject

func (c *CASStore) GetObject(ctx context.Context, key entities.Hash) ([]byte, error)

Get implements entities.CASStore

func (*CASStore) GetRefs

func (c *CASStore) GetRefs(server string, project string, refs []string) ([]entities.Hash, error)

GetRefs implements entities.CASStore.

func (*CASStore) GetTree

func (c *CASStore) GetTree(ctx context.Context, key entities.Hash) ([]byte, entities.TreeMeta, error)

GetTree implements entities.CASStore.

func (*CASStore) HealthCheck

func (c *CASStore) HealthCheck() error

func (*CASStore) IsObjectRemote

func (c *CASStore) IsObjectRemote(ctx context.Context, key entities.Hash) (bool, error)

IsObjectRemote implements entities.CASStore

func (*CASStore) KeepAlive

func (c *CASStore) KeepAlive(ctx context.Context, key entities.Hash) error

KeepAlive implements entities.CASStore

func (*CASStore) Local

func (c *CASStore) Local() *localcache.LocalCache

func (*CASStore) MapResults

func (c *CASStore) MapResults(ctx context.Context, id entities.Hash) ([]entities.Hash, error)

MapResults implements entities.CASStore

func (*CASStore) ObjectHeader

func (c *CASStore) ObjectHeader(ctx context.Context, key entities.Hash) (entities.ObjectHeader, error)

ObjectHeader implements entities.CASStore

func (*CASStore) OpenBlob

func (c *CASStore) OpenBlob(ctx context.Context, key entities.Hash) (io.ReadCloser, error)

OpenBlob implements entities.CASStore

func (*CASStore) OpenObjectFile

func (c *CASStore) OpenObjectFile(ctx context.Context, key entities.Hash) (io.ReadCloser, error)

OpenObjectFile implements entities.CASStore

func (*CASStore) Provider

func (c *CASStore) Provider() *Provider

func (*CASStore) PutObject

func (c *CASStore) PutObject(ctx context.Context, key entities.Hash, content []byte) error

Put implements entities.CASStore

func (*CASStore) PutRefs

func (c *CASStore) PutRefs(server string, project string, refs []entities.RefHash) error

PutRefs implements entities.CASStore.

func (*CASStore) PutTree

func (c *CASStore) PutTree(ctx context.Context, key entities.Hash, content []byte, meta entities.TreeMeta) error

PutTree implements entities.CASStore.

func (*CASStore) RefreshMapResults

func (c *CASStore) RefreshMapResults(ctx context.Context, id entities.Hash) error

RefreshMapResults implements entities.CASStore

func (*CASStore) SearchRefs

func (c *CASStore) SearchRefs(server string, project string, refPrefix string, limit int) ([]entities.ProjectRefHash, error)

SearchRefs implements entities.CASStore.

func (*CASStore) StartGC

func (c *CASStore) StartGC(ctx context.Context) error

StartGC implements entities.CASStore

func (*CASStore) Stat

func (c *CASStore) Stat(ctx context.Context, key entities.Hash) (entities.StatInfo, error)

Stat implements entities.CASStore

func (*CASStore) WriteBlob

func (c *CASStore) WriteBlob(ctx context.Context, key entities.Hash, size int64, reader io.Reader) error

Write implements entities.CASStore

func (*CASStore) WriteObject

func (c *CASStore) WriteObject(ctx context.Context, key entities.Hash, reader io.Reader) error

Write implements entities.CASStore

type CASStoreOpts

type CASStoreOpts struct {
	CacheDir     string
	LocalOnly    bool
	FetchTimeout time.Duration
	FsyncObjects bool
}

type Provider

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

func NewProvider

func NewProvider(cacheDir string, fetchTimeout time.Duration, localOnly bool) *Provider

func (*Provider) AddMapResult

func (p *Provider) AddMapResult(ctx context.Context, from, to entities.Hash) error

func (*Provider) Close

func (p *Provider) Close() error

func (*Provider) FetchBlob

func (p *Provider) FetchBlob(ctx context.Context, key entities.Hash) error

func (*Provider) FetchGitObject

func (p *Provider) FetchGitObject(ctx context.Context, key entities.Hash) error

func (*Provider) FetchMapResults

func (p *Provider) FetchMapResults(ctx context.Context, id entities.Hash) error

func (*Provider) FetchObject

func (p *Provider) FetchObject(ctx context.Context, key entities.Hash) error

func (*Provider) FetchStat

func (p *Provider) FetchStat(ctx context.Context, key entities.Hash) (entities.StatInfo, error)

func (*Provider) FetchTree

func (p *Provider) FetchTree(ctx context.Context, key entities.Hash) error

func (*Provider) GetRefs

func (p *Provider) GetRefs(server string, project string, refs []string) ([]entities.Hash, error)

func (*Provider) IsObjectRemote

func (p *Provider) IsObjectRemote(ctx context.Context, key entities.Hash) (bool, error)

func (*Provider) KeepAlive

func (p *Provider) KeepAlive(ctx context.Context, key entities.Hash) error

func (*Provider) MapResults

func (p *Provider) MapResults(ctx context.Context, id entities.Hash) ([]entities.Hash, error)

func (*Provider) NewBlob

func (p *Provider) NewBlob(ctx context.Context, key entities.Hash) error

func (*Provider) NewObject

func (p *Provider) NewObject(ctx context.Context, key entities.Hash) error

func (*Provider) NewTree

func (p *Provider) NewTree(ctx context.Context, key entities.Hash) error

func (*Provider) Ping

func (p *Provider) Ping() error

func (*Provider) PingBinary

func (p *Provider) PingBinary() error

func (*Provider) PutRefs

func (p *Provider) PutRefs(server string, project string, refs []entities.RefHash, blocking bool) error

func (*Provider) SearchRefs

func (p *Provider) SearchRefs(server string, project string, refPrefix string, limit int) ([]entities.ProjectRefHash, error)

func (*Provider) SendNotifyUse

func (p *Provider) SendNotifyUse(key entities.Hash) error

func (*Provider) Start

func (p *Provider) Start() error

func (*Provider) StartGC

func (p *Provider) StartGC(ctx context.Context) error

Jump to

Keyboard shortcuts

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