.travis.yml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. language: php
  2. dist: xenial
  3. services:
  4. - mongodb
  5. php:
  6. - 7.0
  7. - 7.1
  8. - 7.2
  9. - 7.3
  10. - 7.4
  11. addons:
  12. apt:
  13. sources:
  14. - sourceline: "deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse"
  15. key_url: "https://www.mongodb.org/static/pgp/server-3.4.asc"
  16. - "mongodb-upstart"
  17. packages: ['mongodb-org-server']
  18. install:
  19. - .travis/install-extension.sh
  20. - composer update ${COMPOSER_FLAGS}
  21. script:
  22. - vendor/bin/simple-phpunit
  23. jobs:
  24. include:
  25. # Run tests on PHP 8 with the upcoming extension version
  26. - stage: test
  27. php: 8.0snapshot
  28. env: DRIVER_VERSION="1.9.0RC1"
  29. before_install:
  30. - composer require --ignore-platform-reqs --no-update mongodb/mongodb 1.8.0-RC1
  31. # Run tests with coverage
  32. - stage: test
  33. php: 7.3
  34. script:
  35. - vendor/bin/simple-phpunit --coverage-clover=coverage.clover
  36. after_script:
  37. - wget https://scrutinizer-ci.com/ocular.phar
  38. - php ocular.phar code-coverage:upload --format=php-clover coverage.clover
  39. # Test against legacy driver to ensure validity of the test suite
  40. - stage: Test
  41. dist: trusty
  42. php: 5.6
  43. env: DRIVER_VERSION="1.7.5" SYMFONY_DEPRECATIONS_HELPER=9999999
  44. before_install:
  45. - yes '' | pecl -q install -f mongo
  46. # Test against set of lowest dependencies
  47. - stage: Test
  48. dist: trusty
  49. php: 5.6
  50. env: DRIVER_VERSION="1.2.0" COMPOSER_FLAGS="--prefer-dist --prefer-lowest"
  51. addons:
  52. apt:
  53. sources:
  54. - sourceline: "deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse"
  55. key_url: "https://www.mongodb.org/static/pgp/server-3.0.asc"
  56. - "mongodb-upstart"
  57. packages: ['mongodb-org-server']
  58. - stage: Code Quality
  59. env: CODING_STANDARDS
  60. php: 7.2
  61. script:
  62. - ./vendor/bin/phpcs
  63. cache:
  64. directories:
  65. - $HOME/.composer/cache