20 lines
723 B
Go
20 lines
723 B
Go
// Copyright (c) HashiCorp, Inc.
|
|
// SPDX-License-Identifier: MPL-2.0
|
|
|
|
package mount
|
|
|
|
// Mounter defines the set of methods to allow for mount operations on a system.
|
|
type Mounter interface {
|
|
// IsNotAMountPoint detects if a provided directory is not a mountpoint.
|
|
IsNotAMountPoint(file string) (bool, error)
|
|
|
|
// Mount will mount filesystem according to the specified configuration, on
|
|
// the condition that the target path is *not* already mounted. Options must
|
|
// be specified like the mount or fstab unix commands: "opt1=val1,opt2=val2".
|
|
Mount(device, target, mountType, options string) error
|
|
}
|
|
|
|
// Compile-time check to ensure all Mounter implementations satisfy
|
|
// the mount interface.
|
|
var _ Mounter = &mounter{}
|