Open hardikdr opened 1 month ago
A possible enhancement in the APIs could look following, it's open for discussion:
ServerClaim:
apiVersion: metal.ironcore.dev/v1alpha1
kind: ServerClaim
metadata:
name: example-serverclaim
spec:
power: "On"
...
bootPolicy: NetworkBootOnce # Options: NetworkBootOnce / NetworkBootAlways / None
status:
conditions:
- type: NetworkBootedOnce
status: "True"
reason: Network boot was performed once.
bootPolicy
Field in ServerClaim: Add a spec.bootPolicy
field with the following values:
NetworkBootOnce
: Set PXEBootOnce
signal for the first boot, and delete the associated ServerBootConfig
after the successful power cycle operation execution. NetworkBootAlways
: Always set a PXEBootOnce
signal during power cycles and retain the ServerBootConfig
.None
: Do not set any boot-related signals, and do not create a ServerBootConfig
.ServerBootConfig
Lifecycle:
ServerBootConfig
after the first boot for NetworkBootOnce
.ServerBootConfig
indefinitely for NetworkBootAlways
.ServerBootConfig
for None
.Tracking Boot State:
NetworkBootedOnce
condition in ServerClaim.status
to track if the network boot was successfully performed.cc @5kt @defo89 @stefanhipfel @afritzler
Summary
Add support for multiple boot modes concerning how operating-system is installed on the Machine.
Progress Tracker:
Motivation
Better flexibility in deployment scenarios.