Merge pull request #865 from tphoney/FM-7709
[puppet-modules/puppetlabs-apt.git] / .travis.yml
1 ---
2 language: ruby
3 cache: bundler
4 before_install:
5   - bundle -v
6   - rm -f Gemfile.lock
7   - gem update --system $RUBYGEMS_VERSION
8   - gem --version
9   - bundle -v
10 script:
11   - 'bundle exec rake $CHECK'
12 bundler_args: --without system_tests
13 rvm:
14   - 2.5.3
15 stages:
16   - static
17   - spec
18   - acceptance
19   -
20     if: tag =~ ^v\d
21     name: deploy
22 matrix:
23   fast_finish: true
24   include:
25     -
26       bundler_args:
27       dist: trusty
28       env: PLATFORMS=deb_puppet5
29       rvm: 2.5.3
30       before_script:
31       - bundle exec rake 'litmus:provision_list[travis_deb]'
32       - bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
33       - bundle exec rake 'litmus:install_agent[puppet5]'
34       - bundle exec rake litmus:install_module
35       script:
36       - bundle exec rake litmus:acceptance:parallel
37       services: docker
38       stage: acceptance
39       sudo: required
40     -
41       bundler_args:
42       dist: trusty
43       env: PLATFORM=deb_puppet6
44       rvm: 2.5.3
45       before_script:
46       - bundle exec rake 'litmus:provision_list[travis_deb]'
47       - bundle exec bolt command run 'apt-get install wget -y' --inventoryfile inventory.yaml --nodes='localhost*'
48       - bundle exec rake 'litmus:install_agent[puppet6]'
49       - bundle exec rake litmus:install_module
50       script:
51       - bundle exec rake litmus:acceptance:parallel
52       services: docker
53       sudo: required
54     -
55       env: CHECK="check:symlinks check:git_ignore check:dot_underscore check:test_file rubocop syntax lint metadata_lint"
56       stage: static
57     -
58       env: PUPPET_GEM_VERSION="~> 5.0" CHECK=parallel_spec
59       rvm: 2.4.5
60       stage: spec
61     -
62       env: PUPPET_GEM_VERSION="~> 6.0" CHECK=parallel_spec
63       rvm: 2.5.3
64       stage: spec
65     -
66       env: DEPLOY_TO_FORGE=yes
67       stage: deploy
68 branches:
69   only:
70     - master
71     - /^v\d/
72     - release
73 notifications:
74   email: false