forked from embulk/embulk-output-jdbc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
121 lines (105 loc) · 3.69 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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
plugins {
id 'com.jfrog.bintray' version '1.6'
id 'com.github.jruby-gradle.base' version '1.2.1'
id 'java'
id 'checkstyle'
}
import com.github.jrubygradle.JRubyExec
allprojects {
group = 'org.embulk.output.jdbc'
version = '0.7.0'
}
subprojects {
apply plugin: 'maven' // install jar files to the local repo: $ gradle install
apply plugin: 'java'
apply plugin: 'findbugs'
//apply plugin: 'jacoco'
apply plugin: 'com.github.jruby-gradle.base'
repositories {
mavenCentral()
jcenter()
}
configurations {
provided
}
sourceCompatibility = 1.7
targetCompatibility = 1.7
dependencies {
compile 'org.embulk:embulk-core:0.8.8'
provided 'org.embulk:embulk-core:0.8.8'
testCompile 'junit:junit:4.+'
}
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:unchecked" //<< "-Xlint:deprecation"
options.encoding = 'UTF-8'
}
tasks.withType(FindBugs) {
reports {
xml.enabled = false
html.enabled = true
}
}
findbugs {
ignoreFailures = true
}
javadoc {
options {
locale = 'en_US'
encoding = 'UTF-8'
}
}
task classpath(type: Copy, dependsOn: ["jar"]) {
doFirst { file('classpath').deleteDir() }
from (configurations.runtime - configurations.provided + files(jar.archivePath))
into 'classpath'
}
clean { delete 'classpath' }
checkstyle {
configFile = file("${project.rootDir}/config/checkstyle/checkstyle.xml")
toolVersion = '6.14.1'
}
checkstyleMain {
configFile = file("${project.rootDir}/config/checkstyle/default.xml")
ignoreFailures = true
}
checkstyleTest {
configFile = file("${project.rootDir}/config/checkstyle/default.xml")
ignoreFailures = true
}
task checkstyle(type: Checkstyle) {
classpath = sourceSets.main.output + sourceSets.test.output
source = sourceSets.main.allJava + sourceSets.test.allJava
}
task gem(type: JRubyExec, dependsOn: ['build', 'gemspec', 'classpath']) {
jrubyArgs '-rrubygems/gem_runner', "-eGem::GemRunner.new.run(ARGV)", 'build'
scriptArgs "${project.projectDir.absolutePath}/build/gemspec"
doLast { ant.move(file: "${project.name}-${project.version}.gem", todir: "${parent.projectDir}/pkg") }
}
task gemspec << {
file('build').mkdirs();
file('build/gemspec').write($/
Gem::Specification.new do |spec|
spec.name = "${project.name}"
spec.version = "${project.version}"
spec.authors = ["Sadayuki Furuhashi"]
spec.summary = %[JDBC output plugin for Embulk]
spec.description = %[Inserts or updates records to a table.]
spec.email = ["[email protected]"]
spec.licenses = ["Apache 2.0"]
spec.homepage = "https://github.com/embulk/embulk-output-jdbc"
spec.files = `git ls-files`.split("\n") + Dir["classpath/*.jar"]
spec.test_files = spec.files.grep(%r"^(test|spec)/")
spec.require_paths = ["lib"]
end
/$)
}
}
task gempush << {
"gem push pkg/embulk-output-jdbc-${project.version}.gem".execute().waitFor()
"gem push pkg/embulk-output-mysql-${project.version}.gem".execute().waitFor()
"gem push pkg/embulk-output-postgresql-${project.version}.gem".execute().waitFor()
"gem push pkg/embulk-output-redshift-${project.version}.gem".execute().waitFor()
"gem push pkg/embulk-output-oracle-${project.version}.gem".execute().waitFor()
"gem push pkg/embulk-output-sqlserver-${project.version}.gem".execute().waitFor()
"gem push pkg/embulk-output-db2-${project.version}.gem".execute().waitFor()
}