1
- #! /bin/sh
1
+ #! /bin/bash
2
2
set -o errexit # Exit the script with error if any of the commands fail
3
3
4
4
# Supported/used environment variables:
@@ -47,6 +47,9 @@ if [ "$SSL" != "nossl" ]; then
47
47
export CA_PEM=" $DRIVERS_TOOLS /.evergreen/x509gen/ca.pem"
48
48
fi
49
49
50
+ # For createvirtualenv.
51
+ . .evergreen/utils.sh
52
+
50
53
if [ -z " $PYTHON_BINARY " ]; then
51
54
VIRTUALENV=$( command -v virtualenv) || true
52
55
if [ -z " $VIRTUALENV " ]; then
@@ -109,6 +112,7 @@ if [ -n "$TEST_PYOPENSSL" ]; then
109
112
. pyopenssltest/bin/activate
110
113
fi
111
114
trap " deactivate; rm -rf pyopenssltest" EXIT HUP
115
+ PYTHON=python
112
116
113
117
IS_PYTHON_2=$( python -c " import sys; sys.stdout.write('1' if sys.version_info < (3,) else '0')" )
114
118
if [ $IS_PYTHON_2 = " 1" ]; then
@@ -125,6 +129,14 @@ if [ -n "$TEST_PYOPENSSL" ]; then
125
129
fi
126
130
127
131
if [ -n " $TEST_ENCRYPTION " ]; then
132
+ createvirtualenv $PYTHON venv-encryption
133
+ trap " deactivate; rm -rf venv-encryption" EXIT HUP
134
+ PYTHON=python
135
+
136
+ if [ " Windows_NT" = " $OS " ]; then # Magic variable in cygwin
137
+ $PYTHON -m pip install -U setuptools
138
+ fi
139
+
128
140
if [ -z " $LIBMONGOCRYPT_URL " ]; then
129
141
echo " Cannot test client side encryption without LIBMONGOCRYPT_URL!"
130
142
exit 1
@@ -152,13 +164,13 @@ if [ -n "$TEST_ENCRYPTION" ]; then
152
164
exit 1
153
165
fi
154
166
155
- git clone --branch master git@github.com:mongodb/libmongocrypt.git libmongocrypt_git
156
- $PYTHON -m pip install --upgrade ./libmongocrypt_git/bindings/python
157
- # TODO: use a virtualenv
158
- trap " $PYTHON -m pip uninstall -y pymongocrypt" EXIT HUP
159
- $PYTHON -c " import pymongocrypt; print('pymongocrypt version: '+pymongocrypt.__version__ )"
160
- $PYTHON -c " import pymongocrypt; print('libmongocrypt version: '+pymongocrypt.libmongocrypt_version()) "
161
- # PATH is set by PREPARE_SHELL.
167
+ # TODO: Test with 'pip install pymongocrypt'
168
+ git clone --branch master https://github.com/mongodb/libmongocrypt.git libmongocrypt_git
169
+ python -m pip install --upgrade ./libmongocrypt_git/bindings/python
170
+ python -c " import pymongocrypt; print(' pymongocrypt version: '+pymongocrypt.__version__) "
171
+ python -c " import pymongocrypt; print('libmongocrypt version: '+pymongocrypt.libmongocrypt_version() )"
172
+ # PATH is updated by PREPARE_SHELL for access to mongocryptd.
173
+
162
174
fi
163
175
164
176
PYTHON_IMPL=$( $PYTHON -c " import platform, sys; sys.stdout.write(platform.python_implementation())" )
0 commit comments