Show / Hide Table of Contents

Class V1beta1DeviceConstraint

DeviceConstraint must have exactly one field set besides Requests.

Inheritance
object
V1beta1DeviceConstraint
Implements
IEquatable<V1beta1DeviceConstraint>
Inherited Members
object.GetType()
object.MemberwiseClone()
object.Equals(object, object)
object.ReferenceEquals(object, object)
Namespace: k8s.Models
Assembly: KubernetesClient.dll
Syntax
public record V1beta1DeviceConstraint : IEquatable<V1beta1DeviceConstraint>

Constructors

V1beta1DeviceConstraint()

Declaration
public V1beta1DeviceConstraint()

V1beta1DeviceConstraint(V1beta1DeviceConstraint)

Declaration
protected V1beta1DeviceConstraint(V1beta1DeviceConstraint original)
Parameters
Type Name Description
V1beta1DeviceConstraint original

Properties

DistinctAttribute

DistinctAttribute requires that all devices in question have this attribute and that its type and value are unique across those devices.

When the DRAListTypeAttributes feature gate is enabled, comparison uses set semantics (i.e., element order and duplicates are ignored): list-valued attributes must be pairwise disjoint across devices. Scalar values are treated as singleton sets for backward compatibility.

This acts as the inverse of MatchAttribute.

This constraint is used to avoid allocating multiple requests to the same device by ensuring attribute-level differentiation.

This is useful for scenarios where resource requests must be fulfilled by separate physical devices. For example, a container requests two network interfaces that must be allocated from two different physical NICs.

Declaration
[JsonPropertyName("distinctAttribute")]
public string DistinctAttribute { get; set; }
Property Value
Type Description
string

EqualityContract

Declaration
protected virtual Type EqualityContract { get; }
Property Value
Type Description
Type

MatchAttribute

MatchAttribute requires that all devices in question have this attribute and that its type and value are the same across those devices.

For example, if you specified "dra.example.com/numa" (a hypothetical example!), then only devices in the same NUMA node will be chosen. A device which does not have that attribute will not be chosen. All devices should use a value of the same type for this attribute because that is part of its specification, but if one device doesn't, then it also will not be chosen.

When the DRAListTypeAttributes feature gate is enabled, comparison uses set semantics(i.e., element order and duplicates are ignored): list-valued attributes match when the intersection across all devices is non-empty. Scalar values are treated as singleton sets for backward compatibility.

Must include the domain qualifier.

Declaration
[JsonPropertyName("matchAttribute")]
public string MatchAttribute { get; set; }
Property Value
Type Description
string

Requests

Requests is a list of the one or more requests in this claim which must co-satisfy this constraint. If a request is fulfilled by multiple devices, then all of the devices must satisfy the constraint. If this is not specified, this constraint applies to all requests in this claim.

References to subrequests must include the name of the main request and may include the subrequest using the format <main request>[/<subrequest>]. If just the main request is given, the constraint applies to all subrequests.

Declaration
[JsonPropertyName("requests")]
public IList<string> Requests { get; set; }
Property Value
Type Description
IList<string>

Methods

Equals(object?)

Declaration
public override bool Equals(object? obj)
Parameters
Type Name Description
object obj
Returns
Type Description
bool
Overrides
object.Equals(object)

Equals(V1beta1DeviceConstraint?)

Declaration
public virtual bool Equals(V1beta1DeviceConstraint? other)
Parameters
Type Name Description
V1beta1DeviceConstraint other
Returns
Type Description
bool

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
int
Overrides
object.GetHashCode()

PrintMembers(StringBuilder)

Declaration
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
Type Name Description
StringBuilder builder
Returns
Type Description
bool

ToString()

Declaration
public override string ToString()
Returns
Type Description
string
Overrides
object.ToString()

Operators

operator ==(V1beta1DeviceConstraint?, V1beta1DeviceConstraint?)

Declaration
public static bool operator ==(V1beta1DeviceConstraint? left, V1beta1DeviceConstraint? right)
Parameters
Type Name Description
V1beta1DeviceConstraint left
V1beta1DeviceConstraint right
Returns
Type Description
bool

operator !=(V1beta1DeviceConstraint?, V1beta1DeviceConstraint?)

Declaration
public static bool operator !=(V1beta1DeviceConstraint? left, V1beta1DeviceConstraint? right)
Parameters
Type Name Description
V1beta1DeviceConstraint left
V1beta1DeviceConstraint right
Returns
Type Description
bool

Implements

IEquatable<T>
In this article
Back to top Generated by DocFX