code: func (az *Cloud) GetResourceGroups() (sets.String, error) {
  	// Kubelet won't set az.nodeInformerSynced, always return configured resourceGroup.
  	if az.nodeInformerSynced == nil {
  		return sets.NewString(az.ResourceGroup), nil
  	}
  
  	az.nodeCachesLock.Lock()
  	defer az.nodeCachesLock.Unlock()
  	if !az.nodeInformerSynced() {
  		return nil, fmt.Errorf("node informer is not synced when trying to GetResourceGroups")
  	}
  
  	resourceGroups := sets.NewString(az.ResourceGroup)
  	for _, rg := range az.nodeResourceGroups {
  		resourceGroups.Insert(rg)
  	}
  
  	return resourceGroups, nil
  }
docs: // GetResourceGroups returns a set of resource groups that all nodes are running on.