@@ -283,7 +283,7 @@ func (s *Service) createInstanceImpl(eventObject runtime.Object, openStackCluste
283
283
if len (instanceSpec .Tags ) > 0 {
284
284
iTags = instanceSpec .Tags
285
285
}
286
- portName := getPortName (instanceSpec .Name , portOpts , i )
286
+ portName := networking . GetPortName (instanceSpec .Name , portOpts , i )
287
287
port , err := networkingService .GetOrCreatePort (eventObject , clusterName , portName , portOpts , securityGroups , iTags )
288
288
if err != nil {
289
289
return nil , err
@@ -380,14 +380,6 @@ func (s *Service) createInstanceImpl(eventObject runtime.Object, openStackCluste
380
380
return createdInstance , nil
381
381
}
382
382
383
- // getPortName appends a suffix to an instance name in order to try and get a unique name per port.
384
- func getPortName (instanceName string , opts * infrav1.PortOpts , netIndex int ) string {
385
- if opts != nil && opts .NameSuffix != "" {
386
- return fmt .Sprintf ("%s-%s" , instanceName , opts .NameSuffix )
387
- }
388
- return fmt .Sprintf ("%s-%d" , instanceName , netIndex )
389
- }
390
-
391
383
func rootVolumeName (instanceName string ) string {
392
384
return fmt .Sprintf ("%s-root" , instanceName )
393
385
}
@@ -550,7 +542,7 @@ func (s *Service) GetManagementPort(openStackCluster *infrav1.OpenStackCluster,
550
542
return & allPorts [0 ], nil
551
543
}
552
544
553
- func (s * Service ) DeleteInstance (eventObject runtime.Object , instanceStatus * InstanceStatus , instanceName string , rootVolume * infrav1. RootVolume ) error {
545
+ func (s * Service ) DeleteInstance (openStackCluster * infrav1. OpenStackCluster , eventObject runtime.Object , instanceStatus * InstanceStatus , instanceSpec * InstanceSpec ) error {
554
546
if instanceStatus == nil {
555
547
/*
556
548
We create a boot-from-volume instance in 2 steps:
@@ -570,8 +562,8 @@ func (s *Service) DeleteInstance(eventObject runtime.Object, instanceStatus *Ins
570
562
Note that we don't need to separately delete the root volume when deleting the instance because
571
563
DeleteOnTermination will ensure it is deleted in that case.
572
564
*/
573
- if hasRootVolume (rootVolume ) {
574
- name := rootVolumeName (instanceName )
565
+ if hasRootVolume (instanceSpec . RootVolume ) {
566
+ name := rootVolumeName (instanceSpec . Name )
575
567
volume , err := s .getVolumeByName (name )
576
568
if err != nil {
577
569
return err
@@ -620,7 +612,12 @@ func (s *Service) DeleteInstance(eventObject runtime.Object, instanceStatus *Ins
620
612
621
613
// delete port of error instance
622
614
if instanceStatus .State () == infrav1 .InstanceStateError {
623
- if err := networkingService .GarbageCollectErrorInstancesPort (eventObject , instanceStatus .Name ()); err != nil {
615
+ portOpts , err := s .constructPorts (openStackCluster , instanceSpec )
616
+ if err != nil {
617
+ return err
618
+ }
619
+
620
+ if err := networkingService .GarbageCollectErrorInstancesPort (eventObject , instanceSpec .Name , portOpts ); err != nil {
624
621
return err
625
622
}
626
623
}
0 commit comments