Add support for auto-releasing from Travis CI pending a successful build

This commit is contained in:
R. Tyler Croy 2015-08-17 11:14:09 -07:00
parent e2f3a0ab4c
commit 27b59e2db1
No known key found for this signature in database
GPG Key ID: 1426C7DC3F51E16F
3 changed files with 53 additions and 10 deletions

View File

@ -1,7 +1,19 @@
language: ruby
rvm:
- jruby-1.7.11
before_script: bundle exec rake storm_deps
script: bundle exec rspec
language: java
sudo: false
install:
- "./gradlew clean"
script:
- "./gradlew -S -i"
jdk:
- oraclejdk7
- oraclejdk8
- openjdk7
notifications:
irc: "chat.freenode.net#redstorm"
irc: chat.freenode.net#redstorm
cache:
directories:
- "$HOME/.gradle"
after_success: "./gradlew bintrayUpload -i -PbintrayUser=rtyler -PbintrayKey=${BINTRAY_KEY}"
env:
global:
secure: btMn50KjfaB7rNFrNfQtqOyJEVF30rS26A7p6h4+yyn4IyjaRlc+wLn3AXstoYZ79kAVaVM7vnteLxjvCIkIW26PqEAWm/t3H8v3e7QmXf5kjiQa8/mIswo1eHByb9AF4QtC39goQawRzFNL96xro5gxBTPtlb982ebdIQwtr00=

View File

@ -1,16 +1,22 @@
# RedStorm - JRuby on Storm
RedStorm provides a Ruby DSL using JRuby integration for the [Storm](https://github.com/nathanmarz/storm/) distributed realtime computation system.
RedStorm provides a Ruby DSL using JRuby integration for the
[Storm](https://github.com/apache/storm/) distributed realtime computation
system.
Like RedStorm? visit us on IRC at #redstorm on freenode
## Documentation
Chances are new versions of RedStorm will introduce changes that will break compatibility or change the developement workflow. To prevent out-of-sync documentation, per version specific documentation are kept [in the wiki](https://github.com/iruby-gradle/redstorm/wiki) when necessary.
Chances are new versions of RedStorm will introduce changes that will break
compatibility or change the developement workflow. To prevent out-of-sync
documentation, per version specific documentation are kept [in the
wiki](https://github.com/jruby-gradle/redstorm/wiki) when necessary.
## Author
* **Colin Surprenant**, http://github.com/colinsurprenant/, [@colinsurprenant](http://twitter.com/colinsurprenant/), colin.surprenant@gmail.com, http://colinsurprenant.com/
* **R Tyler Croy**, http://github.com/rtyler/, [@agentdero](http://twitter.com/agentdero/)
## Contributors
@ -22,4 +28,5 @@ Chances are new versions of RedStorm will introduce changes that will break comp
* adsummos, https://github.com/adsummos
## License
Apache License, Version 2.0. See the LICENSE.md file.

View File

@ -20,6 +20,8 @@ apply plugin: 'com.jfrog.bintray'
version = '0.7.3'
group = 'com.github.jruby-gradle'
description = "RedStorm integrates Ruby code via JRuby into the Storm distributed computation system"
defaultTasks 'check', 'assemble'
// Any time we're not expicitly saying "build me a release build" we'll change
// the version to -SNAPSHOT
@ -114,6 +116,23 @@ sourceSets {
}
}
/* Needed, according to @ysb33r to make sure we build against JDK7 */
plugins.withType(JavaPlugin) {
sourceCompatibility = 1.7
targetCompatibility = 1.7
project.tasks.withType(JavaCompile) { task ->
task.sourceCompatibility = project.sourceCompatibility
task.targetCompatibility = project.targetCompatibility
}
project.tasks.withType(GroovyCompile) { task ->
task.sourceCompatibility = project.sourceCompatibility
task.targetCompatibility = project.targetCompatibility
}
}
// In addition to all of the compiled java sources, we need to include the Ruby
// code from ./lib in the .jar archive
jar {
@ -135,8 +154,13 @@ bintray {
user = project.bintrayUser
key = project.bintrayKey
publish = true
dryRun = false
configurations = ['archives']
/*
* Only only publish when we're tagging a release and if we've executed on
* the JDK7 build. This is to prevent multiple attempts by the build matrix
* to publish the artifacts
*/
dryRun = !((System.env.TRAVIS_TAG as boolean) && (System.env.TRAVIS_JDK_VERSION == 'oraclejdk7'))
pkg {
userOrg = 'jruby-gradle'
@ -147,7 +171,7 @@ bintray {
version {
name = project.version
vcsTag = "v${project.version}"
desc = 'JRuby integration & DSL for the Storm distributed realtime computation system'
desc = project.description
}
}
}