.travis.yml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. language: python
  2. sudo: enabled
  3. cache:
  4. directories:
  5. - $HOME/.cache/pip
  6. matrix:
  7. allow_failures:
  8. - python: "3.7" # until we can get Python 3 compatibility in place
  9. # NOTE: comment out fast_finish if we have to reinstate any allow_failures,
  10. # because of https://github.com/travis-ci/travis-ci/issues/1696 (multiple
  11. # notifications)
  12. fast_finish: true
  13. include:
  14. - python: "2.7"
  15. - python: "3.7"
  16. dist: xenial # required for Python >= 3.7 (travis-ci/travis-ci#9069)
  17. install:
  18. - echo "#install#"
  19. # For some reason Travis' build envs have wildly different pip/setuptools
  20. # versions between minor Python versions, and this can cause many hilarious
  21. # corner packaging cases. So...
  22. - pip install --upgrade pip
  23. # Setuptools 34+ seems to get less stable
  24. - pip install 'setuptools>33,<34'
  25. # Pre-requirements sanity test (again, resembles pure, non-dev install
  26. # environment.) Avoids e.g. spec's 'six' from gumming up our attempts to
  27. # import our vendorized 'six'.
  28. - pip install -r requirements/dev.txt
  29. - pip list --format=columns
  30. before_script:
  31. - echo "#before_script#"
  32. # stop the build if there are Python syntax errors or undefined names
  33. # - flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
  34. # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
  35. # - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
  36. - mkdir -p /tmp/walle/{logs,library,webroot,releases}
  37. script:
  38. - echo "#script#"
  39. - export FLASK_APP=waller.py
  40. - python -m flask test
  41. notifications:
  42. on_success: never
  43. on_failure: always