Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Code refactor and tests rephrase
Browse files Browse the repository at this point in the history
sssash18 committed Nov 23, 2023
1 parent 2d40729 commit 6f46299
Showing 2 changed files with 16 additions and 6 deletions.
18 changes: 14 additions & 4 deletions cluster-autoscaler/cloudprovider/mcm/mcm_cloud_provider.go
Original file line number Diff line number Diff line change
@@ -190,10 +190,8 @@ func (mcm *mcmCloudProvider) GetResourceLimiter() (*cloudprovider.ResourceLimite
return mcm.resourceLimiter, nil
}

// Refresh is called before every main loop and can be used to dynamically update cloud provider state.
// In particular the list of node groups returned by NodeGroups can change as a result of CloudProvider.Refresh().
func (mcm *mcmCloudProvider) Refresh() error {

// checkMCMAvailableReplicas checks if mcm is online
func (mcm *mcmCloudProvider) checkMCMAvailableReplicas() error {
namespace := mcm.mcmManager.namespace
deployment, err := mcm.mcmManager.deploymentLister.Deployments(namespace).Get("machine-controller-manager")
if err != nil {
@@ -204,6 +202,18 @@ func (mcm *mcmCloudProvider) Refresh() error {
return fmt.Errorf("machine-controller-manager is offline. Cluster autoscaler operations would be suspended.")
}

return nil
}

// Refresh is called before every main loop and can be used to dynamically update cloud provider state.
// In particular the list of node groups returned by NodeGroups can change as a result of CloudProvider.Refresh().
func (mcm *mcmCloudProvider) Refresh() error {

err := mcm.checkMCMAvailableReplicas()
if err != nil {
return err
}

for _, machineDeployment := range mcm.machinedeployments {
err := mcm.mcmManager.resetPriorityForNotToBeDeletedMachines(machineDeployment.Name)
if err != nil {
Original file line number Diff line number Diff line change
@@ -350,7 +350,7 @@ func TestRefresh(t *testing.T) {
table := []data{
{

"should set available replicas of mcm as zero",
"should return an error if MCM has zero available replicas",
setup{
nodes: newNodes(1, "fakeID", []bool{false}),
machines: newMachines(1, "fakeID", nil, "machinedeployment-1", "machineset-1", []string{"1"}, []bool{false}),
@@ -364,7 +364,7 @@ func TestRefresh(t *testing.T) {
},
{

"should get no deployment of mcm",
"should return an error if MCM deployment is not found",
setup{
nodes: newNodes(1, "fakeID", []bool{false}),
machines: newMachines(1, "fakeID", nil, "machinedeployment-1", "machineset-1", []string{"1"}, []bool{false}),

0 comments on commit 6f46299

Please sign in to comment.