Skip to content

Commit

Permalink
refactor(dependency): replace groovy coordinates and code adjustment …
Browse files Browse the repository at this point in the history
…to accomodate upgrade of groovy 4.x

- Replacing the groovy coordinates from `org.codehaus.groovy` to `org.apache.groovy` supported by groovy 4.x and above versions.

- Unpinning `io.rest-assured` to get in sync with kork.

- Removed unused import from class `com.netflix.spinnaker.clouddriver.oracle.deploy.op.DestroyOracleServerGroupAtomicOperationSpec.groovy`.

- While upgrading groovy 4.0.15:

Encounter below error during build process of clouddriver-appengine module and similar errors in clouddriver-aws, clouddriver-azure, clouddriver-core, clouddriver-google and clouddriver-oracle modules :
```
/clouddriver/clouddriver-appengine/build/tmp/compileGroovy/groovy-java-stubs/com/netflix/spinnaker/clouddriver/appengine/model/AppengineServerGroup.java:3: error: AppengineServerGroup is not abstract and does not override abstract method isDisabled() in ServerGroup
@groovy.transform.CompileStatic() @groovy.transform.EqualsAndHashCode(includes={"name","account"}) public class AppengineServerGroup
                                                                                                          ^
1 error
startup failed:
Compilation failed; see the compiler error output for details.

1 error

> Task :clouddriver-appengine:compileGroovy FAILED
```
To fix this issue added `isDisabled()` overriden method.

