109 lines
4.0 KiB
YAML
109 lines
4.0 KiB
YAML
## For full coverage, we'd have to test all supported Python, MongoDB, and
|
|
## PyMongo combinations. However, that would result in an overly long build
|
|
## with a very large number of jobs, hence we only test a subset of all the
|
|
## combinations.
|
|
## * Python3.7, MongoDB v3.4 & the latest PyMongo v3.x is currently the "main" setup,
|
|
## Other combinations are tested. See below for the details or check the travis jobs
|
|
#
|
|
## We should periodically check MongoDB Server versions supported by MongoDB
|
|
## Inc., add newly released versions to the test matrix, and remove versions
|
|
## which have reached their End of Life. See:
|
|
## 1. https://www.mongodb.com/support-policy.
|
|
## 2. https://docs.mongodb.com/ecosystem/drivers/driver-compatibility-reference/#python-driver-compatibility
|
|
##
|
|
## Reminder: Update README.rst if you change MongoDB versions we test.
|
|
#
|
|
#language: python
|
|
#dist: xenial
|
|
#python:
|
|
# - 3.6
|
|
# - 3.7
|
|
# - 3.8
|
|
# - 3.9
|
|
# - pypy3
|
|
#
|
|
#env:
|
|
# global:
|
|
# - MONGODB_3_4=3.4.19
|
|
# - MONGODB_3_6=3.6.13
|
|
# - MONGODB_4_0=4.0.13
|
|
#
|
|
# - PYMONGO_3_4=3.4
|
|
# - PYMONGO_3_6=3.6
|
|
# - PYMONGO_3_9=3.9
|
|
# - PYMONGO_3_11=3.11
|
|
#
|
|
# - MAIN_PYTHON_VERSION=3.7
|
|
# matrix:
|
|
# - MONGODB=${MONGODB_3_4} PYMONGO=${PYMONGO_3_11}
|
|
#
|
|
#matrix:
|
|
# # Finish the build as soon as one job fails
|
|
# fast_finish: true
|
|
#
|
|
# include:
|
|
# - python: 3.7
|
|
# env: MONGODB=${MONGODB_3_6} PYMONGO=${PYMONGO_3_6}
|
|
# - python: 3.7
|
|
# env: MONGODB=${MONGODB_3_6} PYMONGO=${PYMONGO_3_9}
|
|
# - python: 3.7
|
|
# env: MONGODB=${MONGODB_3_6} PYMONGO=${PYMONGO_3_11}
|
|
# - python: 3.8
|
|
# env: MONGODB=${MONGODB_4_0} PYMONGO=${PYMONGO_3_11}
|
|
#
|
|
#install:
|
|
# # Install Mongo
|
|
# - wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-${MONGODB}.tgz
|
|
# - tar xzf mongodb-linux-x86_64-${MONGODB}.tgz
|
|
# - ${PWD}/mongodb-linux-x86_64-${MONGODB}/bin/mongod --version
|
|
# # Install Python dependencies.
|
|
# - pip install --upgrade pip
|
|
# - pip install coveralls
|
|
# - pip install pre-commit
|
|
# - pip install tox
|
|
# # tox dryrun to setup the tox venv (we run a mock test).
|
|
# - tox -e $(echo py$TRAVIS_PYTHON_VERSION-mg$PYMONGO | tr -d . | sed -e 's/pypypy/pypy/') -- -a "-k=test_ci_placeholder"
|
|
#
|
|
#before_script:
|
|
# - mkdir ${PWD}/mongodb-linux-x86_64-${MONGODB}/data
|
|
# - ${PWD}/mongodb-linux-x86_64-${MONGODB}/bin/mongod --dbpath ${PWD}/mongodb-linux-x86_64-${MONGODB}/data --logpath ${PWD}/mongodb-linux-x86_64-${MONGODB}/mongodb.log --fork
|
|
# # Run pre-commit hooks (black, flake8, etc) on entire codebase
|
|
# - if [[ $TRAVIS_PYTHON_VERSION == $MAIN_PYTHON_VERSION ]]; then pre-commit run -a; else echo "pre-commit checks only runs on py37"; fi
|
|
# - mongo --eval 'db.version();' # Make sure mongo is awake
|
|
#
|
|
#script:
|
|
# - tox -e $(echo py$TRAVIS_PYTHON_VERSION-mg$PYMONGO | tr -d . | sed -e 's/pypypy/pypy/') -- -a "--cov=mongoengine"
|
|
#
|
|
#after_success:
|
|
# - if [[ $TRAVIS_PYTHON_VERSION == $MAIN_PYTHON_VERSION ]]; then coveralls --verbose; else echo "coveralls only sent for py37"; fi
|
|
#
|
|
#notifications:
|
|
# irc: irc.freenode.org#mongoengine
|
|
#
|
|
## Only run builds on the master branch and GitHub releases (tagged as vX.Y.Z)
|
|
#branches:
|
|
# # Only run builds on the master branch and GitHub releases (tagged as vX.Y.Z)
|
|
# only:
|
|
# - master
|
|
# - /^v.*$/
|
|
#
|
|
## Whenever a new release is created via GitHub, publish it on PyPI.
|
|
#deploy:
|
|
# provider: pypi
|
|
# user: the_drow
|
|
# password:
|
|
# secure: QMyatmWBnC6ZN3XLW2+fTBDU4LQcp1m/LjR2/0uamyeUzWKdlOoh/Wx5elOgLwt/8N9ppdPeG83ose1jOz69l5G0MUMjv8n/RIcMFSpCT59tGYqn3kh55b0cIZXFT9ar+5cxlif6a5rS72IHm5li7QQyxexJIII6Uxp0kpvUmek=
|
|
#
|
|
# # Create a source distribution and a pure python wheel for faster installs.
|
|
# distributions: "sdist bdist_wheel"
|
|
#
|
|
# # Only deploy on tagged commits (aka GitHub releases) and only for the parent
|
|
# # repo's builds running Python v3.7 along with PyMongo v3.x and MongoDB v3.4.
|
|
# # We run Travis against many different Python, PyMongo, and MongoDB versions
|
|
# # and we don't want the deploy to occur multiple times).
|
|
# on:
|
|
# tags: true
|
|
# repo: MongoEngine/mongoengine
|
|
# condition: ($PYMONGO = ${PYMONGO_3_11}) && ($MONGODB = ${MONGODB_3_4})
|
|
# python: 3.7
|