.travis.yml 3.0 KB
Newer Older
1
language: ruby
2
sudo: false
3 4 5 6 7 8

cache:
  bundler: true
  directories:
    - /tmp/cache/unicode_conformance
    - /tmp/beanstalkd-1.10
9 10
    - node_modules
    - $HOME/.nvm
11 12 13 14 15 16 17

services:
  - memcached
  - redis

addons:
  postgresql: "9.4"
18 19 20
  apt:
    packages:
      - postgresql-9.4
21 22

bundler_args: --without test --jobs 3 --retry 3
J
José Valim 已提交
23
before_install:
24
  - "rm ${BUNDLE_GEMFILE}.lock"
25
  - "gem update --system"
26
  - "gem update bundler"
27 28
  - "[ -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"
29 30 31 32 33
  - "[[ $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"

34

35
before_script:
36 37 38 39 40
  # Set Sauce Labs username and access key. Obfuscated, purposefully not encrypted.
  # Decodes to e.g. `export VARIABLE=VALUE`
  - $(base64 --decode <<< "ZXhwb3J0IFNBVUNFX0FDQ0VTU19LRVk9YTAzNTM0M2YtZTkyMi00MGIzLWFhM2MtMDZiM2VhNjM1YzQ4")
  - $(base64 --decode <<< "ZXhwb3J0IFNBVUNFX1VTRVJOQU1FPXJ1YnlvbnJhaWxz")

41 42
script: 'ci/travis.rb'

43
env:
44 45
  global:
    - "JRUBY_OPTS='--dev -J-Xmx1024M'"
46 47
  matrix:
    - "GEM=railties"
M
Matthew Draper 已提交
48
    - "GEM=ap,ac"
49
    - "GEM=am,amo,as,av,aj"
50
    - "GEM=as PRESERVE_TIMEZONES=1"
51 52 53
    - "GEM=ar:mysql2"
    - "GEM=ar:sqlite3"
    - "GEM=ar:postgresql"
54
    - "GEM=guides"
M
Matthew Draper 已提交
55
    - "GEM=ac:integration"
56

57
rvm:
R
Ryunosuke Sato 已提交
58
  - 2.2.7
R
Ryunosuke Sato 已提交
59
  - 2.3.4
J
Jon Moss 已提交
60
  - 2.4.1
61
  - ruby-head
62

63
matrix:
64
  include:
J
Jon Moss 已提交
65
    - rvm: 2.4.1
66
      env: "GEM=av:ujs"
R
Ryunosuke Sato 已提交
67
    - rvm: 2.2.7
68 69 70 71 72
      env: "GEM=aj:integration"
      services:
        - memcached
        - redis
        - rabbitmq
R
Ryunosuke Sato 已提交
73
    - rvm: 2.3.4
74 75 76 77 78
      env: "GEM=aj:integration"
      services:
        - memcached
        - redis
        - rabbitmq
J
Jon Moss 已提交
79
    - rvm: 2.4.1
80 81 82 83 84
      env: "GEM=aj:integration"
      services:
        - memcached
        - redis
        - rabbitmq
85 86 87 88 89 90
    - rvm: ruby-head
      env: "GEM=aj:integration"
      services:
        - memcached
        - redis
        - rabbitmq
R
Ryunosuke Sato 已提交
91
    - rvm: 2.3.4
V
Vipul A M 已提交
92
      env:
93
        - "GEM=ar:mysql2 MYSQL=mariadb"
V
Vipul A M 已提交
94 95
      addons:
        mariadb: 10.0
J
Jon Moss 已提交
96
    - rvm: 2.4.1
97 98
      env:
        - "GEM=ar:sqlite3_mem"
A
Akira Matsuda 已提交
99
    - rvm: jruby-9.1.8.0
100 101
      jdk: oraclejdk8
      env:
J
Jon Moss 已提交
102
        - "GEM=ap"
A
Akira Matsuda 已提交
103
    - rvm: jruby-9.1.8.0
J
Jon Moss 已提交
104 105
      jdk: oraclejdk8
      env:
J
Jon Moss 已提交
106
        - "GEM=am,amo,aj"
107 108 109 110 111 112
    # Test with old (< 9.4.2) postgresql
    - rvm: 2.4.0
      env:
        - "GEM=ar:postgresql"
      addons:
        postgresql: "9.4"
113
  allow_failures:
R
Rafael Mendonça França 已提交
114
    - rvm: ruby-head
A
Akira Matsuda 已提交
115
    - rvm: jruby-9.1.8.0
M
Matthew Draper 已提交
116
    - env: "GEM=ac:integration"
117
  fast_finish: true
118

119 120 121
notifications:
  email: false
  irc:
122 123 124 125
    on_success: change
    on_failure: always
    channels:
      - "irc.freenode.org#rails-contrib"
126
  campfire:
127 128 129
    on_success: change
    on_failure: always
    rooms:
130
      - secure: "YA1alef1ESHWGFNVwvmVGCkMe4cUy4j+UcNvMUESraceiAfVyRMAovlQBGs6\n9kBRm7DHYBUXYC2ABQoJbQRLDr/1B5JPf/M8+Qd7BKu8tcDC03U01SMHFLpO\naOs/HLXcDxtnnpL07tGVsm0zhMc5N8tq4/L3SHxK7Vi+TacwQzI="