1234567891011121314151617181920212223242526272829303132333435363738394041
  1. sudo: false
  2. cache:
  3. - pip
  4. - npm
  5. - directories:
  6. - $HOME/.cache/pip
  7. addons:
  8. firefox: "latest"
  9. language: python
  10. python:
  11. - "2.7"
  12. - "3.5"
  13. - "3.6"
  14. before_install:
  15. - "export DISPLAY=:99.0"
  16. - "sh -e /etc/init.d/xvfb start"
  17. install:
  18. - ./manage.sh install_geckodriver ~/drivers
  19. - export PATH=~/drivers:$PATH
  20. - ./manage.sh npm_packages
  21. - ./manage.sh update_dev_packages
  22. - pip install codecov flake8
  23. before_script:
  24. # stop the build if there are Python syntax errors or undefined names
  25. - flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
  26. # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
  27. - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
  28. script:
  29. - ./manage.sh styles
  30. - ./manage.sh grunt_build
  31. - ./manage.sh tests
  32. after_success:
  33. - ./manage.sh py_test_coverage
  34. - codecov
  35. notifications:
  36. irc:
  37. channels:
  38. - "irc.freenode.org#searx"
  39. template:
  40. - "%{repository}/#%{build_number}/%{branch} (%{author}): %{message} %{build_url}"
  41. on_success: change