2017-03-21 11:58:19 -07:00
|
|
|
buildscript {
|
2020-12-02 20:49:34 -08:00
|
|
|
ext.junitJupiterVersion = '5.6.1'
|
2020-05-08 12:00:28 -07:00
|
|
|
ext.pegasusVersion = '28.3.7'
|
2021-11-28 21:06:27 -08:00
|
|
|
ext.mavenVersion = '3.6.3'
|
2019-08-31 20:51:14 -07:00
|
|
|
apply from: './repositories.gradle'
|
2017-03-21 11:58:19 -07:00
|
|
|
buildscript.repositories.addAll(project.repositories)
|
|
|
|
dependencies {
|
2020-05-08 12:00:28 -07:00
|
|
|
classpath 'com.linkedin.pegasus:gradle-plugins:' + pegasusVersion
|
2020-08-30 19:43:36 -07:00
|
|
|
classpath 'com.github.node-gradle:gradle-node-plugin:2.2.4'
|
2020-05-08 12:00:28 -07:00
|
|
|
classpath 'com.commercehub.gradle.plugin:gradle-avro-plugin:0.8.1'
|
2021-06-03 13:24:33 -07:00
|
|
|
classpath 'org.springframework.boot:spring-boot-gradle-plugin:2.1.4.RELEASE'
|
2021-12-14 01:30:51 +05:30
|
|
|
classpath 'com.github.jengelman.gradle.plugins:shadow:5.2.0'
|
2017-03-21 11:58:19 -07:00
|
|
|
}
|
|
|
|
}
|
2016-10-19 17:08:07 -07:00
|
|
|
|
2022-01-11 15:00:57 -08:00
|
|
|
plugins {
|
|
|
|
id 'com.gorylenko.gradle-git-properties' version '2.4.0-rc2'
|
|
|
|
}
|
|
|
|
|
2019-08-31 20:51:14 -07:00
|
|
|
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,
|
2020-06-11 10:21:51 -07:00
|
|
|
'generator': 'com.linkedin.pegasus:generator:' + pegasusVersion,
|
2019-08-31 20:51:14 -07:00
|
|
|
'restliCommon' : 'com.linkedin.pegasus:restli-common:' + pegasusVersion,
|
|
|
|
'restliClient' : 'com.linkedin.pegasus:restli-client:' + pegasusVersion,
|
2020-10-28 08:05:00 -07:00
|
|
|
'restliDocgen' : 'com.linkedin.pegasus:restli-docgen:' + pegasusVersion,
|
2019-08-31 20:51:14 -07:00
|
|
|
'restliServer' : 'com.linkedin.pegasus:restli-server:' + pegasusVersion,
|
|
|
|
'restliSpringBridge': 'com.linkedin.pegasus:restli-spring-bridge:' + pegasusVersion,
|
|
|
|
]
|
|
|
|
]
|
|
|
|
]
|
2016-05-16 14:58:28 +02:00
|
|
|
|
2019-08-31 20:51:14 -07:00
|
|
|
project.ext.externalDependency = [
|
2021-01-22 15:44:00 -08:00
|
|
|
'antlr4Runtime': 'org.antlr:antlr4-runtime:4.7.2',
|
|
|
|
'antlr4': 'org.antlr:antlr4:4.7.2',
|
2020-10-28 13:32:04 -07:00
|
|
|
'assertJ': 'org.assertj:assertj-core:3.11.1',
|
2019-08-31 20:51:14 -07:00
|
|
|
'avro_1_7': 'org.apache.avro:avro:1.7.7',
|
2020-06-11 10:21:51 -07:00
|
|
|
'avroCompiler_1_7': 'org.apache.avro:avro-compiler:1.7.7',
|
2021-08-11 21:40:37 -07:00
|
|
|
'awsGlueSchemaRegistrySerde': 'software.amazon.glue:schema-registry-serde:1.1.1',
|
2022-01-12 23:49:34 -06:00
|
|
|
'awsMskIamAuth': 'software.amazon.msk:aws-msk-iam-auth:1.1.1',
|
2019-08-31 20:51:14 -07:00
|
|
|
'cacheApi' : 'javax.cache:cache-api:1.1.0',
|
|
|
|
'commonsIo': 'commons-io:commons-io:2.4',
|
|
|
|
'commonsLang': 'commons-lang:commons-lang:2.6',
|
2021-06-24 23:00:55 -07:00
|
|
|
'commonsCollections': 'commons-collections:commons-collections:3.2.2',
|
2021-06-03 13:24:33 -07:00
|
|
|
'data' : 'com.linkedin.pegasus:data:' + pegasusVersion,
|
2021-11-15 19:33:30 +01:00
|
|
|
'dgraph4j' : 'io.dgraph:dgraph4j:21.03.1',
|
2021-09-07 23:06:15 -07:00
|
|
|
'dropwizardMetricsCore': 'io.dropwizard.metrics:metrics-core:4.2.3',
|
|
|
|
'dropwizardMetricsJmx': 'io.dropwizard.metrics:metrics-jmx:4.2.3',
|
2019-08-31 20:51:14 -07:00
|
|
|
'ebean': 'io.ebean:ebean:11.33.3',
|
|
|
|
'ebeanAgent': 'io.ebean:ebean-agent:11.27.1',
|
2021-03-18 19:16:44 -07:00
|
|
|
'elasticSearchRest': 'org.elasticsearch.client:elasticsearch-rest-high-level-client:7.9.3',
|
|
|
|
'elasticSearchTransport': 'org.elasticsearch.client:transport:7.9.3',
|
2019-08-31 20:51:14 -07:00
|
|
|
'findbugsAnnotations': 'com.google.code.findbugs:annotations:3.0.1',
|
2021-01-22 15:44:00 -08:00
|
|
|
'graphqlJava': 'com.graphql-java:graphql-java:16.1',
|
2020-11-05 11:37:45 -08:00
|
|
|
'gson': 'com.google.code.gson:gson:2.8.6',
|
2019-08-31 20:51:14 -07:00
|
|
|
'guice': 'com.google.inject:guice:4.2.2',
|
|
|
|
'guava': 'com.google.guava:guava:27.0.1-jre',
|
|
|
|
'h2': 'com.h2database:h2:1.4.196',
|
2021-06-30 22:57:39 -07:00
|
|
|
'hadoopClient': 'org.apache.hadoop:hadoop-client:3.1.1',
|
2021-12-14 01:30:51 +05:30
|
|
|
'hadoopCommon':'org.apache.hadoop:hadoop-common:2.7.2',
|
|
|
|
'hadoopMapreduceClient':'org.apache.hadoop:hadoop-mapreduce-client-core:2.7.2',
|
2019-08-31 20:51:14 -07:00
|
|
|
'hibernateCore': 'org.hibernate:hibernate-core:5.2.16.Final',
|
|
|
|
'httpClient': 'org.apache.httpcomponents:httpclient:4.5.9',
|
2022-01-02 22:48:38 +05:30
|
|
|
'httpAsyncClient': 'org.apache.httpcomponents:httpasyncclient:4.1.5',
|
2021-06-03 13:24:33 -07:00
|
|
|
'iStackCommons': 'com.sun.istack:istack-commons-runtime:4.0.1',
|
2021-07-30 17:41:03 -07:00
|
|
|
'jacksonCore': 'com.fasterxml.jackson.core:jackson-core:2.9.10',
|
|
|
|
'jacksonDataBind': 'com.fasterxml.jackson.core:jackson-databind:2.9.10.7',
|
|
|
|
'jacksonDataFormatYaml': 'com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:2.9.10',
|
2020-09-11 13:04:21 -07:00
|
|
|
'javatuples': 'org.javatuples:javatuples:1.2',
|
|
|
|
'javaxInject' : 'javax.inject:javax.inject:1',
|
2019-08-31 20:51:14 -07:00
|
|
|
'jerseyCore': 'org.glassfish.jersey.core:jersey-client:2.25.1',
|
|
|
|
'jerseyGuava': 'org.glassfish.jersey.bundles.repackaged:jersey-guava:2.25.1',
|
2021-07-02 06:31:01 -07:00
|
|
|
'jettyJaas': 'org.eclipse.jetty:jetty-jaas:9.4.28.v20200408',
|
2019-08-31 20:51:14 -07:00
|
|
|
'jsonSimple': 'com.googlecode.json-simple:json-simple:1.1.1',
|
2020-12-02 20:49:34 -08:00
|
|
|
'junitJupiterApi': "org.junit.jupiter:junit-jupiter-api:$junitJupiterVersion",
|
|
|
|
'junitJupiterParams': "org.junit.jupiter:junit-jupiter-params:$junitJupiterVersion",
|
|
|
|
'junitJupiterEngine': "org.junit.jupiter:junit-jupiter-engine:$junitJupiterVersion",
|
2020-09-09 16:37:47 -05:00
|
|
|
// avro-serde includes dependencies for `kafka-avro-serializer` `kafka-schema-registry-client` and `avro`
|
2020-09-29 13:12:43 +02:00
|
|
|
'kafkaAvroSerde': 'io.confluent:kafka-streams-avro-serde:5.5.1',
|
2019-09-07 23:35:23 -07:00
|
|
|
'kafkaClients': 'org.apache.kafka:kafka-clients:2.3.0',
|
2021-12-17 17:16:11 -08:00
|
|
|
'logbackClassic': 'ch.qos.logback:logback-classic:1.2.9',
|
2020-02-10 00:35:47 -08:00
|
|
|
'lombok': 'org.projectlombok:lombok:1.18.12',
|
2020-07-22 19:39:58 -07:00
|
|
|
'mariadbConnector': 'org.mariadb.jdbc:mariadb-java-client:2.6.0',
|
2021-11-28 21:06:27 -08:00
|
|
|
'mavenArtifact': "org.apache.maven:maven-artifact:$mavenVersion",
|
2019-08-31 20:51:14 -07:00
|
|
|
'mockito': 'org.mockito:mockito-core:3.0.0',
|
2021-06-03 13:24:33 -07:00
|
|
|
'mockitoInline': 'org.mockito:mockito-inline:3.0.0',
|
2022-01-02 22:48:38 +05:30
|
|
|
'mockServer': 'org.mock-server:mockserver-netty:5.11.2',
|
|
|
|
'mockServerClient': 'org.mock-server:mockserver-client-java:5.11.2',
|
2021-06-23 13:55:14 -07:00
|
|
|
'mysqlConnector': 'mysql:mysql-connector-java:8.0.20',
|
2020-09-11 13:04:21 -07:00
|
|
|
'neo4jHarness': 'org.neo4j.test:neo4j-harness:3.4.11',
|
2021-03-01 21:55:46 +01:00
|
|
|
'neo4jJavaDriver': 'org.neo4j.driver:neo4j-java-driver:4.0.1',
|
2021-09-07 23:06:15 -07:00
|
|
|
'opentelemetryApi': 'io.opentelemetry:opentelemetry-api:1.0.0',
|
|
|
|
'opentelemetryAnnotations': 'io.opentelemetry:opentelemetry-extension-annotations:1.0.0',
|
2019-08-31 20:51:14 -07:00
|
|
|
'parseqTest': 'com.linkedin.parseq:parseq:3.0.7:test',
|
2021-06-30 16:49:02 -07:00
|
|
|
'parquet': 'org.apache.parquet:parquet-avro:1.12.0',
|
2020-09-25 14:05:29 -07:00
|
|
|
'picocli': 'info.picocli:picocli:4.5.0',
|
2021-03-11 13:38:35 -08:00
|
|
|
'playCache': 'com.typesafe.play:play-cache_2.11:2.6.18',
|
2021-08-20 10:58:07 -07:00
|
|
|
'playWs': 'com.typesafe.play:play-ahc-ws-standalone_2.11:2.0.8',
|
2019-08-31 20:51:14 -07:00
|
|
|
'playDocs': 'com.typesafe.play:play-docs_2.11:2.6.18',
|
|
|
|
'playGuice': 'com.typesafe.play:play-guice_2.11:2.6.18',
|
2020-08-19 16:06:29 -07:00
|
|
|
'playJavaJdbc': 'com.typesafe.play:play-java-jdbc_2.11:2.6.18',
|
2019-08-31 20:51:14 -07:00
|
|
|
'playTest': 'com.typesafe.play:play-test_2.11:2.6.18',
|
2021-03-11 13:38:35 -08:00
|
|
|
'pac4j': 'org.pac4j:pac4j-oidc:3.6.0',
|
2021-08-20 07:42:18 -07:00
|
|
|
'playPac4j': 'org.pac4j:play-pac4j_2.11:7.0.1',
|
2020-07-22 19:39:58 -07:00
|
|
|
'postgresql': 'org.postgresql:postgresql:42.2.14',
|
2021-11-28 21:06:27 -08:00
|
|
|
'reflections': 'org.reflections:reflections:0.9.9',
|
2021-10-13 18:53:47 -07:00
|
|
|
'resilience4j': 'io.github.resilience4j:resilience4j-retry:1.7.1',
|
2020-09-11 13:04:21 -07:00
|
|
|
'rythmEngine': 'org.rythmengine:rythm-engine:1.3.0',
|
2019-08-31 20:51:14 -07:00
|
|
|
'servletApi': 'javax.servlet:javax.servlet-api:3.1.0',
|
2021-03-11 13:38:35 -08:00
|
|
|
'shiroCore': 'org.apache.shiro:shiro-core:1.7.1',
|
2021-12-14 01:30:51 +05:30
|
|
|
'sparkSql' : 'org.apache.spark:spark-sql_2.11:2.4.8',
|
|
|
|
'sparkHive' : 'org.apache.spark:spark-hive_2.11:2.4.8',
|
2020-06-11 10:21:51 -07:00
|
|
|
'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',
|
2020-08-19 16:06:29 -07:00
|
|
|
'springJdbc': 'org.springframework:spring-jdbc:5.2.3.RELEASE',
|
2020-06-11 10:21:51 -07:00
|
|
|
'springWeb': 'org.springframework:spring-web:5.2.3.RELEASE',
|
2021-08-20 10:58:07 -07:00
|
|
|
'springWebMVC': 'org.springframework:spring-webmvc:5.2.3.RELEASE',
|
2021-06-03 13:24:33 -07:00
|
|
|
'springBootAutoconfigure': 'org.springframework.boot:spring-boot-autoconfigure:2.1.4.RELEASE',
|
|
|
|
'springBootStarterWeb': 'org.springframework.boot:spring-boot-starter-web:2.1.4.RELEASE',
|
|
|
|
'springBootStarterJetty': 'org.springframework.boot:spring-boot-starter-jetty:2.1.4.RELEASE',
|
2021-10-07 11:41:29 -07:00
|
|
|
'springBootStarterCache': 'org.springframework.boot:spring-boot-starter-cache:2.1.4.RELEASE',
|
2020-07-27 05:22:51 -07:00
|
|
|
'springKafka': 'org.springframework.kafka:spring-kafka:2.2.14.RELEASE',
|
2021-06-24 23:00:55 -07:00
|
|
|
'springActuator': 'org.springframework.boot:spring-boot-starter-actuator:2.1.4.RELEASE',
|
2021-06-03 13:24:33 -07:00
|
|
|
'testng': 'org.testng:testng:7.3.0',
|
2022-01-11 14:55:21 -08:00
|
|
|
'testContainers': 'org.testcontainers:testcontainers:1.15.3',
|
|
|
|
'testContainersJunit': 'org.testcontainers:junit-jupiter:1.15.3',
|
|
|
|
'testContainersPostgresql':'org.testcontainers:postgresql:1.15.3',
|
2021-06-03 13:24:33 -07:00
|
|
|
'testContainersElasticsearch': 'org.testcontainers:elasticsearch:1.15.3',
|
2021-12-14 01:30:51 +05:30
|
|
|
'wiremock':'com.github.tomakehurst:wiremock:2.10.0',
|
2020-09-29 06:00:47 -07:00
|
|
|
'zookeeper': 'org.apache.zookeeper:zookeeper:3.4.14'
|
2019-08-31 20:51:14 -07:00
|
|
|
]
|
2017-03-21 11:58:19 -07:00
|
|
|
|
2019-08-31 20:51:14 -07:00
|
|
|
allprojects {
|
|
|
|
apply plugin: 'idea'
|
|
|
|
apply plugin: 'eclipse'
|
2020-05-07 15:59:16 -07:00
|
|
|
apply plugin: 'checkstyle'
|
2021-06-28 17:04:12 -07:00
|
|
|
}
|
|
|
|
|
2022-01-11 14:55:21 -08:00
|
|
|
configure(subprojects.findAll {it.name != 'spark-lineage'}) {
|
2021-06-24 23:00:55 -07:00
|
|
|
|
|
|
|
configurations.all {
|
|
|
|
exclude group: "io.netty", module: "netty"
|
|
|
|
exclude group: "log4j", module: "log4j"
|
|
|
|
}
|
2019-08-31 20:51:14 -07:00
|
|
|
|
2022-01-11 14:55:21 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
subprojects {
|
|
|
|
|
|
|
|
apply plugin: 'maven'
|
2022-01-11 15:00:57 -08:00
|
|
|
apply plugin: 'com.gorylenko.gradle-git-properties'
|
|
|
|
|
|
|
|
gitProperties {
|
|
|
|
keys = ['git.commit.id','git.commit.id.describe','git.commit.time']
|
|
|
|
// using any tags (not limited to annotated tags) for "git.commit.id.describe" property
|
|
|
|
// see http://ajoberstar.org/grgit/grgit-describe.html for more info about the describe method and available parameters
|
|
|
|
// 'it' is an instance of org.ajoberstar.grgit.Grgit
|
|
|
|
customProperty 'git.commit.id.describe', { it.describe(tags: true) }
|
|
|
|
}
|
2022-01-11 14:55:21 -08:00
|
|
|
|
2020-02-21 11:53:45 -08:00
|
|
|
plugins.withType(JavaPlugin) {
|
|
|
|
dependencies {
|
|
|
|
testCompile externalDependency.testng
|
2021-06-28 17:04:12 -07:00
|
|
|
constraints {
|
|
|
|
implementation('io.netty:netty-all:4.1.44.Final')
|
|
|
|
}
|
2020-02-21 11:53:45 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
tasks.withType(Test) {
|
2020-12-02 20:49:34 -08:00
|
|
|
if (!name.startsWith('integ')) {
|
|
|
|
useTestNG()
|
|
|
|
}
|
2020-02-21 11:53:45 -08:00
|
|
|
}
|
2020-05-07 15:59:16 -07:00
|
|
|
|
|
|
|
checkstyle {
|
|
|
|
configDirectory = file("${project.rootDir}/gradle/checkstyle")
|
|
|
|
sourceSets = [ getProject().sourceSets.main, getProject().sourceSets.test ]
|
|
|
|
toolVersion = "8.0"
|
2020-05-11 08:41:02 -07:00
|
|
|
maxWarnings = 0
|
2020-05-07 15:59:16 -07:00
|
|
|
ignoreFailures = false
|
|
|
|
}
|
2020-02-21 11:53:45 -08:00
|
|
|
}
|
|
|
|
|
2019-11-19 03:07:39 -08:00
|
|
|
afterEvaluate {
|
|
|
|
if (project.plugins.hasPlugin('java')) {
|
|
|
|
sourceCompatibility = 1.8
|
|
|
|
targetCompatibility = 1.8
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-08-31 20:51:14 -07:00
|
|
|
afterEvaluate {
|
|
|
|
if (project.plugins.hasPlugin('pegasus')) {
|
|
|
|
dependencies {
|
|
|
|
dataTemplateCompile spec.product.pegasus.data
|
|
|
|
restClientCompile spec.product.pegasus.restliClient
|
|
|
|
}
|
|
|
|
}
|
2019-10-22 04:51:02 -07:00
|
|
|
}
|
2020-07-22 19:43:30 -07:00
|
|
|
}
|