language: ruby
script: rake spec:travis
before_script: travis_retry rake spec:travis:deps
branches:
  only:
    - master
    - 1-7-stable
    - 1-6-stable
    - 1-5-stable
    - 1-3-stable
    - 1-2-stable
    - 1-1-stable
    - 1-0-stable
notifications:
  email:
    # andre
    - secure: "bCcvqJT7YrBawtkXXwHhT+jOFth7r2Qv/30PkkbhQxk6Jb3xambjCOJ3U6vJ\ngYmiL50exi5lUp3oc3SEbHN5t2CrZqOZDQ6o7P8EAmB5c0oH2RrYaFOkI5Gt\nul/jGH/96A9sj0aMwG7JfdMSfhqj1DUKAm2PnnbXPL853VfmT24="
    # terence
    - secure: "MQ8eA5Jb8YzEpAo58DRGfVJklAPcEbAulpBZnTxp0am6ldneDtJHbQk21w6R\nj5GsDHlzr/lMp/GHIimtUZ7rLohfND8fj/W7fs1Dkd4eN02/ERt98x3pHlqv\nvZgSnZ39uVYv+OcphraE24QaRaGWLhWZAMYQTVe/Yz50NyG8g1U="
  campfire:
    on_success: change
    on_failure: always
    rooms:
      # Bundler Ops
      secure: MNTSGIySYwHia5gIgRiZxXtPMPDIP9KmzQk7Kq2ZoVvP3mIk8W1TMkvcyFkEf6uCasyVZZixzUBfY+E0BlHAz1ycQpTh1jvSpuIpEVYW48ShJldJ+8W8xfzafyOHii3z7VrDaomEffmMDdmHRsbQAfekMjdR4bTpXtT9V+wOXlg=
rvm:
  - 2.1.1
  - 2.0.0
  - 1.9.3
  - 1.8.7
# Rubygems versions MUST be available as rake tasks
# see Rakefile:66 for the list of possible RGV values
env:
  # We need to know if changes to rubygems will break bundler on release
  - RGV=master
  # Test the latest rubygems release with all of our supported rubies
  - RGV=v2.2.2
matrix:
  include:
    # Ruby 2.0.0, Rubygems 2.0 and up
    - rvm: 2.0.0
      env: RGV=v2.1.11
    - rvm: 2.0.0
      env: RGV=v2.0.14
    # Ruby 1.9.3, Rubygems 1.5.3 and up
    - rvm: 1.9.3
      env: RGV=v2.1.11
    - rvm: 1.9.3
      env: RGV=v2.0.14
    - rvm: 1.9.3
      env: RGV=v1.8.29
    - rvm: 1.9.3
      env: RGV=v1.7.2
    - rvm: 1.9.3
      env: RGV=v1.6.2
    - rvm: 1.9.3
      env: RGV=v1.5.3
    # Ruby 1.8.7, Rubygems 1.3.6 and up
    - rvm: 1.8.7
      env: RGV=v2.1.11
    - rvm: 1.8.7
      env: RGV=v2.0.14
    - rvm: 1.8.7
      env: RGV=v1.8.29
    - rvm: 1.8.7
      env: RGV=v1.7.2
    - rvm: 1.8.7
      env: RGV=v1.6.2
    - rvm: 1.8.7
      env: RGV=v1.5.3
    - rvm: 1.8.7
      env: RGV=v1.4.2
    - rvm: 1.8.7
      env: RGV=v1.3.7
    - rvm: 1.8.7
      env: RGV=v1.3.6

    # ALLOWED FAILURES
    # For no apparent reason, this often goes over the Travis limit
    - rvm: 1.8.7
      env: RGV=v2.1.11
    # Ruby 1.9.2 sanity check
    # (but it's just too slow and sometimes goes over the Travis limit)
    - rvm: 1.9.2
      env: RGV=v2.2.2
    # Ruby-head (we want to know how we're doing, but not fail the build)
    - rvm: ruby-head
      env: RGV=master
    # JRuby, the latest (not maintained, but good to know)
    - rvm: jruby
      env: RGV=v2.2.2
    # Rubinius, the latest (not maintained, but good to know)
    - rvm: rbx
      env: RGV=v2.2.2
  allow_failures:
    - rvm: 1.8.7
      env: RGV=2.1.11
    - rvm: 1.9.2
    - rvm: ruby-head
    - rvm: jruby
    - rvm: rbx
