-
-
Notifications
You must be signed in to change notification settings - Fork 10
/
build.gradle
103 lines (91 loc) · 3.16 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
plugins {
id "scala"
id "maven-publish"
id "com.diffplug.gradle.spotless" version "3.27.1"
id "org.embulk.embulk-plugins" version "0.4.1"
}
repositories {
mavenCentral()
jcenter()
}
group = "pro.civitaspo"
version = "0.5.3"
description = "Dumps records to S3 Parquet."
sourceCompatibility = 1.8
targetCompatibility = 1.8
dependencies {
compileOnly "org.embulk:embulk-core:0.9.23"
// NOTE: Is shadow plugin required in the future?
compile "org.scala-lang:scala-library:2.13.1"
['glue', 's3', 'sts'].each { v ->
compile("com.amazonaws:aws-java-sdk-${v}:1.11.769") {
exclude group: 'joda-time', module: 'joda-time'
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-annotations'
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
}
}
['column', 'common', 'encoding', 'hadoop', 'jackson'].each { v ->
compile("org.apache.parquet:parquet-${v}:1.11.0") {
exclude group: 'org.slf4j', module: 'slf4j-api'
}
}
// ref. https://github.com/apache/parquet-mr/blob/apache-parquet-1.11.0/pom.xml#L85
compile('org.apache.parquet:parquet-format:2.7.0') {
exclude group: 'org.slf4j', module: 'slf4j-api'
}
compile('org.apache.hadoop:hadoop-common:2.10.2') {
exclude group: 'org.slf4j', module: 'slf4j-api'
exclude group: 'com.google.guava', module: 'guava'
exclude group: 'commons-beanutils', module: 'commons-beanutils-core'
exclude group: 'org.apache.commons', module: 'commons-lang3'
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
}
compile 'org.xerial.snappy:snappy-java:1.1.7.3'
['core', 'standards', 'deps-buffer', 'deps-config'].each { v ->
testImplementation "org.embulk:embulk-${v}:0.9.23"
}
testImplementation "org.embulk:embulk-core:0.9.23:tests"
testImplementation "org.scalatest:scalatest_2.13:3.1.1"
testImplementation 'org.apache.parquet:parquet-avro:1.11.0'
testImplementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-avro:2.14.0'
testImplementation 'org.apache.hadoop:hadoop-client:2.10.2'
}
spotless {
scala {
scalafmt('2.4.2').configFile('.scalafmt.conf')
}
}
embulkPlugin {
mainClass = "org.embulk.output.s3_parquet.S3ParquetOutputPlugin"
category = "output"
type = "s3_parquet"
}
publishing {
publications {
embulkPluginMaven(MavenPublication) {
from components.java
}
}
repositories {
maven {
url = "${project.buildDir}/mavenPublishLocal"
}
}
}
gem {
from("LICENSE.txt")
authors = ["Civitaspo"]
email = [ "[email protected]" ]
summary = "S3 Parquet output plugin for Embulk"
homepage = "https://github.com/civitaspo/embulk-output-s3_parquet"
licenses = ["MIT"]
}
gemPush {
host = "https://rubygems.org"
}
task scalatest(dependsOn: ['testClasses'], type: JavaExec) {
main = 'org.scalatest.tools.Runner'
args = ['-R', 'build/classes/scala/test', '-o']
classpath = sourceSets.test.runtimeClasspath
}