Skip to content

Commit

Permalink
fix(google): fixing UpsertGoogleAutoscalingPolicyAtomicOperation miss…
Browse files Browse the repository at this point in the history
…ing Autowired for objectMapper and cacheView (#6237) (#6241)

* fix(google): adding autowired for cacheview and objectmapper

adding autowired for cacheview and objectmapper for UpsertGoogleAutoscalingPolicyAtomicOperation

* fix(google): adding autowired for cacheview and objectmapper

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit f125906)

Co-authored-by: Shlomo Daari <104773977+shlomodaari@users.noreply.github.com>
  • Loading branch information
mergify[bot] and shlomodaari authored Jun 27, 2024
1 parent 4d1782e commit f3d9bcf
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@

package com.netflix.spinnaker.clouddriver.google.deploy.converters

import com.google.api.services.compute.model.AutoscalingPolicy

import com.netflix.spinnaker.cats.cache.Cache
import com.netflix.spinnaker.clouddriver.google.GoogleOperation
import com.netflix.spinnaker.clouddriver.google.deploy.GCEUtil
import com.netflix.spinnaker.clouddriver.google.deploy.GoogleOperationPoller
Expand All @@ -28,12 +29,9 @@ import com.netflix.spinnaker.clouddriver.google.model.GoogleAutoscalingPolicy
import com.netflix.spinnaker.clouddriver.google.model.GoogleServerGroup
import com.netflix.spinnaker.clouddriver.google.provider.view.GoogleClusterProvider
import com.netflix.spinnaker.clouddriver.google.security.GoogleNamedAccountCredentials
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperationsRegistry
import com.netflix.spinnaker.clouddriver.orchestration.OperationDescription
import com.netflix.spinnaker.clouddriver.orchestration.OrchestrationProcessor
import com.netflix.spinnaker.clouddriver.orchestration.*
import com.netflix.spinnaker.clouddriver.security.AbstractAtomicOperationsCredentialsConverter
import com.fasterxml.jackson.databind.ObjectMapper
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.stereotype.Component

Expand All @@ -53,6 +51,12 @@ class ResizeGoogleServerGroupAtomicOperationConverter extends AbstractAtomicOper
@Autowired
OrchestrationProcessor orchestrationProcessor

@Autowired
Cache cacheView

@Autowired
ObjectMapper objectMapper

