moby--moby/pkg/mount/deprecated.go

68 lines
1.6 KiB
Go
Raw Normal View History

package mount // import "github.com/docker/docker/pkg/mount"
// Deprecated: this package is not maintained and will be removed.
// Use github.com/moby/sys/mount and github.com/moby/sys/mountinfo instead.
import (
"github.com/moby/sys/mountinfo"
)
//nolint:golint
type (
// FilterFunc is a type.
// Deprecated: use github.com/moby/sys/mountinfo instead.
FilterFunc = func(*Info) (skip, stop bool)
// Info is a type
// Deprecated: use github.com/moby/sys/mountinfo instead.
Info struct {
ID, Parent, Major, Minor int
Root, Mountpoint, Opts, Optional, Fstype, Source, VfsOpts string
}
)
// Deprecated: use github.com/moby/sys/mountinfo instead.
//nolint:golint
var (
Mounted = mountinfo.Mounted
PrefixFilter = mountinfo.PrefixFilter
SingleEntryFilter = mountinfo.SingleEntryFilter
ParentsFilter = mountinfo.ParentsFilter
vendor: moby/sys mountinfo/v0.4.0 full diff: https://github.com/moby/sys/compare/mountinfo/v0.1.3...mountinfo/v0.4.0 > Note that this dependency uses submodules, providing "github.com/moby/sys/mount" > and "github.com/moby/sys/mountinfo". Our vendoring tool (vndr) currently doesn't > support submodules, so we vendor the top-level moby/sys repository (which contains > both) and pick the most recent tag, which could be either `mountinfo/vXXX` or > `mount/vXXX`. github.com/moby/sys/mountinfo v0.4.0 -------------------------------------------------------------------------------- Breaking changes: - `PidMountInfo` is now deprecated and will be removed before v1.0; users should switch to `GetMountsFromReader` Fixes and improvements: - run filter after all fields are parsed - correct handling errors from bufio.Scan - documentation formatting fixes github.com/moby/sys/mountinfo v0.3.1 -------------------------------------------------------------------------------- - mount: use MNT_* flags from golang.org/x/sys/unix on freebsd - various godoc and CI fixes - mountinfo: make GetMountinfoFromReader Linux-specific - Add support for OpenBSD in addition to FreeBSD - mountinfo: use idiomatic naming for fields github.com/moby/sys/mountinfo v0.2.0 -------------------------------------------------------------------------------- Bug fixes: - Fix path unescaping for paths with double quotes Improvements: - Mounted: speed up by adding fast paths using openat2 (Linux-only) and stat - Mounted: relax path requirements (allow relative, non-cleaned paths, symlinks) - Unescape fstype and source fields - Documentation improvements Testing/CI: - Unit tests: exclude darwin - CI: run tests under Fedora 32 to test openat2 - TestGetMounts: fix for Ubuntu build system - Makefile: fix ignoring test failures - CI: add cross build github.com/moby/sys/mount v0.1.1 -------------------------------------------------------------------------------- https://github.com/moby/sys/releases/tag/mount%2Fv0.1.1 Improvements: - RecursiveUnmount: add a fast path (#26) - Unmount: improve doc - fix CI linter warning on Windows Testing/CI: - Unit tests: exclude darwin - Makefile: fix ignoring test failures - CI: add cross build Signed-off-by: Sebastiaan van Stijn <github@gone.nl> Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-09-16 08:27:03 +00:00
FstypeFilter = mountinfo.FSTypeFilter
)
// GetMounts is a function.
//
// Deprecated: use github.com/moby/sys/mountinfo.GetMounts() instead.
//nolint:golint
func GetMounts(f FilterFunc) ([]*Info, error) {
fi := func(i *mountinfo.Info) (skip, stop bool) {
return f(toLegacyInfo(i))
}
mounts, err := mountinfo.GetMounts(fi)
if err != nil {
return nil, err
}
mi := make([]*Info, len(mounts))
for i, m := range mounts {
mi[i] = toLegacyInfo(m)
}
return mi, nil
}
func toLegacyInfo(m *mountinfo.Info) *Info {
return &Info{
ID: m.ID,
Parent: m.Parent,
Major: m.Major,
Minor: m.Minor,
Root: m.Root,
Mountpoint: m.Mountpoint,
Opts: m.Options,
Fstype: m.FSType,
Source: m.Source,
VfsOpts: m.VFSOptions,
}
}