.travis.yml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. language: python
  2. cache:
  3. directories:
  4. - $HOME/.cache/pip
  5. # note: use py 3.5.2, it has lzma support. 3.5(.0) on travis.org/trusty does not.
  6. matrix:
  7. fast_finish: true
  8. include:
  9. - python: 3.4
  10. os: linux
  11. dist: trusty
  12. env: TOXENV=flake8
  13. - python: 3.4
  14. os: linux
  15. dist: trusty
  16. env: TOXENV=py34
  17. - python: 3.5.2
  18. os: linux
  19. dist: trusty
  20. env: TOXENV=py35
  21. - python: 3.6
  22. os: linux
  23. dist: trusty
  24. env: TOXENV=py36
  25. - python: 3.7
  26. os: linux
  27. dist: xenial
  28. env: TOXENV=py37
  29. - python: 3.8
  30. os: linux
  31. dist: xenial
  32. env: TOXENV=py38
  33. - language: generic
  34. os: osx
  35. osx_image: xcode8.3
  36. env: TOXENV=py35
  37. - language: generic
  38. os: osx
  39. osx_image: xcode8.3
  40. env: TOXENV=py37
  41. allow_failures:
  42. - os: osx
  43. before_install:
  44. - |
  45. test $TRAVIS_EVENT_TYPE != "pull_request" || {
  46. echo Checking whether $TRAVIS_COMMIT_RANGE changed only docs
  47. git diff --name-only $TRAVIS_COMMIT_RANGE | grep --quiet --invert-match --extended-regexp '(AUTHORS|README\.rst|^(docs)/)' || {
  48. echo "Only docs were updated, stopping build process."
  49. exit
  50. }
  51. }
  52. install:
  53. - git fetch --unshallow --tags
  54. - ./.travis/install.sh
  55. script:
  56. - ./.travis/run.sh
  57. after_success:
  58. - ./.travis/upload_coverage.sh
  59. notifications:
  60. irc:
  61. channels:
  62. - "irc.freenode.org#borgbackup"
  63. use_notice: true
  64. skip_join: true