summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: ac235db10447b59f5451911405d1463f03849a0d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
language: ruby
dist: xenial
script: rake spec:travis
before_script:
  - travis_retry rake -E 'module ::Bundler; VERSION = "0.0.0"; end' override_version
  - travis_retry rake spec:travis:deps
  - travis_retry rake man:build
  - travis_retry rake spec:rubygems:clone_rubygems_$RGV

branches:
  only:
    - master
    - staging
    - trying
    - /.+-dev$/
    - /.+-stable$/

notifications:
  slack:
    on_success: change
    on_failure: always
    rooms:
      - secure: JxBi7DDJGkIF/7f/FSN/HUHpvV4EKfQccZHTPd1b2pNJn3GXo6u+tNVbAw2WjxYzPyPQI3ZcYBCU9SEXp/i7VmG8uMzh8Kyildw+miSKYKVb90uYqcsXWzbxwyNBgJLvyDkzST45H5lgnyAicee3WkFes/WDZikIajbH7ztdb04=

addons:
  code_climate:
    repo_token:
      secure: "TrzIv116JLGUxm6PAUskCYrv8KTDguncKROVwbnjVPKTGDAgoDderd8JUdDEXrKoZ9qGLD2TPYKExt9/QDl71E+qHdWnVqWv4HKCUk2P9z/VLKzHuggOUBkCXiJUhjywUieCJhI3N92bfq2EjSBbu2/OFHqWOjLQ+QCooTEBjv8="

rvm:
  - 2.6.1
  - 2.5.3
  - 2.4.5
  - 2.3.8

stages:
  - linting
  - test

# Rubygems versions MUST be available as rake tasks
# see Rakefile:125 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=v3.0.2

jobs:
  include:
    - rvm: 2.6.1
      script: rake rubocop
      stage: linting
    # Ruby 2.5, Rubygems 2.7 and up
    - rvm: 2.5.3
      env: RGV=v2.7.8
      stage: test
    # Ruby 2.4, Rubygems 2.6 and up
    - rvm: 2.4.5
      env: RGV=v2.6.14
      stage: test
    - rvm: 2.4.5
      env: RGV=v2.7.8
      stage: test
    # Ruby 2.3, Rubygems 2.5 and up
    - rvm: 2.3.8
      env: RGV=v2.5.2
      stage: test
    - rvm: 2.3.8
      env: RGV=v2.6.14
      stage: test
    - rvm: 2.3.8
      env: RGV=v2.7.8
      stage: test
    # Ruby-head (we want to know how we're doing, but not fail the build)
    - rvm: ruby-head
      env: RGV=master
      stage: test
    # 1.x mode (we want to keep stuff passing in 1.x mode for now)
    - rvm: 2.6.1
      env: RGV=v2.7.8 BUNDLER_SPEC_SUB_VERSION=1.98
      stage: test

  allow_failures:
    - rvm: ruby-head
      env: RGV=master