-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Build it with the "org.embulk.embulk-plugins" Gradle plugin
Along with that, * Upgrade the Gradle wrapper to use Gradle 6.2.1 * Upgrade the Bintray Gradle plugin to 1.8.4 (latest) * Upgrade depending embulk-core to 0.9.23 (latest) * Set JavaCompile option for deprecation and unchecked * Replace Exec.getLogger with LoggerFactory.getLogger * Replace Throwables.propagate with just RuntimeException
- Loading branch information
Showing
17 changed files
with
191 additions
and
198 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,60 +1,93 @@ | ||
plugins { | ||
id "com.jfrog.bintray" version "1.7" | ||
id "com.github.jruby-gradle.base" version "0.1.5" | ||
id "com.jfrog.bintray" version "1.8.4" | ||
id "java" | ||
id "maven" // install jar files to the local repo: $ gradle install | ||
id "maven-publish" | ||
id "org.embulk.embulk-plugins" version "0.3.0" | ||
} | ||
|
||
apply from: 'gradle/check.gradle' | ||
|
||
import com.github.jrubygradle.JRubyExec | ||
repositories { | ||
mavenCentral() | ||
jcenter() | ||
mavenLocal() | ||
} | ||
configurations { | ||
provided | ||
} | ||
|
||
group = "org.embulk.output.td" | ||
version = "0.5.3" | ||
version = "0.6.0" | ||
description = "TreasureData output plugin is an Embulk plugin that loads records to TreasureData read by any input plugins. Search the input plugins by 'embulk-output' keyword." | ||
|
||
compileJava.options.encoding = 'UTF-8' // source encoding | ||
sourceCompatibility = 1.8 | ||
targetCompatibility = 1.8 | ||
|
||
tasks.withType(JavaCompile) { | ||
options.encoding = "UTF-8" | ||
options.compilerArgs << "-Xlint:deprecation" << "-Xlint:unchecked" | ||
} | ||
|
||
dependencies { | ||
compile "org.embulk:embulk-core:0.8.+" | ||
provided "org.embulk:embulk-core:0.8.+" | ||
compile "org.embulk:embulk-standards:0.8.+" | ||
provided "org.embulk:embulk-standards:0.8.+" | ||
compile "org.msgpack:msgpack-core:0.8.+" | ||
provided "org.msgpack:msgpack-core:0.8.+" | ||
compile "com.treasuredata.client:td-client:0.8.4" | ||
|
||
testCompile "junit:junit:4.+" | ||
compileOnly "org.embulk:embulk-core:0.9.23" | ||
|
||
compile("com.treasuredata.client:td-client:0.8.4") { | ||
// The "org.embulk.embulk-plugins" shows warnings about dependencies | ||
// because Jackson-related libraries and Guava are not excluded. | ||
// | ||
// It is known, and accepted now, because embulk-output-td-0.5.3.gem | ||
// included them while they conflict with embulk-core's dependencies. | ||
// | ||
// TODO: Resolve this. | ||
|
||
exclude group: "com.google.inject", module: "guice" | ||
exclude group: "com.google.inject.extensions", module: "guice-multibindings" | ||
exclude group: "org.slf4j", module: "slf4j-api" | ||
exclude group: "aopalliance", module: "aopalliance" | ||
exclude group: "javax.inject", module: "javax.inject" | ||
} | ||
|
||
testCompile "junit:junit:4.13" | ||
testCompile "org.bigtesting:fixd:1.0.0" | ||
testCompile "org.embulk:embulk-core:0.8.+:tests" | ||
testCompile "org.embulk:embulk-core:0.9.23:tests" | ||
testCompile "org.embulk:embulk-standards:0.9.23" | ||
testCompile "org.embulk:embulk-deps-buffer:0.9.23" | ||
testCompile "org.embulk:embulk-deps-config:0.9.23" | ||
testCompile "org.mockito:mockito-core:1.9.5" | ||
testCompile "com.github.tomakehurst:wiremock-jre8:2.25.1" | ||
} | ||
|
||
embulkPlugin { | ||
mainClass = "org.embulk.output.td.TdOutputPlugin" | ||
category = "output" | ||
type = "td" | ||
} | ||
|
||
javadoc { | ||
options { | ||
locale = 'en_US' | ||
encoding = 'UTF-8' | ||
} | ||
} | ||
|
||
// add tests/javadoc/source jar tasks as artifacts to be released | ||
task testsJar(type: Jar, dependsOn: classes) { | ||
classifier = "tests" | ||
from sourceSets.test.output | ||
} | ||
task sourcesJar(type: Jar, dependsOn: classes) { | ||
classifier = "sources" | ||
from sourceSets.main.allSource | ||
} | ||
task javadocJar(type: Jar, dependsOn: javadoc) { | ||
classifier = "javadoc" | ||
from javadoc.destinationDir | ||
} | ||
|
||
// bintray and publishing | ||
bintray { | ||
// write at your bintray user name and api key to ~/.gradle/gradle.properties file: | ||
user = project.hasProperty('bintray_user') ? bintray_user : '' | ||
key = project.hasProperty('bintray_api_key') ? bintray_api_key : '' | ||
|
||
publications = ['bintrayMavenRelease'] | ||
publications = [ "embulkMavenRelease" ] | ||
publish = true | ||
|
||
pkg { | ||
|
@@ -74,9 +107,10 @@ bintray { | |
} | ||
} | ||
} | ||
|
||
publishing { | ||
publications { | ||
bintrayMavenRelease(MavenPublication) { | ||
embulkMavenRelease(MavenPublication) { | ||
from components.java | ||
artifact testsJar | ||
artifact sourcesJar | ||
|
@@ -85,66 +119,15 @@ publishing { | |
} | ||
} | ||
|
||
task classpath(type: Copy, dependsOn: ["jar"]) { | ||
doFirst { file("classpath").deleteDir() } | ||
from (configurations.runtime - configurations.provided + files(jar.archivePath)) | ||
into "classpath" | ||
gem { | ||
authors = [ "Muga Nishizawa" ] | ||
email = [ "[email protected]" ] | ||
summary = "TreasureData output plugin for Embulk" | ||
homepage = "https://github.com/treasure-data/embulk-output-td" | ||
licenses = [ "Apache 2.0" ] | ||
} | ||
clean { delete 'classpath' } | ||
|
||
// add tests/javadoc/source jar tasks as artifacts to be released | ||
task testsJar(type: Jar, dependsOn: classes) { | ||
classifier = 'tests' | ||
from sourceSets.test.output | ||
} | ||
task sourcesJar(type: Jar, dependsOn: classes) { | ||
classifier = 'sources' | ||
from sourceSets.main.allSource | ||
} | ||
task javadocJar(type: Jar, dependsOn: javadoc) { | ||
classifier = 'javadoc' | ||
from javadoc.destinationDir | ||
} | ||
|
||
task gem(type: JRubyExec, dependsOn: ["gemspec", "classpath"]) { | ||
jrubyArgs "-rrubygems/gem_runner", "-eGem::GemRunner.new.run(ARGV)", "build" | ||
script "${project.name}.gemspec" | ||
doLast { ant.move(file: "${project.name}-${project.version}.gem", todir: "pkg") } | ||
} | ||
|
||
task gemPush(type: JRubyExec, dependsOn: ["gem"]) { | ||
jrubyArgs "-rrubygems/gem_runner", "-eGem::GemRunner.new.run(ARGV)", "push" | ||
script "pkg/${project.name}-${project.version}.gem" | ||
} | ||
|
||
task "package"(dependsOn: ["gemspec", "classpath"]) << { | ||
println "> Build succeeded." | ||
println "> You can run embulk with '-L ${file(".").absolutePath}' argument." | ||
} | ||
|
||
task gemspec { | ||
ext.gemspecFile = file("${project.name}.gemspec") | ||
inputs.file "build.gradle" | ||
outputs.file gemspecFile | ||
doLast { gemspecFile.write($/ | ||
Gem::Specification.new do |spec| | ||
spec.name = "${project.name}" | ||
spec.version = "${project.version}" | ||
spec.authors = ["Muga Nishizawa"] | ||
spec.summary = %[TreasureData output plugin for Embulk] | ||
spec.description = %[TreasureData output plugin is an Embulk plugin that loads records to TreasureData read by any input plugins. Search the input plugins by 'embulk-output' keyword.] | ||
spec.email = ["[email protected]"] | ||
spec.licenses = ["Apache 2.0"] | ||
spec.homepage = "https://github.com/treasure-data/embulk-output-td" | ||
|
||
spec.files = `git ls-files`.split("\n") + Dir["classpath/*.jar"] | ||
spec.test_files = spec.files.grep(%r"^(test|spec)/") | ||
spec.require_paths = ["lib"] | ||
|
||
spec.add_development_dependency 'bundler', ['~> 1.0'] | ||
spec.add_development_dependency 'rake', ['>= 10.0'] | ||
end | ||
/$) | ||
} | ||
gemPush { | ||
host = "https://rubygems.org" | ||
outputs.upToDateWhen { false } | ||
} | ||
clean { delete "${project.name}.gemspec" } |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# This is a Gradle generated file for dependency locking. | ||
# Manual edits can break the build and are not advised. | ||
# This file is expected to be part of source control. | ||
com.fasterxml.jackson.core:jackson-annotations:2.8.1 | ||
com.fasterxml.jackson.core:jackson-core:2.8.1 | ||
com.fasterxml.jackson.core:jackson-databind:2.8.1 | ||
com.fasterxml.jackson.datatype:jackson-datatype-guava:2.8.1 | ||
com.fasterxml.jackson.datatype:jackson-datatype-json-org:2.8.1 | ||
com.google.guava:guava:21.0 | ||
com.googlecode.json-simple:json-simple:1.1.1 | ||
com.squareup.okhttp3:okhttp-urlconnection:3.9.0 | ||
com.squareup.okhttp3:okhttp:3.9.0 | ||
com.squareup.okio:okio:1.13.0 | ||
com.treasuredata.client:td-client:0.8.4 | ||
junit:junit:4.10 | ||
org.apache.geronimo.bundles:json:20090211_1 | ||
org.hamcrest:hamcrest-core:1.1 |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,5 @@ | ||
#Tue Aug 08 17:33:43 PDT 2017 | ||
distributionBase=GRADLE_USER_HOME | ||
distributionPath=wrapper/dists | ||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.2.1-bin.zip | ||
zipStoreBase=GRADLE_USER_HOME | ||
zipStorePath=wrapper/dists | ||
distributionUrl=https\://services.gradle.org/distributions/gradle-3.2.1-bin.zip |
Oops, something went wrong.