Documentation ¶
Overview ¶
Copyright 2016 The Rook Authors. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2016 The Rook Authors. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2016 The Rook Authors. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2016 The Rook Authors. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Index ¶
- Constants
- func CheckIfDeviceAvailable(executor exec.Executor, name string) (bool, string, error)
- func CheckKernelModuleParam(name, param string, executor pkgexec.Executor) (bool, error)
- func CreatePartitions(device string, args []string, executor exec.Executor) error
- func FormatDevice(devicePath string, executor exec.Executor) error
- func GetDeviceFilesystems(device string, executor exec.Executor) (string, error)
- func GetDeviceProperties(device string, executor exec.Executor) (map[string]string, error)
- func GetDevicePropertiesFromPath(devicePath string, executor exec.Executor) (map[string]string, error)
- func GetDiskUUID(device string, executor exec.Executor) (string, error)
- func GetPartitionLabel(deviceName string, executor exec.Executor) (string, error)
- func GetUdevInfo(device string, executor exec.Executor) (map[string]string, error)
- func Grep(input, searchFor string) string
- func IsBuiltinKernelModule(name string, executor pkgexec.Executor) (bool, error)
- func ListDevices(executor exec.Executor) ([]string, error)
- func LoadKernelModule(name string, options []string, executor pkgexec.Executor) error
- func MountDevice(devicePath, mountPath string, executor exec.Executor) error
- func MountDeviceWithOptions(devicePath, mountPath, fstype, options string, executor exec.Executor) error
- func RemovePartitions(device string, executor exec.Executor) error
- func RookOwnsPartitions(partitions []Partition) bool
- func UnmountDevice(devicePath string, executor exec.Executor) error
- type LocalDisk
- type Partition
Constants ¶
const ( DiskType = "disk" SSDType = "ssd" PartType = "part" CryptType = "crypt" LVMType = "lvm" )
Variables ¶
This section is empty.
Functions ¶
func CheckIfDeviceAvailable ¶
func CheckKernelModuleParam ¶
func CreatePartitions ¶
func GetDeviceFilesystems ¶
get the file systems available
func GetDeviceProperties ¶
func GetDiskUUID ¶
look up the UUID for a disk.
func GetPartitionLabel ¶
func GetUdevInfo ¶
func IsBuiltinKernelModule ¶
func LoadKernelModule ¶
func MountDeviceWithOptions ¶
func MountDeviceWithOptions(devicePath, mountPath, fstype, options string, executor exec.Executor) error
comma-separated list of mount options passed directly to mount command
func RookOwnsPartitions ¶
RookOwnsPartitions check if all partitions in list are owned by Rook
Types ¶
type LocalDisk ¶
type LocalDisk struct { // Name is the device name Name string `json:"name"` // Parent is the device parent's name Parent string `json:"parent"` // HasChildren is whether the device has a children device HasChildren bool `json:"hasChildren"` // DevLinks is the persistent device path on the host DevLinks string `json:"devLinks"` // Size is the device capacity in byte Size uint64 `json:"size"` // UUID is used by /dev/disk/by-uuid UUID string `json:"uuid"` // Serial is the disk serial used by /dev/disk/by-id Serial string `json:"serial"` // Type is disk type Type string `json:"type"` // Rotational is the boolean whether the device is rotational: true for hdd, false for ssd and nvme Rotational bool `json:"rotational"` // ReadOnly is the boolean whether the device is readonly Readonly bool `json:"readOnly"` // Partitions is a partition slice Partitions []Partition // Filesystem is the filesystem currently on the device Filesystem string `json:"filesystem"` // Vendor is the device vendor Vendor string `json:"vendor"` // Model is the device model Model string `json:"model"` // WWN is the world wide name of the device WWN string `json:"wwn"` // WWNVendorExtension is the WWN_VENDOR_EXTENSION from udev info WWNVendorExtension string `json:"wwnVendorExtension"` // Empty checks whether the device is completely empty Empty bool `json:"empty"` }
LocalDevice contains information about an unformatted block device