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 repositories { mavenCentral() jcenter() } configurations { provided } version = "0.1.2" dependencies { compile "org.embulk:embulk-core:0.4.8" provided "org.embulk:embulk-core:0.4.8" // compile "YOUR_JAR_DEPENDENCY_GROUP:YOUR_JAR_DEPENDENCY_MODULE:YOUR_JAR_DEPENDENCY_VERSION" 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 = ["Sadayuki Furuhashi"] spec.summary = %[Command file output plugin for Embulk] spec.description = %[Executes commands and writes files to STDIN.] spec.email = ["frsyuki@gmail.com"] spec.licenses = ["Apache 2.0"] spec.homepage = "https://github.com/embulk/embulk-output-command" 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 /$) }