Documentation ¶
Index ¶
- Variables
- func CheckSystemDriveAndRemoveDriveLetter(path string) (string, error)
- func Chtimes(name string, atime time.Time, mtime time.Time) error
- func CommandLineToArgv(commandLine string) ([]string, error)
- func CreateSequential(name string) (*os.File, error)
- func DefaultPathEnv(platform string) string
- func EnsureRemoveAll(dir string) error
- func GetExitCode(err error) (int, error)
- func IsAbs(path string) bool
- func IsProcessAlive(pid int) bool
- func KillProcess(pid int)
- func LCOWSupported() bool
- func LUtimesNano(path string, ts []syscall.Timespec) error
- func Lgetxattr(path string, attr string) ([]byte, error)
- func Lsetxattr(path string, attr string, data []byte, flags int) error
- func Mkdev(major int64, minor int64) uint32
- func MkdirAll(path string, perm os.FileMode, sddl string) error
- func MkdirAllWithACL(path string, perm os.FileMode, sddl string) error
- func Mknod(path string, mode uint32, dev int) error
- func OpenFileSequential(name string, flag int, perm os.FileMode) (*os.File, error)
- func OpenSequential(name string) (*os.File, error)
- func ProcessExitCode(err error) (exitCode int)
- func TempFileSequential(dir, prefix string) (f *os.File, err error)
- func Umask(newmask int) (oldmask int, err error)
- func Unmount(dest string) error
- type MemInfo
- type StatT
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotSupportedPlatform means the platform is not supported. ErrNotSupportedPlatform = errors.New("platform and architecture is not supported") )
Functions ¶
func CheckSystemDriveAndRemoveDriveLetter ¶
CheckSystemDriveAndRemoveDriveLetter verifies that a path, if it includes a drive letter, is the system drive. This is a no-op on Linux.
func CommandLineToArgv ¶
CommandLineToArgv should not be used on Unix. It simply returns commandLine in the only element in the returned array.
func CreateSequential ¶
CreateSequential creates the named file with mode 0666 (before umask), truncating it if it already exists. If successful, methods on the returned File can be used for I/O; the associated file descriptor has mode O_RDWR. If there is an error, it will be of type *PathError.
func DefaultPathEnv ¶
DefaultPathEnv is unix style list of directories to search for executables. Each directory is separated from the next by a colon ':' character .
func EnsureRemoveAll ¶
EnsureRemoveAll wraps `os.RemoveAll` to check for specific errors that can often be remedied. Only use `EnsureRemoveAll` if you really want to make every effort to remove a directory.
Because of the way `os.Remove` (and by extension `os.RemoveAll`) works, there can be a race between reading directory entries and then actually attempting to remove everything in the directory. These types of errors do not need to be returned since it's ok for the dir to be gone we can just retry the remove operation.
This should not return a `os.ErrNotExist` kind of error under any circumstances
func GetExitCode ¶
GetExitCode returns the ExitStatus of the specified error if its type is exec.ExitError, returns 0 and an error otherwise.
func IsProcessAlive ¶
IsProcessAlive returns true if process with a given pid is running.
func LCOWSupported ¶
func LCOWSupported() bool
LCOWSupported returns true if Linux containers on Windows are supported.
func LUtimesNano ¶
LUtimesNano is used to change access and modification time of the specified path. It's used for symbol link file because unix.UtimesNano doesn't support a NOFOLLOW flag atm.
func Lgetxattr ¶
Lgetxattr retrieves the value of the extended attribute identified by attr and associated with the given path in the file system. It will returns a nil slice and nil error if the xattr is not set.
func Lsetxattr ¶
Lsetxattr sets the value of the extended attribute identified by attr and associated with the given path in the file system.
func Mkdev ¶
Mkdev is used to build the value of linux devices (in /dev/) which specifies major and minor number of the newly created device special file. Linux device nodes are a bit weird due to backwards compat with 16 bit device nodes. They are, from low to high: the lower 8 bits of the minor, then 12 bits of the major, then the top 12 bits of the minor.
func MkdirAll ¶
MkdirAll creates a directory named path along with any necessary parents, with permission specified by attribute perm for all dir created.
func MkdirAllWithACL ¶
MkdirAllWithACL is a wrapper for MkdirAll on unix systems.
func Mknod ¶
Mknod creates a filesystem node (file, device special file or named pipe) named path with attributes specified by mode and dev.
func OpenFileSequential ¶
OpenFileSequential is the generalized open call; most users will use Open or Create instead. It opens the named file with specified flag (O_RDONLY etc.) and perm, (0666 etc.) if applicable. If successful, methods on the returned File can be used for I/O. If there is an error, it will be of type *PathError.
func OpenSequential ¶
OpenSequential opens the named file for reading. If successful, methods on the returned file can be used for reading; the associated file descriptor has mode O_RDONLY. If there is an error, it will be of type *PathError.
func ProcessExitCode ¶
ProcessExitCode process the specified error and returns the exit status code if the error was of type exec.ExitError, returns nothing otherwise.
func TempFileSequential ¶
TempFileSequential creates a new temporary file in the directory dir with a name beginning with prefix, opens the file for reading and writing, and returns the resulting *os.File. If dir is the empty string, TempFile uses the default directory for temporary files (see os.TempDir). Multiple programs calling TempFile simultaneously will not choose the same file. The caller can use f.Name() to find the pathname of the file. It is the caller's responsibility to remove the file when no longer needed.
Types ¶
type MemInfo ¶
type MemInfo struct { // Total usable RAM (i.e. physical RAM minus a few reserved bits and the // kernel binary code). MemTotal int64 // Amount of free memory. MemFree int64 // Total amount of swap space available. SwapTotal int64 // Amount of swap space that is currently unused. SwapFree int64 }
MemInfo contains memory statistics of the host system.
func ReadMemInfo ¶
ReadMemInfo retrieves memory statistics of the host system and returns a MemInfo type.
type StatT ¶
type StatT struct {
// contains filtered or unexported fields
}
StatT type contains status of a file. It contains metadata like permission, owner, group, size, etc about a file.
func FromStatT ¶
FromStatT converts a syscall.Stat_t type to a system.Stat_t type This is exposed on Linux as pkg/archive/changes uses it.
func Lstat ¶
Lstat takes a path to a file and returns a system.StatT type pertaining to that file.
Throws an error if the file does not exist
func Stat ¶
Stat takes a path to a file and returns a system.StatT type pertaining to that file.
Throws an error if the file does not exist