aboutsummaryrefslogblamecommitdiffstats
path: root/.travis.yml
blob: 27400b98c7efd41a79f19d1e47d46c85c411f9bd (plain) (tree)
1
2
3
4
5
6
7
8
9
10
              
           





                                    

                  


             

       
                   

                                               
               
                               

                                      

                                                                                                                              
                                                                                                                                                                                                                                                                            




                                                                                                       
              



                                                                                                             
                                                                                      
 

                      
    

                                      

                    
                 
                               
                                   


                         
                  
                          
 
    


         
             
 
       
          
                
                       
                


                               
                  
                


                               
                  
                


                               
                  



                               
                  
                
          
                                       
             
                     
                

                              
                



                                          
                         

                     
                  
                         

                     
                         
                 
                    
                         
                               
                   
 


              


                      

                                                                                                                                                                                              
           


                      
                                                                                                                                                                                                  
language: ruby
sudo: false

cache:
  bundler: true
  directories:
    - /tmp/cache/unicode_conformance
    - /tmp/beanstalkd-1.10
    - node_modules
    - $HOME/.nvm

services:
  - memcached

addons:
  postgresql: "9.6"

bundler_args: --without test --jobs 3 --retry 3
before_install:
  - "rm ${BUNDLE_GEMFILE}.lock"
  - "travis_retry gem update --system"
  - "travis_retry gem update bundler"
  - "[ -f /tmp/beanstalkd-1.10/Makefile ] || (curl -L https://github.com/kr/beanstalkd/archive/v1.10.tar.gz | tar xz -C /tmp)"
  - "pushd /tmp/beanstalkd-1.10 && make && (./beanstalkd &); popd"
  - "[[ -z $encrypted_8a915ebdd931_key && -z $encrypted_8a915ebdd931_iv ]] || openssl aes-256-cbc -K $encrypted_8a915ebdd931_key -iv $encrypted_8a915ebdd931_iv -in activestorage/test/service/configurations.yml.enc -out activestorage/test/service/configurations.yml -d"
  - "[[ $GEM != 'av:ujs' ]] || nvm install node"
  - "[[ $GEM != 'av:ujs' ]] || node --version"
  - "[[ $GEM != 'av:ujs' ]] || (cd actionview && npm install)"
  - "[[ $GEM != 'av:ujs' ]] || [[ $(phantomjs --version) > '2' ]] || npm install -g phantomjs-prebuilt"

before_script:
  # Set Sauce Labs username and access key. Obfuscated, purposefully not encrypted.
  # Decodes to e.g. `export VARIABLE=VALUE`
  - $(base64 --decode <<< "ZXhwb3J0IFNBVUNFX0FDQ0VTU19LRVk9YTAzNTM0M2YtZTkyMi00MGIzLWFhM2MtMDZiM2VhNjM1YzQ4")
  - $(base64 --decode <<< "ZXhwb3J0IFNBVUNFX1VTRVJOQU1FPXJ1YnlvbnJhaWxz")
  - redis-server --bind 127.0.0.1 --port 6379 --requirepass 'password' --daemonize yes

script: 'ci/travis.rb'

env:
  global:
    - "JRUBY_OPTS='--dev -J-Xmx1024M'"
  matrix:
    - "GEM=railties"
    - "GEM=ap,ac"
    - "GEM=am,amo,as,av,aj,ast"
    - "GEM=as PRESERVE_TIMEZONES=1"
    - "GEM=ar:mysql2"
    - "GEM=ar:sqlite3"
    - "GEM=ar:postgresql"
    - "GEM=guides"
    - "GEM=ac:integration"

rvm:
  - 2.2.8
  - 2.3.5
  - 2.4.2
  - ruby-head

matrix:
  include:
    - rvm: 2.4.2
      env: "GEM=av:ujs"
    - rvm: 2.2.8
      env: "GEM=aj:integration"
      services:
        - memcached
        - rabbitmq
    - rvm: 2.3.5
      env: "GEM=aj:integration"
      services:
        - memcached
        - rabbitmq
    - rvm: 2.4.2
      env: "GEM=aj:integration"
      services:
        - memcached
        - rabbitmq
    - rvm: ruby-head
      env: "GEM=aj:integration"
      services:
        - memcached
        - rabbitmq
    - rvm: 2.3.5
      env:
        - "GEM=ar:mysql2 MYSQL=mariadb"
      addons:
        mariadb: 10.2
    - rvm: 2.3.5
      env:
        - "GEM=ar:sqlite3_mem"
    - rvm: 2.3.5
      env:
        - "GEM=ar:postgresql POSTGRES=9.2"
      addons:
        postgresql: "9.2"
    - rvm: jruby-9.1.13.0
      jdk: oraclejdk8
      env:
        - "GEM=ap"
    - rvm: jruby-9.1.13.0
      jdk: oraclejdk8
      env:
        - "GEM=am,amo,aj"
  allow_failures:
    - rvm: ruby-head
    - rvm: jruby-9.1.13.0
    - env: "GEM=ac:integration"
  fast_finish: true

notifications:
  email: false
  irc:
    on_success: change
    on_failure: always
    channels:
      # "irc.freenode.org#rails-contrib"
      - secure: "QFKSOK7xQiWWqTzYfYm0XWoW7idzuxT57MBW9i9EASyRLEPuDwZEubKRP40Y7wPx7ylQd9lp6kJheeLnrDvvTjFbW3sWv9GDRl4WlOU8sG/Kv7MXAASXlDqzyJxxXTtzLeXz2iwY296kOBuKxKxl923eTvEGeocwH02QGo14LpQ="
  campfire:
    on_success: change
    on_failure: always
    rooms:
      - secure: "YA1alef1ESHWGFNVwvmVGCkMe4cUy4j+UcNvMUESraceiAfVyRMAovlQBGs6\n9kBRm7DHYBUXYC2ABQoJbQRLDr/1B5JPf/M8+Qd7BKu8tcDC03U01SMHFLpO\naOs/HLXcDxtnnpL07tGVsm0zhMc5N8tq4/L3SHxK7Vi+TacwQzI="