containerd/vendor/github.com/mistifyio/go-zfs/v3
Sebastiaan van Stijn 05fef52b68
vendor: github.com/containerd/zfs v1.1.0
- update github.com/mistifyio/go-zfs dependency to github.com/mistifyio/go-zfs/v3,
  which contains various bugfixes, and adds go module support (which required a major
  version update): https://github.com/mistifyio/go-zfs/compare/f784269be439...v3.0.1
- remove github.com/pkg/errors dependency
- various minor cleanups/fixes

Full diff: https://github.com/containerd/zfs/compare/v1.0.0...v1.1.0

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-07-06 11:56:07 +02:00
..
.envrc vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
.gitignore vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
.golangci.yml vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
.yamllint vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
CHANGELOG.md vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
CONTRIBUTING.md vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
error.go vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
LICENSE vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
lint.mk vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
Makefile vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
README.md vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
rules.mk vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
shell.nix vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
utils_notsolaris.go vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
utils_solaris.go vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
utils.go vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
Vagrantfile vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
zfs.go vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00
zpool.go vendor: github.com/containerd/zfs v1.1.0 2023-07-06 11:56:07 +02:00

Go Wrapper for ZFS

Simple wrappers for ZFS command line tools.

GoDoc

Requirements

You need a working ZFS setup. To use on Ubuntu 14.04, setup ZFS:

sudo apt-get install python-software-properties
sudo apt-add-repository ppa:zfs-native/stable
sudo apt-get update
sudo apt-get install ubuntu-zfs libzfs-dev

Developed using Go 1.3, but currently there isn't anything 1.3 specific. Don't use Ubuntu packages for Go, use http://golang.org/doc/install

Generally you need root privileges to use anything zfs related.

Status

This has been only been tested on Ubuntu 14.04

In the future, we hope to work directly with libzfs.

Hacking

The tests have decent examples for most functions.

//assuming a zpool named test
//error handling omitted


f, err := zfs.CreateFilesystem("test/snapshot-test", nil)
ok(t, err)

s, err := f.Snapshot("test", nil)
ok(t, err)

// snapshot is named "test/snapshot-test@test"

c, err := s.Clone("test/clone-test", nil)

err := c.Destroy()
err := s.Destroy()
err := f.Destroy()

Contributing

See the contributing guidelines