[Python-modules-commits] [python-motor] 01/09: Import python-motor_1.2.0.orig.tar.gz
Ondrej Novy
onovy at debian.org
Tue Jan 16 14:35:24 UTC 2018
This is an automated email from the git hooks/post-receive script.
onovy pushed a commit to branch master
in repository python-motor.
commit 0b0b62a9301f7bc1bb2017e9e2b308acbf952b62
Author: Ondřej Nový <onovy at debian.org>
Date: Tue Jan 16 13:33:45 2018 +0100
Import python-motor_1.2.0.orig.tar.gz
---
.evergreen/config.yml | 871 +++++++++++++++++++++
.evergreen/install-dependencies.sh | 19 +
.evergreen/run-enterprise-auth-tests.sh | 29 +
.evergreen/run-tox.sh | 28 +
.gitignore | 1 +
CONTRIBUTING.rst | 20 +-
README.rst | 9 +-
doc/api-asyncio/asyncio_motor_change_stream.rst | 7 +
doc/api-asyncio/index.rst | 1 +
doc/api-tornado/index.rst | 1 +
doc/api-tornado/motor_change_stream.rst | 7 +
doc/changelog.rst | 48 ++
doc/conf.py | 21 +-
doc/configuration.rst | 9 +
doc/developer-guide.rst | 12 +-
doc/docs-requirements.txt | 2 +
doc/examples/aiohttp_gridfs_example.py | 2 +
doc/examples/index.rst | 2 +
doc/examples/monitoring.rst | 91 +++
doc/examples/monitoring_example.py | 132 ++++
doc/examples/tailable-cursors.rst | 2 +-
doc/examples/tornado_change_stream_example.py | 110 +++
doc/examples/tornado_change_stream_example.rst | 54 ++
.../tornado_change_stream_templates/index.html | 51 ++
doc/index.rst | 1 +
doc/mongo_extensions.py | 14 +-
doc/motor_extensions.py | 35 +-
doc/pydoctheme/static/pydoctheme.css | 8 +
doc/requirements.rst | 79 +-
doc/tutorial-asyncio.rst | 6 +-
doc/tutorial-tornado.rst | 33 +-
motor/__init__.py | 16 +-
motor/{aiohttp.py => aiohttp/__init__.py} | 5 +-
motor/core.py | 383 +++++++--
motor/docstrings.py | 859 ++++++++++++++++++--
motor/frameworks/asyncio/__init__.py | 12 +-
motor/frameworks/tornado/__init__.py | 31 +-
motor/metaprogramming.py | 21 +-
motor/motor_asyncio.py | 12 +-
motor/motor_gridfs.py | 43 +-
motor/motor_py3_compat.py | 2 +-
motor/motor_tornado.py | 24 +-
setup.cfg | 2 +
setup.py | 70 +-
synchro/__init__.py | 39 +-
synchro/synchrotest.py | 76 +-
test/__init__.py | 32 +-
test/asyncio_tests/__init__.py | 27 +-
test/asyncio_tests/test_aiohttp_gridfs.py | 25 +-
test/asyncio_tests/test_asyncio_await.py | 17 +-
test/asyncio_tests/test_asyncio_change_stream.py | 140 ++++
test/asyncio_tests/test_asyncio_client.py | 45 +-
test/asyncio_tests/test_asyncio_collection.py | 54 +-
test/asyncio_tests/test_asyncio_cursor.py | 60 +-
test/asyncio_tests/test_asyncio_database.py | 11 +-
test/asyncio_tests/test_asyncio_gridfs.py | 2 +-
test/asyncio_tests/test_asyncio_ipv6.py | 5 +-
test/asyncio_tests/test_asyncio_session.py | 204 +++++
test/asyncio_tests/test_asyncio_ssl.py | 27 +-
test/test_environment.py | 145 ++--
test/tornado_tests/__init__.py | 89 +--
test/tornado_tests/test_motor_await.py | 5 +-
test/tornado_tests/test_motor_change_stream.py | 143 ++++
test/tornado_tests/test_motor_client.py | 54 +-
test/tornado_tests/test_motor_collection.py | 73 +-
test/tornado_tests/test_motor_core.py | 30 +-
test/tornado_tests/test_motor_cursor.py | 91 ++-
test/tornado_tests/test_motor_database.py | 22 +-
test/tornado_tests/test_motor_gen.py | 68 --
test/tornado_tests/test_motor_gridfs.py | 15 +-
test/tornado_tests/test_motor_ipv6.py | 5 +-
test/tornado_tests/test_motor_replica_set.py | 6 +-
test/tornado_tests/test_motor_session.py | 209 +++++
test/tornado_tests/test_motor_son_manipulator.py | 5 +-
test/tornado_tests/test_motor_ssl.py | 12 +-
test/tornado_tests/test_motor_web.py | 15 +-
test/tornado_tests/test_test.py | 51 --
test/utils.py | 37 +-
test/version.py | 108 ++-
tox.ini | 75 +-
80 files changed, 4111 insertions(+), 1096 deletions(-)
diff --git a/.evergreen/config.yml b/.evergreen/config.yml
new file mode 100644
index 0000000..aca6808
--- /dev/null
+++ b/.evergreen/config.yml
@@ -0,0 +1,871 @@
+########################################
+# Evergreen Template for MongoDB Drivers
+########################################
+
+# When a task that used to pass starts to fail
+# Go through all versions that may have been skipped to detect
+# when the task started failing
+stepback: true
+
+# Mark a failure as a system/bootstrap failure (purple box) rather then a task
+# failure by default.
+# Actual testing tasks are marked with `type: test`
+command_type: system
+
+# Protect ourself against rogue test case, or curl gone wild, that runs forever
+# Good rule of thumb: the averageish length a task takes, times 5
+# That roughly accounts for variable system performance for various buildvariants
+exec_timeout_secs: 1800 # 6 minutes is the longest we'll ever run
+
+# What to do when evergreen hits the timeout (`post:` tasks are run automatically)
+timeout:
+ - command: shell.exec
+ params:
+ script: |
+ ls -la
+
+functions:
+ "fetch source":
+ # Executes git clone and applies the submitted patch, if any
+ - command: git.get_project
+ params:
+ directory: "src"
+ # Make an evergreen exapanstion file with dynamic values
+ - command: shell.exec
+ params:
+ working_dir: "src"
+ script: |
+ # Get the current unique version of this checkout
+ if [ "${is_patch}" = "true" ]; then
+ CURRENT_VERSION=$(git describe)-patch-${version_id}
+ else
+ CURRENT_VERSION=latest
+ fi
+
+ export DRIVERS_TOOLS="$(pwd)/../drivers-tools"
+ export PROJECT_DIRECTORY="$(pwd)"
+
+ # Python has cygwin path problems on Windows. Detect prospective mongo-orchestration home directory
+ if [ "Windows_NT" = "$OS" ]; then # Magic variable in cygwin
+ export DRIVERS_TOOLS=$(cygpath -m $DRIVERS_TOOLS)
+ export PROJECT_DIRECTORY=$(cygpath -m $PROJECT_DIRECTORY)
+ fi
+
+ export MONGO_ORCHESTRATION_HOME="$DRIVERS_TOOLS/.evergreen/orchestration"
+ export MONGODB_BINARIES="$DRIVERS_TOOLS/mongodb/bin"
+ export UPLOAD_BUCKET="${project}"
+
+ cat <<EOT > expansion.yml
+ CURRENT_VERSION: "$CURRENT_VERSION"
+ DRIVERS_TOOLS: "$DRIVERS_TOOLS"
+ MONGO_ORCHESTRATION_HOME: "$MONGO_ORCHESTRATION_HOME"
+ MONGODB_BINARIES: "$MONGODB_BINARIES"
+ UPLOAD_BUCKET: "$UPLOAD_BUCKET"
+ PROJECT_DIRECTORY: "$PROJECT_DIRECTORY"
+ PREPARE_SHELL: |
+ set -o errexit
+ set -o xtrace
+ export DRIVERS_TOOLS="$DRIVERS_TOOLS"
+ export MONGO_ORCHESTRATION_HOME="$MONGO_ORCHESTRATION_HOME"
+ export MONGODB_BINARIES="$MONGODB_BINARIES"
+ export UPLOAD_BUCKET="$UPLOAD_BUCKET"
+ export PROJECT_DIRECTORY="$PROJECT_DIRECTORY"
+ export TMPDIR="$MONGO_ORCHESTRATION_HOME/db"
+ export PATH="$MONGODB_BINARIES:$PATH"
+ export PROJECT="${project}"
+ export ASYNC_TEST_TIMEOUT=30
+ EOT
+ # See what we've done
+ cat expansion.yml
+
+ # Load the expansion file to make an evergreen variable with the current unique version
+ - command: expansions.update
+ params:
+ file: src/expansion.yml
+
+ "prepare resources":
+ - command: shell.exec
+ params:
+ working_dir: "src"
+ script: |
+ ${PREPARE_SHELL}
+ rm -rf $DRIVERS_TOOLS
+ if [ "${project}" = "drivers-tools" ]; then
+ # If this was a patch build, doing a fresh clone would not actually test the patch
+ cp -R ${PROJECT_DIRECTORY}/ $DRIVERS_TOOLS
+ else
+ git clone git://github.com/mongodb-labs/drivers-evergreen-tools.git $DRIVERS_TOOLS
+ fi
+ echo "{ \"releases\": { \"default\": \"$MONGODB_BINARIES\" }}" > $MONGO_ORCHESTRATION_HOME/orchestration.config
+
+ "upload release":
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: ${project}.tar.gz
+ remote_file: ${UPLOAD_BUCKET}/${project}-${CURRENT_VERSION}.tar.gz
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|application/x-gzip}
+
+ # Upload build artifacts that other tasks may depend on
+ # Note this URL needs to be totally unique, while predictable for the next task
+ # so it can automatically download the artifacts
+ "upload build":
+ # Compress and upload the entire build directory
+ - command: archive.targz_pack
+ params:
+ # Example: mongo_c_driver_releng_9dfb7d741efbca16faa7859b9349d7a942273e43_16_11_08_19_29_52.tar.gz
+ target: "${build_id}.tar.gz"
+ source_dir: ${PROJECT_DIRECTORY}/
+ include:
+ - "./**"
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: ${build_id}.tar.gz
+ # Example: /mciuploads/${UPLOAD_BUCKET}/gcc49/9dfb7d741efbca16faa7859b9349d7a942273e43/debug-compile-nosasl-nossl/mongo_c_driver_releng_9dfb7d741efbca16faa7859b9349d7a942273e43_16_11_08_19_29_52.tar.gz
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${task_name}/${build_id}.tar.gz
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|application/x-gzip}
+
+ "fetch build":
+ - command: shell.exec
+ params:
+ continue_on_err: true
+ script: "set -o xtrace && rm -rf ${PROJECT_DIRECTORY}"
+ - command: s3.get
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${BUILD_NAME}/${build_id}.tar.gz
+ bucket: mciuploads
+ local_file: build.tar.gz
+ - command: shell.exec
+ params:
+ continue_on_err: true
+ # EVG-1105: Use s3.get extract_to: ./
+ script: "set -o xtrace && cd .. && rm -rf ${PROJECT_DIRECTORY} && mkdir ${PROJECT_DIRECTORY}/ && tar xf build.tar.gz -C ${PROJECT_DIRECTORY}/"
+
+ "exec compile script" :
+ - command: shell.exec
+ type: test
+ params:
+ working_dir: "src"
+ script: |
+ ${PREPARE_SHELL}
+ [ -f ${PROJECT_DIRECTORY}/${file} ] && BUILDTOOL="${buildtool}" sh ${PROJECT_DIRECTORY}/${file} || echo "${PROJECT_DIRECTORY}/${file} not available, skipping"
+
+ "exec script" :
+ - command: shell.exec
+ type: test
+ params:
+ working_dir: "src"
+ script: |
+ ${PREPARE_SHELL}
+ [ -f ${PROJECT_DIRECTORY}/${file} ] && sh ${PROJECT_DIRECTORY}/${file} || echo "${PROJECT_DIRECTORY}/${file} not available, skipping"
+
+ "upload docs" :
+ - command: shell.exec
+ params:
+ silent: true
+ script: |
+ export AWS_ACCESS_KEY_ID=${aws_key}
+ export AWS_SECRET_ACCESS_KEY=${aws_secret}
+ aws s3 cp ${PROJECT_DIRECTORY}/doc/html s3://mciuploads/${UPLOAD_BUCKET}/docs/${CURRENT_VERSION} --recursive --acl public-read --region us-east-1
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: ${PROJECT_DIRECTORY}/doc/html/index.html
+ remote_file: ${UPLOAD_BUCKET}/docs/${CURRENT_VERSION}/index.html
+ bucket: mciuploads
+ permissions: public-read
+ content_type: text/html
+ display_name: "Rendered docs"
+
+ "upload coverage" :
+ - command: shell.exec
+ params:
+ silent: true
+ script: |
+ export AWS_ACCESS_KEY_ID=${aws_key}
+ export AWS_SECRET_ACCESS_KEY=${aws_secret}
+ aws s3 cp ${PROJECT_DIRECTORY}/coverage s3://mciuploads/${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/coverage/ --recursive --acl public-read --region us-east-1
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: ${PROJECT_DIRECTORY}/coverage/index.html
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/coverage/index.html
+ bucket: mciuploads
+ permissions: public-read
+ content_type: text/html
+ display_name: "Coverage Report"
+
+ "upload scan artifacts" :
+ - command: shell.exec
+ type: test
+ params:
+ script: |
+ cd
+ if find ${PROJECT_DIRECTORY}/scan -name \*.html | grep -q html; then
+ (cd ${PROJECT_DIRECTORY}/scan && find . -name index.html -exec echo "<li><a href='{}'>{}</a></li>" \;) >> scan.html
+ else
+ echo "No issues found" > scan.html
+ fi
+ - command: shell.exec
+ params:
+ silent: true
+ script: |
+ export AWS_ACCESS_KEY_ID=${aws_key}
+ export AWS_SECRET_ACCESS_KEY=${aws_secret}
+ aws s3 cp ${PROJECT_DIRECTORY}/scan s3://mciuploads/${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/scan/ --recursive --acl public-read --region us-east-1
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: ${PROJECT_DIRECTORY}/scan.html
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/scan/index.html
+ bucket: mciuploads
+ permissions: public-read
+ content_type: text/html
+ display_name: "Scan Build Report"
+
+ "upload mo artifacts":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ find $MONGO_ORCHESTRATION_HOME -name \*.log | xargs tar czf mongodb-logs.tar.gz
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: mongodb-logs.tar.gz
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/logs/${task_id}-${execution}-mongodb-logs.tar.gz
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|application/x-gzip}
+ display_name: "mongodb-logs.tar.gz"
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: ${DRIVERS_TOOLS}/.evergreen/orchestration/server.log
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/logs/${task_id}-${execution}-orchestration.log
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|text/plain}
+ display_name: "orchestration.log"
+
+ "upload working dir":
+ - command: archive.targz_pack
+ params:
+ target: "working-dir.tar.gz"
+ source_dir: ${PROJECT_DIRECTORY}/
+ include:
+ - "./**"
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: working-dir.tar.gz
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/artifacts/${task_id}-${execution}-working-dir.tar.gz
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|application/x-gzip}
+ display_name: "working-dir.tar.gz"
+ - command: archive.targz_pack
+ params:
+ target: "drivers-dir.tar.gz"
+ source_dir: ${DRIVERS_TOOLS}
+ include:
+ - "./**"
+ exclude_files:
+ # Windows cannot read the mongod *.lock files because they are locked.
+ - "*.lock"
+ - command: s3.put
+ params:
+ aws_key: ${aws_key}
+ aws_secret: ${aws_secret}
+ local_file: drivers-dir.tar.gz
+ remote_file: ${UPLOAD_BUCKET}/${build_variant}/${revision}/${version_id}/${build_id}/artifacts/${task_id}-${execution}-drivers-dir.tar.gz
+ bucket: mciuploads
+ permissions: public-read
+ content_type: ${content_type|application/x-gzip}
+ display_name: "drivers-dir.tar.gz"
+
+ "upload test results":
+ - command: attach.results
+ params:
+ file_location: "${DRIVERS_TOOLS}/results.json"
+ - command: attach.xunit_results
+ params:
+ file: "src/xunit-results/TEST-*.xml"
+
+ "bootstrap mongo-orchestration":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ MONGODB_VERSION=${VERSION} TOPOLOGY=${TOPOLOGY} AUTH=${AUTH} SSL=${SSL} STORAGE_ENGINE=${STORAGE_ENGINE} sh ${DRIVERS_TOOLS}/.evergreen/run-orchestration.sh
+ # run-orchestration generates expansion file with the MONGODB_URI for the cluster
+ - command: expansions.update
+ params:
+ file: mo-expansion.yml
+
+ "stop mongo-orchestration":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ sh ${DRIVERS_TOOLS}/.evergreen/stop-orchestration.sh
+
+ "run tox":
+ - command: shell.exec
+ type: test
+ params:
+ working_dir: "src"
+ script: |
+ ${PREPARE_SHELL}
+ PYTHON_BINARY=${PYTHON_BINARY} TOX_BINARY=${TOX_BINARY} TOX_ENV=${TOX_ENV} AUTH=${AUTH} SSL=${SSL} sh ${PROJECT_DIRECTORY}/.evergreen/run-tox.sh
+
+ "run enterprise auth tests":
+ - command: shell.exec
+ type: test
+ params:
+ silent: true
+ working_dir: "src"
+ script: |
+ # DO NOT ECHO WITH XTRACE (which PREPARE_SHELL does)
+ PYTHON_BINARY=${PYTHON_BINARY} TOX_ENV=${TOX_ENV} SASL_HOST=${sasl_host} SASL_PORT=${sasl_port} SASL_USER=${sasl_user} SASL_PASS=${sasl_pass} SASL_DB=${sasl_db} PRINCIPAL=${principal} GSSAPI_DB=${gssapi_db} KEYTAB_BASE64=${keytab_base64} PROJECT_DIRECTORY=${PROJECT_DIRECTORY} sh ${PROJECT_DIRECTORY}/.evergreen/run-enterprise-auth-tests.sh
+
+ "cleanup":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ rm -rf $DRIVERS_TOOLS || true
+
+ "fix absolute paths":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ for filename in $(find ${DRIVERS_TOOLS} -name \*.json); do
+ perl -p -i -e "s|ABSOLUTE_PATH_REPLACEMENT_TOKEN|${DRIVERS_TOOLS}|g" $filename
+ done
+
+ "windows fix":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ for i in $(find ${DRIVERS_TOOLS}/.evergreen ${PROJECT_DIRECTORY}/.evergreen -name \*.sh); do
+ cat $i | tr -d '\r' > $i.new
+ mv $i.new $i
+ done
+ # Copy client certificate because symlinks do not work on Windows.
+ cp ${DRIVERS_TOOLS}/.evergreen/x509gen/client.pem ${MONGO_ORCHESTRATION_HOME}/lib/client.pem
+
+ "make files executable":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ for i in $(find ${DRIVERS_TOOLS}/.evergreen ${PROJECT_DIRECTORY}/.evergreen -name \*.sh); do
+ chmod +x $i
+ done
+
+ "init test-results":
+ - command: shell.exec
+ params:
+ script: |
+ ${PREPARE_SHELL}
+ echo '{"results": [{ "status": "FAIL", "test_file": "Build", "log_raw": "No test-results.json found was created" } ]}' > ${PROJECT_DIRECTORY}/test-results.json
+
+ "install dependencies":
+ - command: shell.exec
+ params:
+ working_dir: "src"
+ script: |
+ ${PREPARE_SHELL}
+ file="${PROJECT_DIRECTORY}/.evergreen/install-dependencies.sh"
+ # Don't use ${file} syntax here because evergreen treats it as an empty expansion.
+ [ -f "$file" ] && sh $file || echo "$file not available, skipping"
+
+pre:
+ - func: "fetch source"
+ - func: "prepare resources"
+ - func: "windows fix"
+ - func: "fix absolute paths"
+ - func: "init test-results"
+ - func: "make files executable"
+ - func: "install dependencies"
+
+post:
+ # Disabled, causing timeouts
+ # - func: "upload working dir"
+ - func: "upload mo artifacts"
+ - func: "upload test results"
+ - func: "stop mongo-orchestration"
+ - func: "cleanup"
+
+tasks:
+
+ # Wildcard task. Do you need to find out what tools are available and where?
+ # Throw it here, and execute this task on all buildvariants
+ - name: getdata
+ commands:
+ - command: shell.exec
+ type: test
+ params:
+ script: |
+ set -o xtrace
+ . ${DRIVERS_TOOLS}/.evergreen/download-mongodb.sh || true
+ get_distro || true
+ echo $DISTRO
+ echo $MARCH
+ echo $OS
+ uname -a || true
+ ls /etc/*release* || true
+ cc --version || true
+ gcc --version || true
+ clang --version || true
+ gcov --version || true
+ lcov --version || true
+ llvm-cov --version || true
+ echo $PATH
+ ls -la /usr/local/Cellar/llvm/*/bin/ || true
+ ls -la /usr/local/Cellar/ || true
+ scan-build --version || true
+ genhtml --version || true
+ valgrind --version || true
+
+# Standard test tasks {{{
+
+ - name: "test-2.6-standalone"
+ tags: ["2.6", "standalone"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "2.6"
+ TOPOLOGY: "server"
+ - func: "run tox"
+
+ - name: "test-2.6-replica_set"
+ tags: ["2.6", "replica_set"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "2.6"
+ TOPOLOGY: "replica_set"
+ - func: "run tox"
+
+ - name: "test-2.6-sharded_cluster"
+ tags: ["2.6", "sharded_cluster"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "2.6"
+ TOPOLOGY: "sharded_cluster"
+ - func: "run tox"
+
+ - name: "test-3.0-standalone"
+ tags: ["3.0", "standalone"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.0"
+ TOPOLOGY: "server"
+ - func: "run tox"
+
+ - name: "test-3.0-replica_set"
+ tags: ["3.0", "replica_set"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.0"
+ TOPOLOGY: "replica_set"
+ - func: "run tox"
+
+ - name: "test-3.0-sharded_cluster"
+ tags: ["3.0", "sharded_cluster"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.0"
+ TOPOLOGY: "sharded_cluster"
+ - func: "run tox"
+
+ - name: "test-3.2-standalone"
+ tags: ["3.2", "standalone"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.2"
+ TOPOLOGY: "server"
+ - func: "run tox"
+
+ - name: "test-3.2-replica_set"
+ tags: ["3.2", "replica_set"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.2"
+ TOPOLOGY: "replica_set"
+ - func: "run tox"
+
+ - name: "test-3.2-sharded_cluster"
+ tags: ["3.2", "sharded_cluster"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.2"
+ TOPOLOGY: "sharded_cluster"
+ - func: "run tox"
+
+ - name: "test-3.4-standalone"
+ tags: ["3.4", "standalone"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.4"
+ TOPOLOGY: "server"
+ - func: "run tox"
+
+ - name: "test-3.4-replica_set"
+ tags: ["3.4", "replica_set"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.4"
+ TOPOLOGY: "replica_set"
+ - func: "run tox"
+
+ - name: "test-3.4-sharded_cluster"
+ tags: ["3.4", "sharded_cluster"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.4"
+ TOPOLOGY: "sharded_cluster"
+ - func: "run tox"
+
+ - name: "test-3.6-standalone"
+ tags: ["3.6", "standalone"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.6"
+ TOPOLOGY: "server"
+ - func: "run tox"
+
+ - name: "test-3.6-replica_set"
+ tags: ["3.6", "replica_set"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.6"
+ TOPOLOGY: "replica_set"
+ - func: "run tox"
+
+ - name: "test-3.6-sharded_cluster"
+ tags: ["3.6", "sharded_cluster"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.6"
+ TOPOLOGY: "sharded_cluster"
+ - func: "run tox"
+
+ - name: "test-latest-standalone"
+ tags: ["latest", "standalone"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "latest"
+ TOPOLOGY: "server"
+ - func: "run tox"
+
+ - name: "test-latest-replica_set"
+ tags: ["latest", "replica_set"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "latest"
+ TOPOLOGY: "replica_set"
+ - func: "run tox"
+
+ - name: "test-latest-sharded_cluster"
+ tags: ["latest", "sharded_cluster"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "latest"
+ TOPOLOGY: "sharded_cluster"
+ - func: "run tox"
+
+ - name: "test-enterprise-auth"
+ tags: ["enterprise-auth"]
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "latest"
+ TOPOLOGY: "server"
+ - func: "run enterprise auth tests"
+
+ - name: "docs"
+ commands:
+ - func: "run tox"
+ vars:
+ TOX_ENV: py3-sphinx-docs
+
+ - name: "doctest"
+ commands:
+ - func: "bootstrap mongo-orchestration"
+ vars:
+ VERSION: "3.6"
+ TOPOLOGY: "server"
+ - func: "run tox"
+ vars:
+ TOX_ENV: py3-sphinx-doctest
+
+# }}}
+
+
+axes:
+ - id: versions
+ display_name: MongoDB Version
+ values:
+ - id: "latest"
+ display_name: "latest"
+ variables:
+ VERSION: "latest"
+ - id: "3.6"
+ display_name: "3.6"
+ variables:
+ VERSION: "3.6"
+ - id: "3.4"
+ display_name: "3.4"
+ variables:
+ VERSION: "3.4"
+ - id: "3.2"
+ display_name: "3.2"
+ variables:
+ VERSION: "3.2"
+ - id: "3.0"
+ display_name: "3.0"
+ variables:
+ VERSION: "3.0"
+ - id: "2.6"
+ display_name: "2.6"
+ variables:
+ VERSION: "2.6"
+
+ - id: topology
+ display_name: Topology
+ values:
+ - id: standalone
+ display_name: Standalone
+ variables:
+ TOPOLOGY: "server"
+ - id: replicaset
+ display_name: Replica Set
+ variables:
+ TOPOLOGY: "replica_set"
+ - id: sharded-cluster
+ display_name: Sharded Cluster
+ variables:
+ TOPOLOGY: "sharded_cluster"
+
+ - id: ssl
+ display_name: SSL
+ values:
+ - id: ssl
+ display_name: SSL
+ variables:
+ SSL: "ssl"
+ AUTH: "auth"
+ - id: nossl
+ display_name: NoSSL
+ variables:
+ SSL: "nossl"
+ AUTH: "noauth"
+
+ - id: tox-env
+ display_name: "Tox Env"
+ values:
+ # TODO: avoid repetition?
+ - id: "tornado4-py27"
+ variables:
+ TOX_ENV: "tornado4-py27"
+ PYTHON_BINARY: "/opt/python/2.7/bin/python"
+ - id: "tornado4-pypy"
+ variables:
+ TOX_ENV: "tornado4-pypy"
+ PYTHON_BINARY: "/opt/python/pypy/bin/pypy"
+ - id: "tornado4-pypy3"
+ variables:
+ TOX_ENV: "tornado4-pypy3"
+ PYTHON_BINARY: "/opt/python/pypy3.5/bin/pypy3"
+ - id: "tornado4-py34"
+ variables:
+ TOX_ENV: "tornado4-py34"
+ PYTHON_BINARY: "/opt/python/3.4/bin/python3"
+ - id: "tornado4-py35"
+ variables:
+ TOX_ENV: "tornado4-py35"
+ PYTHON_BINARY: "/opt/python/3.5/bin/python3"
+ - id: "tornado4-py36"
+ variables:
+ TOX_ENV: "tornado4-py36"
+ PYTHON_BINARY: "/opt/python/3.6/bin/python3"
+ - id: "tornado_git-py27"
+ variables:
+ TOX_ENV: "tornado_git-py27"
+ PYTHON_BINARY: "/opt/python/2.7/bin/python"
+ - id: "tornado_git-py34"
+ variables:
+ TOX_ENV: "tornado_git-py34"
+ PYTHON_BINARY: "/opt/python/3.4/bin/python3"
+ - id: "tornado_git-py35"
+ variables:
+ TOX_ENV: "tornado_git-py35"
+ PYTHON_BINARY: "/opt/python/3.5/bin/python3"
+ - id: "tornado_git-py36"
+ variables:
+ TOX_ENV: "tornado_git-py36"
+ PYTHON_BINARY: "/opt/python/3.6/bin/python3"
+ - id: "asyncio-py34"
+ variables:
+ TOX_ENV: "asyncio-py34"
+ PYTHON_BINARY: "/opt/python/3.4/bin/python3"
+ - id: "asyncio-py35"
+ variables:
+ TOX_ENV: "asyncio-py35"
+ PYTHON_BINARY: "/opt/python/3.5/bin/python3"
+ - id: "asyncio-py36"
+ variables:
+ TOX_ENV: "asyncio-py36"
+ PYTHON_BINARY: "/opt/python/3.6/bin/python3"
+ - id: "py3-pymongo-master"
+ variables:
+ TOX_ENV: "py3-pymongo-master"
+ PYTHON_BINARY: "/opt/python/3.6/bin/python3"
+ - id: "synchro"
+ variables:
+ TOX_ENV: "synchro"
+ # The synchro tests are configured for py27 in tox.ini.
+ PYTHON_BINARY: "/opt/python/2.7/bin/python"
+
+ - id: tox-env-osx
+ display_name: "Tox Env OSX"
+ values:
+ - id: "tornado4-py27"
+ variables:
+ TOX_ENV: "tornado4-py27"
+ PYTHON_BINARY: "python2.7"
+ - id: "tornado_git-py27"
+ variables:
+ TOX_ENV: "tornado_git-py27"
+ PYTHON_BINARY: "python2.7"
+# TODO: Reenable once we've diagnosed why this hangs, MOTOR-178
+# Also reenable the exclude_spec in the "test-mongodb-versions-macos" matrix
+# - id: "synchro"
+# variables:
+# TOX_ENV: "synchro"
+# # The synchro tests are configured for py27 in tox.ini.
+# PYTHON_BINARY: "python2.7"
+
+ - id: os
+ display_name: "Operating System"
+ values:
+ - id: "rhel"
+ display_name: "RHEL 6.2"
+ run_on: "rhel62-small"
+ variables:
+ TOX_BINARY: "/opt/python/3.6/bin/tox"
+ - id: "osx"
+ display_name: "OSX 10.10"
+ run_on: "macos-1012"
+ variables:
+ TOX_BINARY: "tox"
+
+buildvariants:
+
+- matrix_name: "test-mongodb-versions"
+ matrix_spec: {"os": "rhel", "tox-env": "*", ssl: "*"}
+ exclude_spec:
+ # TODO: synchro needs PyMongo master's updated SSL test certs,
+ # which may require Motor test suite changes.
+ - os: "*"
+ tox-env: ["synchro"]
+ ssl: "ssl"
+ display_name: "${os} ${tox-env} ${ssl}"
+ tasks:
+ - ".latest"
+ - ".3.6"
+ - ".3.4"
+ - ".3.2"
+ - ".3.0"
+ - ".2.6"
+
+- matrix_name: "enterprise-auth"
+ matrix_spec: {"tox-env": ["synchro"], ssl: "ssl"}
+ display_name: "Enterprise Auth"
+ run_on:
+ - rhel62-small
+ tasks:
+ - name: "test-enterprise-auth"
+
+- name: "docs"
+ display_name: "Docs - Build"
+ run_on:
+ - rhel62-small
+ expansions:
+ TOX_ENV: "py3-sphinx-docs"
+ TOX_BINARY: "/opt/python/3.6/bin/tox"
+ PYTHON_BINARY: "/opt/python/3.6/bin/python3"
+ tasks:
+ - name: "docs"
+
+- name: "doctests"
+ display_name: "Docs - Test"
+ run_on:
+ - rhel62-small
+ expansions:
+ TOX_ENV: "py3-sphinx-doctest"
+ TOX_BINARY: "/opt/python/3.6/bin/tox"
+ PYTHON_BINARY: "/opt/python/3.6/bin/python3"
+ tasks:
+ - name: "doctest"
+
+- matrix_name: "test-mongodb-versions-macos"
+ matrix_spec: {"os": "osx", "tox-env-osx": "*", ssl: "*"}
+# exclude_spec:
+# # TODO: synchro needs PyMongo master's updated SSL test certs,
+# # which may require Motor test suite changes.
+# - os: "*"
+# tox-env-osx: ["synchro"]
+# ssl: "ssl"
+ display_name: "${os} ${tox-env-osx} ${ssl}"
+ tasks:
+ - ".latest"
+ - ".3.6"
+ - ".3.4"
+ - ".3.2"
+ rules:
+ # There are no builds of MongoDB <= 3.0 with SSL for macOS
+ - if:
+ os: "*"
+ tox-env-osx: "*"
+ ssl: "nossl"
+ then:
+ add_tasks:
+ - ".3.0"
+ - ".2.6"
diff --git a/.evergreen/install-dependencies.sh b/.evergreen/install-dependencies.sh
new file mode 100644
index 0000000..8318d74
--- /dev/null
+++ b/.evergreen/install-dependencies.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+set -o xtrace # Write all commands first to stderr
+set -o errexit # Exit the script with error if any of the commands fail
+
+# Copy Motor's test certificates over driver-evergreen-tools'
+cp ${PROJECT_DIRECTORY}/test/certificates/* ${DRIVERS_TOOLS}/.evergreen/x509gen/
+
+# Replace MongoOrchestration's client certificate.
+cp ${PROJECT_DIRECTORY}/test/certificates/client.pem ${MONGO_ORCHESTRATION_HOME}/lib/client.pem
+
+if [ -w /etc/hosts ]; then
+ SUDO=""
+else
+ SUDO="sudo"
+fi
+
+# Add 'server' and 'hostname_not_in_cert' as a hostnames
+echo "127.0.0.1 server" | $SUDO tee -a /etc/hosts
+echo "127.0.0.1 hostname_not_in_cert" | $SUDO tee -a /etc/hosts
diff --git a/.evergreen/run-enterprise-auth-tests.sh b/.evergreen/run-enterprise-auth-tests.sh
new file mode 100644
index 0000000..dd95671
--- /dev/null
+++ b/.evergreen/run-enterprise-auth-tests.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+# Don't trace to avoid secrets showing up in the logs
+set -o errexit
... 6762 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-motor.git
More information about the Python-modules-commits
mailing list