plugins { id "com.jfrog.bintray" version "1.1" id "com.github.jruby-gradle.base" version "0.1.5" id "java" } import com.github.jrubygradle.JRubyExec apply from: 'https://raw.githubusercontent.com/hata/gradle-plugins/master/embulk-integration-test.gradle' sourceCompatibility = '1.7' targetCompatibility = '1.7' repositories { mavenCentral() jcenter() } configurations { provided } version = "0.1.1" dependencies { compile "org.embulk:embulk-core:0.8.0" compile "org.apache.commons:commons-compress:1.13" provided "org.embulk:embulk-core:0.8.0" // compile "YOUR_JAR_DEPENDENCY_GROUP:YOUR_JAR_DEPENDENCY_MODULE:YOUR_JAR_DEPENDENCY_VERSION" testCompile "org.jmockit:jmockit:1.15" testCompile "junit:junit:4.+" } task classpath(type: Copy, dependsOn: ["jar"]) { doFirst { file("classpath").deleteDir() } from (configurations.runtime - configurations.provided + files(jar.archivePath)) into "classpath" } clean { delete 'classpath' } task gem(type: JRubyExec, dependsOn: ["build", "gemspec", "classpath"]) { jrubyArgs "-rrubygems/gem_runner", "-eGem::GemRunner.new.run(ARGV)", "build" script "build/gemspec" doLast { ant.move(file: "${project.name}-${project.version}.gem", todir: "pkg") } } task gemspec << { file("build/gemspec").write($/ Gem::Specification.new do |spec| spec.name = "${project.name}" spec.version = "${project.version}" spec.authors = ["hata"] spec.summary = %[Commons Compress encoder plugin for Embulk] spec.description = %[Commons Compress encoder plugin is an Embulk plugin that encodes files using Commons Compress so that any file output plugins can store the files. Search the file output plugins by 'embulk-output file' keywords.] spec.email = ["hiroki.ata@gmail.com"] spec.licenses = ["MIT"] spec.homepage = "https://github.com/hata/embulk-encoder-commons-compress" 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_dependency 'YOUR_GEM_DEPENDENCY', ['~> YOUR_GEM_DEPENDENCY_VERSION'] spec.add_development_dependency 'bundler', ['~> 1.0'] spec.add_development_dependency 'rake', ['>= 10.0'] end /$) } // // To enable integrationTest, run like this: // ./gradlew -DenableIntegrationTest=true gem // project.tasks.integrationTest.dependsOn(classpath)