package snapshot

import "github.com/moby/buildkit/snapshot"

Index

Functions

func NewContainerdSnapshotter

func NewContainerdSnapshotter(s Snapshotter) (snapshots.Snapshotter, func() error)

NewContainerdSnapshotter converts snapshotter to containerd snapshotter

Types

type Mountable

type Mountable interface {
	// ID() string
	Mount() ([]mount.Mount, func() error, error)
	IdentityMapping() *idtools.IdentityMapping
}

type Mounter

type Mounter interface {
	Mount() (string, error)
	Unmount() error
}

func LocalMounter

func LocalMounter(mountable Mountable) Mounter

LocalMounter is a helper for mounting mountfactory to temporary path. In addition it can mount binds without privileges

func LocalMounterWithMounts

func LocalMounterWithMounts(mounts []mount.Mount) Mounter

LocalMounterWithMounts is a helper for mounting to temporary path. In addition it can mount binds without privileges

type Snapshotter

type Snapshotter interface {
	Name() string
	Mounts(ctx context.Context, key string) (Mountable, error)
	Prepare(ctx context.Context, key, parent string, opts ...snapshots.Opt) error
	View(ctx context.Context, key, parent string, opts ...snapshots.Opt) (Mountable, error)

	Stat(ctx context.Context, key string) (snapshots.Info, error)
	Update(ctx context.Context, info snapshots.Info, fieldpaths ...string) (snapshots.Info, error)
	Usage(ctx context.Context, key string) (snapshots.Usage, error)
	Commit(ctx context.Context, name, key string, opts ...snapshots.Opt) error
	Remove(ctx context.Context, key string) error
	Walk(ctx context.Context, fn snapshots.WalkFunc, filters ...string) error
	Close() error
	IdentityMapping() *idtools.IdentityMapping
}

Snapshotter defines interface that any snapshot implementation should satisfy

func FromContainerdSnapshotter

func FromContainerdSnapshotter(name string, s snapshots.Snapshotter, idmap *idtools.IdentityMapping) Snapshotter

Source Files

localmounter.go localmounter_unix.go snapshotter.go

Directories

PathSynopsis
snapshot/containerd
snapshot/imagerefchecker
Version
v0.7.0
Published
Mar 25, 2020
Platform
js/wasm
Imports
10 packages
Last checked
9 minutes ago

Tools for package owners.