Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Support HTTP boot client identification after metal-operator discovery removal

Đang mở
#393 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 3 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
22/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
go, kubernetes
Lĩnh vực
backend, networking

Hướng nghiên cứu

Start with the current HTTP boot client identification path in boot-operator, which the source comment says matches clients by IP, and list where it depends on discovery-derived Server IPs. Then design the lookup against the comma-separated metal.ironcore.dev/ips annotation on Server resources, checking how changes and removals propagate. Done when tests cover a successful match, a missing mapping, an ambiguous mapping and IP change or removal, and an ambiguous or missing lookup fails without serving another Server's configuration. Coordinate the contract with metal-operator PR #1152 and the FeDHCP follow-up first.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area/metal-automation

Summary

Update boot-operator's HTTP boot client identification to support the removal of metal-operator's built-in discovery flow and probe-reported server IPs.

Context and rationale

metal-operator PR #1152 removes metalprobe and Server.status.networkInterfaces. The replacement source for metaldata's IP index is the comma-separated metal.ironcore.dev/ips annotation on Server resources.

The source comment notes that boot-operator currently identifies HTTP boot clients by IP address. This path must remain functional without the removed discovery flow. The IP publication mechanism and boot-operator's client lookup must use a compatible contract.

Required changes

Affected areas: HTTP boot request handling, IP-based client identification, Server lookup or metaldata integration, deployment configuration, tests, and documentation.

  • Inspect the current HTTP boot client identification path and identify dependencies on discovery-derived server IPs.
  • Define and implement the supported client-to-Server lookup contract after discovery removal. Use the annotation-backed IP source where IP-based identification remains required.
  • Coordinate with the FeDHCP follow-up so published in-band IPs can identify the correct Server for HTTP boot.
  • Ensure address changes and removals cannot leave a stale client-to-Server mapping.
  • Define safe behavior when an IP is missing, invalid, or maps to multiple Servers. Do not serve another Server's boot configuration.
  • Document the IP publication prerequisite, deployment changes, and any ordering constraints for an initial HTTP boot.

Acceptance criteria

  • An HTTP boot request from a client with a published in-band IP resolves to the correct Server and boot configuration without metalprobe or Server.status.networkInterfaces.
  • Changes and removal of published IPs are reflected in client identification.
  • Missing or ambiguous mappings fail safely and produce actionable diagnostics.
  • Tests cover successful identification, missing mappings, ambiguous mappings, and IP changes or removal.
  • Documentation explains how an IP publisher such as FeDHCP supports the HTTP boot flow.

References

This is follow-up work for the discovery removal in metal-operator PR #1152.

Ngôn ngữ chính
Go
Star
6
Fork
9
Merge trung bình
3 ngày 3 giờ
Pull request đã merge (30 ngày)
11

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của ironcore-dev/boot-operator

Tất cả issue của ironcore-dev/boot-operator

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.