build.gradle in embulk-output-td-0.3.9 vs build.gradle in embulk-output-td-0.3.10
- old
+ new
@@ -1,9 +1,11 @@
plugins {
- id "com.jfrog.bintray" version "1.1"
+ id "com.jfrog.bintray" version "1.7"
id "com.github.jruby-gradle.base" version "0.1.5"
id "java"
+ id "maven" // install jar files to the local repo: $ gradle install
+ id "maven-publish"
}
apply from: 'gradle/check.gradle'
import com.github.jrubygradle.JRubyExec
@@ -14,11 +16,12 @@
}
configurations {
provided
}
-version = "0.3.9"
+group = "org.embulk.output.td"
+version = "0.3.10"
compileJava.options.encoding = 'UTF-8' // source encoding
sourceCompatibility = 1.7
targetCompatibility = 1.7
@@ -35,15 +38,73 @@
testCompile "org.bigtesting:fixd:1.0.0"
testCompile "org.embulk:embulk-core:0.8.+:tests"
testCompile "org.mockito:mockito-core:1.9.5"
}
+javadoc {
+ options {
+ locale = 'en_US'
+ encoding = 'UTF-8'
+ }
+}
+
+// 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']
+ publish = true
+
+ pkg {
+ userOrg = 'embulk-output-td'
+ repo = 'maven'
+ name = project.name
+ desc = 'Embulk output plugin for Treasure Data'
+ websiteUrl = 'https://github.com/treasure-data/embulk-output-td'
+ issueTrackerUrl = 'https://github.com/treasure-data/embulk-output-td/issues'
+ vcsUrl = 'https://github.com/treasure-data/embulk-output-td.git'
+ licenses = ['Apache-2.0']
+ labels = ['embulk', 'java']
+ publicDownloadNumbers = true
+
+ version {
+ name = project.version
+ }
+ }
+}
+publishing {
+ publications {
+ bintrayMavenRelease(MavenPublication) {
+ from components.java
+ artifact testsJar
+ artifact sourcesJar
+ artifact javadocJar
+ }
+ }
+}
+
task classpath(type: Copy, dependsOn: ["jar"]) {
doFirst { file("classpath").deleteDir() }
from (configurations.runtime - configurations.provided + files(jar.archivePath))
into "classpath"
}
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") }