88 - [ Non-Goals] ( #non-goals )
99- [ Proposal] ( #proposal )
1010 - [ API - ResourceClaim.Status] ( #api---resourceclaimstatus )
11- - [ User Stories (Optional) ] ( #user-stories-optional )
11+ - [ User Stories] ( #user-stories )
1212 - [ Story 1 - Network Device Status for Network Services] ( #story-1---network-device-status-for-network-services )
1313 - [ Story 2 - Network Device Status for Troubleshooting] ( #story-2---network-device-status-for-troubleshooting )
14- - [ Notes/Constraints/Caveats (Optional) ] ( #notesconstraintscaveats-optional )
14+ - [ Notes/Constraints/Caveats] ( #notesconstraintscaveats )
1515 - [ Risks and Mitigations] ( #risks-and-mitigations )
1616- [ Design Details] ( #design-details )
1717 - [ API] ( #api )
@@ -127,8 +127,7 @@ The API changes define a new `Devices` field in the existing
127127` AllocatedDeviceStatus ` which holds device specific information.
128128
129129A device, identified by ` <driver name>/<pool name>/<device name> ` can be
130- represented only once in the ` Devices ` slice and will also mention which
131- request caused the device to be allocated. The state and characteristics of the
130+ represented only once in the ` Devices ` slice. The state and characteristics of the
132131device are reported in the ` Conditions ` , representing the operational state of
133132the device and in the ` Data ` , an arbitrary data field representing device
134133specific characteristics. Additionally, for networking devices, a field
@@ -204,12 +203,12 @@ type AllocatedDeviceStatus struct {
204203 // Data contains arbitrary driver-specific data.
205204 //
206205 // +optional
207- Data runtime.RawExtension ` json:"data,omitempty" protobuf:"bytes,5,opt,name=data"`
206+ Data * runtime.RawExtension ` json:"data,omitempty" protobuf:"bytes,5,opt,name=data"`
208207
209208 // NetworkData contains network-related information specific to the device.
210209 //
211210 // +optional
212- NetworkData NetworkDeviceData ` json:"networkData,omitempty" protobuf:"bytes,6,opt,name=networkData"`
211+ NetworkData * NetworkDeviceData ` json:"networkData,omitempty" protobuf:"bytes,6,opt,name=networkData"`
213212}
214213
215214// NetworkDeviceData provides network-related details for the allocated device.
@@ -221,13 +220,13 @@ type NetworkDeviceData struct {
221220 // network interface.
222221 //
223222 // +optional
224- InterfaceName string ` json:"interfaceName,omitempty" protobuf:"bytes,1,opt,name=interfaceName"`
223+ InterfaceName * string ` json:"interfaceName,omitempty" protobuf:"bytes,1,opt,name=interfaceName"`
225224
226225 // Addresses lists the network addresses assigned to the device's network interface.
227226 // This can include both IPv4 and IPv6 addresses.
228227 // The addresses are in the CIDR notation, which includes both the address and the
229228 // associated subnet mask.
230- // e.g.: "192.0.2.0 /24" for IPv4 and "2001:db8::/64" for IPv6.
229+ // e.g.: "192.0.2.5 /24" for IPv4 and "2001:db8::5 /64" for IPv6.
231230 //
232231 // +optional
233232 // +listType=atomic
@@ -236,11 +235,11 @@ type NetworkDeviceData struct {
236235 // HWAddress represents the hardware address (e.g. MAC Address) of the device's network interface.
237236 //
238237 // +optional
239- HWAddress string ` json:"hwAddress,omitempty" protobuf:"bytes,3,opt,name=hwAddress"`
238+ HWAddress * string ` json:"hwAddress,omitempty" protobuf:"bytes,3,opt,name=hwAddress"`
240239}
241240```
242241
243- ### User Stories (Optional)
242+ ### User Stories
244243
245244#### Story 1 - Network Device Status for Network Services
246245
@@ -263,7 +262,7 @@ network interfaces helping to quickly and efficiently identify the issues such
263262as error messages on failed network interface configuration, incorrect IP
264263assignments or misconfigured network interfaces.
265264
266- ### Notes/Constraints/Caveats (Optional)
265+ ### Notes/Constraints/Caveats
267266
268267The content of ` Data ` is driver specific and not standardized as part of
269268DRA, the interpretation of this field may then vary between controllers and
@@ -438,6 +437,7 @@ network status.
438437
439438- Feature Gates are enabled by default.
440439- No major outstanding bugs.
440+ - 1 example of real-world usage.
441441- Feedback collected from the community (developers and users) with adjustments
442442 provided, implemented and tested.
443443
522522
523523Check the `ResourceClaim.Status.Devices`.
524524
525+ The metrics `resourceclaim_status_devices_update_attempts_total` will increase.
526+
525527# ##### How can someone using this feature know that it is working for their instance?
526528
527529- [ ] Events
539541# ##### What are the SLIs (Service Level Indicators) an operator can use to determine the health of the service?
540542
541543- [x] Metrics
542- - Metric name : ` resourceclaim_status_devices_update_attempts_total` ; `resourceclaim_status_devices_update_failures_total`
544+ - Metric name :
545+ - " resourceclaim_status_devices_update_attempts_total"
546+ - " resourceclaim_status_devices_update_failures_total"
543547 - [Optional] Aggregation method :
544548 - Components exposing the metric : kube-apiserver
545549- [ ] Other (treat as last resort)
0 commit comments