Encounter below error during test execution of clouddriver-aws module and similar errors in clouddriver-google module:
```
No such property: SUBNET_ID_OVERRIDE_TAG for class: com.netflix.spinnaker.clouddriver.aws.deploy.handlers.BasicAmazonDeployHandlerUnitSpec$1
groovy.lang.MissingPropertyException: No such property: SUBNET_ID_OVERRIDE_TAG for class: com.netflix.spinnaker.clouddriver.aws.deploy.handlers.BasicAmazonDeployHandlerUnitSpec$1
	at app//groovy.lang.GroovyObject.getProperty(GroovyObject.java:50)
	at app//groovy.lang.Closure.getPropertyTryThese(Closure.java:325)
	at app//groovy.lang.Closure.getPropertyOwnerFirst(Closure.java:319)
	at app//groovy.lang.Closure.getProperty(Closure.java:309)
	at com.netflix.spinnaker.clouddriver.aws.deploy.handlers.BasicAmazonDeployHandler.copySourceAttributes_closure6(BasicAmazonDeployHandler.groovy:384)
	at app//com.netflix.spinnaker.clouddriver.aws.deploy.handlers.BasicAmazonDeployHandler.copySourceAttributes(BasicAmazonDeployHandler.groovy:384)
	at com.netflix.spinnaker.clouddriver.aws.deploy.handlers.BasicAmazonDeployHandlerUnitSpec.should copy subnet ids from source when available and not explicitly specified(BasicAmazonDeployHandlerUnitSpec.groovy:590)
```
In order to fix this issue, replace the static final variable with qualified name using classname. It may be related to this [issue](https://issues.apache.org/jira/browse/GROOVY-9386).
--------

Encounter below error during test execution of `AmazonCloudMetricProviderSpec.groovy` class in clouddriver-aws module:
```
No such property: args for class: com.netflix.spinnaker.clouddriver.aws.model.AmazonMetricDescriptor
groovy.lang.MissingPropertyException: No such property: args for class: com.netflix.spinnaker.clouddriver.aws.model.AmazonMetricDescriptor
	at app//com.netflix.spinnaker.clouddriver.aws.model.AmazonMetricDescriptor.from(AmazonMetricDescriptor.groovy:41)
	at app//com.netflix.spinnaker.clouddriver.aws.provider.view.AmazonCloudMetricProvider.getMetricDescriptor(AmazonCloudMetricProvider.groovy:66)
	at com.netflix.spinnaker.clouddriver.aws.provider.view.AmazonCloudMetricProviderSpec.getMetrics returns a metric when one found(AmazonCloudMetricProviderSpec.groovy:74)
```
To fix this issue, created an explicit constructor and removed `@Immutable`.
----------

Encounter below error during test execution in clouddriver-core module:
```
No such property: completed for class: com.netflix.spinnaker.clouddriver.data.task.DefaultTaskStatus
groovy.lang.MissingPropertyException: No such property: completed for class: com.netflix.spinnaker.clouddriver.data.task.DefaultTaskStatus
	at app//org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:67)
	at app//org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.unwrap(IndyGuardsFiltersAndSignatures.java:163)
	at app//org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
	at app//com.netflix.spinnaker.clouddriver.data.task.InMemoryTaskRepository.list(InMemoryTaskRepository.groovy:54)
	at app//com.netflix.spinnaker.clouddriver.core.test.TaskRepositoryTck.testListRunningTasks(TaskRepositoryTck.java:107)
```
To fix this issue, replaced the fields with its getter method.
----------

Encounter below error during test execution of `ProjectClustersServiceSpec.groovy` class in clouddriver-core module, and similar error in clouddriver-titus module:
```
> Task :clouddriver-core:compileTestGroovy FAILED
startup failed:
/clouddriver/clouddriver-core/src/test/groovy/com/netflix/spinnaker/clouddriver/core/ProjectClustersServiceSpec.groovy: 495: The return type of boolean isDisabled() in com.netflix.spinnaker.clouddriver.core.ProjectClustersServiceSpec$TestServerGroup is incompatible with java.lang.Boolean in com.netflix.spinnaker.clouddriver.model.ServerGroup
. At [495:5]  @ line 495, column 5.
       boolean disabled
       ^
1 error
```
To fix this issue, replaced `boolean` primitive type to `Boolean` type.
----------

Encounter below error during compilation of clouddriver-google module:
```
/clouddriver/clouddriver-google/build/tmp/compileGroovy/groovy-java-stubs/com/netflix/spinnaker/clouddriver/google/deploy/exception/GoogleResourceNotFoundException.java:5: error: no suitable constructor found for GoogleOperationException(no arguments)
@groovy.transform.InheritConstructors() public class GoogleResourceNotFoundException
                                               ^
    constructor GoogleOperationException.GoogleOperationException(String) is not applicable
      (actual and formal argument lists differ in length)
    constructor GoogleOperationException.GoogleOperationException(String,Throwable) is not applicable
      (actual and formal argument lists differ in length)
/clouddriver/clouddriver-google/build/tmp/compileGroovy/groovy-java-stubs/com/netflix/spinnaker/clouddriver/google/deploy/exception/GoogleOperationTimedOutException.java:5: error: no suitable constructor found for GoogleOperationException(no arguments)
@groovy.transform.InheritConstructors() public class GoogleOperationTimedOutException
                                               ^
    constructor GoogleOperationException.GoogleOperationException(String) is not applicable
      (actual and formal argument lists differ in length)
    constructor GoogleOperationException.GoogleOperationException(String,Throwable) is not applicable
      (actual and formal argument lists differ in length)
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
3 errors
startup failed:
Compilation failed; see the compiler error output for details.

1 error

> Task :clouddriver-google:compileGroovy FAILED
```
To fix this issue, added a default constructor to `GoogleOperationException.groovy` class.
----------

Encounter below error during test execution in clouddriver-azure module:
```
Cannot invoke method isWarnEnabled() on null object
java.lang.NullPointerException: Cannot invoke method isWarnEnabled() on null object
	at com.netflix.spinnaker.clouddriver.azure.resources.servergroup.ops.preprocessors.RegionsToRegionDescriptionPreProcessor.process_closure1(RegionsToRegionDescriptionPreProcessor.groovy:45)
	at groovy.lang.Closure.call(Closure.java:433)
	at groovy.lang.Closure.call(Closure.java:422)
	at com.netflix.spinnaker.clouddriver.azure.resources.servergroup.ops.preprocessors.RegionsToRegionDescriptionPreProcessor.process(RegionsToRegionDescriptionPreProcessor.groovy:40)
	at com.netflix.spinnaker.clouddriver.azure.resources.servergroup.ops.preprocessors.RegionsToRegionDescriptionPreProcessorSpec.should convert legacy descriptions(RegionsToRegionDescriptionPreProcessorSpec.groovy:33)
```
To fix this issue, explicitly defined a method to return `log` object inside `with{}` closure. It may be related to this [issue](https://issues.apache.org/jira/browse/GROOVY-8820)
  • Loading branch information
j-sandy committed Sep 13, 2024
1 parent 0226100 commit 6fcc370
Show file tree
Hide file tree
Showing 47 changed files with 98 additions and 68 deletions.
2 changes: 1 addition & 1 deletion cats/cats-core/cats-core.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ dependencies {

implementation "org.slf4j:slf4j-api"
implementation "com.fasterxml.jackson.core:jackson-annotations"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "com.google.guava:guava"

testImplementation project(":cats:cats-test")
Expand Down
2 changes: 1 addition & 1 deletion cats/cats-redis/cats-redis.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ dependencies {

compileOnly "org.projectlombok:lombok"

implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "com.fasterxml.jackson.core:jackson-databind"
implementation "io.spinnaker.kork:kork-jedis"
implementation "com.github.ben-manes.caffeine:guava"
Expand Down
2 changes: 1 addition & 1 deletion cats/cats-test/cats-test.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ tasks.compileGroovy.enabled = true

dependencies {
implementation project(":cats:cats-core")
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"

implementation "org.springframework.boot:spring-boot-starter-test"
implementation "org.spockframework:spock-core"
Expand Down
2 changes: 1 addition & 1 deletion cats/cats.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ subprojects {
dependencies {
implementation project(":clouddriver-api")

implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
}
}
2 changes: 1 addition & 1 deletion clouddriver-alicloud/clouddriver-alicloud.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ dependencies {
implementation 'com.aliyun:aliyun-java-sdk-ess:2.3.2'
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.apache.commons:commons-lang3"

testImplementation "cglib:cglib-nodep"
Expand Down
4 changes: 2 additions & 2 deletions clouddriver-appengine/clouddriver-appengine.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ dependencies {
implementation "com.squareup.retrofit:retrofit"
implementation "commons-io:commons-io"
implementation "org.apache.commons:commons-compress:1.21"
implementation "org.codehaus.groovy:groovy"
implementation "org.codehaus.groovy:groovy-json"
implementation "org.apache.groovy:groovy"
implementation "org.apache.groovy:groovy-json"
implementation "org.eclipse.jgit:org.eclipse.jgit.ssh.jsch:5.13.1.202206130422-r"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,9 @@ class AppengineServerGroup implements ServerGroup, Serializable {
this.allowsGradualTrafficMigration = versionAllowsGradualTrafficMigration(version)
}

Boolean isDisabled() {
disabled
}
@Override
ServerGroup.InstanceCounts getInstanceCounts() {
new ServerGroup.InstanceCounts(
Expand Down
7 changes: 2 additions & 5 deletions clouddriver-artifacts/clouddriver-artifacts.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ dependencies {
implementation "org.apache.commons:commons-lang3"
implementation "org.apache.ivy:ivy:2.4.0"
implementation "org.apache.maven:maven-resolver-provider:3.5.4"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"

Expand All @@ -71,10 +71,7 @@ dependencies {
integrationImplementation "org.testcontainers:mysql"
integrationImplementation "org.testcontainers:junit-jupiter"
integrationImplementation "com.mysql:mysql-connector-j"
integrationImplementation ("io.rest-assured:rest-assured:4.0.0") {
// Exclude groovy pulled in by rest-assured, so we use kork's version
exclude group: "org.codehaus.groovy", module: "groovy"
}
integrationImplementation "io.rest-assured:rest-assured"
}

task integrationTest(type: Test) {
Expand Down
6 changes: 2 additions & 4 deletions clouddriver-aws/clouddriver-aws.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ dependencies {
implementation "io.reactivex:rxjava"
implementation "org.apache.httpcomponents:httpclient"
implementation "org.apache.httpcomponents:httpcore"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation 'com.aestasit.infrastructure.sshoogr:sshoogr:0.9.25'
Expand All @@ -71,9 +71,7 @@ dependencies {
integrationImplementation "org.springframework:spring-test"
integrationImplementation sourceSets.test.output
integrationImplementation sourceSets.main.output
integrationImplementation ("io.rest-assured:rest-assured:4.0.0") {
exclude group: "org.codehaus.groovy", module: "groovy" // use kork's version
}
integrationImplementation "io.rest-assured:rest-assured"
}

task integrationTest(type: Test) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -381,7 +381,7 @@ class BasicAmazonDeployHandler implements DeployHandler<BasicAmazonDeployDescrip
)

if (serverGroup) {
String subnetIdTag = serverGroup.asg.tags.find { it.key == SUBNET_ID_OVERRIDE_TAG }?.value
String subnetIdTag = serverGroup.asg.tags.find { it.key == BasicAmazonDeployHandler.SUBNET_ID_OVERRIDE_TAG }?.value
if (subnetIdTag) {
// source server group had subnet id overrides, propagate them forward
description.subnetIds = subnetIdTag.split(",")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,20 @@ import com.amazonaws.services.cloudwatch.model.Dimension
import com.amazonaws.services.cloudwatch.model.Metric
import com.fasterxml.jackson.annotation.JsonInclude
import com.netflix.spinnaker.clouddriver.model.CloudMetricDescriptor
import groovy.transform.Immutable

@Immutable
@JsonInclude(JsonInclude.Include.NON_EMPTY)
class AmazonMetricDescriptor implements CloudMetricDescriptor {
final String cloudProvider = 'aws'
final String namespace
final String name
final List<Dimension> dimensions

AmazonMetricDescriptor (String cloudProvider, String namespace, String name, List<Dimension> dimensions) {
this.cloudProvider = cloudProvider
this.namespace = namespace
this.name = name
this.dimensions = dimensions
}
static AmazonMetricDescriptor from(Metric metric) {
new AmazonMetricDescriptor('aws', metric.namespace, metric.metricName, metric.dimensions)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,8 @@ class SimpleServerGroup implements ServerGroup {
ServerGroup.Capacity capacity
ServerGroup.ImageSummary imageSummary
ServerGroup.ImagesSummary imagesSummary

Boolean isDisabled() {
disabled
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -572,5 +572,9 @@ class DiscoverySupportUnitSpec extends Specification {
ServerGroup.Capacity capacity
ServerGroup.ImageSummary getImageSummary() {}
ServerGroup.ImagesSummary getImagesSummary() {}

Boolean isDisabled() {
disabled
}
}
}
2 changes: 1 addition & 1 deletion clouddriver-azure/clouddriver-azure.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ dependencies {
implementation "io.spinnaker.fiat:fiat-core:$fiatVersion"
implementation "io.spinnaker.kork:kork-exceptions"
implementation "io.spinnaker.kork:kork-moniker"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation "com.azure.resourcemanager:azure-resourcemanager:2.19.0"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,10 @@ class AzureServerGroupDescription extends AzureResourceOpsDescription implements
String.format("%s-%s-%s", application, stack, detail)
}

Boolean isDisabled() {
disabled
}

@Override
Set<String> getLoadBalancers() {
if(this.appGatewayName != null) return Sets.newHashSet(this.appGatewayName)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,17 @@ package com.netflix.spinnaker.clouddriver.azure.resources.servergroup.ops.prepro
import com.netflix.spinnaker.clouddriver.azure.resources.servergroup.model.EnableDisableDestroyAzureServerGroupDescription
import com.netflix.spinnaker.clouddriver.orchestration.AtomicOperationDescriptionPreProcessor
import groovy.util.logging.Slf4j
import org.slf4j.Logger
import org.springframework.stereotype.Component

@Slf4j
@Component
class RegionsToRegionDescriptionPreProcessor implements AtomicOperationDescriptionPreProcessor {

private Logger getLog() {
return log
}

@Override
boolean supports(Class descriptionClass) {
return descriptionClass == EnableDisableDestroyAzureServerGroupDescription
Expand All @@ -36,7 +42,7 @@ class RegionsToRegionDescriptionPreProcessor implements AtomicOperationDescripti
region = regions[0]

if (regions.size() > 1) {
log.warn("EnableDisableDestroyAzureServerGroupDescription has regions size greater than 1: $regions")
getLog().warn("EnableDisableDestroyAzureServerGroupDescription has regions size greater than 1: $regions")
}
}

Expand Down
2 changes: 1 addition & 1 deletion clouddriver-cloudfoundry/clouddriver-cloudfoundry.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ dependencies {
implementation project(":cats:cats-core")
implementation project(":clouddriver-docker")

implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"

implementation "io.spinnaker.fiat:fiat-core:$fiatVersion"
implementation "org.apache.commons:commons-lang3"
Expand Down
2 changes: 1 addition & 1 deletion clouddriver-cloudrun/clouddriver-cloudrun.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ dependencies {
implementation "com.squareup.retrofit:retrofit"
implementation "commons-io:commons-io"
implementation "org.apache.commons:commons-compress:1.20"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.eclipse.jgit:org.eclipse.jgit:5.7.0.202003110725-r"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
Expand Down
4 changes: 2 additions & 2 deletions clouddriver-consul/clouddriver-consul.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ dependencies {
implementation "com.squareup.okhttp:okhttp"
implementation "com.squareup.retrofit:converter-jackson"
implementation "com.squareup.retrofit:retrofit"
implementation "org.codehaus.groovy:groovy"
implementation "org.codehaus.groovy:groovy-json"
implementation "org.apache.groovy:groovy"
implementation "org.apache.groovy:groovy-json"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation "io.spinnaker.kork:kork-retrofit"
implementation "io.spinnaker.kork:kork-exceptions"
Expand Down
2 changes: 1 addition & 1 deletion clouddriver-core-tck/clouddriver-core-tck.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@ dependencies {
implementation "org.junit.jupiter:junit-jupiter-api"
implementation "org.apache.commons:commons-lang3"
implementation "org.assertj:assertj-core"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
}
6 changes: 3 additions & 3 deletions clouddriver-core/clouddriver-core.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ dependencies {

// This is because some classes in this module use the Groovy @Immutable annotation,
// which appears to require consumers to have core groovy on the classpath
api "org.codehaus.groovy:groovy"
api "org.apache.groovy:groovy"

implementation "javax.inject:javax.inject:1"
implementation "javax.validation:validation-api"
Expand Down Expand Up @@ -41,8 +41,8 @@ dependencies {
implementation "com.jakewharton.retrofit:retrofit1-okhttp3-client"
implementation "io.reactivex:rxjava"
implementation "net.jodah:failsafe:1.0.4"
implementation "org.codehaus.groovy:groovy"
implementation "org.codehaus.groovy:groovy-templates"
implementation "org.apache.groovy:groovy"
implementation "org.apache.groovy:groovy-templates"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "redis.clients:jedis"
implementation "org.jooq:jooq"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ class InMemoryTaskRepository implements TaskRepository {
List<Task> list() {
List<Task> tasks = new ArrayList<>();
for (Task value : repository.values()) {
if (!value.getStatus().completed) {
if (!value.getStatus().isCompleted()) {
tasks.add(value)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ class DefaultOrchestrationProcessor implements OrchestrationProcessor {
}
}

if (task.status?.failed) {
if (task.status?.isFailed()) {
task.updateStatus(TASK_PHASE, "Orchestration completed with errors, see prior task logs.")
} else {
task.updateStatus(TASK_PHASE, "Orchestration completed.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -492,7 +492,7 @@ class ProjectClustersServiceSpec extends Specification {
String type = "test"
String cloudProvider = "test"
String region
boolean disabled
Boolean disabled
Set<String> instances = []
Set<String> loadBalancers
Set<String> securityGroups
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,8 @@ class SimpleServerGroup implements ServerGroup {
Capacity capacity
ImagesSummary imagesSummary
ImageSummary imageSummary

Boolean isDisabled() {
disabled
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ class DefaultOrchestrationProcessorSpec extends Specification {
1 * taskRepository.create(_, _, taskKey) >> task
1 * atomicOperation.operate(_) >> { throw exception }
task.status.isFailed()
task.status.retryable == retryable
task.status.isRetryable() == retryable
//Tasks without SagaIds (i.e., not a saga) are not retryable
where:
Expand Down
2 changes: 1 addition & 1 deletion clouddriver-dcos/clouddriver-dcos.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ dependencies {
implementation "io.spinnaker.fiat:fiat-core:$fiatVersion"
implementation "io.spinnaker.kork:kork-moniker"
implementation "joda-time:joda-time:2.10.1"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation 'com.cerner.marathon:marathon-client:0.6.3'
Expand Down
2 changes: 1 addition & 1 deletion clouddriver-docker/clouddriver-docker.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ dependencies {
implementation "org.springframework.boot:spring-boot-actuator"
implementation "org.springframework.boot:spring-boot-starter-web"
implementation "org.springframework.cloud:spring-cloud-context"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "com.google.guava:guava"
implementation "com.netflix.spectator:spectator-api"
implementation "com.squareup.okhttp:okhttp"
Expand Down
6 changes: 2 additions & 4 deletions clouddriver-ecs/clouddriver-ecs.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ dependencies {
implementation "org.apache.commons:commons-lang3"
implementation "org.apache.httpcomponents:httpclient"
implementation "org.apache.httpcomponents:httpcore"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.springframework.boot:spring-boot-starter-web"

testImplementation "cglib:cglib-nodep"
Expand All @@ -56,9 +56,7 @@ dependencies {
integrationImplementation "com.mysql:mysql-connector-j"
integrationImplementation sourceSets.test.output
integrationImplementation sourceSets.main.output
integrationImplementation ("io.rest-assured:rest-assured:4.0.0") {
exclude group: "org.codehaus.groovy", module: "groovy" // use kork's version
}
integrationImplementation "io.rest-assured:rest-assured"
}

task integrationTest(type: Test) {
Expand Down
2 changes: 1 addition & 1 deletion clouddriver-elasticsearch/clouddriver-elasticsearch.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ dependencies {
implementation "io.spinnaker.kork:kork-retrofit"
implementation "io.spinnaker.kork:kork-security"
implementation "com.squareup.retrofit:retrofit"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.elasticsearch:elasticsearch"
implementation "org.springframework.boot:spring-boot-starter-web"

Expand Down
2 changes: 1 addition & 1 deletion clouddriver-eureka/clouddriver-eureka.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ dependencies {
implementation "com.amazonaws:aws-java-sdk"
implementation "com.squareup.retrofit:converter-jackson"
implementation "com.squareup.retrofit:retrofit"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.springframework.boot:spring-boot-starter-web"

testImplementation "cglib:cglib-nodep"
Expand Down
2 changes: 1 addition & 1 deletion clouddriver-google-common/clouddriver-google-common.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ dependencies {
implementation "com.netflix.spectator:spectator-api"
implementation "io.spinnaker.fiat:fiat-api:$fiatVersion"
implementation "io.spinnaker.fiat:fiat-core:$fiatVersion"
implementation "org.codehaus.groovy:groovy"
implementation "org.apache.groovy:groovy"
implementation "org.slf4j:slf4j-api"
implementation "org.springframework.security:spring-security-config"
implementation "org.springframework.security:spring-security-core"
Expand Down
6 changes: 3 additions & 3 deletions clouddriver-google/clouddriver-google.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ dependencies {
implementation project(":clouddriver-google-common")
implementation project(":clouddriver-security")

implementation "org.codehaus.groovy:groovy"
implementation "org.codehaus.groovy:groovy-json"
implementation "org.apache.groovy:groovy"
implementation "org.apache.groovy:groovy-json"
implementation "org.apache.commons:commons-lang3"
implementation "com.google.apis:google-api-services-compute"
implementation "com.google.guava:guava"
Expand Down Expand Up @@ -46,7 +46,7 @@ dependencies {
testImplementation "org.spockframework:spock-spring"
testImplementation "org.springframework:spring-test"
testImplementation "org.springframework.boot:spring-boot-test"
testImplementation "org.codehaus.groovy:groovy-test"
testImplementation "org.apache.groovy:groovy-test"
}

configurations.all {
Expand Down
Loading

0 comments on commit 6fcc370

Please sign in to comment.