Documentation ¶
Overview ¶
Package sysinfo stores information about which features a kernel supports.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Opt ¶
type Opt func(info *SysInfo)
Opt for New().
func WithCgroup2GroupPath ¶
WithCgroup2GroupPath specifies the cgroup v2 group path to inspect availability of the controllers.
WithCgroup2GroupPath is expected to be used for rootless mode with systemd driver.
e.g. g = "/user.slice/user-1000.slice/user@1000.service"
type SysInfo ¶
type SysInfo struct { // Whether the kernel supports AppArmor or not AppArmor bool // Whether the kernel supports Seccomp or not Seccomp bool // Whether the kernel supports cgroup namespaces or not CgroupNamespaces bool // Whether IPv4 forwarding is supported or not, if this was disabled, networking will not work IPv4ForwardingDisabled bool // Whether bridge-nf-call-iptables is supported or not BridgeNFCallIPTablesDisabled bool // Whether bridge-nf-call-ip6tables is supported or not BridgeNFCallIP6TablesDisabled bool // Whether the cgroup has the mountpoint of "devices" or not CgroupDevicesEnabled bool // Whether the cgroup is in unified mode (v2). CgroupUnified bool // Warnings contains a slice of warnings that occurred while collecting // system information. These warnings are intended to be informational // messages for the user, and can either be logged or returned to the // client; they are not intended to be parsed / used for other purposes, // and do not have a fixed format. Warnings []string // contains filtered or unexported fields }
SysInfo stores information about which features a kernel supports. TODO Windows: Factor out platform specific capabilities.
func New ¶
New returns a new SysInfo, using the filesystem to detect which features the kernel supports.
func (SysInfo) IsCpusetCpusAvailable ¶
IsCpusetCpusAvailable returns `true` if the provided string set is contained in cgroup's cpuset.cpus set, `false` otherwise. If error is not nil a parsing error occurred.
func (SysInfo) IsCpusetMemsAvailable ¶
IsCpusetMemsAvailable returns `true` if the provided string set is contained in cgroup's cpuset.mems set, `false` otherwise. If error is not nil a parsing error occurred.