mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-04 18:00:08 +00:00
Allow use resource ID to specify public IP address in azure_loadbalancer
This commit is contained in:
parent
6b03a43b76
commit
540baa9796
@ -699,3 +699,23 @@ func (as *availabilitySet) EnsureBackendPoolDeleted(poolID, vmSetName string) er
|
|||||||
// Do nothing for availability set.
|
// Do nothing for availability set.
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// parseResourceGroupNameFromID parses the resource group name from a resource ID
|
||||||
|
func parseResourceGroupNameFromID(resourceID string) (resourceGroupName string, err error) {
|
||||||
|
reg, err := regexp.Compile(`(?i)(.*?)/resourceGroups/(?P<rgname>\S+)/providers/(.*?)`)
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
return "", err
|
||||||
|
}
|
||||||
|
|
||||||
|
matchNames := reg.SubexpNames()
|
||||||
|
matches := reg.FindStringSubmatch(resourceID)
|
||||||
|
|
||||||
|
for i := range matchNames {
|
||||||
|
if matchNames[i] == "rgname" {
|
||||||
|
return matches[i], nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return "", fmt.Errorf("Invalid resource ID: %s", resourceID)
|
||||||
|
}
|
||||||
|
@ -156,10 +156,11 @@ func (az *Cloud) listLoadBalancers() (lbListResult network.LoadBalancerListResul
|
|||||||
func (az *Cloud) getPublicIPAddress(name string) (pip network.PublicIPAddress, exists bool, err error) {
|
func (az *Cloud) getPublicIPAddress(name string) (pip network.PublicIPAddress, exists bool, err error) {
|
||||||
var realErr error
|
var realErr error
|
||||||
|
|
||||||
|
var realErr error
|
||||||
az.operationPollRateLimiter.Accept()
|
az.operationPollRateLimiter.Accept()
|
||||||
glog.V(10).Infof("PublicIPAddressesClient.Get(%s): start", name)
|
glog.V(10).Infof("PublicIPAddressesClient.Get(%s, %s): start", resourceGroup, pipName)
|
||||||
pip, err = az.PublicIPAddressesClient.Get(az.ResourceGroup, name, "")
|
pip, err = az.PublicIPAddressesClient.Get(resourceGroup, pipName, "")
|
||||||
glog.V(10).Infof("PublicIPAddressesClient.Get(%s): end", name)
|
glog.V(10).Infof("PublicIPAddressesClient.Get(%s, %s): end", resourceGroup, pipName)
|
||||||
|
|
||||||
exists, realErr = checkResourceExistsFromError(err)
|
exists, realErr = checkResourceExistsFromError(err)
|
||||||
if realErr != nil {
|
if realErr != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user