@@ -303,7 +303,8 @@ func (lbp *LBProvider) getOrCreateSystemStack() (*client.Environment, error) {
303303
304304func (lbp * LBProvider ) getStack (name string ) (* client.Environment , error ) {
305305 opts := client .NewListOpts ()
306- opts .Filters ["name" ] = name
306+
307+ opts .Filters ["externalId" ] = fmt .Sprintf ("kubernetes://%s" , name )
307308 opts .Filters ["removed_null" ] = "1"
308309
309310 envs , err := lbp .client .Environment .List (opts )
@@ -545,12 +546,12 @@ func (lbp *LBProvider) setServiceLinks(lb *client.LoadBalancerService, lbConfig
545546 serviceLinks := & client.SetLoadBalancerServiceLinksInput {}
546547
547548 for _ , bcknd := range lbConfig .FrontendServices [0 ].BackendServices {
548- svc , err := lbp .getKubernetesServiceByName (bcknd .Name , bcknd . Namespace )
549+ svc , err := lbp .getKubernetesServiceByUUID (bcknd .UUID )
549550 if err != nil {
550551 return err
551552 }
552553 if svc == nil {
553- return fmt .Errorf ("Failed to find service [%s] in stack [%s] in Rancher" , bcknd .Name , bcknd . Namespace )
554+ return fmt .Errorf ("Failed to find service [%s] in Rancher" , bcknd .UUID )
554555 }
555556 ports := []string {}
556557 var port string
@@ -662,29 +663,18 @@ func (lbp *LBProvider) getLBServiceByName(name string) (*client.LoadBalancerServ
662663 return & lbs .Data [0 ], nil
663664}
664665
665- func (lbp * LBProvider ) getKubernetesServiceByName (name string , stackName string ) (* client.KubernetesService , error ) {
666- stack , err := lbp .getStack (stackName )
667- if err != nil {
668- return nil , err
669- }
670-
671- if stack == nil {
672- return nil , fmt .Errorf ("Coudln't get stack by name [%s]" , stackName )
673- }
674-
666+ func (lbp * LBProvider ) getKubernetesServiceByUUID (UUID string ) (* client.KubernetesService , error ) {
675667 opts := client .NewListOpts ()
676- opts .Filters ["name " ] = name
668+ opts .Filters ["externalId " ] = UUID
677669 opts .Filters ["removed_null" ] = "1"
678- opts .Filters ["environmentId" ] = stack .Id
679670 lbs , err := lbp .client .KubernetesService .List (opts )
680671 if err != nil {
681- return nil , fmt .Errorf ("Coudln't get service by name [%s]. Error: %#v" , name , err )
672+ return nil , fmt .Errorf ("Coudln't get service by uuid [%s]. Error: %#v" , UUID , err )
682673 }
683674
684675 if len (lbs .Data ) == 0 {
685676 return nil , nil
686677 }
687-
688678 return & lbs .Data [0 ], nil
689679}
690680
0 commit comments