@Override
AtomicOperation convertOperation(Map input) {
// If the target server group has an Autoscaler configured we need to modify that policy as opposed to the
Expand All @@ -61,7 +65,7 @@ class ResizeGoogleServerGroupAtomicOperationConverter extends AbstractAtomicOper
def convertedDescription = convertDescription(input, autoscalingPolicy)

if (autoscalingPolicy) {
new UpsertGoogleAutoscalingPolicyAtomicOperation(convertedDescription, googleClusterProvider, googleOperationPoller, atomicOperationsRegistry, orchestrationProcessor)
new UpsertGoogleAutoscalingPolicyAtomicOperation(convertedDescription, googleClusterProvider, googleOperationPoller, atomicOperationsRegistry, orchestrationProcessor, cacheView, objectMapper)
} else {
new ResizeGoogleServerGroupAtomicOperation(convertedDescription)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,19 @@

package com.netflix.spinnaker.clouddriver.google.deploy.converters

import com.netflix.spinnaker.cats.cache.Cache
import com.netflix.spinnaker.clouddriver.google.GoogleOperation
import com.netflix.spinnaker.clouddriver.google.deploy.GoogleOperationPoller
import com.netflix.spinnaker.clouddriver.google.deploy.description.UpsertGoogleAutoscalingPolicyDescription
import com.netflix.spinnaker.clouddriver.google.provider.view.GoogleClusterProvider
import com.netflix.spinnaker.clouddriver.google.deploy.ops.UpsertGoogleAutoscalingPolicyAtomicOperation
import com.netflix.spinnaker.clouddriver.google.provider.view.GoogleClusterProvider
import com.netflix.spinnaker.clouddriver.google.security.GoogleNamedAccountCredentials
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperation
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperations
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperationsRegistry
import com.netflix.spinnaker.clouddriver.orchestration.OrchestrationProcessor
import com.netflix.spinnaker.clouddriver.security.AbstractAtomicOperationsCredentialsConverter
import com.fasterxml.jackson.databind.ObjectMapper
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.stereotype.Component

Expand All @@ -46,9 +48,15 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationConverter extends AbstractAtom
@Autowired
OrchestrationProcessor orchestrationProcessor

@Autowired
Cache cacheView

@Autowired
ObjectMapper objectMapper

@Override
AtomicOperation convertOperation(Map input) {
new UpsertGoogleAutoscalingPolicyAtomicOperation(convertDescription(input), googleClusterProvider, googleOperationPoller, atomicOperationsRegistry, orchestrationProcessor)
new UpsertGoogleAutoscalingPolicyAtomicOperation(convertDescription(input), googleClusterProvider, googleOperationPoller, atomicOperationsRegistry, orchestrationProcessor, cacheView, objectMapper)
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,12 +59,14 @@ class UpsertGoogleAutoscalingPolicyAtomicOperation extends GoogleAtomicOperation

private final UpsertGoogleAutoscalingPolicyDescription description

UpsertGoogleAutoscalingPolicyAtomicOperation(UpsertGoogleAutoscalingPolicyDescription description, @Autowired GoogleClusterProvider googleClusterProvider, @Autowired GoogleOperationPoller googleOperationPoller, @Autowired AtomicOperationsRegistry atomicOperationsRegistry, @Autowired OrchestrationProcessor orchestrationProcessor) {
UpsertGoogleAutoscalingPolicyAtomicOperation(UpsertGoogleAutoscalingPolicyDescription description, @Autowired GoogleClusterProvider googleClusterProvider, @Autowired GoogleOperationPoller googleOperationPoller, @Autowired AtomicOperationsRegistry atomicOperationsRegistry, @Autowired OrchestrationProcessor orchestrationProcessor, @Autowired Cache cacheView, @Autowired ObjectMapper objectMapper) {
this.description = description
this.googleClusterProvider = googleClusterProvider
this.googleOperationPoller = googleOperationPoller
this.atomicOperationsRegistry = atomicOperationsRegistry
this.orchestrationProcessor = orchestrationProcessor
this.cacheView = cacheView
this.objectMapper = objectMapper
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ class ResizeGoogleServerGroupAtomicOperationConverterUnitSpec extends Specificat
accountName: ACCOUNT_NAME]
GoogleClusterProvider googleClusterProviderMock = Mock(GoogleClusterProvider)
ResizeGoogleServerGroupAtomicOperationConverter converter =
new ResizeGoogleServerGroupAtomicOperationConverter(googleClusterProvider: googleClusterProviderMock)
new ResizeGoogleServerGroupAtomicOperationConverter(googleClusterProvider: googleClusterProviderMock, objectMapper: mapper)
def credentialsRepository = Mock(CredentialsRepository)
def mockCredentials = Mock(GoogleNamedAccountCredentials)
credentialsRepository.getOne(_) >> mockCredentials
Expand Down Expand Up @@ -83,7 +83,7 @@ class ResizeGoogleServerGroupAtomicOperationConverterUnitSpec extends Specificat
def input = [application: "app", targetSize: desired, region: REGION]
GoogleClusterProvider googleClusterProviderMock = Mock(GoogleClusterProvider)
ResizeGoogleServerGroupAtomicOperationConverter converter =
new ResizeGoogleServerGroupAtomicOperationConverter(googleClusterProvider: googleClusterProviderMock)
new ResizeGoogleServerGroupAtomicOperationConverter(googleClusterProvider: googleClusterProviderMock, objectMapper: mapper)
def credentialsRepository = Mock(CredentialsRepository)
def mockCredentials = Mock(GoogleNamedAccountCredentials)
credentialsRepository.getOne(_) >> mockCredentials
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationConverterUnitSpec extends Spec
def mockCredentials = Mock(GoogleNamedAccountCredentials)
credentialsRepository.getOne(_) >> mockCredentials
converter.credentialsRepository = credentialsRepository
converter.objectMapper = mapper
}

void "upsertGoogleScalingPolicyDescription type returns UpsertGoogleScalingPolicyDescription and UpsertGoogleScalingPolicyAtomicOperation"() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@
package com.netflix.spinnaker.clouddriver.google.deploy.ops

import com.google.api.services.compute.Compute
import com.fasterxml.jackson.databind.ObjectMapper
import com.google.api.services.compute.model.*
import com.netflix.spinnaker.cats.cache.Cache
import com.netflix.spectator.api.DefaultRegistry
import com.netflix.spinnaker.clouddriver.data.task.Task
import com.netflix.spinnaker.clouddriver.data.task.TaskRepository
Expand Down Expand Up @@ -75,6 +77,8 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationUnitSpec extends Specification
GoogleOperationPoller operationPollerMock = Mock(GoogleOperationPoller)
AtomicOperationsRegistry atomicOperationsRegistryMock = Mock(AtomicOperationsRegistry)
DefaultOrchestrationProcessor orchestrationProcessorMock = Mock(DefaultOrchestrationProcessor)
Cache cacheView = Mock(Cache)
ObjectMapper objectMapper = Mock(ObjectMapper)

def setupSpec() {
TaskRepository.threadLocalTask.set(Mock(Task))
Expand Down Expand Up @@ -107,7 +111,7 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationUnitSpec extends Specification
def regionalTimerId = GoogleApiTestUtils.makeOkId(registry, "compute.regionAutoscalers.insert", [scope: "regional", region: REGION])
registry.timer(regionalTimerId)

@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock])
@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock, cacheView, objectMapper])
operation.registry = registry

when:
Expand Down Expand Up @@ -166,7 +170,7 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationUnitSpec extends Specification
def regionUpdateMock = Mock(Compute.RegionAutoscalers.Update)
def regionalTimerId = GoogleApiTestUtils.makeOkId(registry, "compute.regionAutoscalers.update", [scope: "regional", region: REGION])

@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock])
@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock, cacheView, objectMapper])
operation.registry = registry

when:
Expand Down Expand Up @@ -235,7 +239,7 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationUnitSpec extends Specification
def regionAutoscalerMock = Mock(Compute.RegionAutoscalers)
def regionUpdateMock = Mock(Compute.RegionAutoscalers.Update)

@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock])
@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock, cacheView, objectMapper])
operation.registry = registry

when:
Expand Down Expand Up @@ -310,7 +314,7 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationUnitSpec extends Specification
def regionAutoscalerMock = Mock(Compute.RegionAutoscalers)
def regionUpdateMock = Mock(Compute.RegionAutoscalers.Update)

@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock])
@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock, cacheView, objectMapper])
operation.registry = registry

when:
Expand Down Expand Up @@ -422,7 +426,7 @@ class UpsertGoogleAutoscalingPolicyAtomicOperationUnitSpec extends Specification
serviceAccounts: [[email: 'serviceAccount@google.com']]
])

@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock])
@Subject def operation = Spy(UpsertGoogleAutoscalingPolicyAtomicOperation, constructorArgs: [description, googleClusterProviderMock, operationPollerMock,atomicOperationsRegistryMock, orchestrationProcessorMock, cacheView, objectMapper])
operation.registry = registry

when:
Expand Down

0 comments on commit f3d9bcf

Please sign in to comment.