buildscript { ext.pegasusVersion = '28.3.7' apply from: './repositories.gradle' buildscript.repositories.addAll(project.repositories) dependencies { classpath 'com.linkedin.pegasus:gradle-plugins:' + pegasusVersion classpath 'com.moowork.gradle:gradle-node-plugin:1.3.1' classpath 'com.commercehub.gradle.plugin:gradle-avro-plugin:0.8.1' classpath 'org.springframework.boot:spring-boot-gradle-plugin:2.1.2.RELEASE' } } project.ext.spec = [ 'product' : [ 'pegasus' : [ 'd2' : 'com.linkedin.pegasus:d2:' + pegasusVersion, 'data' : 'com.linkedin.pegasus:data:' + pegasusVersion, 'dataAvro1_6' : 'com.linkedin.pegasus:data-avro-1_6:' + pegasusVersion, 'generator': 'com.linkedin.pegasus:generator:' + pegasusVersion, 'restliCommon' : 'com.linkedin.pegasus:restli-common:' + pegasusVersion, 'restliClient' : 'com.linkedin.pegasus:restli-client:' + pegasusVersion, 'restliServer' : 'com.linkedin.pegasus:restli-server:' + pegasusVersion, 'restliSpringBridge': 'com.linkedin.pegasus:restli-spring-bridge:' + pegasusVersion, ] ] ] project.ext.externalDependency = [ 'avro_1_7': 'org.apache.avro:avro:1.7.7', 'avroCompiler_1_7': 'org.apache.avro:avro-compiler:1.7.7', 'cacheApi' : 'javax.cache:cache-api:1.1.0', 'commonsIo': 'commons-io:commons-io:2.4', 'commonsLang': 'commons-lang:commons-lang:2.6', 'ebean': 'io.ebean:ebean:11.33.3', 'ebeanAgent': 'io.ebean:ebean-agent:11.27.1', 'elasticSearchRest': 'org.elasticsearch.client:elasticsearch-rest-high-level-client:5.6.8', 'findbugsAnnotations': 'com.google.code.findbugs:annotations:3.0.1', 'guice': 'com.google.inject:guice:4.2.2', 'guava': 'com.google.guava:guava:27.0.1-jre', 'h2': 'com.h2database:h2:1.4.196', 'hibernateCore': 'org.hibernate:hibernate-core:5.2.16.Final', 'httpClient': 'org.apache.httpcomponents:httpclient:4.5.9', 'jacksonCore': 'com.fasterxml.jackson.core:jackson-core:2.9.7', 'jacksonDataBind': 'com.fasterxml.jackson.core:jackson-databind:2.9.7', "javatuples": "org.javatuples:javatuples:1.2", 'jerseyCore': 'org.glassfish.jersey.core:jersey-client:2.25.1', 'jerseyGuava': 'org.glassfish.jersey.bundles.repackaged:jersey-guava:2.25.1', 'jsonSimple': 'com.googlecode.json-simple:json-simple:1.1.1', 'junit': 'junit:junit:4.12', 'kafkaAvroSerde': 'io.confluent:kafka-streams-avro-serde:5.2.2', 'kafkaClients': 'org.apache.kafka:kafka-clients:2.3.0', 'kafkaSchemaRegistry': 'io.confluent:kafka-schema-registry-client:3.3.1', 'kafkaSerializers': 'io.confluent:kafka-avro-serializer:3.3.1', 'kafkaStreams': 'org.apache.kafka:kafka-streams:2.3.0', 'logbackClassic': 'ch.qos.logback:logback-classic:1.2.3', 'lombok': 'org.projectlombok:lombok:1.18.12', 'mariadbConnector': 'org.mariadb.jdbc:mariadb-java-client:2.6.0', 'mockito': 'org.mockito:mockito-core:3.0.0', 'mysqlConnector': 'mysql:mysql-connector-java:5.1.47', "neo4jHarness": "org.neo4j.test:neo4j-harness:3.4.11", "neo4jJavaDriver": "org.neo4j.driver:neo4j-java-driver:4.0.0", 'parseqTest': 'com.linkedin.parseq:parseq:3.0.7:test', 'playDocs': 'com.typesafe.play:play-docs_2.11:2.6.18', 'playGuice': 'com.typesafe.play:play-guice_2.11:2.6.18', 'playTest': 'com.typesafe.play:play-test_2.11:2.6.18', 'postgresql': 'org.postgresql:postgresql:42.2.14', 'reflections': 'org.reflections:reflections:0.9.11', "rythmEngine": "org.rythmengine:rythm-engine:1.3.0", 'servletApi': 'javax.servlet:javax.servlet-api:3.1.0', 'springBeans': 'org.springframework:spring-beans:5.2.3.RELEASE', 'springContext': 'org.springframework:spring-context:5.2.3.RELEASE', 'springCore': 'org.springframework:spring-core:5.2.3.RELEASE', 'springWeb': 'org.springframework:spring-web:5.2.3.RELEASE', 'springBootStarterWeb': 'org.springframework.boot:spring-boot-starter-web:2.1.2.RELEASE', 'springBootStarterJetty': 'org.springframework.boot:spring-boot-starter-jetty:2.1.2.RELEASE', 'springKafka': 'org.springframework.kafka:spring-kafka:2.2.3.RELEASE', 'springActuator': 'org.springframework.boot:spring-boot-starter-actuator:2.1.2.RELEASE', 'testng': 'org.testng:testng:6.9.9' ] allprojects { apply plugin: 'idea' apply plugin: 'eclipse' apply plugin: 'checkstyle' } subprojects { apply plugin: 'maven' plugins.withType(JavaPlugin) { dependencies { testCompile externalDependency.testng } tasks.withType(Test) { useTestNG() } checkstyle { configDirectory = file("${project.rootDir}/gradle/checkstyle") sourceSets = [ getProject().sourceSets.main, getProject().sourceSets.test ] toolVersion = "8.0" maxWarnings = 0 ignoreFailures = false } } afterEvaluate { if (project.plugins.hasPlugin('java')) { sourceCompatibility = 1.8 targetCompatibility = 1.8 } } afterEvaluate { if (project.plugins.hasPlugin('pegasus')) { dependencies { dataTemplateCompile spec.product.pegasus.data restClientCompile spec.product.pegasus.restliClient } } } }