zfs

package
v1.56.0 Latest Latest
Warning

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

Go to latest
Published: Nov 7, 2024 License: Apache-2.0 Imports: 17 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Init

func Init(base string, opt graphdriver.Options) (graphdriver.Driver, error)

Init returns a new ZFS driver. It takes base mount path and an array of options which are represented as key value pairs. Each option is in the for key=value. 'zfs.fsname' is expected to be a valid key in the options.

Types

type Driver

type Driver struct {
	sync.Mutex // protects filesystem cache against concurrent access
	// contains filtered or unexported fields
}

Driver holds information about the driver, such as zfs dataset, options and cache.

func (*Driver) AdditionalImageStores

func (d *Driver) AdditionalImageStores() []string

AdditionalImageStores returns additional image stores supported by the driver

func (*Driver) Cleanup

func (d *Driver) Cleanup() error

Cleanup is called on when program exits, it is a no-op for ZFS.

func (*Driver) Create

func (d *Driver) Create(id, parent string, opts *graphdriver.CreateOpts) error

Create prepares the dataset and filesystem for the ZFS driver for the given id under the parent.

func (*Driver) CreateFromTemplate

func (d *Driver) CreateFromTemplate(id, template string, templateIDMappings *idtools.IDMappings, parent string, parentIDMappings *idtools.IDMappings, opts *graphdriver.CreateOpts, readWrite bool) error

CreateFromTemplate creates a layer with the same contents and parent as another layer.

func (*Driver) CreateReadWrite

func (d *Driver) CreateReadWrite(id, parent string, opts *graphdriver.CreateOpts) error

CreateReadWrite creates a layer that is writable for use as a container file system.

func (*Driver) Exists

func (d *Driver) Exists(id string) bool

Exists checks to see if the cache entry exists for the given id.

func (*Driver) Get

func (d *Driver) Get(id string, options graphdriver.MountOpts) (_ string, retErr error)

Get returns the mountpoint for the given id after creating the target directories if necessary.

func (*Driver) ListLayers added in v0.46.1

func (d *Driver) ListLayers() ([]string, error)

List layers (not including additional image stores). Our layers aren't all dependent on a single well-known dataset, so we can't reliably tell which datasets are ours and which ones just look like they could be ours.

func (*Driver) Metadata

func (d *Driver) Metadata(id string) (map[string]string, error)

Metadata returns image/container metadata related to graph driver

func (*Driver) Put

func (d *Driver) Put(id string) error

Put removes the existing mountpoint for the given id if it exists.

func (*Driver) ReadWriteDiskUsage added in v0.46.1

func (d *Driver) ReadWriteDiskUsage(id string) (*directory.DiskUsage, error)

ReadWriteDiskUsage returns the disk usage of the writable directory for the ID. For ZFS, it queries the full mount path for this ID.

func (*Driver) Remove

func (d *Driver) Remove(id string) error

Remove deletes the dataset, filesystem and the cache for the given id.

func (*Driver) Status

func (d *Driver) Status() [][2]string

Status returns information about the ZFS filesystem. It returns a two dimensional array of information such as pool name, dataset name, disk usage, parent quota and compression used. Currently it return 'Zpool', 'Zpool Health', 'Parent Dataset', 'Space Used By Parent', 'Space Available', 'Parent Quota' and 'Compression'.

func (*Driver) String

func (d *Driver) String() string

type Logger

type Logger struct{}

Logger returns a zfs logger implementation.

func (*Logger) Log

func (*Logger) Log(cmd []string)

Log wraps log message from ZFS driver with a prefix 'zfs'.

Jump to

Keyboard shortcuts

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