blob: add42c7da69e3f0128b8104b034c4f9910a72d8d [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
buildscript {
repositories {
maven { url "https://plugins.gradle.org/m2/" }
maven { url "https://dl.bintray.com/palantir/releases" }
jcenter()
}
dependencies {
classpath 'com.diffplug.spotless:spotless-plugin-gradle:3.21.1'
classpath 'com.github.ben-manes:gradle-versions-plugin:0.21.0'
classpath 'com.netflix.nebula:gradle-lint-plugin:11.4.4'
classpath 'com.netflix.nebula:nebula-project-plugin:6.0.2'
classpath 'gradle.plugin.com.palantir.gradle.docker:gradle-docker:0.22.1'
classpath 'io.spring.gradle:dependency-management-plugin:1.0.7.RELEASE'
classpath 'org.ajoberstar.grgit:grgit-gradle:3.1.1'
classpath 'org.nosphere.apache:creadur-rat-gradle:0.4.0'
classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.7'
}
}
plugins {
id 'java'
id 'com.github.johnrengelman.shadow' version '2.0.4'
}
apply plugin: 'wrapper'
apply plugin: 'nebula.facet'
apply plugin: 'java-library'
apply plugin: 'idea'
apply plugin: 'eclipse'
tasks.register('devBuild') {
description "A convenience target for a typical developer workflow: apply spotless and assemble all classes."
dependsOn tasks.named('assemble')
// Each subproject injects its SpotlessApply as a dependency to this task in the standard config
}
apply from: "${rootDir}/${scriptDir}/spotless.gradle"
apply from: "${scriptDir}/rat.gradle"
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile('org.apache.geode:geode-core:1.9.0')
compile('org.apache.geode:geode-cq:1.9.0')
compile(group: 'org.apache.kafka', name: 'connect-api', version: '2.3.1')
compile(group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.13.0')
compile(group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.13.0')
testCompile(group: 'org.apache.kafka', name: 'kafka_2.12', version: '2.3.1')
testCompile(group: 'org.apache.kafka', name: 'kafka-streams-test-utils', version: '1.1.0')
testCompile(group: 'org.apache.curator', name: 'curator-framework', version: '4.2.0')
testCompile(group: 'org.apache.kafka', name: 'connect-runtime', version: '2.3.1')
testCompile(group: 'junit', name: 'junit', version: '4.12')
// testCompile("org.junit.jupiter:junit-jupiter-params:5.4.2")
testCompile('org.mockito:mockito-core:3.2.4')
testCompile('pl.pragmatists:JUnitParams:1.1.1')
testCompile(group: 'org.apache.geode', name: 'geode-dunit', version: '1.9.0')
testImplementation 'org.awaitility:awaitility:3.1.6'
}
shadowJar {
dependencies {
// exclude dependencies provided in the kafka connect classpath
exclude dependency("org.apache.kafka:connect-api:.*")
exclude dependency("org.apache.kafka:kafka-clients:.*")
exclude dependency('net.jpountz.lz4:.*:.*')
exclude dependency('org.xerial.snappy:.*:.*')
exclude dependency('org.slf4j:.*:.*')
}
}