filesystem

package
v0.10.0 Latest Latest
Warning

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

Go to latest
Published: Jul 18, 2023 License: Apache-2.0 Imports: 30 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Filesystem

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

TODO: refact `enabledManagers` and `xxxManager` into `ManagerCoordinator`

func NewFileSystem

func NewFileSystem(ctx context.Context, opt ...NewFSOpt) (*Filesystem, error)

NewFileSystem initialize Filesystem instance It does mount image layers by starting nydusd doing FUSE mount or not.

func (*Filesystem) BootstrapFile

func (fs *Filesystem) BootstrapFile(id string) (string, error)

func (*Filesystem) CacheUsage

func (fs *Filesystem) CacheUsage(ctx context.Context, blobDigest string) (snapshots.Usage, error)

How much space the layer/blob cache filesystem is occupying The blob digest mush have `sha256:` prefixed, otherwise, throw errors.

func (*Filesystem) CheckReferrer added in v0.8.0

func (fs *Filesystem) CheckReferrer(ctx context.Context, labels map[string]string) bool

func (*Filesystem) DaemonBacked

func (fs *Filesystem) DaemonBacked() bool

func (*Filesystem) GetDaemonByID added in v0.10.0

func (fs *Filesystem) GetDaemonByID(id string) (*daemon.Daemon, error)

func (*Filesystem) IsStargzDataLayer

func (fs *Filesystem) IsStargzDataLayer(labels map[string]string) (bool, *stargz.Blob)

Detect if the blob is type of estargz by downloading its footer since estargz image does not have any characteristic annotation.

func (*Filesystem) MergeStargzMetaLayer

func (fs *Filesystem) MergeStargzMetaLayer(ctx context.Context, s storage.Snapshot) error

func (*Filesystem) Mount

func (fs *Filesystem) Mount(snapshotID string, labels map[string]string) (err error)

Mount will be called when containerd snapshotter prepare remote snapshotter this method will fork nydus daemon and manage it in the internal store, and indexed by snapshotID It must set up all necessary resources during Mount procedure and revoke any step if necessary.

func (*Filesystem) MountPoint

func (fs *Filesystem) MountPoint(snapshotID string) (string, error)

func (*Filesystem) PrepareStargzMetaLayer

func (fs *Filesystem) PrepareStargzMetaLayer(blob *stargz.Blob, storagePath string, labels map[string]string) error

Generate nydus bootstrap from stargz layers Download estargz TOC part from each layer as `nydus-image` conversion source. After conversion, a nydus metadata or bootstrap is used to pointing to each estargz blob

func (*Filesystem) ReferrerDetectEnabled added in v0.8.0

func (fs *Filesystem) ReferrerDetectEnabled() bool

func (*Filesystem) RemoveCache

func (fs *Filesystem) RemoveCache(blobDigest string) error

func (*Filesystem) StargzEnabled

func (fs *Filesystem) StargzEnabled() bool

func (*Filesystem) StargzLayer

func (fs *Filesystem) StargzLayer(labels map[string]string) bool

func (*Filesystem) Teardown

func (fs *Filesystem) Teardown(ctx context.Context) error

Try to stop all the running daemons if they are not referenced by any snapshots Clean up resources along with the daemons.

func (*Filesystem) TryFetchMetadata added in v0.8.0

func (fs *Filesystem) TryFetchMetadata(ctx context.Context, labels map[string]string, metadataPath string) error

func (*Filesystem) TryRetainSharedDaemon added in v0.7.0

func (fs *Filesystem) TryRetainSharedDaemon(d *daemon.Daemon)

func (*Filesystem) TryStopSharedDaemon

func (fs *Filesystem) TryStopSharedDaemon()

func (*Filesystem) Umount

func (fs *Filesystem) Umount(ctx context.Context, snapshotID string) error

func (*Filesystem) UpperPath

func (fs *Filesystem) UpperPath(id string) string

func (*Filesystem) WaitUntilReady

func (fs *Filesystem) WaitUntilReady(snapshotID string) error

WaitUntilReady wait until daemon ready by snapshotID, it will wait until nydus domain socket established and the status of nydusd daemon must be ready

type NewFSOpt

type NewFSOpt func(d *Filesystem) error

func WithCacheManager

func WithCacheManager(cm *cache.Manager) NewFSOpt

func WithEnableStargz

func WithEnableStargz(enable bool) NewFSOpt

func WithManager

func WithManager(pm *manager.Manager) NewFSOpt

func WithNydusImageBinaryPath

func WithNydusImageBinaryPath(p string) NewFSOpt

func WithReferrerManager added in v0.8.0

func WithReferrerManager(rm *referrer.Manager) NewFSOpt

func WithRootMountpoint

func WithRootMountpoint(mountpoint string) NewFSOpt

func WithVerifier

func WithVerifier(verifier *signature.Verifier) NewFSOpt

Jump to

Keyboard shortcuts

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