image: ruby:2.1
services:
  - postgres

before_script:
  - gem install bundler
  - bundle install
  - bundle exec rake db:create

variables:
  DB_NAME: postgres

types:
  - test
  - deploy
  - notify

rspec:
  script: "rake spec"
  tags:
    - ruby
    - postgres
  only:
    - branches

spinach:
  script: "rake spinach"
  allow_failure: true
  tags:
    - ruby
    - mysql
  except:
    - tags

staging:
  variables:
    KEY1: value1
    KEY2: value2
  script: "cap deploy stating"
  type: deploy
  tags:
    - ruby
    - mysql
  except:
    - stable

production:
  variables:
    DB_NAME: mysql
  type: deploy
  script:
    - cap deploy production
    - cap notify
  tags:
    - ruby
    - mysql
  only:
    - master
    - /^deploy-.*$/

dockerhub:
  type: notify
  script: "curl http://dockerhub/URL"
  tags:
    - ruby
    - postgres
  only:
    - branches
