Documentation
¶
Overview ¶
Package util provides utility functions for host management.
Index ¶
- func GetHostStatus(status pb.HostStatus_HostStatus) inv_status.ResourceStatus
- func GetInstanceStatus(status pb.InstanceStatus) inv_status.ResourceStatus
- func InstanceStatusToHostStatusMsg(in *pb.UpdateInstanceStateStatusByHostGUIDRequest) *pb.HostStatus
- func IsHostNotProvisioned(hostres *computev1.HostResource) bool
- func IsHostUnderMaintain(hostres *computev1.HostResource) bool
- func IsHostUntrusted(hostres *computev1.HostResource) bool
- func IsSameHost(originalHostres *computev1.HostResource, ...) (bool, error)
- func IsSameHostStatus(hostres *computev1.HostResource, status *pb.HostStatus) bool
- func IsSameInstanceStateStatusDetail(in *pb.UpdateInstanceStateStatusByHostGUIDRequest, ...) bool
- func MarshalHostCPUTopology(hostCPUTopology *pb.CPUTopology) (string, error)
- func PopulateHostResourceWithNewSystemInfo(systemInfo *pb.SystemInfo) (*computev1.HostResource, *fieldmaskpb.FieldMask, error)
- func PopulateHostgpuWithGpuInfo(gpu *pb.SystemGPU, host *computev1.HostResource) (*computev1.HostgpuResource, error)
- func PopulateHostnicWithNetworkInfo(nic *pb.SystemNetwork, hostRes *computev1.HostResource) (*computev1.HostnicResource, error)
- func PopulateHoststorageWithDiskInfo(disk *pb.SystemDisk, hostres *computev1.HostResource) (*computev1.HoststorageResource, error)
- func PopulateHostusbWithUsbInfo(usb *pb.SystemUSB, hostres *computev1.HostResource) (*computev1.HostusbResource, error)
- func PopulateIPAddressWithIPAddressInfo(ip *pb.IPAddress, hostNic *computev1.HostnicResource) (*network_v1.IPAddressResource, error)
- func ProtoEqualSubset[T proto.Message](a, b T, includedFields ...string) bool
- func UpdateInstanceResourceStateStatusDetails(in *computev1.InstanceResource, state pb.InstanceState, ...) *computev1.InstanceResource
- func UpdateInstanceStateStatusToUpdateHostStatus(in *pb.UpdateInstanceStateStatusByHostGUIDRequest) *pb.UpdateHostStatusByHostGuidRequest
- type TenantIDResourceIDTuple
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetHostStatus ¶
func GetHostStatus(status pb.HostStatus_HostStatus) inv_status.ResourceStatus
GetHostStatus returns the host status from a status resource.
func GetInstanceStatus ¶
func GetInstanceStatus(status pb.InstanceStatus) inv_status.ResourceStatus
GetInstanceStatus returns the instance status from a status resource.
func InstanceStatusToHostStatusMsg ¶
func InstanceStatusToHostStatusMsg(in *pb.UpdateInstanceStateStatusByHostGUIDRequest) *pb.HostStatus
InstanceStatusToHostStatusMsg converts instance status to host status message.
func IsHostNotProvisioned ¶
func IsHostNotProvisioned(hostres *computev1.HostResource) bool
IsHostNotProvisioned checks if a host is not provisioned.
func IsHostUnderMaintain ¶
func IsHostUnderMaintain(hostres *computev1.HostResource) bool
IsHostUnderMaintain checks if a host is under maintenance.
func IsHostUntrusted ¶
func IsHostUntrusted(hostres *computev1.HostResource) bool
IsHostUntrusted checks if a host is untrusted.
func IsSameHost ¶
func IsSameHost( originalHostres *computev1.HostResource, updatedHostres *computev1.HostResource, fieldmask *fieldmaskpb.FieldMask, ) (bool, error)
IsSameHost checks if two hosts are the same.
func IsSameHostStatus ¶
func IsSameHostStatus(hostres *computev1.HostResource, status *pb.HostStatus) bool
IsSameHostStatus checks if two host statuses are the same.
func IsSameInstanceStateStatusDetail ¶
func IsSameInstanceStateStatusDetail( in *pb.UpdateInstanceStateStatusByHostGUIDRequest, instanceInv *computev1.InstanceResource, ) bool
IsSameInstanceStateStatusDetail checks if two instance state status details are the same.
func MarshalHostCPUTopology ¶
func MarshalHostCPUTopology(hostCPUTopology *pb.CPUTopology) (string, error)
MarshalHostCPUTopology marshals the host CPU topology to JSON.
func PopulateHostResourceWithNewSystemInfo ¶
func PopulateHostResourceWithNewSystemInfo(systemInfo *pb.SystemInfo) ( *computev1.HostResource, *fieldmaskpb.FieldMask, error, )
PopulateHostResourceWithNewSystemInfo function gets on input System Information to be updated. It constructs a Host resource structure with an updated System Information. Fields not present in the System Information are automatically being set to 'nil'. Fieldmask for System Information is being produced for future update of the Host resource. NIC/Storage/USBs resources are handled in different functions.
func PopulateHostgpuWithGpuInfo ¶
func PopulateHostgpuWithGpuInfo(gpu *pb.SystemGPU, host *computev1.HostResource) (*computev1.HostgpuResource, error)
PopulateHostgpuWithGpuInfo populates host GPU resource with GPU information.
func PopulateHostnicWithNetworkInfo ¶
func PopulateHostnicWithNetworkInfo(nic *pb.SystemNetwork, hostRes *computev1.HostResource) (*computev1.HostnicResource, error)
PopulateHostnicWithNetworkInfo translates a system network into an host nic resource.
func PopulateHoststorageWithDiskInfo ¶
func PopulateHoststorageWithDiskInfo(disk *pb.SystemDisk, hostres *computev1.HostResource) ( *computev1.HoststorageResource, error, )
PopulateHoststorageWithDiskInfo translates a system disk into an host storage resource.
func PopulateHostusbWithUsbInfo ¶
func PopulateHostusbWithUsbInfo(usb *pb.SystemUSB, hostres *computev1.HostResource) (*computev1.HostusbResource, error)
PopulateHostusbWithUsbInfo translates a system usb into an host usb resource.
func PopulateIPAddressWithIPAddressInfo ¶
func PopulateIPAddressWithIPAddressInfo(ip *pb.IPAddress, hostNic *computev1.HostnicResource) ( *network_v1.IPAddressResource, error, )
PopulateIPAddressWithIPAddressInfo translates an IPAddress into an IPAddress resource.
func ProtoEqualSubset ¶
ProtoEqualSubset compares two proto messages but only compares the specified fields. If no fields are specified, it compares the entire messages. If the includedFields are not valid, it falls back to a full comparison. If the includedFields are not valid for the messages, it falls back to a full comparison. TODO: move to inventory shared library.
func UpdateInstanceResourceStateStatusDetails ¶
func UpdateInstanceResourceStateStatusDetails( in *computev1.InstanceResource, state pb.InstanceState, status pb.InstanceStatus, instanceStatusDetail string, instResID string, ) *computev1.InstanceResource
UpdateInstanceResourceStateStatusDetails updates instance resource state status details.
func UpdateInstanceStateStatusToUpdateHostStatus ¶
func UpdateInstanceStateStatusToUpdateHostStatus(in *pb.UpdateInstanceStateStatusByHostGUIDRequest) *pb.UpdateHostStatusByHostGuidRequest
UpdateInstanceStateStatusToUpdateHostStatus converts update instance state status to update host status.
Types ¶
type TenantIDResourceIDTuple ¶
TenantIDResourceIDTuple represents a tuple of tenant ID and resource ID.
func NewTenantIDResourceIDTupleFromHost ¶
func NewTenantIDResourceIDTupleFromHost(host *computev1.HostResource) TenantIDResourceIDTuple
NewTenantIDResourceIDTupleFromHost creates a new TenantIDResourceIDTuple from a host resource.
func (TenantIDResourceIDTuple) IsEmpty ¶
func (hbk TenantIDResourceIDTuple) IsEmpty() bool
IsEmpty checks if the TenantIDResourceIDTuple is empty.
func (TenantIDResourceIDTuple) String ¶
func (hbk TenantIDResourceIDTuple) String() string