@@ -48,6 +48,17 @@ func (s *Server) convertIronCoreMachineState(state computev1alpha1.MachineState)
4848 return 0 , fmt .Errorf ("unknown ironcore machine state %q" , state )
4949}
5050
51+ func (s * Server ) convertIronCorePowerState (power computev1alpha1.Power ) (iri.Power , error ) {
52+ switch power {
53+ case computev1alpha1 .PowerOn :
54+ return iri .Power_POWER_ON , nil
55+ case computev1alpha1 .PowerOff :
56+ return iri .Power_POWER_OFF , nil
57+ default :
58+ return 0 , fmt .Errorf ("unknown power state: %q" , power )
59+ }
60+ }
61+
5162var ironcoreNetworkInterfaceStateToNetworkInterfaceAttachmentState = map [computev1alpha1.NetworkInterfaceState ]iri.NetworkInterfaceState {
5263 computev1alpha1 .NetworkInterfaceStatePending : iri .NetworkInterfaceState_NETWORK_INTERFACE_PENDING ,
5364 computev1alpha1 .NetworkInterfaceStateAttached : iri .NetworkInterfaceState_NETWORK_INTERFACE_ATTACHED ,
@@ -179,6 +190,11 @@ func (s *Server) convertAggregateIronCoreMachine(aggIronCoreMachine *AggregateIr
179190 ignitionData = ignitionSecret .Data [computev1alpha1 .DefaultIgnitionKey ]
180191 }
181192
193+ power , err := s .convertIronCorePowerState (aggIronCoreMachine .Machine .Spec .Power )
194+ if err != nil {
195+ return nil , fmt .Errorf ("error converting power state: %w" , err )
196+ }
197+
182198 var imageSpec * iri.ImageSpec
183199 if image := aggIronCoreMachine .Machine .Spec .Image ; image != "" {
184200 imageSpec = & iri.ImageSpec {
@@ -236,6 +252,7 @@ func (s *Server) convertAggregateIronCoreMachine(aggIronCoreMachine *AggregateIr
236252 return & iri.Machine {
237253 Metadata : metadata ,
238254 Spec : & iri.MachineSpec {
255+ Power : power ,
239256 Image : imageSpec ,
240257 Class : aggIronCoreMachine .Machine .Spec .MachineClassRef .Name ,
241258 IgnitionData : ignitionData ,
0 commit comments