.travis.yml 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. language: python
  2. sudo: false
  3. cache: pip
  4. python:
  5. - 3.5
  6. - 3.6
  7. - 3.7
  8. - 3.8
  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.8
  27. env: TEST_REQUIRE=fastimport
  28. dist: xenial
  29. sudo: true
  30. - python: 3.6
  31. env: PURE=true
  32. install:
  33. - travis_retry pip install -U pip coverage codecov flake8 $TEST_REQUIRE
  34. script:
  35. - if [ $PURE = false ]; then python setup.py build_ext -i; fi
  36. - python -m coverage run -p -m unittest dulwich.tests.test_suite
  37. # Style
  38. - make style
  39. - if [ $PURE = true ]; then SETUP_ARGS=--pure; fi
  40. - python setup.py $SETUP_ARGS bdist_wheel
  41. after_success:
  42. - python -m coverage combine
  43. - codecov
  44. deploy:
  45. provider: pypi
  46. user: dulwich-bot
  47. password:
  48. secure: Q8DDDojBugQWzXvmmEQiU90UkVPk+OYoFZwv1H9LYpQ4u5CfwQNWpf8qXYhlGMdr/gzWaSWsqLvgWLpzfkvqS4Vyk2bO9mr+dSskfD8uwc82LiiL9CNd/NY03CjH9RaFgVMD/+exMjY/yCtlyH1jL4kjgOyNnC+x4B37CliZHcE=
  49. skip_cleanup: true
  50. skip_existing: true
  51. file_glob: true
  52. file:
  53. - dist/dulwich*.whl
  54. - dist/dulwich*.tar.gz
  55. on:
  56. tags: true
  57. repo: dulwich/dulwich