.travis.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. language: python
  2. sudo: false
  3. cache: pip
  4. python:
  5. - 2.7
  6. - 3.4
  7. - 3.5
  8. - 3.6
  9. - pypy3.5
  10. env:
  11. - PYTHONHASHSEED=random
  12. TEST_REQUIRE="gevent greenlet geventhttpclient fastimport"
  13. PURE=false
  14. matrix:
  15. include:
  16. - python: pypy
  17. env: TEST_REQUIRE=fastimport
  18. - python: 3.7
  19. env: TEST_REQUIRE=fastimport
  20. dist: xenial
  21. sudo: true
  22. - python: 3.8
  23. env: TEST_REQUIRE=fastimport
  24. dist: xenial
  25. sudo: true
  26. - python: 3.6
  27. env: PURE=true
  28. - python: 2.7
  29. env: PURE=true
  30. # flakes checker fails on python 3.8-dev:
  31. #- python: 3.8-dev
  32. # env: TEST_REQUIRE=fastimport
  33. # dist: xenial
  34. # sudo: true
  35. install:
  36. - travis_retry pip install -U pip coverage codecov flake8 $TEST_REQUIRE
  37. script:
  38. - if [ $PURE = false ]; then python setup.py build_ext -i; fi
  39. - python -m coverage run -p -m unittest dulwich.tests.test_suite
  40. # Style
  41. - make style
  42. - if [ $PURE = true ]; then SETUP_ARGS=--pure; fi
  43. - python setup.py $SETUP_ARGS bdist_wheel
  44. after_success:
  45. - python -m coverage combine
  46. - codecov
  47. deploy:
  48. provider: pypi
  49. user: dulwich-bot
  50. password:
  51. secure: Q8DDDojBugQWzXvmmEQiU90UkVPk+OYoFZwv1H9LYpQ4u5CfwQNWpf8qXYhlGMdr/gzWaSWsqLvgWLpzfkvqS4Vyk2bO9mr+dSskfD8uwc82LiiL9CNd/NY03CjH9RaFgVMD/+exMjY/yCtlyH1jL4kjgOyNnC+x4B37CliZHcE=
  52. skip_cleanup: true
  53. skip_existing: true
  54. file_glob: true
  55. file:
  56. - dist/dulwich*.whl
  57. - dist/dulwich*.tar.gz
  58. on:
  59. tags: true
  60. repo: dulwich/dulwich