Class V1DeviceConstraint
DeviceConstraint must have exactly one field set besides Requests.
Inheritance
V1DeviceConstraint
Assembly: KubernetesClient.dll
Syntax
public record V1DeviceConstraint : IEquatable<V1DeviceConstraint>
Constructors
View Source
V1DeviceConstraint()
Declaration
public V1DeviceConstraint()
View Source
V1DeviceConstraint(V1DeviceConstraint)
Declaration
protected V1DeviceConstraint(V1DeviceConstraint original)
Parameters
Properties
View Source
DistinctAttribute
DistinctAttribute requires that all devices in question have this attribute and
that its type and value are unique across those devices.
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
View Source
EqualityContract
Declaration
protected virtual Type EqualityContract { get; }
Property Value
View Source
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.
Must include the domain qualifier.
Declaration
[JsonPropertyName("matchAttribute")]
public string MatchAttribute { get; set; }
Property Value
View Source
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
Methods
View Source
Equals(object?)
Declaration
public override bool Equals(object? obj)
Parameters
| Type |
Name |
Description |
| object |
obj |
|
Returns
Overrides
View Source
Equals(V1DeviceConstraint?)
Declaration
public virtual bool Equals(V1DeviceConstraint? other)
Parameters
Returns
View Source
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Overrides
View Source
PrintMembers(StringBuilder)
Declaration
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
Returns
View Source
ToString()
Declaration
public override string ToString()
Returns
Overrides
Operators
View Source
operator ==(V1DeviceConstraint?, V1DeviceConstraint?)
Declaration
public static bool operator ==(V1DeviceConstraint? left, V1DeviceConstraint? right)
Parameters
Returns
View Source
operator !=(V1DeviceConstraint?, V1DeviceConstraint?)
Declaration
public static bool operator !=(V1DeviceConstraint? left, V1DeviceConstraint? right)
Parameters
Returns
Implements