Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Support HTTP boot client identification after metal-operator discovery removal

Aperta
#393 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 3 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
22/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
go, kubernetes

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.

Lingua principale
Go
Stelle
6
Fork
9
Merge medio
3g 3h
PR unite (30g)
11

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ironcore-dev/boot-operator

Tutte le issue di ironcore-dev/boot-operator

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.