@@ -3,36 +3,72 @@ plugins {
3
3
id ' java'
4
4
id ' application'
5
5
id ' idea'
6
+ id ' maven-publish'
7
+ }
8
+
9
+ configurations {
10
+ integration. extendsFrom implementation
6
11
}
7
12
8
13
dependencies {
9
14
implementation project(' :hoptimator-planner' )
10
15
implementation project(' :hoptimator-catalog' )
11
- implementation project(' :hoptimator-flink-iterator' )
12
- implementation project(' :hoptimator-kafka-adapter' )
13
- implementation project(' :hoptimator-mysql-adapter' )
16
+
17
+ // include adapters for integration tests
18
+ integration project(' :hoptimator-kafka-adapter' )
19
+ integration project(' :hoptimator-mysql-adapter' )
20
+ integration libs. flinkCsv
14
21
15
22
implementation libs. avro
16
23
implementation libs. sqlline
17
24
implementation libs. slf4jLog4j
18
25
implementation libs. flinkClients
19
26
implementation libs. flinkTableRuntime
20
27
implementation libs. flinkTablePlanner
21
- implementation libs. flinkTableApiJavaBridge
22
- implementation libs. flinkCsv
23
28
implementation libs. calciteCore
24
29
implementation libs. calciteAvatica
25
30
26
31
testImplementation libs. junit
27
32
testImplementation libs. assertj
28
33
}
29
34
30
- tasks. withType(JavaCompile ) {
31
- options. compilerArgs << ' -Xlint:deprecation'
32
- options. compilerArgs << ' -Xlint:unchecked'
35
+ publishing {
36
+ repositories {
37
+ maven {
38
+ name ' GitHubPackages'
39
+ url = ' https://maven.pkg.github.com/linkedin/Hoptimator'
40
+ credentials {
41
+ username = System . getenv(' GITHUB_ACTOR' )
42
+ password = System . getenv(' GITHUB_TOKEN' )
43
+ }
44
+ }
45
+ maven {
46
+ name ' LinkedInJFrog'
47
+ url ' https://linkedin.jfrog.io/artifactory/hoptimator'
48
+ credentials {
49
+ username = System . getenv(' JFROG_USERNAME' )
50
+ password = System . getenv(' JFROG_API_KEY' )
51
+ }
52
+ }
53
+ }
54
+ publications {
55
+ maven(MavenPublication ) {
56
+ groupId = ' com.linkedin.hoptimator'
57
+ artifactId = ' hoptimator-cli'
58
+ version = System . getenv(' VERSION' )
59
+ from components. java
60
+ }
61
+ }
62
+ }
63
+
64
+ java {
65
+ withJavadocJar()
66
+ withSourcesJar()
33
67
}
34
68
35
69
shadowJar {
70
+ configurations = [project. configurations. integration]
71
+
36
72
// This is required for Flink and Avatica to play nicely
37
73
relocate ' com.google' , ' org.apache.flink.calcite.shaded.com.google'
38
74
0 commit comments