pax_global_header 0000666 0000000 0000000 00000000064 13226174053 0014515 g ustar 00root root 0000000 0000000 52 comment=d4adb474ed4e7d8366236e806ebbb1e031255c6d
libmongoc-1.9.2+dfsg/ 0000775 0000000 0000000 00000000000 13226174053 0014416 5 ustar 00root root 0000000 0000000 libmongoc-1.9.2+dfsg/.clang-format 0000664 0000000 0000000 00000002010 13226174053 0016762 0 ustar 00root root 0000000 0000000 ---
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: 'false'
AlignConsecutiveDeclarations: 'false'
AlignEscapedNewlinesLeft: 'true'
AllowAllParametersOfDeclarationOnNextLine: 'true'
AllowShortBlocksOnASingleLine: 'false'
AllowShortCaseLabelsOnASingleLine: 'false'
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: 'false'
AllowShortLoopsOnASingleLine: 'false'
AlwaysBreakAfterReturnType: All
BinPackArguments: 'false'
BinPackParameters: 'false'
BreakBeforeBraces: Linux
ColumnLimit: '80'
ContinuationIndentWidth: '3'
IndentCaseLabels: 'false'
IndentWidth: '3'
KeepEmptyLinesAtTheStartOfBlocks: 'false'
Language: Cpp
MaxEmptyLinesToKeep: '2'
SortIncludes: 'false'
SpaceAfterCStyleCast: 'true'
SpaceBeforeAssignmentOperators: 'true'
SpaceBeforeParens: Always
SpaceInEmptyParentheses: 'false'
SpacesInAngles: 'false'
SpacesInCStyleCastParentheses: 'false'
SpacesInContainerLiterals: 'true'
SpacesInParentheses: 'false'
SpacesInSquareBrackets: 'false'
Standard: Cpp11
TabWidth: '3'
UseTab: Never
...
libmongoc-1.9.2+dfsg/.evergreen/ 0000775 0000000 0000000 00000000000 13226174053 0016456 5 ustar 00root root 0000000 0000000 libmongoc-1.9.2+dfsg/.evergreen/benchmark.yml 0000664 0000000 0000000 00000015623 13226174053 0021142 0 ustar 00root root 0000000 0000000 #######################################
# C Benchmark Tests #
#######################################
#######################################
# Variables #
#######################################
c_driver_variables:
## Task list
benchmark_compile: &benchmark_compile
- name: "compile"
benchmark_test_list: &benchmark_tests
- name: "BenchMarkTests"
## Common download urls (merge in as hashes)
mongo_download_url_prefixes:
mongo_v32: &mongo_v32
mongo_url: "https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.10.tgz"
## Common sets of CFLAGS
cflags:
standard: &cflags_64
cflags: "-m64 -march=x86-64"
## Scripts that are shared between buildvariants
scripts:
compile:
unix: &compile_unix
compile_script: |
set -o errexit
set -o verbose
./autogen.sh --prefix=`pwd`/mongoc
make -j8
make install
git clone https://github.com/mongodb/mongo-c-driver-performance.git
cd mongo-c-driver-performance
PKG_CONFIG_PATH=../mongoc/lib/pkgconfig /opt/cmake/bin/cmake .
make
mongodb:
start_mongod_command: &start_mongod_command
start_mongod: |
set -o errexit
set -o verbose
mkdir db
echo "Starting Mongodb"
./mongodb/bin/mongod --dbpath `pwd`/db --logpath `pwd`/db/db.log --fork
benchmark_common: &benchmark_common
<<: *compile_unix
<<: *start_mongod_command
#######################################
# Functions #
#######################################
functions:
"compile function" :
command: shell.exec
params:
working_dir: "mongo-c-driver"
script: |
export PATH=${extra_path}:$PATH
export CFLAGS="${cflags}"
${compile_script}
"fetch source" :
command: git.get_project
params:
directory: "mongo-c-driver"
"fetch artifacts" :
command: shell.exec
params:
working_dir: "mongo-c-driver"
script: |
set -o verbose
set -o errexit
rm -rf mongo-c-driver*
curl --retry 5 http://s3.amazonaws.com/mciuploads/mongo-c-driver/c-driver-benchmark-compile/${revision}/artifacts/c-perf-binaries.tar.gz -o c-perf-binaries.tar.gz --silent --max-time 120
${decompress} c-perf-binaries.tar.gz
rm c-perf-binaries.tar.gz
"fetch mongodb" :
command: shell.exec
params:
working_dir: "mongo-c-driver"
script: |
set -o verbose
set -o errexit
curl --retry 5 -s ${mongo_url} --output mongo-archive.${ext|tgz}
${decompress} mongo-archive.${ext|tgz}
mv mongodb* mongodb
chmod +x ./mongodb/bin/mongod${extension}
"fetch driver test data" :
command: shell.exec
params:
working_dir: "mongo-c-driver"
script: |
set -o verbose
set -o errexit
curl --retry 5 https://s3.amazonaws.com/boxes.10gen.com/build/driver-test-data.tar.gz -o driver-test-data.tar.gz --silent --max-time 120
${decompress} driver-test-data.tar.gz
"run benchmark tests" :
command: shell.exec
params:
working_dir: "mongo-c-driver"
script: |
set -o errexit
set -o verbose
result=-1 # Negative one.
# Run this function on exit.
done=false
finish () {
set +o errexit
if [ "$done" = false ]; then
# There was an error.
echo "something went wrong, killing mongod and exiting"
killall -9 mongod
fi
exit $result
}
trap finish EXIT
echo "Starting mongod"
${start_mongod}
sleep 15
echo "Running Benchmark tests "
start_time=$(date +%s)
LD_LIBRARY_PATH=`pwd`/.libs:`pwd`/mongoc/lib:$LD_LIBRARY_PATH ./mongo-c-driver-performance/mongo-c-performance ./data
set +o errexit
result=$?
cat results.json
result=$?
end_time=$(date +%s)
elapsed_secs=$((end_time-start_time))
if [ $result -eq 0 ]; then
status='"pass"'
failures=0
else
status='"fail"'
failures=1
fi
echo "{\"failures\": $failures, \"results\": [{\"status\": $status, \"exit_code\": $result, \"test_file\": \"BenchMarkTests\", \"start\": $start_time, \"end\": $end_time, \"elapsed\": $elapsed_secs}]}" > report.json
cat report.json
set +o errexit
killall -9 mongod
done=true
exit $result
"attach benchmark test results" :
command: attach.results
params:
file_location: mongo-c-driver/report.json
"send dashboard data" :
command: json.send
params:
name: perf
file: mongo-c-driver/results.json
pre:
# Remove and recreate old directory
- command: shell.exec
params:
script: |
rm -rf mongo-c-driver
mkdir mongo-c-driver
post:
# Remove and recreate old directory
- command: shell.exec
params:
script: |
rm -rf mongo-c-driver
mkdir mongo-c-driver
#######################################
# Tasks #
#######################################
tasks:
- name: compile
commands:
- func: "fetch source"
- command: git.apply_patch
params:
directory: "mongo-c-driver"
- func: "compile function"
- command: shell.exec
params:
working_dir: "mongo-c-driver"
script: |
set -o errexit
set -o verbose
tar czf ../mongo-c-driver.tar.gz .
- command: s3.put
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
local_file: mongo-c-driver.tar.gz
remote_file: mongo-c-driver/${build_variant}/${revision}/artifacts/c-perf-binaries.tar.gz
bucket: mciuploads
permissions: public-read
content_type: ${content_type|application/x-gzip}
- name: BenchMarkTests
depends_on:
- variant: c-driver-benchmark-compile
name: compile
commands:
- func: "fetch artifacts"
- func: "fetch mongodb"
- func: "fetch driver test data"
- func: "run benchmark tests"
- func: "attach benchmark test results"
- func: "send dashboard data"
#######################################
# Buildvariants #
#######################################
buildvariants:
- name: c-driver-benchmark-compile
display_name: "C Driver Benchmark Compile"
expansions:
<<: *cflags_64
<<: *mongo_v32
<<: *benchmark_common
run_on:
- rhel62-small
tasks: *benchmark_compile
- name: c-driver-benchmark-mongo32
display_name: "C Driver Benchmark Mongo 3.2"
expansions:
<<: *cflags_64
<<: *mongo_v32
<<: *benchmark_common
run_on:
- centos6-perf
tasks: *benchmark_tests
libmongoc-1.9.2+dfsg/.evergreen/check-installed-files.bat 0000664 0000000 0000000 00000002610 13226174053 0023277 0 ustar 00root root 0000000 0000000 rem Validations shared by link-sample-program-msvc.bat and
rem link-sample-program-mingw.bat
rem Notice that the dll goes in "bin".
set DLL=%INSTALL_DIR%\bin\libmongoc-1.0.dll
if not exist %DLL% (
echo %DLL% is missing!
exit /B 1
)
if not exist %INSTALL_DIR%\lib\pkgconfig\libmongoc-1.0.pc (
echo libmongoc-1.0.pc missing!
exit /B 1
) else (
echo libmongoc-1.0.pc check ok
)
if not exist %INSTALL_DIR%\lib\cmake\libmongoc-1.0\libmongoc-1.0-config.cmake (
echo libmongoc-1.0-config.cmake missing!
exit /B 1
) else (
echo libmongoc-1.0-config.cmake check ok
)
if not exist %INSTALL_DIR%\lib\cmake\libmongoc-1.0\libmongoc-1.0-config-version.cmake (
echo libmongoc-1.0-config-version.cmake missing!
exit /B 1
) else (
echo libmongoc-1.0-config-version.cmake check ok
)
if not exist %INSTALL_DIR%\lib\pkgconfig\libmongoc-static-1.0.pc (
echo libmongoc-static-1.0.pc missing!
exit /B 1
) else (
echo libmongoc-static-1.0.pc check ok
)
if not exist %INSTALL_DIR%\lib\cmake\libmongoc-static-1.0\libmongoc-static-1.0-config.cmake (
echo libmongoc-static-1.0-config.cmake missing!
exit /B 1
) else (
echo libmongoc-static-1.0-config.cmake check ok
)
if not exist %INSTALL_DIR%\lib\cmake\libmongoc-static-1.0\libmongoc-static-1.0-config-version.cmake (
echo libmongoc-static-1.0-config-version.cmake missing!
exit /B 1
) else (
echo libmongoc-static-1.0-config-version.cmake check ok
)
libmongoc-1.9.2+dfsg/.evergreen/check-release-archive.sh 0000664 0000000 0000000 00000003650 13226174053 0023130 0 ustar 00root root 0000000 0000000 #!/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
# Check that a CLion user didn't accidentally convert NEWS from UTF-8 to ASCII
news_type=`file NEWS`
echo "NEWS file type is $news_type"
case "$news_type" in
*ASCII*) exit 1 ;;
esac
# Use modern sphinx-build from venv.
. venv/bin/activate
which sphinx-build
sphinx-build --version
./autogen.sh --enable-html-docs --enable-man-pages --with-snappy=auto --with-zlib=bundled --with-libbson=bundled
make distcheck
# Check that docs were included, but sphinx temp files weren't.
tarfile=mongo-c-driver-*.tar.gz
docs='mongo-c-driver-*/doc/html/index.html mongo-c-driver-*/doc/man/mongoc_client_t.3'
tmpfiles='mongo-c-driver-*/doc/html/.doctrees \
mongo-c-driver-*/doc/html/.buildinfo \
mongo-c-driver-*/doc/man/.doctrees \
mongo-c-driver-*/doc/man/.buildinfo'
echo "Checking for built docs"
for doc in $docs; do
# Check this doc is in the archive.
tar --wildcards -tzf $tarfile $doc
done
echo "Checking that temp files are not included in tarball"
for tmpfile in $tmpfiles; do
# Check this temp file doesn't exist.
if tar --wildcards -tzf $tarfile $tmpfile > /dev/null 2>&1; then
echo "Found temp file in archive: $tmpfile"
exit 1
fi
done
echo "Checking that index.3 wasn't built"
if tar --wildcards -tzf $tarfile 'mongo-c-driver-*/doc/man/index.3' > /dev/null 2>&1; then
echo "Found index.3 in archive"
exit 1
fi
echo "Checking that all C files are included in tarball"
# Check that all C files were included.
TAR_CFILES=`tar --wildcards -tf mongo-c-driver-*.tar.gz 'mongo-c-driver-*/src/mongoc/*.c' | cut -d / -f 4 | sort`
SRC_CFILES=`echo src/mongoc/*.c | xargs -n 1 | cut -d / -f 3 | sort`
if [ "$TAR_CFILES" != "$SRC_CFILES" ]; then
echo "Not all C files are in the release archive"
echo $TAR_CFILES > tar_cfiles.txt
echo $SRC_CFILES | diff -y - tar_cfiles.txt
fi
libmongoc-1.9.2+dfsg/.evergreen/compile-unix.sh 0000775 0000000 0000000 00000017236 13226174053 0021437 0 ustar 00root root 0000000 0000000 #!/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
# Supported/used environment variables:
# CFLAGS Additional compiler flags
# MARCH Machine Architecture. Defaults to lowercase uname -m
# RELEASE Use the fully qualified release archive
# DEBUG Use debug configure flags
# VALGRIND Run the test suite through valgrind
# CC Which compiler to use
# ANALYZE Run the build through clangs scan-build
# COVERAGE Produce code coverage reports
# LIBBSON Build against bundled or external libbson
# EXTRA_CONFIGURE_FLAGS Extra configure flags to use
RELEASE=${RELEASE:-no}
DEBUG=${DEBUG:-no}
VALGRIND=${VALGRIND:-no}
ANALYZE=${ANALYZE:-no}
COVERAGE=${COVERAGE:-no}
SASL=${SASL:-no}
SSL=${SSL:-no}
SNAPPY=${SNAPPY:-auto}
ZLIB=${ZLIB:-bundled}
INSTALL_DIR=$(pwd)/install-dir
echo "CFLAGS: $CFLAGS"
echo "MARCH: $MARCH"
echo "RELEASE: $RELEASE"
echo "DEBUG: $DEBUG"
echo "VALGRIND: $VALGRIND"
echo "CC: $CC"
echo "ANALYZE: $ANALYZE"
echo "COVERAGE: $COVERAGE"
# Get the kernel name, lowercased
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
echo "OS: $OS"
# Automatically retrieve the machine architecture, lowercase, unless provided
# as an environment variable (e.g. to force 32bit)
[ -z "$MARCH" ] && MARCH=$(uname -m | tr '[:upper:]' '[:lower:]')
# Default configure flags for debug builds and release builds
DEBUG_FLAGS="\
--enable-html-docs=no \
--enable-man-pages=no \
--enable-optimizations=no \
--enable-extra-align=no \
--enable-maintainer-flags \
--enable-debug \
--disable-silent-rules \
--disable-automatic-init-and-cleanup \
--prefix=$INSTALL_DIR \
"
RELEASE_FLAGS="\
--enable-man-pages=no \
--enable-html-docs=no \
--enable-extra-align=no \
--enable-optimizations \
--disable-automatic-init-and-cleanup \
--prefix=$INSTALL_DIR \
"
if [ "$LIBBSON" = "external" ]; then
RELEASE_FLAGS="$RELEASE_FLAGS --with-libbson=system"
DEBUG_FLAGS="$DEBUG_FLAGS --with-libbson=system"
else
RELEASE_FLAGS="$RELEASE_FLAGS --with-libbson=bundled"
DEBUG_FLAGS="$DEBUG_FLAGS --with-libbson=bundled"
fi
if [ ! -z "$ZLIB" ]; then
RELEASE_FLAGS="$RELEASE_FLAGS --with-zlib=${ZLIB}"
DEBUG_FLAGS="$DEBUG_FLAGS --with-zlib=${ZLIB}"
fi
if [ ! -z "$SNAPPY" ]; then
RELEASE_FLAGS="$RELEASE_FLAGS --with-snappy=${SNAPPY}"
DEBUG_FLAGS="$DEBUG_FLAGS --with-snappy=${SNAPPY}"
fi
# By default we build from git clone, which requires autotools
# This gets overwritten if we detect we should use the release archive
CONFIGURE_SCRIPT="./autogen.sh"
# --strip-components is an GNU tar extension. Check if the platform
# has GNU tar installed as `gtar`, otherwise we assume to be on
# platform that supports it
# command -v returns success error code if found and prints the path to it
if command -v gtar 2>/dev/null; then
TAR=gtar
else
TAR=tar
fi
# Available on our Ubuntu 16.04 images
[ "$ANALYZE" = "yes" ] && SCAN_BUILD="scan-build -o scan --status-bugs"
[ "$DEBUG" = "yes" ] && CONFIGURE_FLAGS=$DEBUG_FLAGS || CONFIGURE_FLAGS=$RELEASE_FLAGS
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-sasl=${SASL}"
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-ssl=${SSL}"
[ "$COVERAGE" = "yes" ] && CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-coverage --disable-examples"
[ "$VALGRIND" = "yes" ] && TARGET="valgrind" || TARGET="test"
if [ "$RELEASE" = "yes" ]; then
# Build from the release tarball.
mkdir build-dir
$TAR xf ../mongoc.tar.gz -C build-dir --strip-components=1
cd build-dir
CONFIGURE_SCRIPT="./configure"
fi
#if ldconfig -N -v 2>/dev/null | grep -q libSegFault.so; then
#export SEGFAULT_SIGNALS="all"
#export LD_PRELOAD="libSegFault.so"
#fi
# UndefinedBehaviorSanitizer configuration
UBSAN_OPTIONS="print_stacktrace=1 abort_on_error=1"
# AddressSanitizer configuration
ASAN_OPTIONS="detect_leaks=1 abort_on_error=1"
# LeakSanitizer configuration
LSAN_OPTIONS="log_pointers=true"
case "$MARCH" in
i386)
CFLAGS="$CFLAGS -m32 -march=i386"
CXXFLAGS="$CXXFLAGS -m32 -march=i386"
CONFIGURE_FLAGS="$CONFIGURE_FLAGS --with-snappy=auto --with-zlib=bundled"
;;
s390x)
CFLAGS="$CFLAGS -march=z196 -mtune=zEC12"
CXXFLAGS="$CXXFLAGS -march=z196 -mtune=zEC12"
;;
x86_64)
CFLAGS="$CFLAGS -m64 -march=x86-64"
CXXFLAGS="$CXXFLAGS -m64 -march=x86-64"
;;
ppc64le)
CFLAGS="$CFLAGS -mcpu=power8 -mtune=power8 -mcmodel=medium"
CXXFLAGS="$CXXFLAGS -mcpu=power8 -mtune=power8 -mcmodel=medium"
;;
esac
CFLAGS="$CFLAGS -Werror"
case "$OS" in
darwin)
CFLAGS="$CFLAGS -Wno-unknown-pragmas"
export DYLD_LIBRARY_PATH=".libs:src/libbson/.libs:$LD_LIBRARY_PATH"
# llvm-cov is installed from brew
export PATH=$PATH:/usr/local/opt/llvm/bin
;;
linux)
# Make linux builds a tad faster by parallelise the build
cpus=$(grep -c '^processor' /proc/cpuinfo)
MAKEFLAGS="-j${cpus}"
export LD_LIBRARY_PATH=".libs:src/libbson/.libs:$LD_LIBRARY_PATH"
;;
esac
case "$CC" in
clang)
CXX=clang++
;;
gcc)
CXX=g++
;;
esac
CONFIGURE_FLAGS="$CONFIGURE_FLAGS $EXTRA_CONFIGURE_FLAGS"
export MONGOC_TEST_FUTURE_TIMEOUT_MS=30000
export MONGOC_TEST_SKIP_LIVE=on
export MONGOC_TEST_SKIP_SLOW=on
export CFLAGS="$CFLAGS"
export CXXFLAGS="$CXXFLAGS"
export CC="$CC"
export CXX="$CXX"
if [ "$LIBBSON" = "external" ]; then
# This usually happens in mongoc ./autogen.sh, but since we are compiling against
# external libbson we need to install libbson before running mongoc ./autogen.sh
git submodule update --init
cd src/libbson
./autogen.sh $CONFIGURE_FLAGS
make all
make install
cd ../../
fi
export PKG_CONFIG_PATH=$INSTALL_DIR/lib/pkgconfig:$PKG_CONFIG_PATH
export PATH=$INSTALL_DIR/bin:$PATH
echo "OpenSSL Version:"
pkg-config --modversion libssl || true
$SCAN_BUILD $CONFIGURE_SCRIPT $CONFIGURE_FLAGS
# This needs to be exported _after_ running autogen as the $CONFIGURE_SCRIPT might
# use git to fetch the submodules, which uses libcurl which is linked against
# the system openssl which isn't abi compatible with our custom openssl/libressl
export LD_LIBRARY_PATH=$EXTRA_LIB_PATH:$LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=$EXTRA_LIB_PATH:$DYLD_LIBRARY_PATH
openssl version
if [ -n "$SSL_VERSION" ]; then
openssl version | grep -q $SSL_VERSION
fi
# This should fail when using fips capable OpenSSL when fips mode is enabled
openssl md5 README.rst || true
$SCAN_BUILD make all
ulimit -c unlimited || true
# Write stderr to error.log and to console.
mkfifo pipe || true
if [ -e pipe ]; then
tee error.log < pipe &
$SCAN_BUILD make $TARGET TEST_ARGS="-d -F test-results.json" 2>pipe
rm pipe
else
$SCAN_BUILD make $TARGET TEST_ARGS="-d -F test-results.json"
fi
# Check if the error.log exists, and is more than 0 byte
if [ -s error.log ]; then
cat error.log
if [ "$CHECK_LOG" = "yes" ]; then
# Ignore ar(1) warnings, and check the log again
grep -v "^ar: " error.log > log.log
if [ -s log.log ]; then
cat error.log
# Mark build as failed if there is unknown things in the log
exit 2
fi
fi
fi
if [ "$COVERAGE" = "yes" ]; then
case "$CC" in
clang)
lcov --gcov-tool `pwd`/.evergreen/llvm-gcov.sh --capture --derive-func-data --directory . --output-file .coverage.lcov --no-external
;;
*)
lcov --gcov-tool gcov --capture --derive-func-data --directory . --output-file .coverage.lcov --no-external
;;
esac
genhtml .coverage.lcov --legend --title "mongoc code coverage" --output-directory coverage
fi
libmongoc-1.9.2+dfsg/.evergreen/compile-windows-mingw.bat 0000664 0000000 0000000 00000001574 13226174053 0023414 0 ustar 00root root 0000000 0000000 rem Ensure Cygwin executables like sh.exe are not in PATH
set PATH=C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson
echo CONFIGURE_FLAGS %CONFIGURE_FLAGS%
set CMAKE=C:\cmake\bin\cmake
set CMAKE_MAKE_PROGRAM=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\mingw32-make.exe
set CC=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\gcc.exe
cd src\libbson
%CMAKE% -G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM=%CMAKE_MAKE_PROGRAM% %CONFIGURE_FLAGS%
%CMAKE_MAKE_PROGRAM%
%CMAKE_MAKE_PROGRAM% install
cd ..\..
%CMAKE% -G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM=%CMAKE_MAKE_PROGRAM% -DCMAKE_PREFIX_PATH=%INSTALL_DIR%\lib\cmake -DCMAKE_C_FLAGS="-std=c99 -pedantic" %CONFIGURE_FLAGS%
%CMAKE_MAKE_PROGRAM%
%CMAKE_MAKE_PROGRAM% install
set MONGOC_TEST_SKIP_LIVE=on
test-libmongoc.exe --no-fork -d -F test-results.json
libmongoc-1.9.2+dfsg/.evergreen/compile-windows.sh 0000775 0000000 0000000 00000010544 13226174053 0022141 0 ustar 00root root 0000000 0000000 #!/bin/sh
set -o igncr # Ignore CR in this script
set -o xtrace # Write all commands first to stderr
set -o errexit # Exit the script with error if any of the commands fail
# Supported/used environment variables:
# CC Which compiler to use
# SSL Which SSL Library to use
# SASL Enable or disable SASL
# RELEASE Enable release-build MSVC flags (default: debug flags)
INSTALL_DIR="C:/mongoc"
CONFIGURE_FLAGS="-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} -DENABLE_AUTOMATIC_INIT_AND_CLEANUP:BOOL=OFF -DENABLE_MAINTAINER_FLAGS=ON"
BUILD_FLAGS="/m" # Number of concurrent processes. No value=# of cpus
CMAKE="/cygdrive/c/cmake/bin/cmake"
CC=${CC:-"Visual Studio 14 2015 Win64"}
echo "CC: $CC"
echo "RELEASE: $RELEASE"
if [ "$RELEASE" ]; then
# Build from the release tarball.
mkdir build-dir
tar xf ../mongoc.tar.gz -C build-dir --strip-components=1
cd build-dir
else
git submodule update --init
fi
case "$SASL" in
no)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SASL:BOOL=OFF"
;;
sasl)
case "$CC" in
*Win64)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SASL=CYRUS"
;;
*)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SASL:BOOL=OFF"
;;
esac
;;
sspi)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SASL=SSPI"
;;
*)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SASL:BOOL=OFF"
;;
esac
case "$SSL" in
openssl)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SSL=OPENSSL"
;;
winssl)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SSL=WINDOWS"
;;
no)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SSL:BOOL=OFF"
;;
*)
case "$CC" in
*Win64)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS"
;;
*)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SSL:BOOL=OFF"
;;
esac
esac
case "$SNAPPY" in
system)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SNAPPY=SYSTEM"
;;
no)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_SNAPPY=OFF"
;;
esac
case "$ZLIB" in
system)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_ZLIB=SYSTEM"
;;
bundled)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_ZLIB=BUNDLED"
;;
no)
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DENABLE_ZLIB=OFF"
;;
esac
export CONFIGURE_FLAGS
export INSTALL_DIR
case "$CC" in
mingw*)
if [ "$RELEASE" ]; then
cmd.exe /c ..\\.evergreen\\compile-windows-mingw.bat
else
cmd.exe /c .evergreen\\compile-windows-mingw.bat
fi
exit 0
;;
# Resolve the compiler name to correct MSBuild location
"Visual Studio 10 2010")
BUILD="/cygdrive/c/Windows/Microsoft.NET/Framework/v4.0.30319/MSBuild.exe"
;;
"Visual Studio 10 2010 Win64")
BUILD="/cygdrive/c/Windows/Microsoft.NET/Framework64/v4.0.30319/MSBuild.exe"
;;
"Visual Studio 12 2013")
BUILD="/cygdrive/c/Program Files (x86)/MSBuild/12.0/Bin/MSBuild.exe"
;;
"Visual Studio 12 2013 Win64")
BUILD="/cygdrive/c/Program Files (x86)/MSBuild/12.0/Bin/MSBuild.exe"
;;
"Visual Studio 14 2015")
BUILD="/cygdrive/c/Program Files (x86)/MSBuild/14.0/Bin/MSBuild.exe"
;;
"Visual Studio 14 2015 Win64")
BUILD="/cygdrive/c/Program Files (x86)/MSBuild/14.0/Bin/MSBuild.exe"
;;
esac
if [ "$RELEASE" ]; then
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DCMAKE_BUILD_TYPE=Release"
BUILD_FLAGS="$BUILD_FLAGS /p:Configuration=Release"
TEST_PATH="./Release/test-libmongoc.exe"
export PATH=$PATH:`pwd`/tests:`pwd`/Release:`pwd`/src/libbson/Release
else
CONFIGURE_FLAGS="$CONFIGURE_FLAGS -DCMAKE_BUILD_TYPE=Debug"
BUILD_FLAGS="$BUILD_FLAGS /p:Configuration=Debug"
TEST_PATH="./Debug/test-libmongoc.exe"
export PATH=$PATH:`pwd`/tests:`pwd`/Debug:`pwd`/src/libbson/Debug
fi
# CMake can't compile against bundled libbson, so we have to
# compile it and install it separately, and then configure mongoc
# to build against the installed libbson
cd src/libbson
"$CMAKE" -G "$CC" $CONFIGURE_FLAGS
"$BUILD" $BUILD_FLAGS ALL_BUILD.vcxproj
"$BUILD" $BUILD_FLAGS INSTALL.vcxproj
cd ../..
"$CMAKE" -G "$CC" "-DCMAKE_PREFIX_PATH=${INSTALL_DIR}/lib/cmake" $CONFIGURE_FLAGS
"$BUILD" $BUILD_FLAGS ALL_BUILD.vcxproj
"$BUILD" $BUILD_FLAGS INSTALL.vcxproj
export MONGOC_TEST_FUTURE_TIMEOUT_MS=30000
export MONGOC_TEST_SKIP_LIVE=on
export MONGOC_TEST_SKIP_SLOW=on
"$TEST_PATH" --no-fork -d -F test-results.json
libmongoc-1.9.2+dfsg/.evergreen/compile.sh 0000775 0000000 0000000 00000000467 13226174053 0020454 0 ustar 00root root 0000000 0000000 #!/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
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
case "$OS" in
cygwin*)
sh ./.evergreen/compile-windows.sh
;;
*)
sh ./.evergreen/compile-unix.sh
;;
esac
libmongoc-1.9.2+dfsg/.evergreen/config.yml 0000664 0000000 0000000 00000677010 13226174053 0020461 0 ustar 00root root 0000000 0000000 ####################################
# Evergreen configuration for mongoc
####################################
stepback: true
command_type: system
exec_timeout_secs: 1800 # 30 minutes is the longest we'll ever run
timeout:
- command: shell.exec
params:
script: |
ls -la
functions:
"fetch source":
- command: git.get_project
params:
directory: mongoc
- command: git.apply_patch
params:
directory: "mongoc"
- command: shell.exec
params:
working_dir: "mongoc"
script: |
if [ "${is_patch}" = "true" ]; then
VERSION=$(git describe --abbrev=7)-patch-${version_id}
else
VERSION=latest
fi
echo "CURRENT_VERSION: $VERSION" > expansion.yml
- command: expansions.update
params:
file: mongoc/expansion.yml
- command: shell.exec
params:
continue_on_err: true
# Must be http as RHEL55 has https issues
script: |
set -o xtrace
rm -f *.tar.gz
curl --retry 5 http://s3.amazonaws.com/mciuploads/mongo-c-driver/${branch_name}/mongo-c-driver-${CURRENT_VERSION}.tar.gz --output mongoc.tar.gz --silent --max-time 120
"upload release":
- command: shell.exec
params:
script: |
[ -f mongoc/mongo*gz ] && mv mongoc/mongo*gz mongoc.tar.gz
- command: s3.put
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
local_file: mongoc.tar.gz
remote_file: mongo-c-driver/${branch_name}/mongo-c-driver-${CURRENT_VERSION}.tar.gz
bucket: mciuploads
permissions: public-read
content_type: ${content_type|application/x-gzip}
"upload build":
- command: archive.targz_pack
params:
target: "${build_id}.tar.gz"
source_dir: "mongoc"
include:
- "./**"
- command: s3.put
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
local_file: ${build_id}.tar.gz
remote_file: mongo-c-driver/${build_variant}/${revision}/${task_name}/${build_id}.tar.gz
bucket: mciuploads
permissions: public-read
content_type: ${content_type|application/x-gzip}
"install ssl":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
SSL=${SSL} sh .evergreen/install-ssl.sh
"fetch build":
- command: shell.exec
params:
continue_on_err: true
script: "set -o xtrace && rm -rf mongoc"
- command: s3.get
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
remote_file: mongo-c-driver/${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: mongoc/
script: |
set -o xtrace # Write all commands first to stderr
set -o errexit # Exit the script with error if any of the commands fail
mkdir mongoc
if command -v gtar 2>/dev/null; then
TAR=gtar
else
TAR=tar
fi
$TAR xf build.tar.gz -C mongoc/
"upload docs" :
- command: shell.exec
params:
silent: true
working_dir: "mongoc"
script: |
export AWS_ACCESS_KEY_ID=${aws_key}
export AWS_SECRET_ACCESS_KEY=${aws_secret}
aws s3 cp doc/html s3://mciuploads/${project}/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: mongoc/doc/html/index.html
remote_file: ${project}/docs/${CURRENT_VERSION}/index.html
bucket: mciuploads
permissions: public-read
content_type: text/html
display_name: "Rendered docs"
"upload man pages" :
- command: shell.exec
params:
silent: true
working_dir: "mongoc"
script: |
. venv/bin/activate
# "man" with redirection writes plain ASCII, use lower-level groff to
# force formatted output. -t lays out tables, -T utf8 sets the output
# type, -man loads the manpage TROFF macros.
for doc in doc/man/*.3; do
echo $doc
fullpath=`pwd`/$doc
groff -man -t -T utf8 $fullpath | term2image -o $fullpath.png
done
mkdir -p man-page-images
mv doc/man/*.png man-page-images
export AWS_ACCESS_KEY_ID=${aws_key}
export AWS_SECRET_ACCESS_KEY=${aws_secret}
sudo apt-get install -y awscli
aws s3 cp man-page-images s3://mciuploads/${project}/man-page-images/${CURRENT_VERSION} --recursive --acl public-read --region us-east-1
sh .evergreen/man-page-image-list.sh man-page-images > man-page-images/index.html
- command: s3.put
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
local_file: mongoc/man-page-images/index.html
remote_file: ${project}/man-page-images/${CURRENT_VERSION}/index.html
bucket: mciuploads
permissions: public-read
content_type: text/html
display_name: "Rendered man pages"
"upload coverage" :
- command: shell.exec
params:
silent: true
working_dir: "mongoc"
script: |
export AWS_ACCESS_KEY_ID=${aws_key}
export AWS_SECRET_ACCESS_KEY=${aws_secret}
aws s3 cp coverage s3://mciuploads/${project}/${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: mongoc/coverage/index.html
remote_file: ${project}/${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:
working_dir: "mongoc"
script: |
if find scan -name \*.html | grep -q html; then
(cd scan && find . -name index.html -exec echo "
{}" \;) >> scan.html
else
echo "No issues found" > scan.html
fi
- command: shell.exec
params:
silent: true
working_dir: "mongoc"
script: |
export AWS_ACCESS_KEY_ID=${aws_key}
export AWS_SECRET_ACCESS_KEY=${aws_secret}
aws s3 cp scan s3://mciuploads/${project}/${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: mongoc/scan.html
remote_file: ${project}/${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:
working_dir: "mongoc"
script: |
DIR=MO
[ -d "/cygdrive/c/data/mo" ] && DIR="/cygdrive/c/data/mo"
[ -d $DIR ] && find $DIR -name \*.log | xargs tar czf mongodb-logs.tar.gz
- command: s3.put
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
local_file: mongoc/mongodb-logs.tar.gz
remote_file: mongo-c-driver/${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: mongoc/MO/server.log
remote_file: mongo-c-driver/${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"
"backtrace":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
./.evergreen/debug-core-evergreen.sh
"upload working dir":
- command: archive.targz_pack
params:
target: "working-dir.tar.gz"
source_dir: "mongoc"
include:
- "./**"
- command: s3.put
params:
aws_key: ${aws_key}
aws_secret: ${aws_secret}
local_file: working-dir.tar.gz
remote_file: mongo-c-driver/${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"
"upload test results":
- command: attach.results
params:
file_location: "mongoc/test-results.json"
"bootstrap mongo-orchestration":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
MONGODB_VERSION=${VERSION} TOPOLOGY=${TOPOLOGY} IPV4_ONLY=${IPV4_ONLY} AUTH=${AUTH} SSL=${SSL} ORCHESTRATION_FILE=${ORCHESTRATION_FILE} sh .evergreen/integration-tests.sh
"run tests":
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
COMPRESSORS="${COMPRESSORS}" CC="${CC}" AUTH=${AUTH} SSL=${SSL} URI=${URI} IPV4_ONLY=${IPV4_ONLY} VALGRIND=${VALGRIND} MONGOC_TEST_URI=${URI} DNS=${DNS} sh .evergreen/run-tests.sh
"run auth tests":
- command: shell.exec
type: test
params:
silent: true
working_dir: "mongoc"
script: |
AUTH_HOST='${auth_host}' AUTH_PLAIN='${auth_plain}' AUTH_MONGODBCR='${auth_mongodbcr}' AUTH_GSSAPI='${auth_gssapi}' AUTH_CROSSREALM='${auth_crossrealm}' AUTH_GSSAPI_UTF8='${auth_gssapi_utf8}' ATLAS_FREE='${atlas_free}' ATLAS_REPLSET='${atlas_replset}' ATLAS_SHARD='${atlas_shard}' sh .evergreen/run-auth-tests.sh
"cleanup":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
set -o errexit
cd MO
mongo-orchestration stop
"windows fix":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
for i in $(find .evergreen -name \*.sh); do
cat $i | tr -d '\r' > $i.new
mv $i.new $i
done
"make files executable":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
for i in $(find .evergreen -name \*.sh); do
chmod +x $i
done
"install dependencies":
- command: shell.exec
params:
working_dir: "mongoc"
script: |
sudo apt-get install -y awscli || true
"prepare kerberos" :
- command: shell.exec
params:
silent: true
working_dir: "mongoc"
script: |
# TODO BUILD-2557
if test -w /etc/hosts; then
SUDO=""
else
SUDO="sudo"
fi
if command -v host 2>/dev/null; then
echo "`host ldaptest.10gen.cc | awk '/has address/ { print $4 ; exit }'` ldaptest.10gen.cc" | $SUDO tee -a /etc/hosts
else
echo "`getent hosts ldaptest.10gen.cc | awk '{ print $1; exit }'` ldaptest.10gen.cc" | $SUDO tee -a /etc/hosts
fi
if test "${keytab|}"; then
echo "${keytab}" > /tmp/drivers.keytab.base64
base64 --decode /tmp/drivers.keytab.base64 > /tmp/drivers.keytab
cat .evergreen/kerberos.realm | $SUDO tee -a /etc/krb5.conf
fi
"link sample program autotools" :
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
# Build libmongoc with the Autotools and compile a program
# that links dynamically or statically to libmongoc, using
# variables from pkg-config.
export ENABLE_SSL=${ENABLE_SSL}
BUILD_MONGOC_WITH_CMAKE= LINK_STATIC= sh .evergreen/link-sample-program.sh
BUILD_MONGOC_WITH_CMAKE= LINK_STATIC=1 sh .evergreen/link-sample-program.sh
"link sample program" :
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
# Build libmongoc with the Autotools or CMake and compile a program
# that links dynamically or statically to libmongoc, using
# variables from CMake's find_package command.
export BUILD_SAMPLE_WITH_CMAKE=${BUILD_SAMPLE_WITH_CMAKE}
export ENABLE_SSL=${ENABLE_SSL}
BUILD_MONGOC_WITH_CMAKE= LINK_STATIC= sh .evergreen/link-sample-program.sh
BUILD_MONGOC_WITH_CMAKE=1 LINK_STATIC= sh .evergreen/link-sample-program.sh
BUILD_MONGOC_WITH_CMAKE= LINK_STATIC=1 sh .evergreen/link-sample-program.sh
BUILD_MONGOC_WITH_CMAKE=1 LINK_STATIC=1 sh .evergreen/link-sample-program.sh
pre:
- func: "fetch source"
- func: "windows fix"
- func: "make files executable"
- func: "install dependencies"
- func: "prepare kerberos"
post:
- func: "backtrace"
- func: "upload working dir"
- func: "upload mo artifacts"
- func: "upload test results"
- func: "cleanup"
tasks:
- name: getdata
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit || true
set -o xtrace
. ./.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
# Compile Matrix {{{
- name: make-release-archive
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
# Need modern Sphinx for :caption: in literal includes.
# Install term2image for man page rendering.
python -m virtualenv venv
cd venv
. bin/activate
./bin/pip install sphinx git+https://github.com/ajdavis/term2image.git
cd ..
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
export MONGOC_TEST_FUTURE_TIMEOUT_MS=30000
export MONGOC_TEST_SKIP_LIVE=on
export MONGOC_TEST_SKIP_SLOW=on
sh .evergreen/check-release-archive.sh
- func: "upload docs"
- func: "upload man pages"
- func: "upload release"
- func: "upload build"
- name: hardened-compile
tags: ["hardened"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
export CFLAGS="-fno-strict-overflow -D_FORTIFY_SOURCE=2 -fstack-protector-all -fPIE -O"
export LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now"
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SNAPPY=no ZLIB=no sh .evergreen/compile.sh
- func: "upload build"
- name: test-latest-server-hardened
tags: ["hardened", "latest"]
depends_on:
- name: "hardened-compile"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "hardened-compile"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
- name: debug-compile-compression-zlib
tags: ["zlib", "compression"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SNAPPY=no ZLIB=bundled sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-compression-snappy
tags: ["snappy", "compression"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SNAPPY=system ZLIB=no sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-compression
tags: ["zlib", "snappy", "compression"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SNAPPY=system ZLIB=bundled sh .evergreen/compile.sh
- func: "upload build"
- name: test-latest-server-compression-zlib
tags: ["zlib", "compression", "latest"]
depends_on:
- name: "debug-compile-compression-zlib"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-compression-zlib"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
ORCHESTRATION_FILE: "zlib"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
COMPRESSORS: zlib
- name: test-latest-server-compression-snappy
tags: ["snappy", "compression", "latest"]
depends_on:
- name: "debug-compile-compression-snappy"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-compression-snappy"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
ORCHESTRATION_FILE: "snappy"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
COMPRESSORS: snappy
- name: test-latest-server-compression
tags: ["zlib", "snappy", "compression", "latest"]
depends_on:
- name: "debug-compile-compression"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-compression"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
ORCHESTRATION_FILE: "snappy-zlib"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
COMPRESSORS: zlib,snappy
- name: debug-compile
tags: ["debug-compile"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-c11
tags: ["debug-compile", "special", "c11", "stdflags"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' CFLAGS='-std=c11 -D_XOPEN_SOURCE=600' sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-c99
tags: ["debug-compile", "special", "c99", "stdflags"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' CFLAGS='-std=c99 -D_XOPEN_SOURCE=600' sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-c89
tags: ["debug-compile", "special", "c89", "stdflags"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' CFLAGS='-std=c89 -D_POSIX_C_SOURCE=200112L -pedantic' sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-valgrind
tags: ["debug-compile", "special", "valgrind"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
VALGRIND=yes DEBUG=yes CC='${CC}' MARCH='${MARCH}' sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-coverage
tags: ["debug-compile", "special", "coverage"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' COVERAGE=yes sh .evergreen/compile.sh
- func: "upload coverage"
- func: "upload build"
- name: debug-compile-sanitizer-address-clang
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
PATH=/usr/lib/llvm-3.8/bin:$PATH DEBUG=1 CC='clang-3.8' CXX='clang++-3.8' MARCH='${MARCH}' CHECK_LOG=yes CFLAGS='-fsanitize=address' CXXFLAGS="$CFLAGS" SNAPPY=no sh .evergreen/compile.sh
- name: debug-compile-sanitizer-address-gcc
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
DEBUG=1 MARCH='${MARCH}' CHECK_LOG=yes CFLAGS='-fsanitize=address' CXXFLAGS="$CFLAGS" SNAPPY=no sh .evergreen/compile.sh
- name: debug-compile-sanitizer-undefined
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
PATH=/usr/lib/llvm-3.8/bin:$PATH DEBUG=1 CC='clang-3.8' CXX='clang++-3.8' MARCH='${MARCH}' CHECK_LOG=yes CFLAGS='-fsanitize=undefined' CXXFLAGS="$CFLAGS" SNAPPY=no sh .evergreen/compile.sh
- name: debug-compile-scan-build
tags: ["debug-compile", "special", "scan-build", "clang"]
commands:
- command: shell.exec
params:
continue_on_err: true
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC=clang ANALYZE=yes MARCH='${MARCH}' sh .evergreen/compile.sh
- func: "upload scan artifacts"
- func: "upload build"
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
if find scan -name \*.html | grep -q html; then
exit 123
fi
- name: release-compile
tags: ["release-compile"]
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
RELEASE=yes CC='${CC}' MARCH='${MARCH}' sh .evergreen/compile.sh
- func: "upload build"
- name: link-with-cmake
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
- func: "link sample program"
vars:
BUILD_SAMPLE_WITH_CMAKE: "1"
- name: link-with-cmake-ssl
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
- func: "link sample program"
vars:
BUILD_SAMPLE_WITH_CMAKE: "1"
ENABLE_SSL: "1"
- name: link-with-cmake-snappy
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
- func: "link sample program"
vars:
BUILD_SAMPLE_WITH_CMAKE: "1"
ENABLE_SNAPPY: "1"
- name: link-with-cmake-windows
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
# Build libmongoc with CMake and compile a program that links
# dynamically or statically to it, using variables from CMake's
# find_package command.
LINK_STATIC= cmd.exe /c .\\.evergreen\\link-sample-program-msvc.cmd
LINK_STATIC=1 cmd.exe /c .\\.evergreen\\link-sample-program-msvc.cmd
- name: link-with-cmake-windows-ssl
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
SSL: "winssl"
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
# Build libmongoc with CMake and compile a program that links
# dynamically or statically to it, using variables from CMake's
# find_package command.
export ENABLE_SSL=1
LINK_STATIC= cmd.exe /c .\\.evergreen\\link-sample-program-msvc.cmd
LINK_STATIC=1 cmd.exe /c .\\.evergreen\\link-sample-program-msvc.cmd
- name: link-with-cmake-windows-snappy
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
# Build libmongoc with CMake and compile a program that links
# dynamically or statically to it, using variables from CMake's
# find_package command.
export ENABLE_SNAPPY=1
LINK_STATIC= cmd.exe /c .\\.evergreen\\link-sample-program-msvc.cmd
LINK_STATIC=1 cmd.exe /c .\\.evergreen\\link-sample-program-msvc.cmd
- name: link-with-cmake-mingw
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
# Build libmongoc with CMake (not Autotools) and compile a program
# that links dynamically or statically to it, using variables from
# pkg-config.exe.
cmd.exe /c .\\.evergreen\\link-sample-program-mingw.cmd
- name: link-with-pkg-config
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
- func: "link sample program"
- name: link-with-pkg-config-mac
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
# No CMake on Mac in Evergreen yet, BUILD-3995
- func: "link sample program autotools"
- name: link-with-pkg-config-ssl
depends_on:
- name: "make-release-archive"
variant: releng
commands:
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
- func: "link sample program"
vars:
ENABLE_SSL: "1"
- name: test-dns-openssl
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
SSL: "ssl"
- func: "run tests"
vars:
DNS: on
SSL: "ssl"
- name: test-dns-winssl
depends_on:
- name: "debug-compile-sspi-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sspi-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
SSL: "winssl"
- func: "run tests"
vars:
DNS: on
SSL: "winssl"
- name: test-dns-darwinssl
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
SSL: "darwinssl"
- func: "run tests"
vars:
DNS: on
SSL: "darwinssl"
- name: debug-compile-nosasl-nossl
tags: ["debug-compile", "nosasl", "nossl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=no sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-nosasl-openssl
tags: ["debug-compile", "nosasl", "openssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-nosasl-darwinssl
tags: ["debug-compile", "nosasl", "darwinssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=darwin sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-nosasl-winssl
tags: ["debug-compile", "nosasl", "winssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=winssl sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sasl-nossl
tags: ["debug-compile", "sasl", "nossl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sasl SSL=no sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sasl-openssl
tags: ["debug-compile", "sasl", "openssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sasl SSL=openssl sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sasl-darwinssl
tags: ["debug-compile", "sasl", "darwinssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sasl SSL=darwin sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sasl-winssl
tags: ["debug-compile", "sasl", "winssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sasl SSL=winssl sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sspi-nossl
tags: ["debug-compile", "sspi", "nossl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sspi SSL=no sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sspi-openssl
tags: ["debug-compile", "sspi", "openssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sspi SSL=openssl sh .evergreen/compile.sh
- func: "upload build"
- name: debug-compile-sspi-winssl
tags: ["debug-compile", "sspi", "winssl"]
commands:
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=sspi SSL=winssl sh .evergreen/compile.sh
- func: "upload build"
# Verify that retryWrites=true is ignored with standalone
- name: retry-true-latest-server
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
- func: "run tests"
vars:
AUTH: "noauth"
URI: "mongodb://localhost/?retryWrites=true"
# Verify that retryWrites=true is ignored with old server
- name: retry-true-3.4-replica-set
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
- func: "run tests"
vars:
AUTH: "noauth"
URI: "mongodb://localhost/?replicaSet=repl0&retryWrites=true"
# }}}
# Test Matrix {{{
- name: test-valgrind-latest-server-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.6-server-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.4-server-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.2-server-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.0-server-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-2.6-server-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-latest-replica-set-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.6-replica-set-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.4-replica-set-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.2-replica-set-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.0-replica-set-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-2.6-replica-set-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-latest-sharded-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.6-sharded-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.4-sharded-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.2-sharded-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-3.0-sharded-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-2.6-sharded-noauth-nosasl-nossl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-valgrind-latest-server-auth-nosasl-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.6-server-auth-nosasl-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.4-server-auth-nosasl-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.2-server-auth-nosasl-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.0-server-auth-nosasl-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-latest-sharded-auth-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.6-sharded-auth-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.4-sharded-auth-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.2-sharded-auth-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-valgrind-3.0-sharded-auth-openssl
tags: ["test-valgrind"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
VALGRIND: "on"
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-server-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-2.6-server-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-2.6-server-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-server-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-2.6-server-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-2.6-server-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-2.6-server-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-server-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-2.6-server-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-server-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-server-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "server", "2.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-2.6-server-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-server-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-server-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "server", "2.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-2.6-replica-set-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-2.6-replica-set-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-2.6-replica-set-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-replica-set-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-2.6-replica-set-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-2.6-replica-set-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-2.6-replica-set-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-replica-set-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-2.6-replica-set-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-replica-set-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-replica-set-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-2.6-replica-set-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-replica-set-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-replica-set-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "replica-set", "2.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-sharded-cluster-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-2.6-sharded-cluster-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-sharded-cluster-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-sharded-cluster-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-2.6-sharded-cluster-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-2.6-sharded-cluster-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-2.6-sharded-cluster-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "sharded-cluster", "2.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "2.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.0-server-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.0-server-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.0-server-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-server-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.0-server-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.0-server-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.0-server-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-server-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.0-server-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.0-server-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-server-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "server", "3.0"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.0-server-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.0-server-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-server-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "server", "3.0"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.0-replica-set-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.0-replica-set-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.0-replica-set-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-replica-set-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.0-replica-set-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.0-replica-set-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.0-replica-set-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-replica-set-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.0-replica-set-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.0-replica-set-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-replica-set-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.0-replica-set-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.0-replica-set-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-replica-set-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "replica-set", "3.0"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-sharded-cluster-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.0-sharded-cluster-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.0-sharded-cluster-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-sharded-cluster-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.0-sharded-cluster-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.0-sharded-cluster-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.0-sharded-cluster-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "sharded-cluster", "3.0"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.0"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.2-server-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.2-server-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.2-server-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-server-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.2-server-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.2-server-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.2-server-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-server-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.2-server-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.2-server-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-server-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "server", "3.2"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.2-server-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.2-server-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-server-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "server", "3.2"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.2-replica-set-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.2-replica-set-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.2-replica-set-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-replica-set-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.2-replica-set-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.2-replica-set-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.2-replica-set-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-replica-set-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.2-replica-set-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.2-replica-set-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-replica-set-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.2-replica-set-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.2-replica-set-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-replica-set-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "replica-set", "3.2"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-sharded-cluster-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.2-sharded-cluster-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.2-sharded-cluster-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-sharded-cluster-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.2-sharded-cluster-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.2-sharded-cluster-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.2-sharded-cluster-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "sharded-cluster", "3.2"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.2"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.4-server-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.4-server-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.4-server-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-server-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.4-server-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.4-server-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.4-server-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-server-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.4-server-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.4-server-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-server-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "server", "3.4"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.4-server-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.4-server-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-server-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "server", "3.4"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.4-replica-set-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.4-replica-set-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.4-replica-set-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-replica-set-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.4-replica-set-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.4-replica-set-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.4-replica-set-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-replica-set-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.4-replica-set-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.4-replica-set-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-replica-set-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.4-replica-set-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.4-replica-set-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-replica-set-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "replica-set", "3.4"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-sharded-cluster-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.4-sharded-cluster-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.4-sharded-cluster-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-sharded-cluster-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.4-sharded-cluster-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.4-sharded-cluster-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.4-sharded-cluster-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "sharded-cluster", "3.4"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.4"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.6-server-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.6-server-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.6-server-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-server-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.6-server-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.6-server-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.6-server-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-server-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.6-server-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.6-server-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-server-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "server", "3.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.6-server-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.6-server-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-server-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "server", "3.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.6-replica-set-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.6-replica-set-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.6-replica-set-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-replica-set-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.6-replica-set-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.6-replica-set-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.6-replica-set-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-replica-set-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.6-replica-set-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.6-replica-set-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-replica-set-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.6-replica-set-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.6-replica-set-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-replica-set-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "replica-set", "3.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-sharded-cluster-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-3.6-sharded-cluster-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.6-sharded-cluster-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-sharded-cluster-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-3.6-sharded-cluster-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-3.6-sharded-cluster-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-3.6-sharded-cluster-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "sharded-cluster", "3.6"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "3.6"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-server-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-latest-server-noauth-nosasl-nossl-ipv4-only
tags: ["nossl", "nosasl", "noauth", "server", "latest", "ipv4-only", "latest"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
IPV4_ONLY: "on"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
IPV4_ONLY: "on"
URI: ""
- name: test-latest-server-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-latest-server-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-latest-server-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-latest-server-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-latest-server-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-latest-server-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-latest-server-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-latest-server-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-latest-server-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-latest-server-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-server-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-latest-server-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-latest-server-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "server"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-replica-set-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-latest-replica-set-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-latest-replica-set-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-latest-replica-set-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-latest-replica-set-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-latest-replica-set-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-latest-replica-set-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-latest-replica-set-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-latest-replica-set-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-latest-replica-set-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-latest-replica-set-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-replica-set-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-latest-replica-set-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-latest-replica-set-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "replica-set", "latest"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "replica_set"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-sharded-cluster-noauth-nosasl-nossl
tags: ["nossl", "nosasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-latest-sharded-cluster-noauth-nosasl-openssl
tags: ["openssl", "nosasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-latest-sharded-cluster-noauth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-latest-sharded-cluster-noauth-nosasl-winssl
tags: ["winssl", "nosasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-latest-sharded-cluster-noauth-sasl-nossl
tags: ["nossl", "sasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "nossl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "nossl"
URI: ""
- name: test-latest-sharded-cluster-noauth-sasl-openssl
tags: ["openssl", "sasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "openssl"
URI: ""
- name: test-latest-sharded-cluster-noauth-sasl-darwinssl
tags: ["darwinssl", "sasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "darwinssl"
URI: ""
- name: test-latest-sharded-cluster-noauth-sasl-winssl
tags: ["winssl", "sasl", "noauth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "noauth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "noauth"
SSL: "winssl"
URI: ""
- name: test-latest-sharded-cluster-auth-nosasl-openssl
tags: ["openssl", "nosasl", "auth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-latest-sharded-cluster-auth-nosasl-darwinssl
tags: ["darwinssl", "nosasl", "auth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-latest-sharded-cluster-auth-nosasl-winssl
tags: ["winssl", "nosasl", "auth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-sharded-cluster-auth-sasl-openssl
tags: ["openssl", "sasl", "auth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-openssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "openssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "openssl"
URI: ""
- name: test-latest-sharded-cluster-auth-sasl-darwinssl
tags: ["darwinssl", "sasl", "auth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-darwinssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "darwinssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "darwinssl"
URI: ""
- name: test-latest-sharded-cluster-auth-sasl-winssl
tags: ["winssl", "sasl", "auth", "sharded-cluster", "latest"]
depends_on:
- name: "debug-compile-sasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: test-latest-server-auth-sspi-winssl
tags: ["winssl", "sspi", "auth", "server", "latest"]
depends_on:
- name: "debug-compile-sspi-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sspi-winssl"
- func: "bootstrap mongo-orchestration"
vars:
VERSION: "latest"
TOPOLOGY: "sharded_cluster"
AUTH: "auth"
SSL: "winssl"
- func: "run tests"
vars:
AUTH: "auth"
SSL: "winssl"
URI: ""
- name: authentication-tests-sasl-cyrus
tags: ["authentication-tests", "sasl", "cyrus"]
depends_on:
- name: "debug-compile-sasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sasl-nossl"
- func: "run auth tests"
- name: authentication-tests-sasl-sspi
tags: ["authentication-tests", "sasl", "sspi"]
depends_on:
- name: "debug-compile-sspi-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-sspi-nossl"
- func: "run auth tests"
- name: authentication-tests-nosasl
tags: ["authentication-tests", "nosasl"]
depends_on:
- name: "debug-compile-nosasl-nossl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-nossl"
- func: "run auth tests"
- name: authentication-tests-openssl
tags: ["authentication-tests", "nosasl", "ssl", "openssl"]
depends_on:
- name: "debug-compile-nosasl-openssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-openssl"
- func: "run auth tests"
- name: authentication-tests-darwinssl
tags: ["authentication-tests", "nosasl", "ssl", "darwinssl"]
depends_on:
- name: "debug-compile-nosasl-darwinssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-darwinssl"
- func: "run auth tests"
- name: authentication-tests-winssl
tags: ["authentication-tests", "nosasl", "ssl", "winssl"]
depends_on:
- name: "debug-compile-nosasl-winssl"
commands:
- func: "fetch build"
vars:
BUILD_NAME: "debug-compile-nosasl-winssl"
- func: "run auth tests"
- name: build-and-run-authentication-tests-openssl-0.9.8
commands:
- func: "install ssl"
vars:
SSL: openssl-0.9.8zh
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
- name: build-and-run-authentication-tests-openssl-1.0.0
commands:
- func: "install ssl"
vars:
SSL: openssl-1.0.0t
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
- name: build-and-run-authentication-tests-openssl-1.0.1
commands:
- func: "install ssl"
vars:
SSL: openssl-1.0.1u
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
export CFLAGS=-Wno-redundant-decls # OpenSSL 1.0.1 warning
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
- name: build-and-run-authentication-tests-openssl-1.0.1-fips
commands:
- func: "install ssl"
vars:
SSL: openssl-1.0.1u-fips
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
export CFLAGS=-Wno-redundant-decls # OpenSSL 1.0.1 warning
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl OPENSSL_FIPS=1 sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
- name: build-and-run-authentication-tests-openssl-1.0.2
commands:
- func: "install ssl"
vars:
SSL: openssl-1.0.2l
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
- name: build-and-run-authentication-tests-openssl-1.1.0
commands:
- func: "install ssl"
vars:
SSL: openssl-1.1.0f
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=openssl sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
- name: build-and-run-authentication-tests-libressl-2.5
commands:
- func: "install ssl"
vars:
SSL: libressl-2.5.2
- command: shell.exec
type: test
params:
working_dir: "mongoc"
script: |
set -o errexit
set -o xtrace
DEBUG=yes CC='${CC}' MARCH='${MARCH}' SASL=no SSL=libressl sh .evergreen/compile.sh
- func: "run auth tests"
- func: "upload build"
# }}}
buildvariants:
- name: releng
display_name: "**Release Archive Creator"
run_on:
- ubuntu1404-build
tasks:
- name: "make-release-archive"
distros: # Run on any of these variants, whichever will schedule us first
- ubuntu1604-build
- ubuntu1604-test
- "release-compile"
- "debug-compile"
- ".debug-compile .stdflags !.c89"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- "debug-compile-valgrind"
- name: "link-with-cmake"
distros:
- ubuntu1604-build
- ubuntu1604-test
- ubuntu1404-build
- ubuntu1404-test
- name: "link-with-cmake-ssl"
distros:
- ubuntu1604-build
- ubuntu1604-test
- ubuntu1404-build
- ubuntu1404-test
- name: "link-with-cmake-snappy"
distros:
- ubuntu1604-build
- ubuntu1604-test
- ubuntu1404-build
- ubuntu1404-test
- name: "link-with-cmake-windows"
distros:
- windows-64-vs2015-compile
- windows-64-vs2015-test
- name: "link-with-cmake-windows-ssl"
distros:
- windows-64-vs2015-compile
- windows-64-vs2015-test
- name: "link-with-cmake-windows-snappy"
distros:
- windows-64-vs2015-compile
- windows-64-vs2015-test
- name: "link-with-cmake-mingw"
distros:
- windows-64-vs2013-compile
- name: "link-with-pkg-config"
distros:
- ubuntu1604-build
- ubuntu1604-test
- ubuntu1404-build
- ubuntu1404-test
- name: "link-with-pkg-config-ssl"
distros:
- ubuntu1604-build
- ubuntu1604-test
- ubuntu1404-build
- ubuntu1404-test
- name: "link-with-pkg-config-mac"
distros:
- macos-1012
- name: clang34ubuntu
display_name: "clang 3.4 (Ubuntu 14.04)"
expansions:
CC: "clang"
run_on:
- ubuntu1404-build
tasks:
- "debug-compile-scan-build"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".3.6 .openssl !.nosasl .server"
- ".3.4 .openssl !.nosasl .server"
- ".3.2 .openssl !.nosasl .server"
- ".3.0 .openssl !.nosasl !.auth"
- ".2.6 .openssl !.nosasl !.auth"
# Ubuntu 14.04 only supports 2.6+ with SSL
- name: clang35
display_name: "clang 3.5 (Debian 8.1)"
expansions:
CC: "clang"
run_on:
- debian81-build
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile .stdflags !.c89"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# Debian 8.1 only supports MongoDB 3.4+
- name: openssl
display_name: "OpenSSL / LibreSSL"
run_on:
- archlinux-build
- archlinux-test
tasks:
- "build-and-run-authentication-tests-openssl-0.9.8"
- "build-and-run-authentication-tests-openssl-1.0.0"
- "build-and-run-authentication-tests-openssl-1.0.1"
- "build-and-run-authentication-tests-openssl-1.0.2"
- "build-and-run-authentication-tests-openssl-1.1.0"
- "build-and-run-authentication-tests-openssl-1.0.1-fips"
- "build-and-run-authentication-tests-libressl-2.5"
- name: clang37
display_name: "clang 3.7 (Archlinux)"
expansions:
CC: "clang"
run_on:
- archlinux-build
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile .stdflags !.c89"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .nossl !.nosasl"
- ".3.6 .nossl !.nosasl"
- ".3.4 .nossl !.nosasl"
- ".3.2 .nossl !.nosasl" # No enterprise build for Archlinux, SSL not available
- ".3.0 .nossl .nosasl !.auth"
- ".2.6 .nossl .nosasl !.auth"
- name: clang38-i386
display_name: "clang 3.8 (i386) (Ubuntu 16.04)"
expansions:
CC: "clang"
MARCH: "i386"
run_on:
- ubuntu1604-build
- ubuntu1604-test
tasks:
- "debug-compile-scan-build"
- "release-compile"
- "debug-compile"
- ".debug-compile .stdflags !.c89"
- ".debug-compile !.sspi .nossl .nosasl"
- ".authentication-tests .nosasl !.ssl"
- ".latest .nossl .nosasl"
- ".3.6 .nossl .nosasl"
# We don't have i386 builds of OpenSSL or Cyrus SASL installed
# Ubuntu16.04 only supports MongoDB 3.4+
- name: clang38
display_name: "clang 3.8 (Ubuntu 16.04)"
expansions:
CC: "clang"
run_on:
- ubuntu1604-build
- ubuntu1604-test
tasks:
- ".compression"
- "debug-compile-scan-build"
- "debug-compile-sanitizer-address-clang"
# TODO CDRIVER-2328
# - "debug-compile-sanitizer-undefined"
- "release-compile"
- "debug-compile"
- ".debug-compile .stdflags !.c89"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# Ubuntu16.04 only supports MongoDB 3.4+
## GCC
- name: gcc46
display_name: "GCC 4.6 (Ubuntu 12.04)"
expansions:
CC: "gcc"
run_on:
- ubuntu1204-build
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
- ".3.4 .openssl !.nosasl .server"
- ".3.2 .openssl !.nosasl .server"
- ".3.0 .openssl !.nosasl !.auth"
- ".2.6 .openssl !.nosasl !.auth"
- name: gcc48ubuntu
display_name: "GCC 4.8 (Ubuntu 14.04)"
expansions:
CC: "gcc"
run_on:
- ubuntu1404-build
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".latest .nossl !.nosasl !.ipv4-only"
- ".3.6 .openssl !.nosasl .server"
- ".3.4 .openssl !.nosasl .server"
- ".3.2 .openssl !.nosasl .server"
- ".3.0 .openssl !.nosasl !.auth"
- ".2.6 .openssl !.nosasl !.auth"
- ".latest .openssl .nosasl .replica-set"
- ".latest .openssl !.nosasl .replica-set"
# Ubuntu 14.04 only supports 2.6+ with SSL
- name: gcc48rhel
display_name: "GCC 4.8 (RHEL 7.0)"
expansions:
CC: "gcc"
run_on:
- rhel70
tasks:
- ".hardened"
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
- ".3.4 .openssl !.nosasl .server"
- ".3.2 .openssl !.nosasl .server"
- ".3.0 .openssl !.nosasl !.auth"
- ".2.6 .openssl !.nosasl !.auth"
# RHEL 7 only supports 2.6+
- name: gcc49
display_name: "GCC 4.9 (Debian 8.1)"
expansions:
CC: "gcc"
run_on:
- debian81-build
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# Debian 8.1 only supports MongoDB 3.4+
- name: gcc53-i386
display_name: "GCC 5.3 (i386) (Ubuntu 16.04)"
expansions:
CC: "gcc"
MARCH: "i386"
run_on:
- ubuntu1604-build
- ubuntu1604-test
tasks:
- "debug-compile-coverage"
- "release-compile"
- "debug-compile"
- ".authentication-tests .nosasl !.ssl !.sspi"
- ".debug-compile !.sspi .nossl .nosasl"
- ".latest .nossl .nosasl"
- ".3.6 .nossl .nosasl"
# We don't have i386 builds of OpenSSL or Cyrus SASL installed
# Ubuntu16.04 only supports MongoDB 3.4+
- name: gcc53
display_name: "GCC 5.3 (Ubuntu 16.04)"
expansions:
CC: "gcc"
run_on:
- ubuntu1604-build
- ubuntu1604-test
tasks:
- ".compression"
- "debug-compile-sanitizer-address-gcc"
- "debug-compile-coverage"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- "retry-true-3.4-replica-set"
- "retry-true-latest-server"
# Ubuntu16.04 only supports MongoDB 3.4+
- ".3.6 .openssl !.nosasl .server"
- "test-dns-openssl"
- name: darwin
display_name: "*Darwin, macOS (Apple LLVM)"
expansions:
CC: "clang"
run_on:
- macos-1012
tasks:
- ".compression !.snappy"
- "debug-compile-coverage"
- "release-compile"
- "debug-compile"
- ".debug-compile .darwinssl"
- ".debug-compile !.sspi .nossl"
- ".debug-compile .clang"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .darwinssl"
- ".latest .darwinssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .darwinssl !.nosasl .server"
- ".3.4 .darwinssl !.nosasl .server"
- ".3.2 .darwinssl !.nosasl .server"
- ".3.2 .nossl !.nosasl"
- ".2.6 .nossl !.nosasl" # No MongoDB SSL builds available
- "test-dns-darwinssl"
- name: windows-2015
display_name: "Windows (VS 2015)"
expansions:
CC: "Visual Studio 14 2015 Win64"
run_on:
- windows-64-vs2015-compile
tasks:
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
- ".debug-compile .winssl"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".debug-compile .sspi"
- ".authentication-tests .nosasl !.ssl"
- ".authentication-tests .openssl"
- ".authentication-tests .winssl"
- ".authentication-tests .sspi"
- ".latest .winssl !.nosasl .server"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .winssl !.nosasl .server"
- ".3.4 .winssl !.nosasl .server"
- ".3.2 .winssl !.nosasl .server"
- ".3.0 .nossl !.nosasl"
- ".2.6 .nossl !.nosasl"
- "test-dns-winssl"
- name: windows-2015-32
display_name: "Windows (i386) (VS 2015)"
expansions:
CC: "Visual Studio 14 2015"
run_on:
- windows-64-vs2015-compile
tasks:
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
# No 32bit OpenSSL builds
- ".debug-compile .sspi !.openssl"
- ".debug-compile .winssl .nosasl"
- ".debug-compile !.sspi .nossl .nosasl"
- ".authentication-tests .nosasl !.ssl"
- ".authentication-tests .winssl"
- ".authentication-tests .sspi"
- ".latest .winssl .nosasl .server"
- ".latest .nossl .nosasl"
- ".latest .sspi"
- ".3.6 .winssl .nosasl .server"
- name: windows-2013
display_name: "Windows (VS 2013)"
expansions:
CC: "Visual Studio 12 2013 Win64"
run_on:
- windows-64-vs2013-compile
tasks:
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
- ".debug-compile .winssl"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".debug-compile .sspi"
- ".authentication-tests .nosasl !.ssl" # GSSAPI isn't installed
- ".authentication-tests .openssl"
- ".authentication-tests .winssl"
- ".authentication-tests .sspi"
- ".latest .winssl !.nosasl .server"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".latest .sspi"
- ".3.6 .winssl !.nosasl .server"
- name: windows-2013-32
display_name: "Windows (i386) (VS 2013)"
expansions:
CC: "Visual Studio 12 2013"
run_on:
- windows-64-vs2013-compile
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile .sspi !.openssl"
- ".debug-compile .winssl .nosasl"
- ".debug-compile !.sspi .nossl .nosasl"
- ".authentication-tests .nosasl !.ssl"
- ".authentication-tests .winssl"
- ".authentication-tests .sspi"
- ".latest .winssl .nosasl .server"
- ".latest .nossl .nosasl"
- ".latest .sspi"
- ".3.6 .winssl .nosasl .server"
- name: windows-2010
display_name: "Windows (VS 2010)"
expansions:
CC: "Visual Studio 10 2010 Win64"
run_on:
- windows-64-vs2010-compile
tasks:
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
- ".debug-compile .winssl"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".debug-compile .sspi"
- ".authentication-tests .nosasl !.ssl" # GSSAPI isn't installed
- ".authentication-tests .openssl"
- ".authentication-tests .winssl"
- ".authentication-tests .sspi"
- ".latest .winssl !.nosasl .server"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".latest .sspi"
- ".3.6 .winssl !.nosasl .server"
- name: windows-2010-32
display_name: "Windows (i386) (VS 2010)"
expansions:
CC: "Visual Studio 10 2010"
run_on:
- windows-64-vs2010-compile
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile .winssl .sspi"
- ".debug-compile .winssl .nosasl"
- ".debug-compile !.sspi .nossl .nosasl"
- ".debug-compile .nossl .sspi"
- ".authentication-tests .nosasl !.ssl"
- ".authentication-tests .winssl"
- ".authentication-tests .sspi"
- ".latest .winssl .nosasl .server"
- ".latest .nossl .nosasl"
- ".latest .sspi"
- ".3.6 .winssl .nosasl .server"
- name: mingw
display_name: "MinGW-W64"
expansions:
CC: "mingw"
run_on:
- windows-64-vs2013-compile
tasks:
- ".debug-compile .nossl .nosasl"
- ".debug-compile .winssl .sspi"
- ".latest .nossl .nosasl .server"
- ".latest .winssl .sspi .server"
- name: power8-rhel71
display_name: "*Power8 (ppc64le) (RHEL 7.1)"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- rhel71-power8-build
- rhel71-power8-test
tasks:
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests .nosasl !.ssl" # Revert me: CDRIVER-2000
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# RHEL 7.1 ppc64le is only supported by MongoDB 3.2+
- name: power8-ubuntu1604
display_name: "Power8 (ppc64le) (Ubuntu 16.04)"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- ubuntu1604-power8-build
- ubuntu1604-power8-test
tasks:
- "debug-compile-scan-build"
- "debug-compile-coverage"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# Ubuntu16.04 ppc64le is only supported by MongoDB 3.4+
- "test-dns-openssl"
- name: arm-ubuntu1604
display_name: "*ARM (aarch64) (Ubuntu 16.04)"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- ubuntu1604-arm64-large
- ubuntu1604-arm64-small
tasks:
- ".compression !.snappy"
- "debug-compile-scan-build"
- "debug-compile-coverage"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# Ubuntu16.04 aarch64 is only supported by MongoDB 3.4+
- "test-dns-openssl"
- name: zseries-rhel72
display_name: "*zSeries (s390x) (RHEL 7.2)"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- rhel72-zseries-test
- rhel72-zseries-build
tasks:
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# # RHEL7.2 s390x is only supported by MongoDB 3.4+
- name: zseries-ubuntu1604
display_name: "zSeries (s390x) (Ubuntu 16.04)"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- ubuntu1604-zseries-large
- ubuntu1604-zseries-small
tasks:
- "debug-compile-coverage"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# Ubuntu16.04 s390x is only supported by MongoDB 3.4+
- "test-dns-openssl"
- name: zseries-suse12
display_name: "zSeries (s390x) SUSE12"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- suse12-zseries-build
- suse12-zseries-test
tasks:
- ".compression !.snappy"
- "release-compile"
- "debug-compile"
- ".debug-compile !.sspi .openssl"
- ".debug-compile !.sspi .nossl"
- ".authentication-tests !.ssl !.sspi"
- ".authentication-tests .openssl"
- ".latest .openssl !.nosasl .server"
- ".latest .nossl !.nosasl"
- ".3.6 .openssl !.nosasl .server"
# SUSE12 s390x is only supported by MongoDB 3.4+
- name: valgrind-ubuntu
display_name: "Valgrind Tests (Ubuntu 14.04)"
expansions:
CC: "gcc"
batchtime: 1440 # 1 day
run_on:
- ubuntu1404-build
tasks:
- ".debug-compile !.sspi .openssl !.sasl"
- ".debug-compile !.sspi .nossl !.sasl"
- ".test-valgrind"
libmongoc-1.9.2+dfsg/.evergreen/debug-core-evergreen.sh 0000775 0000000 0000000 00000000265 13226174053 0023014 0 ustar 00root root 0000000 0000000 #!/usr/bin/env bash
echo "Debugging core files"
shopt -s nullglob
for i in *.core; do
echo $i
echo "backtrace full" | ./libtool --mode execute gdb -q test-libmongoc $i
done
libmongoc-1.9.2+dfsg/.evergreen/download-mongodb.sh 0000775 0000000 0000000 00000031204 13226174053 0022247 0 ustar 00root root 0000000 0000000 #!/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
get_distro ()
{
if [ -f /etc/os-release ]; then
. /etc/os-release
DISTRO="${ID}-${VERSION_ID}"
elif command -v lsb_release 2>/dev/null; then
name=$(lsb_release -s -i)
if [ "$name" = "RedHatEnterpriseServer" ]; then # RHEL 6.2 at least
name="rhel"
fi
version=$(lsb_release -s -r)
DISTRO="${name}-${version}"
elif [ -f /etc/redhat-release ]; then
release=$(cat /etc/redhat-release)
if [[ "$release" =~ "Red Hat" ]]; then
name="rhel"
elif [[ "$release" =~ "Fedora" ]]; then
name="fedora"
fi
version=$(echo $release | sed 's/.*\([[:digit:]]\).*/\1/g')
DISTRO="${name}-${version}"
elif [ -f /etc/lsb-release ]; then
. /etc/lsb-release
DISTRO="${DISTRIB_ID}-${DISTRIB_RELEASE}"
fi
OS=$(uname -s)
MARCH=$(uname -m)
DISTRO=$(echo "$OS-$DISTRO-$MARCH" | tr '[:upper:]' '[:lower:]')
echo $DISTRO
}
# get_mongodb_download_url_for "linux-distro-version-architecture" "latest|34|32|30|28|26|24"
# Sets EXTRACT to aproprate extract command
# Sets MONGODB_DOWNLOAD_URL to the aproprate download url
get_mongodb_download_url_for ()
{
_DISTRO=$1
_VERSION=$2
VERSION_36="3.6.0-rc7"
VERSION_34="3.4.9"
VERSION_32="3.2.16"
VERSION_30="3.0.15"
VERSION_26="2.6.12"
EXTRACT="tar zxf"
# getdata matrix on:
# https://evergreen.mongodb.com/version/5797f0493ff12235e5001f05
case "$_DISTRO" in
darwin*)
MONGODB_LATEST="http://downloads.10gen.com/osx/mongodb-osx-x86_64-enterprise-latest.tgz"
MONGODB_36="http://downloads.10gen.com/osx/mongodb-osx-x86_64-enterprise-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/osx/mongodb-osx-x86_64-enterprise-${VERSION_34}.tgz"
MONGODB_32="http://downloads.10gen.com/osx/mongodb-osx-x86_64-enterprise-${VERSION_32}.tgz"
MONGODB_30="https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-${VERSION_30}.tgz"
MONGODB_26="https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-${VERSION_26}.tgz"
;;
linux-rhel-7.2-s390x)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-rhel72-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-rhel72-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-rhel72-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-rhel-7.1-ppc64le)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_34}.tgz"
MONGODB_32="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-rhel71-${VERSION_32}.tgz"
MONGODB_30=""
MONGODB_26=""
;;
linux-rhel-7.0*)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel70-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel70-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel70-${VERSION_34}.tgz"
MONGODB_32="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel70-${VERSION_32}.tgz"
MONGODB_30="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel70-${VERSION_30}.tgz"
MONGODB_26="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel70-${VERSION_26}.tgz"
;;
linux-rhel-6.2*)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel62-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel62-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel62-${VERSION_34}.tgz"
MONGODB_32="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel62-${VERSION_32}.tgz"
MONGODB_30="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel62-${VERSION_30}.tgz"
MONGODB_26="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-rhel62-${VERSION_26}.tgz"
;;
linux-rhel-5.5*)
MONGODB_LATEST="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel55-latest.tgz"
MONGODB_36="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel55-${VERSION_36}.tgz"
MONGODB_34="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel55-${VERSION_34}.tgz"
MONGODB_32="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel55-${VERSION_32}.tgz"
MONGODB_30="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel55-${VERSION_30}.tgz"
MONGODB_26=""
;;
linux-sles-12.1-s390x)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-suse12-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-suse12-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-suse12-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-debian-8*)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-debian81-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-debian81-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-debian81-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-ubuntu-16.04-s390x)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-ubuntu1604-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-ubuntu1604-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-s390x-enterprise-ubuntu1604-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-ubuntu-16.04-ppc64le)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-ubuntu1604-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-ubuntu1604-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-ppc64le-enterprise-ubuntu1604-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-ubuntu-16.04-aarch64)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-arm64-enterprise-ubuntu1604-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-arm64-enterprise-ubuntu1604-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-arm64-enterprise-ubuntu1604-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-ubuntu-16.04*)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1604-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1604-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1604-${VERSION_34}.tgz"
MONGODB_32=""
MONGODB_30=""
MONGODB_26=""
;;
linux-ubuntu-14.04*)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1404-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1404-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1404-${VERSION_34}.tgz"
MONGODB_32="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1404-${VERSION_32}.tgz"
MONGODB_30="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1404-${VERSION_30}.tgz"
MONGODB_26="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1404-${VERSION_26}.tgz"
;;
linux-ubuntu-12.04*)
MONGODB_LATEST="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1204-latest.tgz"
MONGODB_36="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1204-${VERSION_36}.tgz"
MONGODB_34="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1204-${VERSION_34}.tgz"
MONGODB_32="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1204-${VERSION_32}.tgz"
MONGODB_30="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1204-${VERSION_30}.tgz"
MONGODB_26="http://downloads.10gen.com/linux/mongodb-linux-x86_64-enterprise-ubuntu1204-${VERSION_26}.tgz"
;;
windows32*)
EXTRACT="/cygdrive/c/Progra~2/7-Zip/7z.exe x"
MONGODB_LATEST="https://fastdl.mongodb.org/win32/mongodb-win32-i386-latest.zip"
MONGODB_36="https://fastdl.mongodb.org/win32/mongodb-win32-i386-${VERSION_36}.zip"
MONGODB_34="https://fastdl.mongodb.org/win32/mongodb-win32-i386-${VERSION_34}.zip"
MONGODB_32="https://fastdl.mongodb.org/win32/mongodb-win32-i386-${VERSION_32}.zip"
MONGODB_30="https://fastdl.mongodb.org/win32/mongodb-win32-i386-${VERSION_30}.zip"
MONGODB_26="https://fastdl.mongodb.org/win32/mongodb-win32-i386-${VERSION_26}.zip"
;;
windows64*)
EXTRACT="/cygdrive/c/Progra~2/7-Zip/7z.exe x"
MONGODB_LATEST="https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-latest.zip"
MONGODB_36="https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-${VERSION_36}.zip"
MONGODB_34="https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-${VERSION_34}.zip"
MONGODB_32="https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-${VERSION_32}.zip"
MONGODB_30="https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-${VERSION_30}.zip"
MONGODB_26="https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-${VERSION_26}.zip"
;;
cygwin*)
EXTRACT="/cygdrive/c/Progra~2/7-Zip/7z.exe x"
MONGODB_LATEST="http://downloads.10gen.com/win32/mongodb-win32-x86_64-enterprise-windows-64-latest.zip"
MONGODB_36="http://downloads.10gen.com/win32/mongodb-win32-x86_64-enterprise-windows-64-${VERSION_36}.zip"
MONGODB_34="http://downloads.10gen.com/win32/mongodb-win32-x86_64-enterprise-windows-64-${VERSION_34}.zip"
MONGODB_32="http://downloads.10gen.com/win32/mongodb-win32-x86_64-enterprise-windows-64-${VERSION_32}.zip"
MONGODB_30="http://downloads.10gen.com/win32/mongodb-win32-x86_64-enterprise-windows-64-${VERSION_30}.zip"
MONGODB_26="http://downloads.10gen.com/win32/mongodb-win32-x86_64-enterprise-windows-64-${VERSION_26}.zip"
;;
*linux*x86_64)
MONGODB_LATEST="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-latest.tgz"
MONGODB_36="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-${VERSION_36}.tgz"
MONGODB_34="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-${VERSION_34}.tgz"
MONGODB_32="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-${VERSION_32}.tgz"
MONGODB_30="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-${VERSION_30}.tgz"
MONGODB_26="http://downloads.mongodb.org/linux/mongodb-linux-x86_64-${VERSION_26}.tgz"
;;
esac
MONGODB_DOWNLOAD_URL=""
case "$_VERSION" in
latest) MONGODB_DOWNLOAD_URL=$MONGODB_LATEST ;;
3.6) MONGODB_DOWNLOAD_URL=$MONGODB_36 ;;
3.4) MONGODB_DOWNLOAD_URL=$MONGODB_34 ;;
3.2) MONGODB_DOWNLOAD_URL=$MONGODB_32 ;;
3.0) MONGODB_DOWNLOAD_URL=$MONGODB_30 ;;
2.6) MONGODB_DOWNLOAD_URL=$MONGODB_26 ;;
esac
[ -z "$MONGODB_DOWNLOAD_URL" ] && MONGODB_DOWNLOAD_URL="Unknown version: $_VERSION for $_DISTRO"
echo $MONGODB_DOWNLOAD_URL
}
download_and_extract ()
{
MONGODB_DOWNLOAD_URL=$1
EXTRACT=$2
if ! test -d mongodb -a -x mongodb/bin/mongod; then
curl --retry 5 $MONGODB_DOWNLOAD_URL --silent --max-time 120 --fail --output mongodb-binaries.tgz
$EXTRACT mongodb-binaries.tgz
rm -rf mongodb*tgz mongodb/
mv mongodb* mongodb
chmod -R +x mongodb
find . -name vcredist_x64.exe -exec {} /install /quiet \;
fi
./mongodb/bin/mongod --version
}
libmongoc-1.9.2+dfsg/.evergreen/install-ssl.sh 0000664 0000000 0000000 00000003735 13226174053 0021267 0 ustar 00root root 0000000 0000000 #!/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
SSL=${SSL:-no}
INSTALL_DIR=$(pwd)/install-dir
install_openssl_fips() {
curl --retry 5 -o fips.tar.gz https://www.openssl.org/source/openssl-fips-2.0.14.tar.gz
tar zxvf fips.tar.gz
cd openssl-fips-2.0.14
./config --prefix=$INSTALL_DIR -fPIC
cpus=$(grep -c '^processor' /proc/cpuinfo)
make -j${cpus} || true
make install || true
cd ..
SSL_EXTRA_FLAGS="--openssldir=$INSTALL_DIR --with-fipsdir=$INSTALL_DIR fips"
SSL=${SSL%-fips}
}
install_openssl () {
SSL_VERSION=${SSL##openssl-}
tmp=$(echo $SSL_VERSION | tr . _)
curl -L --retry 5 -o ssl.tar.gz https://github.com/openssl/openssl/archive/OpenSSL_${tmp}.tar.gz
tar zxvf ssl.tar.gz
cd openssl-OpenSSL_$tmp
./config --prefix=$INSTALL_DIR $SSL_EXTRA_FLAGS shared -fPIC
cpus=$(grep -c '^processor' /proc/cpuinfo)
make -j32 || true
make -j${cpus} || true
make install || true
cd ..
export PKG_CONFIG_PATH=$INSTALL_DIR/lib/pkgconfig
export EXTRA_LIB_PATH="$INSTALL_DIR/lib"
SSL="openssl";
}
install_libressl () {
curl --retry 5 -o ssl.tar.gz https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/$SSL.tar.gz
tar zxvf ssl.tar.gz
cd $SSL
./configure --prefix=$INSTALL_DIR
cpus=$(grep -c '^processor' /proc/cpuinfo)
make -j${cpus}
make install
cd ..
export PKG_CONFIG_PATH=$INSTALL_DIR/lib/pkgconfig
export EXTRA_LIB_PATH="$INSTALL_DIR/lib"
SSL="libressl";
}
# Get the kernel name, lowercased
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
echo "OS: $OS"
# Automatically retrieve the machine architecture, lowercase, unless provided
# as an environment variable (e.g. to force 32bit)
[ -z "$MARCH" ] && MARCH=$(uname -m | tr '[:upper:]' '[:lower:]')
case "$SSL" in
openssl-*-fips)
install_openssl_fips;
install_openssl;
;;
openssl-*)
install_openssl;
;;
libressl-*)
install_libressl;
;;
esac
libmongoc-1.9.2+dfsg/.evergreen/integration-tests.sh 0000775 0000000 0000000 00000010027 13226174053 0022500 0 ustar 00root root 0000000 0000000 #!/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
DIR=$(dirname $0)
# Functions to fetch MongoDB binaries
. $DIR/download-mongodb.sh
get_distro
get_mongodb_download_url_for "$DISTRO" "$MONGODB_VERSION"
download_and_extract "$MONGODB_DOWNLOAD_URL" "$EXTRACT"
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
AUTH=${AUTH:-noauth}
SSL=${SSL:-nossl}
TOPOLOGY=${TOPOLOGY:-server}
case "$OS" in
cygwin*)
export MONGO_ORCHESTRATION_HOME="c:/data/MO"
;;
*)
export MONGO_ORCHESTRATION_HOME=$(pwd)"/MO"
;;
esac
rm -rf $MONGO_ORCHESTRATION_HOME
mkdir -p $MONGO_ORCHESTRATION_HOME/lib
mkdir -p $MONGO_ORCHESTRATION_HOME/db
if [ -z $ORCHESTRATION_FILE ]; then
ORCHESTRATION_FILE="basic"
fi
if [ "$AUTH" = "auth" ]; then
ORCHESTRATION_FILE="auth"
MONGO_SHELL_CONNECTION_FLAGS="-ubob -ppwd123"
fi
if [ "$IPV4_ONLY" = "on" ]; then
ORCHESTRATION_FILE="${ORCHESTRATION_FILE}-ipv4-only"
fi
if [ "$SSL" != "nossl" ]; then
cp -f tests/x509gen/* $MONGO_ORCHESTRATION_HOME/lib/
# find print0 and xargs -0 not available on Solaris. Lets hope for good paths
find orchestration_configs -name \*.json | xargs perl -p -i -e "s|/tmp/orchestration-home|$MONGO_ORCHESTRATION_HOME/lib|g"
ORCHESTRATION_FILE="${ORCHESTRATION_FILE}-ssl"
fi
export ORCHESTRATION_FILE="orchestration_configs/${TOPOLOGY}s/${ORCHESTRATION_FILE}.json"
export ORCHESTRATION_URL="http://localhost:8889/v1/${TOPOLOGY}s"
export TMPDIR=$MONGO_ORCHESTRATION_HOME/db
echo From shell `date` > $MONGO_ORCHESTRATION_HOME/server.log
case "$OS" in
cygwin*)
# Python has problems with unix style paths in cygwin. Must use c:\\ paths
rm -rf /cygdrive/c/mongodb
cp -r mongodb /cygdrive/c/mongodb
echo "{ \"releases\": { \"default\": \"c:\\\\mongodb\\\\bin\" }}" > orchestration.config
# Make sure MO is running latest version
python.exe -m virtualenv venv
cd venv
. Scripts/activate
git clone https://github.com/10gen/mongo-orchestration.git
cd mongo-orchestration
pip install .
cd ../..
ls `pwd`/mongodb/bin/mongo* || true
nohup mongo-orchestration -f orchestration.config -e default --socket-timeout-ms=60000 --bind=127.0.0.1 --enable-majority-read-concern -s wsgiref start > $MONGO_ORCHESTRATION_HOME/out.log 2> $MONGO_ORCHESTRATION_HOME/err.log < /dev/null &
if [ "$SSL" != "nossl" ]; then
export MONGO_SHELL_CONNECTION_FLAGS="$MONGO_SHELL_CONNECTION_FLAGS --host localhost --ssl --sslCAFile=$MONGO_ORCHESTRATION_HOME/lib/ca.pem --sslPEMKeyFile=$MONGO_ORCHESTRATION_HOME/lib/client.pem"
fi
;;
*)
echo "{ \"releases\": { \"default\": \"`pwd`/mongodb/bin\" } }" > orchestration.config
# Make sure MO is running latest version
python -m virtualenv venv
cd venv
. bin/activate
git clone https://github.com/10gen/mongo-orchestration.git
cd mongo-orchestration
# Our zSeries machines are static-provisioned, cache corruptions persist.
if [ $(uname -m) = "s390x" ]; then
echo "Disabling pip cache"
PIP_PARAM="--no-cache-dir"
fi
pip $PIP_PARAM install .
cd ../..
nohup mongo-orchestration -f orchestration.config -e default --socket-timeout-ms=60000 --bind=127.0.0.1 --enable-majority-read-concern start > $MONGO_ORCHESTRATION_HOME/out.log 2> $MONGO_ORCHESTRATION_HOME/err.log < /dev/null &
if [ "$SSL" != "nossl" ]; then
export MONGO_SHELL_CONNECTION_FLAGS="$MONGO_SHELL_CONNECTION_FLAGS --host localhost --ssl --sslCAFile=$MONGO_ORCHESTRATION_HOME/lib/ca.pem --sslPEMKeyFile=$MONGO_ORCHESTRATION_HOME/lib/client.pem"
fi
;;
esac
sleep 15
curl http://localhost:8889/ --silent --max-time 120 --fail
sleep 5
pwd
curl --silent --data @"$ORCHESTRATION_FILE" "$ORCHESTRATION_URL" --max-time 300 --fail
sleep 15
`pwd`/mongodb/bin/mongo $MONGO_SHELL_CONNECTION_FLAGS --eval 'printjson(db.serverBuildInfo())' admin
`pwd`/mongodb/bin/mongo $MONGO_SHELL_CONNECTION_FLAGS --eval 'printjson(db.isMaster())' admin
libmongoc-1.9.2+dfsg/.evergreen/kerberos.realm 0000664 0000000 0000000 00000000146 13226174053 0021315 0 ustar 00root root 0000000 0000000 [realms]
LDAPTEST.10GEN.CC = {
kdc = ldaptest.10gen.cc
admin_server = ldaptest.10gen.cc
}
libmongoc-1.9.2+dfsg/.evergreen/link-sample-program-mingw.cmd 0000664 0000000 0000000 00000005347 13226174053 0024154 0 ustar 00root root 0000000 0000000 rem Ensure Cygwin executables like sh.exe are not in PATH
rem set PATH=C:\Windows\system32;C:\Windows
echo on
echo
set CMAKE_FLAGS=-DENABLE_SSL=OPENSSL -DENABLE_SASL=CYRUS
set TAR=C:\cygwin\bin\tar
set CMAKE=C:\cmake\bin\cmake
set CMAKE_MAKE_PROGRAM=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\mingw32-make.exe
set CC=C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin\gcc.exe
rem Ensure Cygwin executables like sh.exe are not in PATH
set PATH=C:\cygwin\bin;C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongoc;src\libbson
set SRCROOT=%CD%
set BUILD_DIR=%CD%\build-dir
rmdir /S /Q %BUILD_DIR%
mkdir %BUILD_DIR%
set INSTALL_DIR=%CD%\install-dir
rmdir /S /Q %INSTALL_DIR%
mkdir %INSTALL_DIR%
set PATH=%PATH%;"c:\Program Files (x86)\MSBuild\14.0\Bin"
set PATH=%PATH%;"c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin"
set PATH=%PATH%;%INSTALL_DIR%\bin
cd %BUILD_DIR%
%TAR% xf ..\..\mongoc.tar.gz -C . --strip-components=1
rem Build libbson, with flags that the downstream R driver mongolite uses
cd src\libbson
%CMAKE% -G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM=%CMAKE_MAKE_PROGRAM% -DCMAKE_CFLAGS="-std=c99 -pedantic" -DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% .
%CMAKE_MAKE_PROGRAM%
if errorlevel 1 (
exit /B 1
)
%CMAKE_MAKE_PROGRAM% install
if errorlevel 1 (
exit /B 1
)
cd ..\..
rem Build libmongoc, with flags that the downstream R driver mongolite uses
%CMAKE% -G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM=%CMAKE_MAKE_PROGRAM% -DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% -DCMAKE_CFLAGS="-std=c99 -pedantic" -DCMAKE_PREFIX_PATH=%INSTALL_DIR%\lib\cmake %CMAKE_FLAGS% .
%CMAKE_MAKE_PROGRAM%
if errorlevel 1 (
exit /B 1
)
%CMAKE_MAKE_PROGRAM% install
if errorlevel 1 (
exit /B 1
)
call ..\.evergreen\check-installed-files.bat
if errorlevel 1 (
exit /B 1
)
if not exist %INSTALL_DIR%\lib\libmongoc-static-1.0.a (
echo libmongoc-static-1.0.a missing!
exit /B 1
) else (
echo libmongoc-static-1.0.a check ok
)
cd %SRCROOT%
rem Test our pkg-config file
set EXAMPLE_DIR=%SRCROOT%\examples\
cd %EXAMPLE_DIR%
rem Proceed from here once we have pkg-config on Windows
exit /B 0
set PKG_CONFIG_PATH=%INSTALL_DIR%\lib\pkgconfig
rem http://stackoverflow.com/questions/2323292
for /f %%i in ('pkg-config --libs --cflags libmongoc-1.0') do set PKG_CONFIG_OUT=%%i
echo PKG_CONFIG_OUT is %PKG_CONFIG_OUT%
%CC% -o hello_mongoc hello_mongoc.c %PKG_CONFIG_OUT%
rem Works on windows-64-vs2013-compile, VS 2013 is a.k.a. "Visual Studio 12"
rem And yes, they should've named the flag "dependencies".
"c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\dumpbin.exe" /dependents Debug\hello_mongoc.exe
rem Add DLLs to PATH
set PATH=%PATH%;%INSTALL_DIR%\bin
Debug\hello_mongoc.exe %MONGODB_EXAMPLE_URI%
libmongoc-1.9.2+dfsg/.evergreen/link-sample-program-msvc.cmd 0000664 0000000 0000000 00000005752 13226174053 0024003 0 ustar 00root root 0000000 0000000 REM Supported/used environment variables:
REM LINK_STATIC Whether to statically link to libmongoc
REM ENABLE_SSL Enable SSL with Microsoft Secure Channel
REM ENABLE_SNAPPY Enable Snappy compression
rem Ensure Cygwin executables like sh.exe are not in PATH
rem set PATH=C:\Windows\system32;C:\Windows
echo on
echo
set TAR=C:\cygwin\bin\tar
set CMAKE=C:\cmake\bin\cmake
set SRCROOT=%CD%
set BUILD_DIR=%CD%\build-dir
rmdir /S /Q %BUILD_DIR%
mkdir %BUILD_DIR%
set INSTALL_DIR=%CD%\install-dir
rmdir /S /Q %INSTALL_DIR%
mkdir %INSTALL_DIR%
set PATH=%PATH%;"c:\Program Files (x86)\MSBuild\14.0\Bin"
set PATH=%PATH%;"c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin"
set PATH=%PATH%;%INSTALL_DIR%\bin
cd %BUILD_DIR%
%TAR% xf ..\..\mongoc.tar.gz -C . --strip-components=1
rem Build libbson
cd src\libbson
%CMAKE% -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% .
msbuild.exe /m ALL_BUILD.vcxproj
msbuild.exe INSTALL.vcxproj
cd %BUILD_DIR%
if "%ENABLE_SNAPPY%"=="1" (
rem Enable Snappy
curl --silent --retry 5 -LO https://github.com/google/snappy/archive/1.1.7.tar.gz
%TAR% xzf 1.1.7.tar.gz
cd snappy-1.1.7
%CMAKE% -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% .
msbuild.exe /m ALL_BUILD.vcxproj
msbuild.exe INSTALL.vcxproj
set SNAPPY_OPTION=-DENABLE_SNAPPY=ON
) else (
set SNAPPY_OPTION=-DENABLE_SNAPPY=OFF
)
cd %BUILD_DIR%
rem Build libmongoc
if "%ENABLE_SSL%"=="1" (
%CMAKE% -G "Visual Studio 14 2015 Win64" -DCMAKE_PREFIX_PATH=%INSTALL_DIR%\lib\cmake -DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% -DENABLE_SSL=WINDOWS .
) else (
%CMAKE% -G "Visual Studio 14 2015 Win64" -DCMAKE_PREFIX_PATH=%INSTALL_DIR%\lib\cmake -DCMAKE_INSTALL_PREFIX=%INSTALL_DIR% -DENABLE_SSL=OFF %ENABLE_SNAPPY_OPTION% .
)
msbuild.exe /m ALL_BUILD.vcxproj
msbuild.exe INSTALL.vcxproj
call ..\.evergreen\check-installed-files.bat
if errorlevel 1 (
exit /B %errorlevel%
)
rem Shim library around the DLL.
set SHIM=%INSTALL_DIR%\lib\mongoc-1.0.lib
if not exist %SHIM% (
echo %SHIM% is missing!
exit /B 1
) else (
echo %SHIM% check ok
)
if not exist %INSTALL_DIR%\lib\mongoc-static-1.0.lib (
echo mongoc-static-1.0.lib missing!
exit /B 1
) else (
echo mongoc-static-1.0.lib check ok
)
cd %SRCROOT%
rem Test our CMake package config file with CMake's find_package command.
set EXAMPLE_DIR=%SRCROOT%\examples\cmake\find_package
if "%LINK_STATIC%"=="1" (
set EXAMPLE_DIR="%EXAMPLE_DIR%_static"
)
cd %EXAMPLE_DIR%
if "%ENABLE_SSL%"=="1" (
cp ..\..\..\tests\x509gen\client.pem .
cp ..\..\..\tests\x509gen\ca.pem .
set MONGODB_EXAMPLE_URI="mongodb://localhost/?ssl=true&sslclientcertificatekeyfile=client.pem&sslcertificateauthorityfile=ca.pem&sslallowinvalidhostnames=true"
)
%CMAKE% -G "Visual Studio 14 2015 Win64" -DCMAKE_PREFIX_PATH=%INSTALL_DIR%\lib\cmake .
msbuild.exe ALL_BUILD.vcxproj
rem Yes, they should've named it "dependencies".
dumpbin.exe /dependents Debug\hello_mongoc.exe
Debug\hello_mongoc.exe %MONGODB_EXAMPLE_URI%
libmongoc-1.9.2+dfsg/.evergreen/link-sample-program.sh 0000664 0000000 0000000 00000014722 13226174053 0022701 0 ustar 00root root 0000000 0000000 #!/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
# Supported/used environment variables:
# BUILD_MONGOC_WITH_CMAKE Build mongoc with CMake. Default: use Autotools.
# LINK_STATIC Whether to statically link to libmongoc
# BUILD_SAMPLE_WITH_CMAKE Link program w/ CMake. Default: use pkg-config.
# ENABLE_SSL Set -DENABLE_SSL or --enable-ssl.
# ENABLE_SNAPPY Set -DENABLE_SNAPPY or --with-snappy.
# CMAKE Path to cmake executable.
echo "BUILD_MONGOC_WITH_CMAKE=$BUILD_MONGOC_WITH_CMAKE LINK_STATIC=$LINK_STATIC BUILD_SAMPLE_WITH_CMAKE=$BUILD_SAMPLE_WITH_CMAKE"
if command -v gtar 2>/dev/null; then
TAR=gtar
else
TAR=tar
fi
# Get the kernel name, lowercased
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
echo "OS: $OS"
if [ "$OS" = "darwin" ]; then
if [ ! "$CMAKE" ]; then
if [ -f ""/Applications/cmake-3.2.2-Darwin-x86_64/CMake.app/Contents/bin/cmake" ]; then
CMAKE="/Applications/cmake-3.2.2-Darwin-x86_64/CMake.app/Contents/bin/cmake"
elif [ -f ""/Applications/Cmake.app/Contents/bin/cmake" ]; then
CMAKE="/Applications/Cmake.app/Contents/bin/cmake"
else
CMAKE=cmake
fi
fi
SO=dylib
LIB_SO=libmongoc-1.0.0.dylib
LDD="otool -L"
else
CMAKE=${CMAKE:-/opt/cmake/bin/cmake}
SO=so
LIB_SO=libmongoc-1.0.so.0
LDD=ldd
fi
SRCROOT=`pwd`
BUILD_DIR=$(pwd)/build-dir
rm -rf $BUILD_DIR
mkdir $BUILD_DIR
INSTALL_DIR=$(pwd)/install-dir
rm -rf $INSTALL_DIR
mkdir -p $INSTALL_DIR
cd $BUILD_DIR
$TAR xf ../../mongoc.tar.gz -C . --strip-components=1
if [ "$ENABLE_SNAPPY" ]; then
SNAPPY_CONFIGURE_OPTION="--with-snappy=system"
SNAPPY_CMAKE_OPTION="-DENABLE_SNAPPY=ON"
else
SNAPPY_CONFIGURE_OPTION="--with-snappy=no"
SNAPPY_CMAKE_OPTION="-DENABLE_SNAPPY=OFF"
fi
if [ "$ENABLE_SSL" ]; then
SSL_CONFIGURE_OPTION="--enable-ssl"
if [ "$OS" = "darwin" ]; then
SSL_CMAKE_OPTION="-DENABLE_SSL:BOOL=DARWIN"
else
SSL_CMAKE_OPTION="-DENABLE_SSL:BOOL=OPENSSL"
fi
else
SSL_CONFIGURE_OPTION="--disable-ssl"
SSL_CMAKE_OPTION="-DENABLE_SSL:BOOL=OFF"
fi
if [ "$LINK_STATIC" ]; then
STATIC_CONFIGURE_OPTION="--enable-static"
STATIC_CMAKE_OPTION="-DENABLE_STATIC=ON -DENABLE_TESTS=ON"
else
STATIC_CMAKE_OPTION="-DENABLE_STATIC=OFF -DENABLE_TESTS=OFF"
fi
if [ "$BUILD_MONGOC_WITH_CMAKE" ]; then
# Our CMake script doesn't build bundled libbson (CDRIVER-1948) so fake it.
cd src/libbson
$CMAKE -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR $STATIC_CMAKE_OPTION .
make
make install
cd ../..
$CMAKE -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR -DCMAKE_PREFIX_PATH=$INSTALL_DIR/lib/cmake $SSL_CMAKE_OPTION $SNAPPY_CMAKE_OPTION $STATIC_CMAKE_OPTION .
make
make install
else
./configure --prefix=$INSTALL_DIR --disable-examples $SSL_CONFIGURE_OPTION $SNAPPY_CONFIGURE_OPTION $STATIC_CONFIGURE_OPTION --with-libbson=bundled
make
make install
fi
LIB=$INSTALL_DIR/lib/libmongoc-1.0.$SO
if test ! -L $LIB; then
echo "$LIB should be a symlink"
exit 1
fi
TARGET=$(readlink $LIB)
if test ! -f $INSTALL_DIR/lib/$TARGET; then
echo "$LIB target $INSTALL_DIR/lib/$TARGET is missing!"
exit 1
else
echo "$LIB target $INSTALL_DIR/lib/$TARGET check ok"
fi
if test ! -f $INSTALL_DIR/lib/$LIB_SO; then
echo "$LIB_SO missing!"
exit 1
else
echo "$LIB_SO check ok"
fi
if test ! -f $INSTALL_DIR/lib/pkgconfig/libmongoc-1.0.pc; then
echo "libmongoc-1.0.pc missing!"
exit 1
else
echo "libmongoc-1.0.pc check ok"
fi
if test ! -f $INSTALL_DIR/lib/cmake/libmongoc-1.0/libmongoc-1.0-config.cmake; then
echo "libmongoc-1.0-config.cmake missing!"
exit 1
else
echo "libmongoc-1.0-config.cmake check ok"
fi
if test ! -f $INSTALL_DIR/lib/cmake/libmongoc-1.0/libmongoc-1.0-config-version.cmake; then
echo "libmongoc-1.0-config-version.cmake missing!"
exit 1
else
echo "libmongoc-1.0-config-version.cmake check ok"
fi
if [ "$LINK_STATIC" ]; then
if test ! -f $INSTALL_DIR/lib/libmongoc-static-1.0.a; then
echo "libmongoc-static-1.0.a missing!"
exit 1
else
echo "libmongoc-static-1.0.a check ok"
fi
if test ! -f $INSTALL_DIR/lib/pkgconfig/libmongoc-static-1.0.pc; then
echo "libmongoc-static-1.0.pc missing!"
exit 1
else
echo "libmongoc-static-1.0.pc check ok"
fi
if test ! -f $INSTALL_DIR/lib/cmake/libmongoc-static-1.0/libmongoc-static-1.0-config.cmake; then
echo "libmongoc-static-1.0-config.cmake missing!"
exit 1
else
echo "libmongoc-static-1.0-config.cmake check ok"
fi
if test ! -f $INSTALL_DIR/lib/cmake/libmongoc-static-1.0/libmongoc-static-1.0-config-version.cmake; then
echo "libmongoc-static-1.0-config-version.cmake missing!"
exit 1
else
echo "libmongoc-static-1.0-config-version.cmake check ok"
fi
else
if test -f $INSTALL_DIR/lib/libmongoc-static-1.0.a; then
echo "libmongoc-static-1.0.a shouldn't have been installed"
exit 1
fi
if test -f $INSTALL_DIR/lib/libmongoc-1.0.a; then
echo "libmongoc-1.0.a shouldn't have been installed"
exit 1
fi
if test -f $INSTALL_DIR/lib/pkgconfig/libmongoc-static-1.0.pc; then
echo "libmongoc-static-1.0.pc shouldn't have been installed"
exit 1
fi
if test -f $INSTALL_DIR/lib/cmake/libmongoc-static-1.0/libmongoc-static-1.0-config.cmake; then
echo "libmongoc-static-1.0-config.cmake shouldn't have been installed"
exit 1
fi
if test -f $INSTALL_DIR/lib/cmake/libmongoc-static-1.0/libmongoc-static-1.0-config-version.cmake; then
echo "libmongoc-static-1.0-config-version.cmake shouldn't have been installed"
exit 1
fi
fi
cd $SRCROOT
if [ "$BUILD_SAMPLE_WITH_CMAKE" ]; then
# Test our CMake package config file with CMake's find_package command.
EXAMPLE_DIR=$SRCROOT/examples/cmake/find_package
if [ "$LINK_STATIC" ]; then
EXAMPLE_DIR="${EXAMPLE_DIR}_static"
fi
cd $EXAMPLE_DIR
$CMAKE -DCMAKE_PREFIX_PATH=$INSTALL_DIR/lib/cmake .
make
else
# Test our pkg-config file.
export PKG_CONFIG_PATH=$INSTALL_DIR/lib/pkgconfig
cd $SRCROOT/examples
if [ "$LINK_STATIC" ]; then
echo "pkg-config output:"
echo $(pkg-config --libs --cflags libmongoc-static-1.0)
sh compile-with-pkg-config-static.sh
else
echo "pkg-config output:"
echo $(pkg-config --libs --cflags libmongoc-1.0)
sh compile-with-pkg-config.sh
fi
fi
if [ ! "$LINK_STATIC" ]; then
if [ $(uname) = "Darwin" ]; then
export DYLD_LIBRARY_PATH=$INSTALL_DIR/lib
else
export LD_LIBRARY_PATH=$INSTALL_DIR/lib
fi
fi
echo "ldd hello_mongoc:"
$LDD hello_mongoc
./hello_mongoc
libmongoc-1.9.2+dfsg/.evergreen/llvm-gcov.sh 0000775 0000000 0000000 00000000044 13226174053 0020721 0 ustar 00root root 0000000 0000000 #!/bin/bash
exec llvm-cov gcov "$@"
libmongoc-1.9.2+dfsg/.evergreen/man-page-image-list.sh 0000664 0000000 0000000 00000001244 13226174053 0022531 0 ustar 00root root 0000000 0000000 #!/bin/sh
# Make index.html of all man page images so we can see them in Evergreen.
echo "
Man Page Images
"
for path in $1/*.png; do
png=$(basename $path)
case "$png" in
# These pages include all others, CDRIVER-2035
bson_api.3.png)
continue
;;
bson_index.3.png)
continue
;;
*)
echo "
${png}

"
;;
esac
done
echo ""
libmongoc-1.9.2+dfsg/.evergreen/regedit.base64 0000664 0000000 0000000 00000003025 13226174053 0021107 0 ustar 00root root 0000000 0000000 //5XAGkAbgBkAG8AdwBzACAAUgBlAGcAaQBzAHQAcgB5ACAARQBkAGkAdABvAHIAIABWAGUAcgBz
AGkAbwBuACAANQAuADAAMAANAAoADQAKAFsASABLAEUAWQBfAEwATwBDAEEATABfAE0AQQBDAEgA
SQBOAEUAXABTAFkAUwBUAEUATQBcAEMAbwBuAHQAcgBvAGwAUwBlAHQAMAAwADEAXABDAG8AbgB0
AHIAbwBsAFwATABzAGEAXABLAGUAcgBiAGUAcgBvAHMAXABEAG8AbQBhAGkAbgBzAF0ADQAKAA0A
CgBbAEgASwBFAFkAXwBMAE8AQwBBAEwAXwBNAEEAQwBIAEkATgBFAFwAUwBZAFMAVABFAE0AXABD
AG8AbgB0AHIAbwBsAFMAZQB0ADAAMAAxAFwAQwBvAG4AdAByAG8AbABcAEwAcwBhAFwASwBlAHIA
YgBlAHIAbwBzAFwARABvAG0AYQBpAG4AcwBcAEwARABBAFAAVABFAFMAVAAuADEAMABHAEUATgAu
AEMAQwBdAA0ACgAiAEsAZABjAE4AYQBtAGUAcwAiAD0AaABlAHgAKAA3ACkAOgA2AGMALAAwADAA
LAA2ADQALAAwADAALAA2ADEALAAwADAALAA3ADAALAAwADAALAA3ADQALAAwADAALAA2ADUALAAw
ADAALAA3ADMALAAwADAALAA3ADQALAAwADAALAAyAGUALAAwADAALAAzADEALAAwADAALABcAA0A
CgAgACAAMwAwACwAMAAwACwANgA3ACwAMAAwACwANgA1ACwAMAAwACwANgBlACwAMAAwACwAMgBl
ACwAMAAwACwANgAzACwAMAAwACwANgAzACwAMAAwACwAMAAwACwAMAAwACwAMAAwACwAMAAwAA0A
CgANAAoAWwBIAEsARQBZAF8ATABPAEMAQQBMAF8ATQBBAEMASABJAE4ARQBcAFMAWQBTAFQARQBN
AFwAQwBvAG4AdAByAG8AbABTAGUAdAAwADAAMQBcAEMAbwBuAHQAcgBvAGwAXABMAHMAYQBcAEsA
ZQByAGIAZQByAG8AcwBcAEQAbwBtAGEAaQBuAHMAXABMAEQAQQBQAFQARQBTAFQAMgAuADEAMABH
AEUATgAuAEMAQwBdAA0ACgAiAEsAZABjAE4AYQBtAGUAcwAiAD0AaABlAHgAKAA3ACkAOgA2AGMA
LAAwADAALAA2ADQALAAwADAALAA2ADEALAAwADAALAA3ADAALAAwADAALAA3ADQALAAwADAALAA2
ADUALAAwADAALAA3ADMALAAwADAALAA3ADQALAAwADAALAAyAGUALAAwADAALAAzADEALAAwADAA
LABcAA0ACgAgACAAMwAwACwAMAAwACwANgA3ACwAMAAwACwANgA1ACwAMAAwACwANgBlACwAMAAw
ACwAMgBlACwAMAAwACwANgAzACwAMAAwACwANgAzACwAMAAwACwAMAAwACwAMAAwACwAMAAwACwA
MAAwAA0ACgANAAoA
libmongoc-1.9.2+dfsg/.evergreen/run-auth-tests.sh 0000664 0000000 0000000 00000010212 13226174053 0021711 0 ustar 00root root 0000000 0000000 #!/bin/sh
set -o errexit # Exit the script with error if any of the commands fail
# AUTH_HOST=${auth_host} # Evergreen variable
# AUTH_PLAIN=${auth_plain} # Evergreen variable
# AUTH_MONGODBCR=${auth_mongodbcr} # Evergreen variable
# AUTH_GSSAPI=${auth_gssapi} # Evergreen variable
# AUTH_CROSSREALM=${auth_crossrealm} # Evergreen variable
# AUTH_GSSAPI_UTF8=${auth_gssapi_utf8} # Evergreen variable
# ATLAS_FREE=${atlas_free} # Evergreen variable
# ATLAS_REPLSET=${atlas_replset} # Evergreen variable
# ATLAS_SHARD=${atlas_shard} # Evergreen variable
C_TIMEOUT="connectTimeoutMS=30000&serverSelectionTryOnce=false"
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
if grep -q "#define MONGOC_ENABLE_SASL 1" src/mongoc/mongoc-config.h; then
SASL=1
else
SASL=0
fi
if grep -q "#define MONGOC_ENABLE_SSL 1" src/mongoc/mongoc-config.h; then
SSL=1
else
SSL=0
fi
case "$OS" in
cygwin*)
export PATH=$PATH:`pwd`/tests:`pwd`/Debug:`pwd`/src/libbson/Debug
chmod +x ./Debug/* src/libbson/Debug/*
PING="./Debug/mongoc-ping.exe"
TEST_GSSAPI="./Debug/test-mongoc-gssapi.exe"
;;
darwin)
sed -i'.bak' 's/\/data\/mci\/[a-z0-9]\{32\}\/mongoc/./g' mongoc-ping
sed -i'.bak' 's/\/data\/mci\/[a-z0-9]\{32\}\/mongoc/./g' test-mongoc-gssapi
export DYLD_LIBRARY_PATH="install-dir/lib:.libs:src/libbson/.libs"
PING="./mongoc-ping"
TEST_GSSAPI="./test-mongoc-gssapi"
;;
*)
# This libtool wrapper script was built in a unique dir like
# "/data/mci/998e754a0d1ed79b8bf733f405b87778/mongoc",
# replace its absolute path with "." so it can run in the CWD.
sed -i'' 's/\/data\/mci\/[a-z0-9]\{32\}\/mongoc/./g' mongoc-ping
sed -i'' 's/\/data\/mci\/[a-z0-9]\{32\}\/mongoc/./g' test-mongoc-gssapi
export LD_LIBRARY_PATH="install-dir/lib:.libs:src/libbson/.libs"
PING="./mongoc-ping"
TEST_GSSAPI="./test-mongoc-gssapi"
esac
if test -f /tmp/drivers.keytab; then
kinit -k -t /tmp/drivers.keytab -p drivers@LDAPTEST.10GEN.CC || true
fi
# Archlinux (which we use for testing various self-installed OpenSSL versions)
# Stores their trust list here. We need to copy it to our custom installed
# OpenSSL trust store.
# LibreSSL bundle their own trust store (in install-dir/etc/ssl/cert.pem)
cp /etc/ca-certificates/extracted/tls-ca-bundle.pem install-dir/ssl/cert.pem || true
# OpenSSL fips enabled path
cp /etc/ca-certificates/extracted/tls-ca-bundle.pem install-dir/cert.pem || true
export PATH=install-dir/bin:$PATH
openssl version || true
ulimit -c unlimited || true
if [ $SSL -eq 1 ]; then
# FIXME: CDRIVER-2008
if [ "${OS%_*}" != "cygwin" ]; then
echo "Authenticating using X.509"
$PING "mongodb://CN=client,OU=kerneluser,O=10Gen,L=New York City,ST=New York,C=US@${AUTH_HOST}/?ssl=true&authMechanism=MONGODB-X509&sslClientCertificateKeyFile=./tests/x509gen/legacy-x509.pem&sslCertificateAuthorityFile=tests/x509gen/legacy-ca.crt&sslAllowInvalidHostnames=true&${C_TIMEOUT}"
fi
echo "Connecting to Atlas Free Tier"
$PING "$ATLAS_FREE&${C_TIMEOUT}"
echo "Connecting to Atlas Replica Set"
$PING "$ATLAS_REPLSET&${C_TIMEOUT}"
echo "Connecting to Atlas Sharded Cluster"
$PING "$ATLAS_SHARD&${C_TIMEOUT}"
fi
echo "Authenticating using PLAIN"
$PING "mongodb://${AUTH_PLAIN}@${AUTH_HOST}/?authMechanism=PLAIN&${C_TIMEOUT}"
echo "Authenticating using MONGODB-CR"
$PING "mongodb://${AUTH_MONGODBCR}@${AUTH_HOST}/mongodb-cr?authMechanism=MONGODB-CR&${C_TIMEOUT}"
if [ $SASL -eq 1 ]; then
echo "Authenticating using GSSAPI"
$PING "mongodb://${AUTH_GSSAPI}@${AUTH_HOST}/?authMechanism=GSSAPI&${C_TIMEOUT}"
echo "Test threaded GSSAPI auth"
MONGOC_TEST_GSSAPI_HOST="${AUTH_HOST}" MONGOC_TEST_GSSAPI_USER="${AUTH_GSSAPI}" $TEST_GSSAPI
echo "Threaded GSSAPI auth OK"
if [ "${OS%_*}" = "cygwin" ]; then
echo "Authenticating using GSSAPI (service realm: LDAPTEST.10GEN.CC)"
$PING "mongodb://${AUTH_CROSSREALM}@${AUTH_HOST}/?authMechanism=GSSAPI&authMechanismProperties=SERVICE_REALM:LDAPTEST.10GEN.CC&${C_TIMEOUT}"
echo "Authenticating using GSSAPI (UTF-8 credentials)"
$PING "mongodb://${AUTH_GSSAPI_UTF8}@${AUTH_HOST}/?authMechanism=GSSAPI&${C_TIMEOUT}"
fi
fi
libmongoc-1.9.2+dfsg/.evergreen/run-tests-mingw.bat 0000664 0000000 0000000 00000001325 13226174053 0022232 0 ustar 00root root 0000000 0000000 set PATH=C:\Windows\system32;C:\Windows;C:\mingw-w64\x86_64-4.9.1-posix-seh-rt_v3-rev1\mingw64\bin;C:\mongo-c-driver\bin
rem "make install" would work, except we run tests on different Evergreen hosts,
rem in different working directories, than where the driver was built. This
rem causes errors in "make install" like:
rem CMake Error at cmake_install cannot find
rem "C:/data/mci/d3ba3391950aca9119e841818a8884bc/mongoc/src/libbson/libbson-1.0.dll"
rem
rem So just copy files manually
rmdir /Q /S C:\mongo-c-driver
md C:\mongo-c-driver
md C:\mongo-c-driver\bin
copy /Y libmongoc-1.0.dll C:\mongo-c-driver\bin
copy /Y src\libbson\libbson-1.0.dll C:\mongo-c-driver\bin
test-libmongoc.exe --no-fork -d -F test-results.json
libmongoc-1.9.2+dfsg/.evergreen/run-tests.sh 0000775 0000000 0000000 00000006456 13226174053 0020774 0 ustar 00root root 0000000 0000000 #!/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
COMPRESSORS=${COMPRESSORS:-nocompressors}
AUTH=${AUTH:-noauth}
SSL=${SSL:-nossl}
URI=${URI:-}
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
DNS=${DNS:-nodns}
echo "COMPRESSORS='${COMPRESSORS}' CC='${CC}' AUTH=${AUTH} SSL=${SSL} URI=${URI} IPV4_ONLY=${IPV4_ONLY} VALGRIND=${VALGRIND} MONGOC_TEST_URI=${MONGOC_TEST_URI}"
[ -z "$MARCH" ] && MARCH=$(uname -m | tr '[:upper:]' '[:lower:]')
TEST_ARGS="-d -F test-results.json"
if [ "$COMPRESSORS" != "nocompressors" ]; then
export MONGOC_TEST_COMPRESSORS="$COMPRESSORS"
fi
if [ "$AUTH" != "noauth" ]; then
export MONGOC_TEST_USER="bob"
export MONGOC_TEST_PASSWORD="pwd123"
fi
if [ "$SSL" != "nossl" ]; then
export MONGOC_TEST_SSL_WEAK_CERT_VALIDATION="on"
export MONGOC_TEST_SSL_PEM_FILE="tests/x509gen/client.pem"
sudo cp tests/x509gen/ca.pem /usr/local/share/ca-certificates/cdriver.crt || true
if [ -f /usr/local/share/ca-certificates/cdriver.crt ]; then
sudo update-ca-certificates
else
export MONGOC_TEST_SSL_CA_FILE="tests/x509gen/ca.pem"
fi
fi
export MONGOC_ENABLE_MAJORITY_READ_CONCERN=on
export MONGOC_TEST_FUTURE_TIMEOUT_MS=30000
export MONGOC_TEST_URI="$URI"
export MONGOC_TEST_SERVER_LOG="json"
export MONGOC_TEST_SKIP_MOCK="on"
if [ "$IPV4_ONLY" != "on" ]; then
export MONGOC_CHECK_IPV6="on"
fi
if [ "$DNS" != "nodns" ]; then
export MONGOC_TEST_DNS=on
TEST_ARGS="$TEST_ARGS -l /initial_dns_seedlist_discovery*"
fi
if [ "$CC" = "mingw" ]; then
if [ "$DNS" != "nodns" ]; then
echo "ERROR - DNS tests not implemented for MinGW yet"
exit 1
fi
chmod +x test-libmongoc.exe
cmd.exe /c .evergreen\\run-tests-mingw.bat
exit 0
fi
case "$OS" in
cygwin*)
export PATH=$PATH:`pwd`/tests:`pwd`/Debug:`pwd`/src/libbson/Debug
export PATH=$PATH:`pwd`/tests:`pwd`/Release:`pwd`/src/libbson/Release
chmod +x ./Debug/* src/libbson/Debug/* || true
chmod +x ./Release/* src/libbson/Release/* || true
;;
darwin)
sed -i'.bak' 's/\/data\/mci\/[a-z0-9]\{32\}\/mongoc/./g' test-libmongoc
export DYLD_LIBRARY_PATH=".libs:src/libbson/.libs"
;;
*)
#if test -f /tmp/drivers.keytab; then
# See CDRIVER-2000
#export MONGOC_TEST_GSSAPI_USER="drivers%40LDAPTEST.10GEN.CC"
#export MONGOC_TEST_GSSAPI_HOST="LDAPTEST.10GEN.CC"
#kinit -k -t /tmp/drivers.keytab -p drivers@LDAPTEST.10GEN.CC
#fi
# This libtool wrapper script was built in a unique dir like
# "/data/mci/998e754a0d1ed79b8bf733f405b87778/mongoc",
# replace its absolute path with "." so it can run in the CWD.
sed -i'' 's/\/data\/mci\/[a-z0-9]\{32\}\/mongoc/./g' test-libmongoc
export LD_LIBRARY_PATH=".libs:src/libbson/.libs"
;;
esac
#if ldconfig -N -v 2>/dev/null | grep -q libSegFault.so; then
#export SEGFAULT_SIGNALS="all"
#export LD_PRELOAD="libSegFault.so"
#fi
case "$OS" in
cygwin*)
test-libmongoc.exe $TEST_ARGS
;;
*)
ulimit -c unlimited || true
if [ "$VALGRIND" = "on" ]; then
export MONGOC_TEST_SKIP_SLOW="on";
make valgrind;
else
TEST_ARGS="--no-fork $TEST_ARGS"
make -o test-libmongoc test TEST_ARGS="$TEST_ARGS"
fi
;;
esac
libmongoc-1.9.2+dfsg/.gitattributes 0000664 0000000 0000000 00000000033 13226174053 0017305 0 ustar 00root root 0000000 0000000 tests/binary/* text eol=lf
libmongoc-1.9.2+dfsg/.gitignore 0000664 0000000 0000000 00000003220 13226174053 0016403 0 ustar 00root root 0000000 0000000 *~
*.a
aclocal.m4
aggregation1
AUTHORS
autom4te.cache
bulk1
bulk2
bulk3
bulk4
bulk5
bulk6
bulk-collation
ChangeLog
cluster1
CMakeCache.txt
CMakeFiles
compile
config.*
!config.yml
configure
COPYING
data
depcomp
.deps
.dirstamp
.DS_Store
echo-server
example-collection-watch
example-command-monitoring
example-command-with-opts
example-create-indexes
example-client
example-pool
example-scram
example-update
example-gridfs
example-matcher
example-session
example-sdam-monitoring
example-update
filter-bsondump
find-and-modify
fam
*.gcda
*.gcno
*.gz
index-source
INSTALL
install-sh
*.la
.libs
libtool
*.lo
ltmain.sh
Makefile
Makefile.in
missing
mongoc-dump
mongoc-ping
mongoc-stat
mongoc-tail
*.o
*.pc
README
repltest1
shardtest1
shardtest2
*.so
*.so.*
stamp-h1
*.swp
tags
test-libmongoc
test-results.json
test-mock-server
test-mongoc-array
test-mongoc-buffer
test-mongoc-client
test-mongoc-client-pool
test-mongoc-collection
test-mongoc-cursor
test-mongoc-database
test-mongoc-exhaust
test-mongoc-event
test-mongoc-find-and-modify
test-mongoc-gridfs
test-mongoc-gridfs-file-page
test-mongoc-list
test-mongoc-matcher
test-mongoc-queue
test-mongoc-read-prefs
test-mongoc-rpc
test-mongoc-stream
test-mongoc-stream-tls
test-mongoc-uri
test-mongoc-write-concern
test-mongoc-gssapi
# Windows things
*.dir
*.vcxproj*
Debug
x64
*.sdf
*.sln
install_manifest.txt
.vs
doc/html/_images
CPackConfig.cmake
CPackSourceConfig.cmake
CTestTestfile.cmake
accept_test1.c
cmake_install.cmake
libmongoc-1.0-config-version.cmake
libmongoc-1.0-config.cmake
libmongoc-static-1.0-config-version.cmake
libmongoc-static-1.0-config.cmake
src/snappy-1.1.3/snappy-stubs-public.h
src/zlib-1.2.11/zconf.h
.githooks
libmongoc-1.9.2+dfsg/.gitmodules 0000664 0000000 0000000 00000000154 13226174053 0016573 0 ustar 00root root 0000000 0000000 [submodule "src/libbson"]
path = src/libbson
url = https://github.com/mongodb/libbson.git
ignore = dirty
libmongoc-1.9.2+dfsg/.travis.scripts/ 0000775 0000000 0000000 00000000000 13226174053 0017472 5 ustar 00root root 0000000 0000000 libmongoc-1.9.2+dfsg/.travis.scripts/debug-core.sh 0000775 0000000 0000000 00000000123 13226174053 0022041 0 ustar 00root root 0000000 0000000 #!/bin/sh
echo "backtrace full" | ./libtool --mode execute gdb test-libmongoc $1
libmongoc-1.9.2+dfsg/.travis.yml 0000664 0000000 0000000 00000001410 13226174053 0016523 0 ustar 00root root 0000000 0000000 language: c
compiler:
- gcc
- clang
os:
- linux
- osx
before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install mongodb; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew services start mongodb; fi
services: mongodb
env:
- CFLAGS="$CFLAGS -Werror -Wno-cast-align"
addons:
apt:
packages:
- gdb
script:
- ulimit -a
- ulimit -c unlimited || true
- ./autogen.sh --enable-debug --enable-maintainer-flags --disable-automatic-init-and-cleanup --with-libbson=bundled
- make
- make test TEST_ARGS=""
after_failure:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install gdb; fi
- find /cores . -name \*core\* -exec ./.travis.scripts/debug-core.sh {} \;
libmongoc-1.9.2+dfsg/CMakeLists.txt 0000664 0000000 0000000 00000077117 13226174053 0017173 0 ustar 00root root 0000000 0000000 cmake_minimum_required(VERSION 3.1)
set (MESSAGES_ENABLED 1)
function(message)
list (GET ARGV 0 MessageType)
if (MESSAGES_ENABLED)
list (REMOVE_AT ARGV 0)
_message (${MessageType} "${ARGV}")
endif()
endfunction()
set (ENABLE_SSL AUTO CACHE STRING
"Enable TLS connections and SCRAM-SHA-1 authentication.\ Options are
\"DARWIN\" to use Apple's Secure Transport, \"WINDOWS\" to use Windows
Secure Channel, \"OPENSSL\", \"LIBRESSL\", \"AUTO\",\ or \"OFF\". These options are
case-sensitive. The default is \"AUTO\". Note\ that SCRAM-SHA-1 is
required for authenticating to MongoDB 3.0 and later.")
set (ENABLE_SASL AUTO CACHE STRING
"Enable SASL authentication (Kerberos).\ Options are \"CYRUS\" to use Cyrus
SASL, \"SSPI\" to use Windows Native SSPI, \"GSSAPI\" to use macOS Native GSS,
\"AUTO\",\ or \"OFF\". These options are case-sensitive.")
set(ENABLE_STATIC AUTO CACHE STRING "Build static libmongoc. Set to ON/AUTO/OFF, default AUTO.")
option(ENABLE_TESTS "Build MongoDB C Driver tests." ON)
option(ENABLE_EXAMPLES "Build MongoDB C Driver examples." ON)
set(ENABLE_SRV AUTO CACHE STRING "Support mongodb+srv URIs. Set to ON/AUTO/OFF, default AUTO.")
option(ENABLE_MAINTAINER_FLAGS "Use strict compiler checks" OFF)
option(ENABLE_AUTOMATIC_INIT_AND_CLEANUP "Enable automatic init and cleanup (GCC only)" ON)
option(ENABLE_CRYPTO_SYSTEM_PROFILE "Use system crypto profile (OpenSSL only)" OFF)
option(ENABLE_TRACING "Turn on verbose debug output" OFF)
set(ENABLE_SNAPPY AUTO CACHE STRING "Enable snappy support")
set(ENABLE_ZLIB bundled CACHE STRING "Enable zlib support")
if (NOT WIN32)
message(WARNING "CMake support is experimental and may not produce production quality artifacts")
endif ()
project (libmongoc C)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/build/cmake)
include(InstallRequiredSystemLibraries)
# Set MONGOC_MAJOR_VERSION, MONGOC_MINOR_VERSION, etc.
include(LoadVersion)
LoadVersion(${PROJECT_SOURCE_DIR}/VERSION_CURRENT MONGOC)
LoadVersion(${PROJECT_SOURCE_DIR}/VERSION_RELEASED MONGOC_RELEASED)
message("Current version (from VERSION_CURRENT file): ${MONGOC_VERSION}")
if (NOT ${MONGOC_VERSION} STREQUAL ${MONGOC_RELEASED_VERSION})
message("Previous release (from VERSION_RELEASED file): ${MONGOC_RELEASED_VERSION}")
endif()
include(MaintainerFlags)
# The input variable BSON_ROOT_DIR is respected for backwards compatibility,
# but you should use the standard CMAKE_PREFIX_PATH instead.
message (STATUS "Searching for libbson CMake packages")
find_package (libbson-1.0
"${MONGOC_MAJOR_VERSION}.${MONGOC_MINOR_VERSION}.${MONGOC_MICRO_VERSION}"
HINTS
${BSON_ROOT_DIR}
REQUIRED)
message ("-- libbson found version \"${BSON_VERSION}\"")
message ("-- libbson include path \"${BSON_INCLUDE_DIRS}\"")
message ("-- libbson libraries \"${BSON_LIBRARIES}\"")
if (ENABLE_STATIC STREQUAL ON OR ENABLE_STATIC STREQUAL AUTO)
find_package (libbson-static-1.0
"${MONGOC_MAJOR_VERSION}.${MONGOC_MINOR_VERSION}.${MONGOC_MICRO_VERSION}"
HINTS
${BSON_ROOT_DIR})
if (ENABLE_STATIC STREQUAL ON AND NOT BSON_STATIC_LIBRARY)
message (FATAL_ERROR "Static libbson not found. Pass -DENABLE_STATIC=OFF")
endif ()
if (BSON_STATIC_LIBRARY)
set (MONGOC_ENABLE_STATIC ON)
endif ()
message ("-- libbson-static found version \"${BSON_STATIC_VERSION}\"")
message ("-- libbson-static include path \"${BSON_STATIC_INCLUDE_DIRS}\"")
message ("-- libbson-static libraries \"${BSON_STATIC_LIBRARIES}\"")
endif ()
if (ENABLE_TESTS AND NOT MONGOC_ENABLE_STATIC)
message (FATAL_ERROR "ENABLE_TESTS requires ENABLE_STATIC")
endif ()
if (NOT (ENABLE_SSL STREQUAL DARWIN
OR ENABLE_SSL STREQUAL WINDOWS
OR ENABLE_SSL STREQUAL OPENSSL
OR ENABLE_SSL STREQUAL LIBRESSL
OR ENABLE_SSL STREQUAL AUTO
OR ENABLE_SSL STREQUAL OFF))
message (FATAL_ERROR
"ENABLE_SSL option must be DARWIN, WINDOWS, OPENSSL, LIBRESSL, AUTO, or OFF")
endif()
if (NOT ENABLE_SSL STREQUAL OFF)
# If "AUTO", try OpenSSL. In version 2.0 we'll default to "DARWIN" on Mac.
if (ENABLE_SSL STREQUAL AUTO OR ENABLE_SSL STREQUAL OPENSSL)
# Sets OPENSSL_FOUND on success.
include (FindOpenSSL)
endif ()
if (ENABLE_SSL STREQUAL LIBRESSL)
set (LIBRESSL 1)
endif ()
if (ENABLE_SSL STREQUAL DARWIN)
if (APPLE)
set (SECURE_TRANSPORT 1)
else ()
message (FATAL_ERROR "ENABLE_SSL=DARWIN only supported on Mac OS X")
endif ()
endif ()
if (ENABLE_SSL STREQUAL AUTO AND NOT OPENSSL_FOUND AND APPLE)
set (SECURE_TRANSPORT 1)
endif ()
if (ENABLE_SSL STREQUAL WINDOWS)
if (WIN32)
set (SECURE_CHANNEL 1)
else ()
message (FATAL_ERROR "ENABLE_SSL=WINDOWS only supported on Windows")
endif ()
endif ()
if (ENABLE_SSL STREQUAL AUTO AND NOT OPENSSL_FOUND AND WIN32)
set (SECURE_CHANNEL 1)
endif ()
if (NOT OPENSSL_FOUND AND NOT SECURE_TRANSPORT AND NOT SECURE_CHANNEL AND NOT LIBRESSL)
if (ENABLE_SSL STREQUAL AUTO)
set (ENABLE_SSL OFF)
else ()
message (FATAL_ERROR "No SSL library found")
endif ()
endif ()
endif ()
# Defaults.
set (MONGOC_ENABLE_SSL 0)
set (MONGOC_ENABLE_SSL_OPENSSL 0)
set (MONGOC_ENABLE_SSL_LIBRESSL 0)
set (MONGOC_ENABLE_SSL_SECURE_TRANSPORT 0)
set (MONGOC_ENABLE_SSL_SECURE_CHANNEL 0)
set (MONGOC_ENABLE_CRYPTO 0)
set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 0)
set (MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO 0)
set (MONGOC_ENABLE_CRYPTO_CNG 0)
set (MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE 0)
set (MONGOC_ENABLE_COMPRESSION 0)
set (MONGOC_ENABLE_COMPRESSION_SNAPPY 0)
set (MONGOC_ENABLE_COMPRESSION_ZLIB 0)
if (OPENSSL_FOUND)
if (WIN32 AND OPENSSL_VERSION GREATER 1.1 AND NOT
${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.7)
message (FATAL_ERROR "Building against OpenSSL 1.1.0 and later requires CMake 3.7 or later (hint:"
"You can also compile against Windows Secure Transport with -DENABLE_SSL=WINDOWS")
endif ()
set (MONGOC_ENABLE_SSL 1)
set (MONGOC_ENABLE_SSL_OPENSSL 1)
set (MONGOC_ENABLE_CRYPTO 1)
set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 1)
elseif (SECURE_TRANSPORT)
set (MONGOC_ENABLE_SSL 1)
set (MONGOC_ENABLE_SSL_SECURE_TRANSPORT 1)
set (MONGOC_ENABLE_CRYPTO 1)
set (MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO 1)
elseif (SECURE_CHANNEL)
set (MONGOC_ENABLE_SSL 1)
set (MONGOC_ENABLE_SSL_SECURE_CHANNEL 1)
set (MONGOC_ENABLE_CRYPTO 1)
set (MONGOC_ENABLE_CRYPTO_CNG 1)
elseif (LIBRESSL)
set (MONGOC_ENABLE_SSL 1)
set (MONGOC_ENABLE_SSL_LIBRESSL 1)
set (MONGOC_ENABLE_CRYPTO 1)
set (MONGOC_ENABLE_CRYPTO_LIBCRYPTO 1)
endif ()
if (ENABLE_CRYPTO_SYSTEM_PROFILE)
if (OPENSSL_FOUND)
set (MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE 1)
else ()
message (FATAL_ERROR "ENABLE_CRYPTO_SYSTEM_PROFILE only available with OpenSSL")
endif ()
endif ()
include(CheckLibraryExists)
CHECK_LIBRARY_EXISTS(ssl ASN1_STRING_get0_data "openssl/asn1.h" MONGOC_HAVE_ASN1_STRING_GET0_DATA)
if (NOT MONGOC_HAVE_ASN1_STRING_GET0_DATA)
set (MONGOC_HAVE_ASN1_STRING_GET0_DATA 0)
endif ()
if (NOT (ENABLE_SASL STREQUAL CYRUS
OR ENABLE_SASL STREQUAL GSSAPI
OR ENABLE_SASL STREQUAL SSPI
OR ENABLE_SASL STREQUAL AUTO
OR ENABLE_SASL STREQUAL OFF))
message (FATAL_ERROR
"ENABLE_SASL option must be CYRUS, GSSAPI, SSPI, AUTO, or OFF")
endif()
# Defaults.
set (MONGOC_ENABLE_SASL 0)
set (MONGOC_ENABLE_SASL_CYRUS 0)
set (MONGOC_ENABLE_SASL_GSSAPI 0)
set (MONGOC_ENABLE_SASL_SSPI 0)
set (MONGOC_HAVE_SASL_CLIENT_DONE 0)
if (NOT ENABLE_SASL STREQUAL OFF)
if (ENABLE_SASL STREQUAL AUTO OR ENABLE_SASL STREQUAL CYRUS)
# Sets SASL_LIBS.
include(FindSASL2)
endif()
if (SASL_FOUND)
set (MONGOC_ENABLE_SASL 1)
set (MONGOC_ENABLE_SASL_CYRUS 1)
elseif ((ENABLE_SASL STREQUAL SSPI OR ENABLE_SASL STREQUAL AUTO) AND WIN32)
set (MONGOC_ENABLE_SASL 1)
set (MONGOC_ENABLE_SASL_SSPI 1)
elseif ((ENABLE_SASL STREQUAL GSSAPI OR ENABLE_SASL STREQUAL AUTO) AND DARWIN)
set (MONGOC_ENABLE_SASL 1)
set (MONGOC_ENABLE_SASL_GSSAPI 1)
endif ()
else ()
set (MONGOC_ENABLE_SASL 0)
endif()
if (ENABLE_AUTOMATIC_INIT_AND_CLEANUP)
set (MONGOC_NO_AUTOMATIC_GLOBALS 0)
else ()
set (MONGOC_NO_AUTOMATIC_GLOBALS 1)
endif ()
include(CheckIncludeFiles)
CHECK_INCLUDE_FILES(strings.h HAVE_STRINGS_H)
include(CheckTypeSize)
if (WIN32)
SET(CMAKE_EXTRA_INCLUDE_FILES "ws2tcpip.h")
else()
SET(CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h")
endif ()
CHECK_TYPE_SIZE(socklen_t HAVE_SOCKLEN)
SET(CMAKE_EXTRA_INCLUDE_FILES)
if (HAVE_SOCKLEN)
set(MONGOC_HAVE_SOCKLEN 1)
set (MONGOC_SOCKET_ARG3 "socklen_t")
else()
set(MONGOC_HAVE_SOCKLEN 0)
set (MONGOC_SOCKET_ARG3 "int")
endif()
include (FindResSearch)
function (mongoc_get_accept_args ARG2 ARG3)
SET (VAR 0)
foreach (ARG2_VAL "struct sockaddr" "void")
foreach (ARG3_VAL "socklen_t" "size_t" "int")
MATH (EXPR VAR "${VAR}+1")
FILE (WRITE ${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c
"#include
#include
int main ()
{
int a = 0;
${ARG2_VAL} *b = 0;
${ARG3_VAL} *c = 0;
accept (a, b, c);
return 0;
}
")
TRY_COMPILE (RES ${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}/accept_test${VAR}.c CMAKE_FLAGS
"-Werror -DCMAKE_CXX_LINK_EXECUTABLE='echo not linking now...'" OUTPUT_VARIABLE LOG2)
if (RES)
message (
STATUS
"Detected parameters: accept (int, ${ARG2_VAL} *, ${ARG3_VAL} *)")
set (${ARG2} ${ARG2_VAL} PARENT_SCOPE)
set (${ARG3} ${ARG3_VAL} PARENT_SCOPE)
return ()
endif ()
endforeach ()
endforeach ()
endfunction ()
# Reasonable defaults.
set (MONGOC_SOCKET_ARG2 "struct sockaddr")
set (MONGOC_SOCKET_ARG3 "socklen_t")
if (NOT WIN32)
mongoc_get_accept_args (MONGOC_SOCKET_ARG2 MONGOC_SOCKET_ARG3)
endif ()
set (SOURCE_DIR "${PROJECT_SOURCE_DIR}/")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/build/cmake)
set (SOURCE_DIR "${PROJECT_SOURCE_DIR}/")
set (MONGOC_API_VERSION 1.0)
set (CPACK_RESOURCE_FILE_LICENSE "${SOURCE_DIR}/COPYING")
set (CPACK_PACKAGE_VERSION_MAJOR ${MONGOC_MAJOR_VERSION})
set (CPACK_PACKAGE_VERSION_MINOR ${MONGOC_MINOR_VERSION})
include (CPack)
set (MONGOC_HAVE_WEAK_SYMBOLS 0)
set (MONGOC_CC ${CMAKE_C_COMPILER})
set (MONGOC_USER_SET_CFLAGS ${CMAKE_C_FLAGS})
set (MONGOC_USER_SET_LDFLAGS ${CMAKE_EXE_LINKER_FLAGS})
if (ENABLE_TRACING)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DMONGOC_TRACE")
endif ()
set (MONGOC_INTERNAL_INCLUDE_DIRS "")
# Sets SNAPPY_LIBS and SNAPPY_INCLUDE_DIRS.
include (FindSnappy)
if (SNAPPY_INCLUDE_DIRS)
include_directories ("${SNAPPY_INCLUDE_DIRS}")
endif ()
if (ENABLE_ZLIB STREQUAL "bundled")
message (STATUS "Enabling zlib compression (bundled)")
check_include_files ("unistd.h" HAVE_UNISTD_H)
check_include_files ("stdarg.h" HAVE_STDARG_H)
set (MONGOC_ENABLE_COMPRESSION 1)
set (MONGOC_ENABLE_COMPRESSION_ZLIB 1)
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/zlib-1.2.11/adler32.c
${SOURCE_DIR}/src/zlib-1.2.11/crc32.c
${SOURCE_DIR}/src/zlib-1.2.11/deflate.c
${SOURCE_DIR}/src/zlib-1.2.11/infback.c
${SOURCE_DIR}/src/zlib-1.2.11/inffast.c
${SOURCE_DIR}/src/zlib-1.2.11/inflate.c
${SOURCE_DIR}/src/zlib-1.2.11/inftrees.c
${SOURCE_DIR}/src/zlib-1.2.11/trees.c
${SOURCE_DIR}/src/zlib-1.2.11/zutil.c
${SOURCE_DIR}/src/zlib-1.2.11/compress.c
${SOURCE_DIR}/src/zlib-1.2.11/uncompr.c
${SOURCE_DIR}/src/zlib-1.2.11/gzclose.c
${SOURCE_DIR}/src/zlib-1.2.11/gzlib.c
${SOURCE_DIR}/src/zlib-1.2.11/gzread.c
${SOURCE_DIR}/src/zlib-1.2.11/gzwrite.c
)
configure_file (
"${SOURCE_DIR}/src/zlib-1.2.11/zconf.h.in"
"${PROJECT_BINARY_DIR}/src/zlib-1.2.11/zconf.h"
)
list (
APPEND
MONGOC_INTERNAL_INCLUDE_DIRS
"${SOURCE_DIR}/src/zlib-1.2.11"
"${PROJECT_BINARY_DIR}/src/zlib-1.2.11"
)
endif ()
configure_file (
"${SOURCE_DIR}/src/mongoc/mongoc-config.h.in"
"${PROJECT_BINARY_DIR}/src/mongoc/mongoc-config.h"
)
configure_file (
"${SOURCE_DIR}/src/mongoc/mongoc-version.h.in"
"${PROJECT_BINARY_DIR}/src/mongoc/mongoc-version.h"
)
include_directories("${PROJECT_BINARY_DIR}/src/mongoc")
include_directories("${SOURCE_DIR}/src/mongoc")
if (UNIX AND NOT APPLE)
set(SHM_LIB -lrt)
endif()
if (APPLE)
cmake_policy(SET CMP0042 OLD)
endif()
if (MSVC)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
endif ()
add_definitions(-D_GNU_SOURCE)
add_definitions(-D_BSD_SOURCE)
add_definitions(-D_DEFAULT_SOURCE)
if (APPLE)
# Until CDRIVER-520.
add_definitions(-Wno-deprecated-declarations)
endif()
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/mongoc/mongoc-apm.c
${SOURCE_DIR}/src/mongoc/mongoc-array.c
${SOURCE_DIR}/src/mongoc/mongoc-async.c
${SOURCE_DIR}/src/mongoc/mongoc-async-cmd.c
${SOURCE_DIR}/src/mongoc/mongoc-b64.c
${SOURCE_DIR}/src/mongoc/mongoc-buffer.c
${SOURCE_DIR}/src/mongoc/mongoc-bulk-operation.c
${SOURCE_DIR}/src/mongoc/mongoc-change-stream.c
${SOURCE_DIR}/src/mongoc/mongoc-client.c
${SOURCE_DIR}/src/mongoc/mongoc-client-pool.c
${SOURCE_DIR}/src/mongoc/mongoc-cluster.c
${SOURCE_DIR}/src/mongoc/mongoc-collection.c
${SOURCE_DIR}/src/mongoc/mongoc-compression.c
${SOURCE_DIR}/src/mongoc/mongoc-counters.c
${SOURCE_DIR}/src/mongoc/mongoc-cursor-array.c
${SOURCE_DIR}/src/mongoc/mongoc-cursor.c
${SOURCE_DIR}/src/mongoc/mongoc-cursor-array.c
${SOURCE_DIR}/src/mongoc/mongoc-cursor-cursorid.c
${SOURCE_DIR}/src/mongoc/mongoc-cursor-transform.c
${SOURCE_DIR}/src/mongoc/mongoc-database.c
${SOURCE_DIR}/src/mongoc/mongoc-find-and-modify.c
${SOURCE_DIR}/src/mongoc/mongoc-init.c
${SOURCE_DIR}/src/mongoc/mongoc-gridfs.c
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file.c
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.c
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-page.c
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.c
${SOURCE_DIR}/src/mongoc/mongoc-handshake.c
${SOURCE_DIR}/src/mongoc/mongoc-host-list.c
${SOURCE_DIR}/src/mongoc/mongoc-index.c
${SOURCE_DIR}/src/mongoc/mongoc-init.c
${SOURCE_DIR}/src/mongoc/mongoc-list.c
${SOURCE_DIR}/src/mongoc/mongoc-linux-distro-scanner.c
${SOURCE_DIR}/src/mongoc/mongoc-log.c
${SOURCE_DIR}/src/mongoc/mongoc-matcher.c
${SOURCE_DIR}/src/mongoc/mongoc-matcher-op.c
${SOURCE_DIR}/src/mongoc/mongoc-memcmp.c
${SOURCE_DIR}/src/mongoc/mongoc-cmd.c
${SOURCE_DIR}/src/mongoc/mongoc-queue.c
${SOURCE_DIR}/src/mongoc/mongoc-read-concern.c
${SOURCE_DIR}/src/mongoc/mongoc-read-prefs.c
${SOURCE_DIR}/src/mongoc/mongoc-rpc.c
${SOURCE_DIR}/src/mongoc/mongoc-server-description.c
${SOURCE_DIR}/src/mongoc/mongoc-server-stream.c
${SOURCE_DIR}/src/mongoc/mongoc-client-session.c
${SOURCE_DIR}/src/mongoc/mongoc-set.c
${SOURCE_DIR}/src/mongoc/mongoc-socket.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.c
${SOURCE_DIR}/src/mongoc/mongoc-stream.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-file.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-gridfs.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-socket.c
${SOURCE_DIR}/src/mongoc/mongoc-topology.c
${SOURCE_DIR}/src/mongoc/mongoc-topology-description.c
${SOURCE_DIR}/src/mongoc/mongoc-topology-description-apm.c
${SOURCE_DIR}/src/mongoc/mongoc-topology-scanner.c
${SOURCE_DIR}/src/mongoc/mongoc-uri.c
${SOURCE_DIR}/src/mongoc/mongoc-util.c
${SOURCE_DIR}/src/mongoc/mongoc-version-functions.c
${SOURCE_DIR}/src/mongoc/mongoc-write-command.c
${SOURCE_DIR}/src/mongoc/mongoc-write-command-legacy.c
${SOURCE_DIR}/src/mongoc/mongoc-write-concern.c
)
set (HEADERS
${PROJECT_BINARY_DIR}/src/mongoc/mongoc-config.h
${PROJECT_BINARY_DIR}/src/mongoc/mongoc-version.h
${SOURCE_DIR}/src/mongoc/mongoc.h
${SOURCE_DIR}/src/mongoc/mongoc-apm.h
${SOURCE_DIR}/src/mongoc/mongoc-bulk-operation.h
${SOURCE_DIR}/src/mongoc/mongoc-change-stream.h
${SOURCE_DIR}/src/mongoc/mongoc-client.h
${SOURCE_DIR}/src/mongoc/mongoc-client-pool.h
${SOURCE_DIR}/src/mongoc/mongoc-collection.h
${SOURCE_DIR}/src/mongoc/mongoc-cursor.h
${SOURCE_DIR}/src/mongoc/mongoc-database.h
${SOURCE_DIR}/src/mongoc/mongoc-error.h
${SOURCE_DIR}/src/mongoc/mongoc-flags.h
${SOURCE_DIR}/src/mongoc/mongoc-find-and-modify.h
${SOURCE_DIR}/src/mongoc/mongoc-gridfs.h
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file.h
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-page.h
${SOURCE_DIR}/src/mongoc/mongoc-gridfs-file-list.h
${SOURCE_DIR}/src/mongoc/mongoc-handshake.h
${SOURCE_DIR}/src/mongoc/mongoc-host-list.h
${SOURCE_DIR}/src/mongoc/mongoc-init.h
${SOURCE_DIR}/src/mongoc/mongoc-index.h
${SOURCE_DIR}/src/mongoc/mongoc-iovec.h
${SOURCE_DIR}/src/mongoc/mongoc-log.h
${SOURCE_DIR}/src/mongoc/mongoc-macros.h
${SOURCE_DIR}/src/mongoc/mongoc-matcher.h
${SOURCE_DIR}/src/mongoc/mongoc-opcode.h
${SOURCE_DIR}/src/mongoc/mongoc-read-concern.h
${SOURCE_DIR}/src/mongoc/mongoc-read-prefs.h
${SOURCE_DIR}/src/mongoc/mongoc-server-description.h
${SOURCE_DIR}/src/mongoc/mongoc-client-session.h
${SOURCE_DIR}/src/mongoc/mongoc-socket.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-libressl.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl.h
${SOURCE_DIR}/src/mongoc/mongoc-stream.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-buffered.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-file.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-gridfs.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-socket.h
${SOURCE_DIR}/src/mongoc/mongoc-topology-description.h
${SOURCE_DIR}/src/mongoc/mongoc-uri.h
${SOURCE_DIR}/src/mongoc/mongoc-version-functions.h
${SOURCE_DIR}/src/mongoc/mongoc-write-concern.h
${SOURCE_DIR}/src/mongoc/mongoc-rand.h
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls.h
${SOURCE_DIR}/src/mongoc/mongoc-ssl.h
)
if (NOT ENABLE_SSL STREQUAL OFF)
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/mongoc/mongoc-crypto.c
${SOURCE_DIR}/src/mongoc/mongoc-scram.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls.c
${SOURCE_DIR}/src/mongoc/mongoc-ssl.c
)
if (OPENSSL_FOUND)
message (STATUS "Compiling against OpenSSL")
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/mongoc/mongoc-crypto-openssl.c
${SOURCE_DIR}/src/mongoc/mongoc-rand-openssl.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-openssl-bio.c
${SOURCE_DIR}/src/mongoc/mongoc-openssl.c
)
set (SSL_LIBS ${OPENSSL_LIBRARIES})
include_directories (${OPENSSL_INCLUDE_DIR})
if(WIN32)
set(SSL_LIBS ${SSL_LIBS} crypt32.lib)
endif()
elseif (SECURE_TRANSPORT)
message (STATUS "Compiling against Secure Transport")
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/mongoc/mongoc-crypto-common-crypto.c
${SOURCE_DIR}/src/mongoc/mongoc-rand-common-crypto.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-secure-transport.c
${SOURCE_DIR}/src/mongoc/mongoc-secure-transport.c
)
set (SSL_LIBS "-framework CoreFoundation -framework Security")
elseif (SECURE_CHANNEL)
message (STATUS "Compiling against Secure Channel")
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/mongoc/mongoc-crypto-cng.c
${SOURCE_DIR}/src/mongoc/mongoc-rand-cng.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-secure-channel.c
${SOURCE_DIR}/src/mongoc/mongoc-secure-channel.c
)
set(SSL_LIBS secur32.lib crypt32.lib Bcrypt.lib)
elseif (LIBRESSL)
message (STATUS "Compiling against LibreSSL")
set (SOURCES ${SOURCES}
${SOURCE_DIR}/src/mongoc/mongoc-crypto-openssl.c
${SOURCE_DIR}/src/mongoc/mongoc-rand-openssl.c
${SOURCE_DIR}/src/mongoc/mongoc-stream-tls-libressl.c
${SOURCE_DIR}/src/mongoc/mongoc-libressl.c
)
set(SSL_LIBS -ltls -lcrypto)
endif ()
else ()
message (STATUS "SSL disabled")
endif () # ENABLE_SSL
if (MONGOC_ENABLE_SASL)
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-sasl.c)
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-sasl.c)
if (MONGOC_ENABLE_SASL_CYRUS)
message (STATUS "Compiling against Cyrus SASL")
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-cyrus.c)
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cyrus.c)
include_directories(${SASL_INCLUDE_DIRS})
elseif (MONGOC_ENABLE_SASL_SSPI)
message (STATUS "Compiling against Windows SSPI")
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-sspi.c)
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-sspi.c)
set (SASL_LIBS secur32.lib crypt32.lib Shlwapi.lib)
elseif (MONGOC_ENABLE_SASL_GSSAPI)
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-cluster-gssapi.c)
set (SOURCES ${SOURCES} ${SOURCE_DIR}/src/mongoc/mongoc-gssapi.c)
if (APPLE)
message (STATUS "Compiling against macOS GSS")
set (LIBS ${LIBS} -framework GSS)
else ()
message (FATAL_ERROR "gssapi missing krb5-config support in cmake")
endif()
endif()
else()
message (STATUS "SASL disabled")
endif()
set(THREADS_PREFER_PTHREAD_FLAG 1)
find_package (Threads REQUIRED)
if(CMAKE_USE_PTHREADS_INIT)
set(THREAD_LIB ${CMAKE_THREAD_LIBS_INIT})
endif()
set (LIBS ${SASL_LIBS} ${SSL_LIBS} ${SHM_LIB} ${RESOLV_LIBS} ${SNAPPY_LIBS} Threads::Threads)
if(WIN32)
set (LIBS ${LIBS} ws2_32)
endif()
add_library(mongoc_shared SHARED ${SOURCES} ${HEADERS})
set_target_properties(mongoc_shared PROPERTIES CMAKE_CXX_VISIBILITY_PRESET hidden)
target_link_libraries (mongoc_shared ${LIBS} ${BSON_LIBRARIES})
target_include_directories (mongoc_shared BEFORE PUBLIC ${BSON_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS})
target_compile_definitions (mongoc_shared PUBLIC MONGOC_COMPILATION ${BSON_DEFINITIONS})
# CMake wants to make different symlinks than the Autotools, see
# https://cmake.org/pipermail/cmake/2007-September/016501.html
# This hack sets up standard symlink, libmongoc-1.0.so -> libmongoc-1.0.0.so
set_target_properties(mongoc_shared PROPERTIES VERSION 0 SOVERSION ${MONGOC_MAJOR_VERSION})
set_target_properties(mongoc_shared PROPERTIES OUTPUT_NAME "mongoc-${MONGOC_API_VERSION}" PREFIX "lib")
if (MONGOC_ENABLE_STATIC)
add_library(mongoc_static STATIC ${SOURCES} ${HEADERS})
target_link_libraries (mongoc_static ${LIBS} ${BSON_STATIC_LIBRARIES})
target_include_directories (mongoc_static BEFORE PUBLIC ${BSON_STATIC_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS})
target_compile_definitions (mongoc_static PUBLIC MONGOC_COMPILATION MONGOC_STATIC ${BSON_STATIC_DEFINITIONS})
set_target_properties(mongoc_static PROPERTIES VERSION ${MONGOC_VERSION})
set_target_properties(mongoc_static PROPERTIES OUTPUT_NAME "mongoc-static-${MONGOC_API_VERSION}")
endif ()
function(mongoc_add_test test use_shared)
if (ENABLE_TESTS)
add_executable(${test} ${ARGN})
if (NOT MSVC)
# We've tests that test our deprecated api. MSVC 2013 will complain about invalid flag
set_source_files_properties(${ARGN} PROPERTIES COMPILE_FLAGS -Wno-deprecated-declarations)
endif()
if (${use_shared})
target_link_libraries(${test} mongoc_shared)
target_include_directories(${test} PRIVATE ${BSON_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS})
else()
target_compile_definitions(${test} PUBLIC "MONGOC_COMPILATION")
target_link_libraries(${test} mongoc_static)
target_include_directories(${test} PRIVATE ${BSON_STATIC_INCLUDE_DIRS} ${MONGOC_INTERNAL_INCLUDE_DIRS})
endif()
target_link_libraries(${test} ${RESOLV_LIBS})
if (WIN32)
target_link_libraries(${test} shlwapi)
else ()
target_link_libraries(${test})
endif ()
endif()
endfunction()
function(mongoc_add_example example use_shared)
if (ENABLE_EXAMPLES)
add_executable(${example} ${ARGN})
if (${use_shared})
target_link_libraries(${example} mongoc_shared)
else()
target_link_libraries(${example} mongoc_static)
endif()
if(WIN32)
target_link_libraries(${example} shlwapi)
endif()
set (EXAMPLES ${EXAMPLES} ${example})
endif ()
endfunction()
set(test-libmongoc-sources
${SOURCE_DIR}/tests/debug-stream.c
${SOURCE_DIR}/tests/json-test.c
${SOURCE_DIR}/tests/mock_server/future.c
${SOURCE_DIR}/tests/mock_server/future-functions.c
${SOURCE_DIR}/tests/mock_server/future-value.c
${SOURCE_DIR}/tests/mock_server/sync-queue.c
${SOURCE_DIR}/tests/mock_server/mock-rs.c
${SOURCE_DIR}/tests/mock_server/mock-server.c
${SOURCE_DIR}/tests/mock_server/request.c
${SOURCE_DIR}/tests/test-conveniences.c
${SOURCE_DIR}/tests/test-libmongoc.c
${SOURCE_DIR}/tests/test-mongoc-array.c
${SOURCE_DIR}/tests/test-mongoc-async.c
${SOURCE_DIR}/tests/test-mongoc-buffer.c
${SOURCE_DIR}/tests/test-mongoc-bulk.c
${SOURCE_DIR}/tests/test-mongoc-change-stream.c
${SOURCE_DIR}/tests/test-mongoc-client.c
${SOURCE_DIR}/tests/test-mongoc-client-pool.c
${SOURCE_DIR}/tests/test-mongoc-cluster.c
${SOURCE_DIR}/tests/test-mongoc-collection.c
${SOURCE_DIR}/tests/test-mongoc-collection-find.c
${SOURCE_DIR}/tests/test-mongoc-collection-find-with-opts.c
${SOURCE_DIR}/tests/test-mongoc-connection-uri.c
${SOURCE_DIR}/tests/test-mongoc-command-monitoring.c
${SOURCE_DIR}/tests/test-mongoc-cursor.c
${SOURCE_DIR}/tests/test-mongoc-database.c
${SOURCE_DIR}/tests/test-mongoc-error.c
${SOURCE_DIR}/tests/test-mongoc-exhaust.c
${SOURCE_DIR}/tests/test-mongoc-find-and-modify.c
${SOURCE_DIR}/tests/test-mongoc-gridfs.c
${SOURCE_DIR}/tests/test-mongoc-gridfs-file-page.c
${SOURCE_DIR}/tests/test-mongoc-handshake.c
${SOURCE_DIR}/tests/test-mongoc-linux-distro-scanner.c
${SOURCE_DIR}/tests/test-mongoc-list.c
${SOURCE_DIR}/tests/test-mongoc-log.c
${SOURCE_DIR}/tests/test-mongoc-matcher.c
${SOURCE_DIR}/tests/test-mongoc-max-staleness.c
${SOURCE_DIR}/tests/test-mongoc-queue.c
${SOURCE_DIR}/tests/test-mongoc-read-concern.c
${SOURCE_DIR}/tests/test-mongoc-read-prefs.c
${SOURCE_DIR}/tests/test-mongoc-retryable-writes.c
${SOURCE_DIR}/tests/test-mongoc-rpc.c
${SOURCE_DIR}/tests/test-mongoc-sample-commands.c
${SOURCE_DIR}/tests/test-mongoc-scram.c
${SOURCE_DIR}/tests/test-mongoc-sdam.c
${SOURCE_DIR}/tests/test-mongoc-sdam-monitoring.c
${SOURCE_DIR}/tests/test-mongoc-server-selection.c
${SOURCE_DIR}/tests/test-mongoc-server-selection-errors.c
${SOURCE_DIR}/tests/test-mongoc-client-session.c
${SOURCE_DIR}/tests/test-mongoc-set.c
${SOURCE_DIR}/tests/test-mongoc-socket.c
${SOURCE_DIR}/tests/test-mongoc-dns.c
${SOURCE_DIR}/tests/test-mongoc-stream.c
${SOURCE_DIR}/tests/test-mongoc-thread.c
${SOURCE_DIR}/tests/test-mongoc-topology.c
${SOURCE_DIR}/tests/test-mongoc-topology-description.c
${SOURCE_DIR}/tests/test-mongoc-topology-reconcile.c
${SOURCE_DIR}/tests/test-mongoc-topology-scanner.c
${SOURCE_DIR}/tests/test-mongoc-uri.c
${SOURCE_DIR}/tests/test-mongoc-version.c
${SOURCE_DIR}/tests/test-mongoc-usleep.c
${SOURCE_DIR}/tests/test-mongoc-util.c
${SOURCE_DIR}/tests/test-mongoc-write-commands.c
${SOURCE_DIR}/tests/test-mongoc-write-concern.c
${SOURCE_DIR}/tests/TestSuite.c
)
if (MONGOC_ENABLE_SSL)
set(test-libmongoc-sources ${test-libmongoc-sources}
${SOURCE_DIR}/tests/test-mongoc-x509.c
${SOURCE_DIR}/tests/ssl-test.c
${SOURCE_DIR}/tests/test-mongoc-stream-tls.c
${SOURCE_DIR}/tests/test-mongoc-stream-tls-error.c)
endif()
if (MONGOC_ENABLE_SASL_CYRUS)
set(test-libmongoc-sources ${test-libmongoc-sources}
${SOURCE_DIR}/tests/test-mongoc-cyrus.c
)
endif ()
mongoc_add_test(test-libmongoc FALSE ${test-libmongoc-sources})
mongoc_add_test (test-mongoc-gssapi TRUE ${SOURCE_DIR}/tests/test-mongoc-gssapi.c)
if (ENABLE_TESTS)
enable_testing()
add_test(NAME test-libmongoc COMMAND test-libmongoc --no-fork -d)
endif ()
mongoc_add_example(example-gridfs TRUE ${SOURCE_DIR}/examples/example-gridfs.c)
mongoc_add_example(
example-command-monitoring TRUE
${SOURCE_DIR}/examples/example-command-monitoring.c)
mongoc_add_example(
example-sdam-monitoring TRUE
${SOURCE_DIR}/examples/example-sdam-monitoring.c)
mongoc_add_example(example-client TRUE ${SOURCE_DIR}/examples/example-client.c)
mongoc_add_example(example-command-with-opts TRUE ${SOURCE_DIR}/examples/example-command-with-opts.c)
mongoc_add_example(example-create-indexes TRUE ${SOURCE_DIR}/examples/example-create-indexes.c)
mongoc_add_example(example-scram TRUE ${SOURCE_DIR}/examples/example-scram.c)
mongoc_add_example(example-session TRUE ${SOURCE_DIR}/examples/example-session.c)
mongoc_add_example(mongoc-dump TRUE ${SOURCE_DIR}/examples/mongoc-dump.c)
mongoc_add_example(mongoc-ping TRUE ${SOURCE_DIR}/examples/mongoc-ping.c)
mongoc_add_example(mongoc-tail TRUE ${SOURCE_DIR}/examples/mongoc-tail.c)
mongoc_add_example(fam TRUE ${SOURCE_DIR}/examples/find_and_modify_with_opts/fam.c)
if (NOT WIN32)
mongoc_add_example(example-pool TRUE ${SOURCE_DIR}/examples/example-pool.c)
endif ()
mongoc_add_example(example-collection-watch TRUE ${SOURCE_DIR}/examples/example-collection-watch.c)
mongoc_add_example(example-update TRUE ${SOURCE_DIR}/examples/example-update.c)
file(COPY ${SOURCE_DIR}/tests/binary DESTINATION ${PROJECT_BINARY_DIR}/tests)
file(COPY ${SOURCE_DIR}/tests/json DESTINATION ${PROJECT_BINARY_DIR}/tests)
file(COPY ${SOURCE_DIR}/tests/x509gen DESTINATION ${PROJECT_BINARY_DIR}/tests)
file(COPY ${SOURCE_DIR}/tests/release_files DESTINATION ${PROJECT_BINARY_DIR}/tests)
install(
TARGETS mongoc_shared ${EXAMPLES}
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION bin
)
if (MONGOC_ENABLE_STATIC)
install(
TARGETS mongoc_shared mongoc_static ${EXAMPLES}
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION bin
)
endif ()
set (MONGOC_HEADER_INSTALL_DIR "include/libmongoc-${MONGOC_API_VERSION}")
install(
FILES ${HEADERS}
DESTINATION "${MONGOC_HEADER_INSTALL_DIR}"
)
# Define pkg-config files
set(VERSION "${MONGOC_VERSION}")
set(prefix "${CMAKE_INSTALL_PREFIX}")
set(libdir "\${prefix}/lib")
foreach(
FLAG
${SASL_LIBS} ${SSL_LIBS} ${SHM_LIB} ${RESOLV_LIBS} ${THREAD_LIB}
${ZLIB_LIBS} ${SNAPPY_LIBS})
if (IS_ABSOLUTE "${FLAG}" )
get_filename_component(FLAG_DIR "${FLAG}" DIRECTORY)
get_filename_component(FLAG_FILE "${FLAG}" NAME_WE)
STRING(REGEX REPLACE "^lib" "" FLAG_FILE "${FLAG_FILE}")
set(MONGOC_LIBS "${MONGOC_LIBS} -L${FLAG_DIR} -l${FLAG_FILE}")
elseif (FLAG MATCHES "^-.*")
# Flag starts with dash, add it as-is.
set(pkg_config_libs "${pkg_config_libs} ${FLAG}")
else ()
# Flag doesn't start with dash, add it with a dash.
set(MONGOC_LIBS "${MONGOC_LIBS} -l${FLAG}")
endif ()
endforeach()
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-1.0.pc.in
${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-1.0.pc
@ONLY)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-1.0.pc
DESTINATION lib/pkgconfig
)
if (MONGOC_ENABLE_STATIC)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-static-1.0.pc.in
${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-static-1.0.pc
@ONLY)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-static-1.0.pc
DESTINATION lib/pkgconfig
)
endif ()
# Deprecated alias for libmongoc-1.0.pc, see CDRIVER-2086.
if (MONGOC_ENABLE_SSL)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/src/libmongoc-ssl-1.0.pc.in
${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-ssl-1.0.pc
@ONLY)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/src/libmongoc-ssl-1.0.pc
DESTINATION lib/pkgconfig
)
endif()
include (build/cmake/MongoCPackage.cmake)
libmongoc-1.9.2+dfsg/CONTRIBUTING.md 0000664 0000000 0000000 00000016463 13226174053 0016661 0 ustar 00root root 0000000 0000000 # Contributing to mongo-c-driver
Thanks for considering contributing to the mongo-c-driver!
This document intends to be a short guide to helping you contribute to the codebase.
It expects a familiarity with the C programming language and writing portable software.
Whenever in doubt, feel free to ask others that have contributed or look at the existing body of code.
## Guidelines
The mongo-c-driver has a few guidelines that help direct the process.
### Portability
mongo-c-driver is portable software. It needs to run on a multitude of
operating systems and architectures.
* Linux (RHEL 5 and newer)
* FreeBSD (10 and newer)
* Windows (Vista and newer)
* macOS (10.8 and newer)
* ARM/SPARC/x86/x86_64
### Licensing
Some of the mongo-c-driver users embed the library statically in their
products. Therefore, the driver and all contributions must be liberally
licensed. As a policy, we have chosen Apache 2.0 as the license for the
project.
### Coding Style
We try not to be pedantic with taking contributions that are not properly
formatted, but we will likely perform a followup commit that cleans things up.
The basics are, in vim:
```
: set ts=3 sw=3 et
```
3 space tabs, insert spaces instead of tabs.
For all the gory details, see [.clang-format](.clang-format)
### Adding a new error code or domain
When adding a new error code or domain, you must do the following. This is most
applicable if you are adding a new symbol with a bson_error_t as a parameter,
and the existing codes or domains are inappropriate.
- Add the domain to `mongoc_error_domain_t` in `src/mongoc/mongoc-error.h`
- Add the code to `mongoc_error_code_t` in `src/mongoc/mongoc-error.h`
- Add documentation for the domain or code to the table in `doc/mongoc_errors.rst`
### Adding a new symbol
This should be done rarely but there are several things that you need to do
when adding a new symbol.
- Add documentation for the new symbol in `doc/mongoc_your_new_symbol_name.rst`
### Documentation
We strive to document all symbols. See doc/ for documentation examples. If you
add a new function, add a new .rst file describing the function so that we can
generate man pages and HTML for it.
### Testing
To run the entire test suite, including authentication tests,
start `mongod` with auth enabled:
```
$ mongod --auth
```
In another terminal, use the `mongo` shell to create a user:
```
$ mongo --eval "db.createUser({user: 'admin', pwd: 'pass', roles: ['root']})" admin
```
Authentication in MongoDB 3.0 and later uses SCRAM-SHA-1, which in turn
requires a driver built with SSL:
```
$ ./configure --enable-ssl`
```
Set the user and password environment variables, then build and run the tests:
```
$ export MONGOC_TEST_USER=admin
$ export MONGOC_TEST_PASSWORD=pass
$ make test
```
Additional environment variables:
* `MONGOC_TEST_HOST`: default `localhost`, the host running MongoDB.
* `MONGOC_TEST_PORT`: default 27017, MongoDB's listening port.
* `MONGOC_TEST_URI`: override both host and port with a full connection string,
like "mongodb://server1,server2".
* `MONGOC_TEST_SERVER_LOG`: set to `stdout` or `stderr` for wire protocol
logging from tests that use `mock_server_t`. Set to `json` to include these
logs in the test framework's JSON output, in a format compatible with
[Evergreen](https://github.com/evergreen-ci/evergreen).
* `MONGOC_TEST_MONITORING_VERBOSE`: set to `on` for verbose output from
Application Performance Monitoring tests.
* `MONGOC_TEST_COMPRESSORS=snappy,zlib`: wire protocol compressors to use
If you start `mongod` with SSL, set these variables to configure how
`make test` connects to it:
* `MONGOC_TEST_SSL`: set to `on` to connect to the server with SSL.
* `MONGOC_TEST_SSL_PEM_FILE`: path to a client PEM file.
* `MONGOC_TEST_SSL_PEM_PWD`: the PEM file's password.
* `MONGOC_TEST_SSL_CA_FILE`: path to a certificate authority file.
* `MONGOC_TEST_SSL_CA_DIR`: path to a certificate authority directory.
* `MONGOC_TEST_SSL_CRL_FILE`: path to a certificate revocation list.
* `MONGOC_TEST_SSL_WEAK_CERT_VALIDATION`: set to `on` to relax the client's
validation of the server's certificate.
The SASL / GSSAPI / Kerberos tests are skipped by default. To run them, set up a
separate `mongod` with Kerberos and set its host and Kerberos principal name
as environment variables:
* `MONGOC_TEST_GSSAPI_HOST`
* `MONGOC_TEST_GSSAPI_USER`
URI-escape the username, for example write "user@realm" as "user%40realm".
The user must be authorized to query `kerberos.test`.
MongoDB 3.2 adds support for readConcern, but does not enable support for
read concern majority by default. mongod must be launched using
`--enableMajorityReadConcern`.
The test framework does not (and can't) automatically discover if this option was
provided to MongoDB, so an additional variable must be set to enable these tests:
* `MONGOC_ENABLE_MAJORITY_READ_CONCERN`
Set this environment variable to `on` if MongoDB has enabled majority read concern.
Some tests require Internet access, e.g. to check the error message when failing
to open a MongoDB connection to example.com. Skip them with:
* `MONGOC_TEST_OFFLINE=on`
Some tests require a running MongoDB server. Skip them with:
* `MONGOC_TEST_SKIP_LIVE=on`
For quick checks during development, disable long-running tests:
* `MONGOC_TEST_SKIP_SLOW=on`
Some tests run against a local mock server, these can be skipped with:
* `MONGOC_TEST_SKIP_MOCK=on`
If you have started with MongoDB with `--ipv6`, you can test IPv6 with:
* `MONGOC_CHECK_IPV6=on`
The tests for mongodb+srv:// connection strings require some setup, see the
Initial DNS Seedlist Discovery Spec. By default these connection strings are
NOT tested, enable them with:
* `MONGOC_TEST_DNS=on`
The mock server timeout threshold for future functions can be set with:
* `MONGOC_TEST_FUTURE_TIMEOUT_MS=`
This is useful for debugging, so future calls don't timeout when stepping through code.
All tests should pass before submitting a patch.
## Configuring the test runner
The test runner can be configured by declaring the `TEST_ARGS` environment
variable. The following options can be provided:
```
-h, --help Show this help menu.
-f, --no-fork Do not spawn a process per test (abort on first error).
-l NAME Run test by name, e.g. "/Client/command" or "/Client/*".
-s, --silent Suppress all output.
-F FILENAME Write test results (JSON) to FILENAME.
-d Print debug output (useful if a test hangs).
-t, --trace Enable mongoc tracing (useful to debug tests).
```
`TEST_ARGS` is set to "--no-fork" by default, meaning that the suite aborts on
the first test failure. Use "--fork" to continue after failures.
To run just a specific portion of the test suite use the -l option like so:
```
$ make test TEST_ARGS="-l /server_selection/*"
```
The full list of tests is shown in the help.
## Debugging failed tests
The easiest way to debug a failed tests is to use the `debug` make target:
```
$ make debug TEST_ARGS="-l /WriteConcern/bson_omits_defaults"
```
This will build all dependencies and leave you in a debugger ready to run the test.
libmongoc-1.9.2+dfsg/COPYING 0000664 0000000 0000000 00000023676 13226174053 0015467 0 ustar 00root root 0000000 0000000
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
libmongoc-1.9.2+dfsg/Makefile.am 0000664 0000000 0000000 00000007272 13226174053 0016462 0 ustar 00root root 0000000 0000000 EXTRA_DIST =
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
bin_PROGRAMS =
lib_LTLIBRARIES =
noinst_LTLIBRARIES =
noinst_PROGRAMS =
noinst_HEADERS =
SUBDIRS =
if WITH_LIBBSON
SUBDIRS += src/libbson
endif
AM_CTAGSFLAGS = --fields=+l --languages=c
include doc/Makefile.am
if ENABLE_MAN_PAGES
include doc/man/Makefile.am
endif
if ENABLE_HTML_DOCS
include doc/html/Makefile.am
endif
include src/Makefile.am
if ENABLE_TESTS
include tests/Makefile.am
endif
if ENABLE_EXAMPLES
include examples/Makefile.am
endif
# for EXTRA_DIST
include build/Makefile.am
ACLOCAL_AMFLAGS = -I build/autotools/m4 ${ACLOCAL_FLAGS}
DISTCHECK_CONFIGURE_FLAGS = --enable-silent-rules --enable-man-pages --enable-html-docs --enable-sasl --enable-ssl --enable-maintainer-flags --enable-debug --with-libbson=bundled --with-snappy=auto --with-zlib=bundled
mongocdocdir = ${docdir}
mongocdoc_DATA = \
COPYING \
NEWS \
README.rst \
THIRD_PARTY_NOTICES
EXTRA_DIST += $(mongocdoc_DATA)
EXTRA_DIST += \
CMakeLists.txt \
CONTRIBUTING.md \
VERSION_CURRENT \
VERSION_RELEASED
EXTRA_DIST += $(wildcard orchestration_configs/*/*)
dist-hook:
-rm -rf $(distdir)/doc/html/.buildinfo $(distdir)/doc/html/.doctrees
-rm -rf $(distdir)/doc/man/.buildinfo $(distdir)/doc/man/.doctrees
@if test -d "$(srcdir)/.git"; then \
(cd "$(srcdir)" && \
$(top_srcdir)/build/autotools/missing --run git log --stat ) > ChangeLog.tmp \
&& mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
|| (rm -f ChangeLog.tmp; \
echo Failed to generate ChangeLog >&2); \
else \
echo A git checkout is required to generate a ChangeLog >&2; \
fi
# Make libmongoc-static-1.0.a symlink to libmongoc-1.0.a. If libmongoc is built with
# CMake instead of the Autotools, the static archive is named
# libmongoc-static-1.0.a by default. For the sake of projects that want to
# statically link to libmongoc, ensure the static archive is present with the
# name no matter how it was built.
# Also, copy CMake config-file packages to lib/cmake/ for use with CMake's
# "find_package" command.
if ENABLE_STATIC
enable_static=1
endif
install-exec-hook:
$(MKDIR_P) $(DESTDIR)$(libdir)/cmake/libmongoc-1.0
cp -f build/cmake/libmongoc-1.0-config.cmake $(DESTDIR)$(libdir)/cmake/libmongoc-1.0
cp -f build/cmake/libmongoc-1.0-config-version.cmake $(DESTDIR)$(libdir)/cmake/libmongoc-1.0
if [ ! -z "$(enable_static)" ]; then \
rm -rf $(DESTDIR)$(libdir)/cmake/libmongoc-static-1.0; \
$(MKDIR_P) $(DESTDIR)$(libdir)/cmake/libmongoc-static-1.0; \
cd $(DESTDIR)$(libdir); \
rm -f libmongoc-static-1.0.a; \
$(LN_S) libmongoc-1.0.a libmongoc-static-1.0.a; \
cp -f $(abs_builddir)/build/cmake/libmongoc-static-1.0-config.cmake cmake/libmongoc-static-1.0; \
cp -f $(abs_builddir)/build/cmake/libmongoc-static-1.0-config-version.cmake cmake/libmongoc-static-1.0; \
fi
clean-local:
-rm -rf $(CLEANFILES)
uninstall-local:
-rm -r $(mongocdocdir)
-rm -rf $(DESTDIR)$(libdir)/libmongoc-static-1.0.a
-rm -rf $(DESTDIR)$(libdir)/cmake/libmongoc-1.0
-rm -rf $(DESTDIR)$(libdir)/cmake/libmongoc-static-1.0
libmongoc-1.9.2+dfsg/NEWS 0000664 0000000 0000000 00000207212 13226174053 0015121 0 ustar 00root root 0000000 0000000 mongo-c-driver 1.9.2
====================
No change since 1.9.1; released to keep pace with libbson's version number.
-- A. Jesse Jiryu Davis
mongo-c-driver 1.9.1
====================
It is my pleasure to announce mongo-c-driver 1.9.1. This release fixes a bug
that caused session ID to be included in authentication and server monitoring
commands. Thanks to Jeremy Mikola for finding and fixing the issue.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.9.0
====================
It is my pleasure to announce mongo-c-driver 1.9.0. This version drops support
for MongoDB 2.4 and adds support for MongoDB 3.6 features:
* New struct mongoc_change_stream_t to watch a collection for changes.
* New struct mongoc_client_session_t represents a MongoDB 3.6 session,
which supports causal consistency: you are guaranteed to read your writes
and to perform monotonic reads, even when reading from secondaries or in
a sharded cluster.
* New functions that accept flexible options as a BSON document. These
accept a "sessionId" option and any future options. In addition, the
two new "update" functions accept the "arrayFilters" option that is new
in MongoDB 3.6:
mongoc_collection_insert_one
mongoc_collection_insert_many
mongoc_collection_update_one
mongoc_collection_update_many
mongoc_collection_replace_one
mongoc_collection_delete_one
mongoc_collection_delete_many
mongoc_client_command_with_opts
mongoc_database_command_with_opts
mongoc_collection_command_with_opts
mongoc_client_find_databases_with_opts
mongoc_client_get_database_names_with_opts
mongoc_collection_create_bulk_operation_with_opts
mongoc_collection_find_indexes_with_opts
mongoc_database_find_collections_with_opts
mongoc_database_get_collection_names_with_opts
* New URI option "retryWrites=true" safely and automatically retries certain
write operations if the server is a MongoDB 3.6 replica set or sharded
cluster.
* Support for MongoDB OP_MSG wire protocol.
Additional changes not specific to MongoDB 3.6:
* Support for mongodb+srv URIs to query DNS for SRV and TXT records that
configure the connection to MongoDB.
* Support LibreSSL with CMake build
* The "minPoolSize" URI option is deprecated: it's confusing and not useful.
Bug fixes:
* mongoc_bulk_operation_execute did not always initialize "reply".
* Fix C99 pedantic warnings.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Jeremy Mikola
* Kevin Albertson
* Jeroen Ooms
* Iulian Rotaru
* Derick Rethans
* Graham Whitted
* Brian Moss
* Alex Masterov
* Michael Kuhn
* Sriharsha Vardhan
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.8.2
====================
It is my pleasure to announce mongo-c-driver 1.8.2. This release fixes the
following bugs:
* Remove option to bundle the Snappy compression library, it caused issues
for programs linking to libmongoc
* Fix pkg-config and CMake config file flags for programs that statically
link to libmongoc when libmongoc is statically linked to zLib
* The configure flag "--with-zlib=no" was ignored
Crash in authentication when username is NULL
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Derick Rethans
* Hannes Magnusson
* Jeremy Mikola
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.8.1
====================
It is my pleasure to announce mongo-c-driver 1.8.1. This release fixes the
following bugs:
* Remove a syntax error in the configure script that affects some shells.
* The configure script respects --with-zlib=system and --with-snappy=system.
* The internal mongoc_server_description_t struct is properly reinitialized
after a network error.
* Fix the encoding of this NEWS file.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Jeremy Mikola
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.8.0
====================
* The zLib and Snappy compression libraries are bundled if not available.
Wire protocol compression is enabled on Windows.
* mongoc_collection_find_and_modify_with_opts now respects a "writeConcern"
field in the "extra" BSON document in its mongoc_find_and_modify_opts_t.
* The command functions mongoc_client_read_write_command_with_opts,
mongoc_database_read_write_command_with_opts, and
mongoc_collection_read_write_command_with_opts now ignore the "read_prefs"
parameter.
* mongoc_collection_create_index and mongoc_collection_create_index_with_opts
are both now deprecated. Use mongoc_database_write_command_with_opts
instead; a guide to creating an index using that function has been added.
* Use select, not WSAPoll, on Windows.
* Always mark a server "Unknown" after a network error (besides a timeout).
* mongoc_client_pool_t sends platform metadata to the server; before, only a
single mongoc_client_t did.
* New stream method mongoc_stream_timed_out.
* Wire version checks introduced in 1.8.0 will prevent the driver from
connecting to a future MongoDB server version if its wire protocol is
incompatible.
* New CMake option ENABLE_MAINTAINER_FLAGS.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Jeremy Mikola
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.7.0
====================
It is my pleasure to announce mongo-c-driver 1.7.0.
New features and bug fixes:
* CMake build now installs .pc files for programs that link to libmongoc using
pkg-config. Both the CMake and Autotools build systems now install .cmake
files for programs that link to libmongoc using CMake. Linking to libmongoc
statically or dynamically is now much more convenient. See the new tutorial
section "Include and link libmongoc in your C program".
* New CMake option ENABLE_STATIC can be ON, OFF, or AUTO (the default)
* Minimum required CMake version has been increased to 3.1.
* CMake remains experimental on non-Windows platforms and issues a warning now
* Support for wire compression.
* Support for snappy and zlib. MongoDB 3.4 only supports snappy, while zlib
support is expected in MongoDB 3.6.
The enable, configure mongoc like so:
./configure --with-snappy --with-zlib
* New functions: mongoc_uri_get_compressors & mongoc_uri_set_compressors, to
get and set compressor configuration on mongoc_uri_t
* Added support for comma separated "compressors" connection string option (e.g.
mongodb://localhost/?compressors=snappy,zlib)
* Added support for configuring zlib compression level in the connection string
(e.g. mongodb://localhost/?compressors=zlib&zlibcompressionlevel=8)
* Now requires the use of CMake config files for libbson to build libmongoc
with CMake
* Added pkg-config support for libressl.
* New function mongoc_uri_set_auth_mechanism to update the authentication
mechanism of a mongoc_uri_t after it is created from a string.
* New function mongoc_bulk_operation_insert_with_opts provides immediate
error checking.
* New function mongoc_uri_new_with_error provides a way to parse a connection
string, and retrieve the failure reason, if any.
* Support for MongoDB Connection String specification
* All connection string options are now represented by MONGOC_URI_xxx macros
* Paths to Unix Domain Sockets must be url encoded
* Repeated options now issue warnings
* Special characters in username, password and other values must be url encoded
* Unsupported connection string options now issue warnings
* Boolean values can now be represented as true/yes/y/t/1 and false/no/n/f/0.
* Case is now preserved in Unix domain paths.
* New function mongoc_cursor_error_document provides access to server's error
reply if a query or command fails.
* New function mongoc_write_concern_is_default determines whether any write
concern options have been set, and mongoc_read_concern_is_default checks if
read concern options are set.
* mongoc_gridfs_find_one_with_opts optimized to use limit 1.
Thanks to everyone who contributed to the development of this release.
* Hannes Magnusson
* A. Jesse Jiryu Davis
* David Golden
* Jeremy Mikola
* Bernard Spil
* Aleksander Melnikov
* Adam Seering
* Remi Collet
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.6.0
====================
It is my pleasure to announce mongo-c-driver 1.6.0.
New features and bug fixes:
* Enterprise authentication on Windows now uses the native GSSAPI library;
Cyrus SASL is no longer required for enterprise auth on Windows.
* BSON documents are more thoroughly validated before insert or update.
* New function mongoc_uri_set_mechanism_properties to replace all the
authMechanismProperties on an existing URI.
* mongoc_uri_get_mechanism_properties asserts its inputs are not NULL.
* For consistency with other MongoDB drivers, mongoc_collection_save is
deprecated in favor of mongoc_collection_insert or mongoc_collection_update.
* The driver is now built and continuously tested with MinGW-W64 on Windows.
* Experimental support for HPUX.
* The correct operation ids are now passed to Command Monitoring callbacks.
* Fix a crash if the driver couldn't connect to the server to create an index.
* The documentation is ported from Mallard XML to ReStructured Text, the
HTML documentation is restyled, and numerous man page syntax errors fixed.
* Getter functions for options in mongoc_find_and_modify_opts_t:
* mongoc_find_and_modify_opts_get_bypass_document_validation
* mongoc_find_and_modify_opts_get_fields
* mongoc_find_and_modify_opts_get_flags
* mongoc_find_and_modify_opts_get_max_time_ms
* mongoc_find_and_modify_opts_get_sort
* mongoc_find_and_modify_opts_get_update
* All public functions now have the __cdecl calling convention on Windows.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Aleksander Melnikov
* Jeroen Ooms
* Brian McCarthy
* Jonathan Wang
* Peter Beckman
* Remi Collet
* Rockford Wei
* Alexey Ponomarev
* Christopher Wang
* David Golden
* Jeremy Mikola
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.5.5
====================
It is my pleasure to announce mongo-c-driver 1.5.5. This release fixes bugs
parsing the localThresholdMS option from the MongoDB URI, and a crash in
mongoc_cursor_destroy if "query" or "filter" are invalid. Thanks to Jeremy
Mikola.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.5.4
====================
It is my pleasure to announce mongo-c-driver 1.5.4. This release fixes an error
in cursor iteration when a readConcern is set. Thanks to Jeremy Mikola and
Hannes Magnusson.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.5.3
====================
This release fixes a bug that prevented connecting to IPv4-only MongoDB servers
by hostname.
https://jira.mongodb.org/browse/CDRIVER-1988
The driver has reverted to its 1.5.1 behavior: it connects to MongoDB over IPv6
if given an IPv6 connection string like "mongodb://[::1]", and requires an IPv4
connection when given a hostname like "mongodb://localhost".
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.5.2
====================
It is my pleasure to announce mongo-c-driver 1.5.2.
Thanks to everyone who contributed to the development of this release.
New bug fixes:
* CDRIVER-1975 allow mixed $ and non-$ query ops.
* CDRIVER-1972 Support for ipv6 hostnames.
* CDRIVER-1971 Missing exports of mongoc_gridfs_file_set_*() functions.
* CDRIVER-1970 update define constants for "find" opts to be unique.
* CDRIVER-1964 Windows CA stores should be opened with read-only flag.
Thanks to everyone who contributed to the development of this release.
* Hannes Magnusson
* A. Jesse Jiryu Davis
* Alexey Ponomarev
* Peter Beckman
* Rockford Wei
Peace,
Hannes Magnusson
mongo-c-driver 1.5.1
====================
It is my pleasure to announce mongo-c-driver 1.5.1. This is a bugfix release:
* Fix SEGFAULT with performance counters on NUMA (thanks to Jonathan Wang).
* Prevent rare assertion error in mongoc_cluster_stream_for_server.
* Improve error messages from auth failure.
* Escape quotes when appending CFLAGS to handshake metadata.
* Fix OpenSSL header lookups in non-default paths.
* Fix build failure with LibreSSL.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Jeroen Ooms
* Jonathan Wang
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.5.0
====================
It is my pleasure to announce mongo-c-driver 1.5.0.
New features and bug fixes:
* MongoDB 3.4 Support
* New URI and read preference option, "maxStalenessSeconds"
* MongoDB Handshake
* writeConcern and readConcern enhancements
* Collation allows users to specify language-specific rules for string
comparison when sorting documents. See the code examples for
mongoc_client_read_command_with_opts, mongoc_collection_count_with_opts,
mongoc_collection_find_with_opts, and mongoc_index_opt_t, as well as the
"Setting Collation Order" section of the "Bulk Write Operations" guide.
* mongoc_collection_count_with_opts uses the collection's read preference if
none is passed in
* Improved TLS support
* Fixed LibreSSL (libssl) support
* Added LibreSSL (libtls) support
* Fixed Secure Channel build on VS 2010
* OpenSSL now supports SNI (all others already do)
* Additional features for Application Performance Monitoring:
* mongoc_topology_description_has_writable_server
* mongoc_topology_description_has_readable_server
* New functions accept flexible options as a BSON document:
* mongoc_collection_find_with_opts
* mongoc_client_read_command_with_opts
* mongoc_client_write_command_with_opts
* mongoc_client_read_write_command_with_opts
* mongoc_database_read_command_with_opts
* mongoc_database_write_command_with_opts
* mongoc_database_read_write_command_with_opts
* mongoc_collection_read_command_with_opts
* mongoc_collection_write_command_with_opts
* mongoc_collection_read_write_command_with_opts
* mongoc_gridfs_find_with_opts
* mongoc_gridfs_find_one_with_opts
* mongoc_collection_find is now deprecated in favor of
mongoc_collection_find_with_opts.
* New helper function to include read concern in one of the above function's
options parameter: mongoc_read_concern_append.
* mongoc_client_command no longer applies the client's read preference and
read concern by default. Same change for mongoc_database_command and
mongoc_collection_command.
* mongoc_collection_count_with_opts now applies the collection's read
preference if no read preference is provided
* mongoc_collection_create_index and mongoc_collection_drop_index now apply
the collection's write concern.
* mongoc_collection_create_index_with_opts now applies the collection's
write concern if none is specified in "opts"
* connectTimeoutMS timer now begins after DNS resolution, and resets
for each interface attempted (e.g., if the driver first tries IPv6,
then IPv4).
* New error code MONGOC_ERROR_DUPLICATE_KEY.
* mongoc_collection_find no longer treats the "filter" key specially in
queries - querying for a document with a key named "filter" is the same
now as any other key.
* The server description parameter to the following functions is "const":
* mongoc_server_description_host
* mongoc_server_description_id
* mongoc_server_description_ismaster
* mongoc_server_description_round_trip_time
* mongoc_server_description_type
* Exported symbols are no longer declared in seperate export files.
This could break ABI with applications using clang, which previously
exported symbols from the internal private ABI.
* mongoc no longer crashes when multi roundtrip bulk operation fails.
* Added support for the new readConcernLevel "linearizable".
* Clients now check for misformatted "readPreferenceTags" in URI.
* New CMake option ENABLE_TRACING allows debug output, which before had only
been available with "configure --enable-tracing".
* Bugfix: "PossiblePrimary"-type replicas could be selected for reads
* Bugfixes: The random number generator used to select servers is now properly
seeded, and secondary queries are now properly distributed according to
localThresholdMS, not just to the lowest-latency secondary.
* mongoc_collection_insert, mongoc_collection_update, mongoc_collection_remove
consistently use domain MONGOC_ERROR_BSON, code MONGOC_ERROR_BSON_INVALID
if passed oversized BSON, and MONGOC_ERROR_COLLECTION for other errors.
mongoc_bulk_operation_execute continues to use MONGOC_ERROR_COMMAND for
all errors.
* If mongoc_client_pool_t fails to start its scanner thread in the background,
it logs and aborts instead of silently continuing, then failing to connect.
* The driver now updates its view of the whole topology with information from
each new connection handshake.
* mongoc_client_set_apm_callbacks can be used repeatedly to change or clear
the list of monitoring callbacks.
* Improved error reporting when the driver fails to reach the server.
Deprecations:
* mongoc_collection_find is deprecated for mongoc_collection_find_with_opts.
Removed configure flags:
* --enable-experimental has been removed. All previously experimental
features are now always on.
* The configure option "--enable-hardening" had had no effect. It is removed
in favor of system-wide compiler configuration.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Fiona Rowan
* Ian Boros
* Remi Collet
* Brian McCarthy
* Jeroen Ooms
* J. Rassi
* Christoph Schwarz
* Alexey Vorobeyev
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.4.2
====================
It is my pleasure to announce mongo-c-driver 1.4.2. This release fixes bugs in
"minPoolSize" logic, see CDRIVER-1558 for details.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.4.1
====================
It is my pleasure to announce mongo-c-driver 1.4.1. This is a bugfix release:
* mongoc_client_get_server_descriptions could return a list including NULLs
* Tailable cursors on MongoDB 3.2 only worked with MONGOC_QUERY_AWAIT_DATA
* Spurious warnings with MONGOC_DISABLE_SHM
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.4.0
====================
It is my pleasure to announce the release of mongo-c-driver 1.4.0.
TLS
---
The driver can now use the native TLS and crypto functions included in Mac OS X
and Windows. OpenSSL is no longer required for TLS or authentication on Mac or
Windows. By default, OpenSSL is used if available, the default will switch in
version 2.0 to prefer native TLS.
For native TLS on Mac:
./configure --enable-ssl=darwin
For Windows:
cmake "-DENABLE_SSL=WINDOWS" -G "Visual Studio 10 Win64" "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver"
All of the TLS implementations now load the native default certificate store,
with OpenSSL on Windows falling back on the Windows native certificate store if
no other can be found.
The "ca_dir" field on mongoc_ssl_opt_t is only supported by OpenSSL. All other
fields, including "pem_file", are supported by all implementations.
A new field, "allow_invalid_hostname", has been added to mongoc_ssl_opt_t and is
preferred over the existing "allow_invalid_certificate" to disable hostname
verification.
The driver now supports the latest OpenSSL 1.1 in addition to past versions.
Application Performance Monitoring
----------------------------------
The driver implements the MongoDB Command Monitoring Spec. Applications can
record the duration and other details of every operation the driver performs on
the server. See "Introduction to Application Performance Monitoring" in the
docs.
Error API
---------
New functions mongoc_client_set_error_api and mongoc_client_pool_set_error_api
allow applications to distinguish client and server errors. See the "Error
Reporting" doc.
Unacknowledged Write Results
----------------------------
Unacknowledged writes (writes whose mongoc_write_concern_t "w" value is zero)
now reply with an empty document instead of one with nInserted: 0, nUpdated: 0,
and so on.
Command functions now ignore the read preferences set on a client, database,
or collection. Instead, they use the mongoc_read_prefs_t passed in explicitly,
or default to "primary". This change was made to bring them in line with the
Server Selection Spec. These are the affected functions:
* mongoc_client_command
* mongoc_client_command_simple
* mongoc_database_command
* mongoc_database_command_simple
* mongoc_collection_command
* mongoc_collection_command_simple
On the other hand, the following command-specific helper functions now use the
collection's read preference:
* mongoc_collection_count
* mongoc_collection_stats
New functions to send maxTimeMS or any arbitrary options with findAndModify:
* mongoc_find_and_modify_opts_set_max_time_ms
* mongoc_find_and_modify_opts_append
New function to include a write concern with a generic command function
like mongoc_client_command_simple:
* mongoc_write_concern_append
Public API For Higher-Level Drivers
-----------------------------------
New functions support language drivers (specifically the PHP and HHVM drivers)
using only the libmongoc public API:
* mongoc_bulk_operation_get_hint
* mongoc_client_command_simple_with_server_id
* mongoc_client_get_server_description
* mongoc_client_get_server_description_by_id
* mongoc_client_get_server_descriptions
* mongoc_client_select_server
* mongoc_cursor_get_limit
* mongoc_cursor_new_from_command_reply
* mongoc_cursor_set_hint
* mongoc_cursor_set_limit
* mongoc_log_trace_disable
* mongoc_log_trace_enable
* mongoc_server_description_ismaster
* mongoc_server_description_round_trip_time
* mongoc_server_description_type
* mongoc_server_descriptions_destroy_all
* mongoc_uri_get_option_as_bool
* mongoc_uri_get_option_as_int32
* mongoc_uri_get_option_as_utf8
* mongoc_uri_option_is_bool
* mongoc_uri_option_is_int32
* mongoc_uri_option_is_utf8
* mongoc_uri_set_auth_source
* mongoc_uri_set_database
* mongoc_uri_set_option_as_bool
* mongoc_uri_set_option_as_int32
* mongoc_uri_set_option_as_utf8
* mongoc_uri_set_password
* mongoc_uri_set_read_concern
* mongoc_uri_set_read_prefs_t
* mongoc_uri_set_username
* mongoc_uri_set_write_concern
* mongoc_write_concern_is_acknowledged
* mongoc_write_concern_is_valid
* mongoc_write_concern_journal_is_set
Now that these public APIs are available, the PHP drivers no longer define the
MONGOC_I_AM_A_DRIVER preprocessor symbol to access private APIs. The symbol is
removed from C Driver headers, and libmongoc-priv.so is no longer installed.
Other Features
--------------
* New connection string option "localThresholdMS".
* zSeries and POWER8 platform support.
* Performance enhancements, reduce allocation and copying in command code.
* All man page names now begin with "mongoc_" to avoid install conflicts.
* New function mongoc_gridfs_file_set_id.
Deprecations
------------
Automatically calling mongoc_init and mongoc_cleanup is a GCC-specific feature
that is now deprecated, and will be removed in version 2. The driver should be
built with:
./configure --disable-automatic-init-and-cleanup
Or:
cmake "-DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF" -G "Visual Studio 10 Win64" "-DCMAKE_INSTALL_PREFIX=C:\mongo-c-driver"
In this configuration, applications must explicitly init and cleanup libmongoc.
Deprecated functions:
* mongoc_write_concern_get_fsync
* mongoc_write_concern_set_fsync
Notable Bug Fixes
-----------------
* Logic bugs using tag sets to select replica set members with complex configs
* mongoc_client_get_database_names no longer filters out a replica set
member's "local" database.
* mongoc_client_get_gridfs now ensures the proper indexes on the files and
chunks collections.
* SecondaryPreferred fails if primary matches tags but secondaries don't.
* mongoc_collection_find_and_modify_with_opts can return true on
writeConcernError.
* mongoc_collection_validate doesn't always init "reply".
* The strings referred to by mongoc_ssl_opt_t, like pem_file and ca_file, are
now copied into the client or client pool by mongoc_client_set_ssl_opts or
mongoc_client_pool_set_ssl_opts, and need not be kept valid afterward.
* mongoc_collection_count_with_opts ignored flags and read_prefs.
* minPoolSize of 0 should mean "no minimum".
* mongoc_database_create_collection should always use the primary.
* The GSSAPI properties SERVICE_NAME and CANONICALIZE_HOST_NAME are now
properly parsed from the URI, see the "Authentication" doc for details.
* Comprehensive compatibility with various C standards and compilers.
Acknowledgments
---------------
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Ian Boros
* Fiona Rowan
* Jeremy Mikola
* Christoph Schwarz
* Mike Lloyd
* Remi Collet
* Jean-Bernard Jansen
* David Hatch
* Derick Rethans
* Brian Samek
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.5
====================
It is my pleasure to announce mongo-c-driver 1.3.5. This release fixes a crash
in mongoc_cleanup when an allocator had been set with bson_mem_set_vtable, and
introduces a configure option MONGOC_NO_AUTOMATIC_GLOBALS which prevents code
built with GCC from automatically calling mongoc_init and mongoc_cleanup when
your code does not.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.4
====================
It is my pleasure to announce the MongoDB C Driver 1.3.4. This release fixes a
security vulnerability: when a mongoc_client_t uses SSL and is disconnected, it
failed to re-verify the server certificate after reconnecting. This flaw affects
single clients, not pooled ones.
Thanks to everyone who contributed to the development of this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Remi Collet
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.3
====================
It is my pleasure to announce MongoDB C Driver 1.3.3. This fixes a bug where
a slightly-oversized bulk write operation was not split into batches; instead,
it was sent whole to the server, which rejected it.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.2
====================
It is my pleasure to announce MongoDB C Driver 1.3.2. This is a bugfix release:
* A socket is properly discarded after a network error from a command.
* mongoc_database_get_collection now copies the database's read preferences,
read concern, and write concern, instead of copying the client's.
* mongoc_cursor_t's private struct now allows a negative limit.
Thanks to everyone who contributed to this release.
* A. Jesse Jiryu Davis
* Jeremy Mikola
* Hannes Magnusson
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.1
====================
It is my pleasure to announce MongoDB C Driver 1.3.1. This is a bugfix release:
* mongoc_client_get_gridfs now copies the client's read preferences, read
concern, and write concern to the newly created mongoc_gridfs_t. Before
this fix, GridFS operations were always executed with the default config:
data was read from the primary, with the read concern level "local", and
written with write concern "acknowledged". Now, if you have configured any
of these options on the mongoc_client_t, they are respected by the
mongoc_gridfs_t.
* CMakeLists.txt now includes and installs the pkg-config files.
Thanks to everyone who contributed to this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Christopher Wang
* Jean-Bernard Jansen
* Jeremy Mikola
* Jeroen Ooms
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.0
====================
It is my pleasure to announce to you the release of the MongoDB C Driver 1.3.0.
Changes since the the release candidate 1.3.0-rc0:
* Fix a cursor bug introduced on big-endian platforms in 1.3.0-beta0.
* Improve documentation for mongoc_host_list_t.
* Move private mongoc_host_list_t functions from public header.
* Refactor the build system to declare library version in one place.
All new features and changes since the previous stable release, 1.2.1:
* If the driver is compiled without SSL support but a URI with "ssl=true"
is passed to mongoc_client_new, mongoc_client_new_from_uri, or
mongoc_client_pool_new, the function logs an error and returns NULL. Before,
the driver would attempt a non-SSL connection.
* mongoc_collection_find_and_modify will now apply the mongoc_collection_t's
write_concern_t when talking to MongoDB 3.2.
* Support for MongoDB 3.2's "readConcern" feature for queries, counts, and
aggregations. The option "readConcernLevel" is now accepted in the MongoDB
URI. New struct mongoc_read_concern_t, and functions operating on it:
- mongoc_client_get_read_concern
- mongoc_client_set_read_concern
- mongoc_database_get_read_concern
- mongoc_database_set_read_concern
- mongoc_collection_get_read_concern
- mongoc_collection_set_read_concern
- mongoc_read_concern_copy
- mongoc_read_concern_destroy
- mongoc_read_concern_get_level
- mongoc_read_concern_new
- mongoc_read_concern_set_level
- mongoc_uri_get_read_concern
* Support for MongoDB 3.2's "bypassDocumentValidation" option for writes.
* New struct mongoc_bulk_write_flags_t and related functions:
- mongoc_bulk_operation_set_bypass_document_validation
* New struct mongoc_find_and_modify_opts_t and related functions:
- mongoc_find_and_modify_opts_new
- mongoc_find_and_modify_opts_destroy
- mongoc_find_and_modify_opts_set_sort
- mongoc_find_and_modify_opts_set_update
- mongoc_find_and_modify_opts_set_fields
- mongoc_find_and_modify_opts_set_flags
- mongoc_find_and_modify_opts_set_bypass_document_validation
- mongoc_collection_find_and_modify_with_opts
* New functions to copy database and collection handles:
- mongoc_collection_copy
- mongoc_database_copy
* Support for MongoDB 3.2 wire protocol: use commands in place of OP_QUERY,
OP_GETMORE, and OP_KILLCURSORS messages.
* To explain a query plan with MongoDB 3.2, you must now call the "explain"
command, instead of including the "$explain" key in a mongoc_collection_find
query. See the mongoc_collection_find documentation page for details.
* Configurable wait time on tailable cursors with MongoDB 3.2:
- mongoc_cursor_get_max_await_time_ms
- mongoc_cursor_set_max_await_time_ms
* Use electionId to detect a stale replica set primary during a network split.
* Disconnect from replica set members whose "me" field does not match the
connection address.
* The client side matching feature, mongoc_matcher_t and related functions,
are deprecated and scheduled for removal in version 2.0.
* New CMake options ENABLE_SSL, ENABLE_SASL, ENABLE_TESTS, and ENABLE_EXAMPLES.
* Use constant-time comparison when verifying credentials.
* Combine environment's CFLAGS with configure options when building.
* Improved man page output and "whatis" entries.
There are extensive bugfixes and improvements in GridFS since 1.2.1, including:
* Handle seeking, reading, and writing past the end of a GridFS file.
* If a GridFS chunk is missing, mongoc_gridfs_file_readv sets file->error to
domain MONGOC_ERROR_GRIDFS and a new code MONGOC_ERROR_GRIDFS_CHUNK_MISSING.
* Optimization for long seeks forward with mongoc_gridfs_file_seek.
Other fixes since 1.2.1:
* Memory leaks in mongoc_database_has_collection and mongoc_cursor_next.
* Report writeConcern failures from findAndModify and from legacy writes.
* Memory leak in mongoc_database_find_collections.
* Set OP_QUERY's nToReturn from the provided limit.
* Fix compiler warnings and errors, especially with Visual Studio 2015,
GCC 4.8, and IBM XL C.
* Bugs and typos in tutorial examples.
Thanks to everyone who contributed to this release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Kyle Suarez
* Jose Sebastian Battig
* Matt Cotter
* Claudio Canella
* alexeyvo
* Christopher Wang
* Flavio Medeiros
* Iago Rubio
* Jeremy Mikola
* Victor Leschuk
* Jason Carey
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.0-rc0
========================
It is my pleasure to announce to you the first release candidate of MongoDB C
driver 1.3.0. It includes additive ABI changes and bugfixes, and support for
the upcoming MongoDB 3.2. It is compatible with MongoDB 2.4 and later.
New features and changes since 1.3.0-beta0:
* If the driver is compiled without SSL support but a URI with "ssl=true"
is passed to mongoc_client_new, mongoc_client_new_from_uri, or
mongoc_client_pool_new, the function logs an error and returns NULL. Before,
the driver would attempt a non-SSL connection.
* New functions to copy database and collection handles:
- mongoc_collection_copy
- mongoc_database_copy
* If a GridFS chunk is missing, mongoc_gridfs_file_readv sets file->error to
domain MONGOC_ERROR_GRIDFS and a new code MONGOC_ERROR_GRIDFS_CHUNK_MISSING.
* Use electionId to detect a stale replica set primary during a network split.
* Disconnect from replica set members whose "me" field does not match the
connection address.
* The client side matching feature, mongoc_matcher_t and related functions,
are deprecated and scheduled for removal in version 2.0.
* New CMake options ENABLE_SSL, ENABLE_SASL, ENABLE_TESTS, and ENABLE_EXAMPLES.
* The build system is refactored to declare the current version and latest
release in one place.
Other fixes:
* Memory leaks in mongoc_database_has_collection and mongoc_cursor_next.
* Report writeConcern failures from findAndModify and from legacy writes.
Thanks to everyone who contributed to this release candidate.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Matt Cotter
* Claudio Canella
* Victor Leschuk
* Flavio Medeiros
* Christopher Wang
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.3.0-beta0
==========================
It is my pleasure to announce to you the beta of MongoDB C driver 1.3.0.
This beta includes additive ABI changes and bugfixes, and support for
the upcoming MongoDB 3.2. It is compatible with MongoDB 2.4 and later.
New features and changes:
* mongoc_collection_find_and_modify will now apply the mongoc_collection_t's
write_concern_t when talking to MongoDB 3.2.
* Support for MongoDB 3.2's "readConcern" feature for queries, counts, and
aggregations. The option "readConcernLevel" is now accepted in the MongoDB
URI. New struct mongoc_read_concern_t, and functions operating on it:
- mongoc_client_get_read_concern
- mongoc_client_set_read_concern
- mongoc_database_get_read_concern
- mongoc_database_set_read_concern
- mongoc_collection_get_read_concern
- mongoc_collection_set_read_concern
- mongoc_read_concern_copy
- mongoc_read_concern_destroy
- mongoc_read_concern_get_level
- mongoc_read_concern_new
- mongoc_read_concern_set_level
- mongoc_uri_get_read_concern
* Support for MongoDB 3.2's "bypassDocumentValidation" option for writes.
* New struct mongoc_bulk_write_flags_t and related functions:
- mongoc_bulk_operation_set_bypass_document_validation
* New struct mongoc_find_and_modify_opts_t and related functions:
- mongoc_find_and_modify_opts_new
- mongoc_find_and_modify_opts_destroy
- mongoc_find_and_modify_opts_set_sort
- mongoc_find_and_modify_opts_set_update
- mongoc_find_and_modify_opts_set_fields
- mongoc_find_and_modify_opts_set_flags
- mongoc_find_and_modify_opts_set_bypass_document_validation
- mongoc_collection_find_and_modify_with_opts
* Configurable wait time on tailable cursors with MongoDB 3.2:
- mongoc_cursor_get_max_await_time_ms
- mongoc_cursor_set_max_await_time_ms
* Support for MongoDB 3.2 wire protocol: use commands in place of OP_QUERY,
OP_GETMORE, and OP_KILLCURSORS messages.
* To explain a query plan with MongoDB 3.2, you must now call the "explain"
command, instead of including the "$explain" key in a mongoc_collection_find
query. See the mongoc_collection_find documentation page for details.
* Use constant-time comparison when verifying credentials.
* Combine environment's CFLAGS with configure options when building.
* Improved man page output and "whatis" entries.
Extensive bugfixes and improvements in GridFS, including:
* Handle seeking, reading, and writing past the end of a GridFS file.
* Optimization for long seeks forward with mongoc_gridfs_file_seek.
Other fixes:
* Memory leak in mongoc_database_find_collections.
* Set OP_QUERY's nToReturn from the provided limit.
* Fix compiler warnings and errors, especially with Visual Studio 2015,
GCC 4.8, and IBM XL C.
* Bugs and typos in tutorial examples
Thanks to everyone who contributed to this beta release.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Kyle Suarez
* Jose Sebastian Battig
* Jeremy Mikola
* Iago Rubio
* Matt Cotter
* alexeyvo
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.2
====================
It is my pleasure to announce to you the MongoDB C driver 1.2.2.
This release fixes a rare bug where the driver can direct reads to hidden
secondaries unintentionally. It also includes fixes and improvements to the
build system.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.1
====================
It is my pleasure to announce to you the MongoDB C driver 1.2.1.
This release includes critical bugfixes for SSL connections with
mongoc_client_pool_t, and for Unix domain socket connections.
The documentation is updated for a change introduced in version 1.2.0:
mongoc_client_set_ssl_opts and mongoc_client_pool_set_ssl_opts now configure
the driver to require an SSL connection to the server, even if "ssl=true" is
omitted from the MongoDB URI. Before, SSL options were ignored unless
"ssl=true" was included in the URI.
The build instructions are improved, including the steps to build with OpenSSL
on OS X El Capitan. Build errors and warnings are fixed for clang in gnu99
mode and MinGW.
Thanks to everyone who contributed to this version of libmongoc.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Tamas Nagy
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.0
====================
It is my pleasure to announce to you the MongoDB C driver 1.2.0.
This is a stable release with additive ABI changes and bugfixes. It is
compatible with MongoDB version 2.4 and later.
The following notes summarize changes since the previous stable release,
1.1.11, including changes in the 1.2.0 betas and release candidate.
This version rewrites mongoc_client_t's internals to match two important new
specs for MongoDB drivers: the Server Discovery And Monitoring Spec and the
Server Selection Spec. The rewritten client has many advantages:
* All replica set members or mongos servers are discovered and periodically
checked in parallel. The driver's performance is dramatically better and
more predictable with multi-server deployments, or with a flaky network,
or when some servers are slow or down.
* Clients from the same mongoc_client_pool_t share a background thread that
discovers and monitors all servers in parallel.
* Unnecessary round trips for server checks and pings are eliminated.
* Behavior is documented in the specs, and consistent with other drivers,
even in complex or unusual scenarios.
* The URI's "replicaSet" option is enforced: the driver now refuses to connect
to a server unless it is a member of a replica set with the correct setName.
* Many race conditions related to changing deployment conditions are fixed.
To conform to the new specs, the client now accepts these options in the
MongoDB URI; see the mongoc_uri_t documentation for details:
* heartbeatFrequencyMS
* serverSelectionTimeoutMS
* serverSelectionTryOnce
* socketCheckIntervalMS
Other features:
* All timeouts that can be configured in the URI now interpret 0 to mean "use
the default value for this timeout".
* The client's read preference can be configured in the URI with the new
options "readPreference" and "readPreferenceTags"; see the mongoc_uri_t
documentation.
* The new mongoc_uri_get_read_prefs_t function retrieves both the read mode
and tags from a mongoc_uri_t.
* New accessors mongoc_gridfs_file_get_id, mongoc_client_get_default_database,
and mongoc_bulk_operation_get_write_concern.
* Debug tracing can be controlled at runtime with mongoc_log_trace_enable and
mongoc_log_trace_disable.
* Set mongoc_client_pool_t's size with mongoc_client_pool_min_size()
and mongoc_client_pool_max_size().
Other changes:
* Enable runtime asserts in release build.
* The libbson submodule's URL now uses the recommended https://, not git://
* mongoc_client_kill_cursor is now deprecated and will be removed in 2.0.
* The write concern "w=-1" is documented as obsolete.
These notable bugs have been fixed since 1.1.11:
* The driver now uses the server's maxWireVersion to avoid an error and
extra round-trip when executing aggregations on MongoDB 2.4 and older.
* Much improved reporting of network errors, unavailable servers, and
authentication failure
* Off-by-one error in mongoc_gridfs_file_seek with mode SEEK_END
* The writeConcernErrors field of bulk results is properly formatted.
* A cursor with a server "hint" sets slaveOkay and / or $readPreference.
* Destroying an exhaust cursor must close its socket
* "wtimeoutms" was ignored for write concerns besides "majority".
* Bulk write operations might fail in mixed-version sharded clusters with
some pre-2.6 mongos servers.
* A variety of bugs and incorrect results in mongoc_bulk_operation_execute.
* Numerous compiler warnings and build failures on various platforms.
* Copious refinements to the documentation.
Thanks to everyone who contributed to this version of libmongoc.
* Jason Carey
* Samantha Ritter
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Kyle Suarez
* Jeremy Mikola
* Remi Collet
* Jose Sebastian Battig
* Derick Rethans
* Yuchen Xie
* Manuel Schoenlaub
* Sujan Dutta
* Lloyd Zhou
* rubicks
* Pawel Szczurko
* Yuval Hager
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.0-rc0
========================
It is my pleasure to announce the release candidate of the MongoDB C driver
1.2.0. It includes features and bugfixes developed since 1.2.0-beta1.
Notable bugs fixed:
* Much improved reporting of network errors, unavailable servers, and
authentication failure
* Destroying an exhaust cursor must close its socket
* Various bugs in server reconnection logic
* mongoc_collection_aggregate returned invalid cursor after failure
* Wrong error message after failed network write on Sparc
* Missing JSON test files in release tarball
Other changes:
* Enable runtime asserts in release build.
* mongoc_client_kill_cursor is now deprecated and will be removed in
version 2.0.
This release candidate also includes all bugfixes from 1.1.11.
Version 1.2.0 final will be a stable release with additive ABI changes and
bugfixes. It is compatible with MongoDB version 2.4 and later.
Thanks to everyone who contributed to this version of libmongoc.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Kyle Suarez
* rubicks
* Jose Sebastian Battig
* Jason Carey
* Remi Collet
* Yuval Hager
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.0-beta1
==========================
It is my pleasure to announce the second beta release of the MongoDB C driver
1.2.0. It includes features and bugfixes developed since 1.2.0-beta.
New features:
* Set mongoc_client_pool_t's size with mongoc_client_pool_min_size()
and mongoc_client_pool_max_size().
* The write concern "w=-1" is now documented as obsolete.
* Abundant fixes and additions to the documentation, beyond those in the
previous beta.
Notable bugs fixed:
* Crashes and races in several replica set scenarios.
* The driver now uses the server's maxWireVersion to avoid an error and
extra round-trip when executing aggregations on MongoDB 2.4 and older.
* Fixed network error handling in multiple code paths.
* connectTimeoutMS limits the time the driver can spend reconnecting to
servers in single-threaded (non-pooled) mode with serverSelectionTryOnce.
Version 1.2.0 final will be a stable release with additive ABI changes and
bugfixes. It is compatible with MongoDB version 2.4 and later.
Thanks to everyone who contributed to this version of libmongoc.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Manuel Schoenlaub
* Kyle Suarez
* Remi Collet
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.2.0-beta
=========================
It is my pleasure to announce to you the first beta release of the MongoDB C
driver 1.2.0.
This release is a stable release with additive ABI changes and bugfixes.
It is compatible with MongoDB version 2.4 and later.
Version 1.2.0 rewrites mongoc_client_t's internals to match two important new
specs for MongoDB drivers: the Server Discovery And Monitoring Spec and the
Server Selection Spec. The rewritten client has many advantages:
* All replica set members or mongoses are discovered and periodically
checked in parallel. The driver's performance is dramatically better and
more predictable with multi-server deployments, or with a flaky network,
or when some servers are slow or down.
* Clients from the same mongoc_client_pool_t share a background thread that
discovers and monitors all servers in parallel.
* Unnecessary round trips for server checks and pings are eliminated.
* Behavior is documented in the specs, and consistent with other drivers, even
in complex or unusual scenarios.
* The URI's "replicaSet" option is enforced: the driver now refuses to connect
to a server unless it is a member of a replica set with the right setName.
* Many race conditions related to changing deployment conditions are fixed.
To conform to the new specs, the client now accepts these options in the MongoDB
URI; see the mongoc_uri_t documentation for details:
* heartbeatFrequencyMS
* serverSelectionTimeoutMS
* serverSelectionTryOnce
* socketCheckIntervalMS
Other features:
* All timeouts that can be configured in the URI now interpret 0 to mean "use
the default value for this timeout".
* The client's read preference can be configured in the URI with the new
options "readPreference" and "readPreferenceTags", see the mongoc_uri_t
documentation.
* The new mongoc_uri_get_read_prefs_t function retrieves both the read mode
and tags from a mongoc_uri_t.
* New accessors mongoc_gridfs_file_get_id, mongoc_client_get_default_database,
and mongoc_bulk_operation_get_write_concern.
* Debug tracing can be controlled at runtime with mongoc_log_trace_enable and
mongoc_log_trace_disable.
Notable bugs fixed:
* "wtimeoutms" was ignored for write concerns besides "majority".
* Bulk write operations might fail in mixed-version sharded clusters with
some pre-2.6 mongos servers.
* Normal operations were logged during startup and could not be silenced.
* A variety of bugs and incorrect results in mongoc_bulk_operation_execute.
* Numerous compiler warnings and build failures on various platforms.
* Copious refinements to the documentation.
Thanks to everyone who contributed to this version of libmongoc.
* A. Jesse Jiryu Davis
* Sujan Dutta
* Jason Carey
* Hannes Magnusson
* Jeremy Mikola
* Derick Rethans
* Samantha Ritter
* Yuchen Xie
* Lloyd Zhou
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.11
=====================
It is my pleasure to announce to you the MongoDB C driver 1.1.11.
This is a patch release with bug fixes:
* Undetected network errors when sending messages to the server
* Off-by-one error in mongoc_gridfs_file_seek with mode SEEK_END
* Memory leak parsing a URI that contains an invalid option
* The libbson submodule's URL now uses the recommended https://, not git://
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* A. Jesse Jiryu Davis
* Hannes Magnusson
* Jason Carey
* Jose Sebastian Battig
* rubicks
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.10
=====================
It is my pleasure to announce to you the MongoDB C driver 1.1.10.
This is a patch release with bug fixes:
* Occasional crash reconnecting to replica set.
* Queries sent to recovering replica set members.
* Memory leak when calling ismaster on replica set members.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* A. Jesse Jiryu Davis
* Daniil Zaitsev
* Jason Carey
* Jeremy Mikola
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.9
====================
It is my pleasure to announce to you the MongoDB C driver 1.1.9.
This release fixes a common crash in 1.1.8, which itself was introduced while
fixing a rare crash in 1.1.7. For further details:
https://jira.mongodb.org/browse/CDRIVER-721
https://jira.mongodb.org/browse/CDRIVER-695
Thanks to everyone who contributed to the development of this point release for
libmongoc.
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.8
====================
UPDATE: 1.1.8 suffered a severe new bug so I removed the release from GitHub:
https://jira.mongodb.org/browse/CDRIVER-721
This is a patch release with bug fixes:
* Crash freeing client after a replica set auth error.
* Compile error strict C89 mode.
mongo-c-driver 1.1.7
====================
It is my pleasure to announce to you the 1.1.7 release of the MongoDB C driver.
This is a patch release with bug fixes:
* Thread-safe use of Cyrus SASL library.
* Experimental support for building with CMake and SASL.
* Faster reconnection to replica set with some hosts down.
* Crash iterating a cursor after reconnecting to a replica set.
* Unchecked errors decoding invalid UTF-8 in MongoDB URIs.
* Fix error reporting from mongoc_client_get_database_names.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* A. Jesse Jiryu Davis
* Jason Carey
* Hannes Magnusson
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.6
====================
It is my pleasure to announce to you the 1.1.6 release of the MongoDB C driver.
This is a patch release with performance enhancements and bug fixes:
* mongoc_bulk_operation_execute now coalesces consecutive update operations
into a single message to a MongoDB 2.6+ server, yielding huge performance
gains. Same for remove operations. (Inserts were always coalesced.)
* Large numbers of insert operations are now properly batched according to
number of documents and total data size.
* GSSAPI / Kerberos auth now works.
* The driver no longer tries three times in vain to reconnect to a primary,
so socketTimeoutMS and connectTimeoutMS now behave *closer* to what you
expect for replica sets with down members. A full fix awaits 1.2.0.
I snuck in a feature:
* mongoc_matcher_t now supports basic subdocument and array matching
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* A. Jesse Jiryu Davis
* Jason Carey
* Kai Mast
* Matt Cotter
Peace,
A. Jesse Jiryu Davis
mongo-c-driver 1.1.5
====================
It is my pleasure to announce to you the 1.1.5 release of the MongoDB C driver.
This is a patch release with performance enhancements and bug fixes:
* The fsync and j write concern flags now imply acknowledged writes
* Prevent using fsync or j with conflicting w=0 write concern
* Obey socket timeout consistently in TLS/SSL mode
* Return an error promptly after a network hangup in TLS mode
* Prevent crash using SSL in FIPS mode
* Always return NULL from mongoc_database_get_collection_names on error
* Fix version check for GCC 5 and future versions of Clang
* Fix warnings and errors building on various platforms
* Add configure flag to enable/disable shared memory performance counters
* Minor docs improvements and fix links from C Driver docs to Libbson docs
With this release, Libbson abandons the convention that odd-numbered patch
versions indicate unstable releases. We switch to simple semantic versioning:
1.1.5 is a stable release with bug fixes since 1.1.4. During subsequent
development the version will be "1.1.6-dev".
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* A. Jesse Jiryu Davis
* Christian Hergert
* Jason Carey
* Jeremy Mikola
* Jeroen Ooms
* Hannes Magnusson
Enjoy!
-- A. Jesse Jiryu Davis
mongo-c-driver 1.1.4
====================
It is my pleasure to announce to you the 1.1.4 release of the MongoDB C driver.
This release is a stable release with performance enhancements and bugfixes.
Changes include:
* Fixed client pool concurrency issues
* Fixed some scenarios where replica sets would fail to reconnect on primary
step down.
* Improved write concern handling
* Validate port number in URI
* Various other fixes
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* Jason Carey
* Andrew Clayton
* A. Jesse Jiryu Davis
* Jeremy Mikola
Enjoy!
-- Jason Carey
mongo-c-driver 1.1.2
====================
It is my pleasure to announce to you the 1.1.2 release of the MongoDB C driver.
This release is a stable release with performance enhancements and bugfixes.
Changes include:
* Process connectTimeoutMS cast insensitively
* Addition of missing trace macros
* Improvement of internal error messages
* Fix a segfault in OpenSSL cleanup routines
* Fix for IPv6 support for replica sets
* Coalesce small vectorized TLS writes
* MinGW fixups
* Fix for a memory leak in get_database_names()
* Fixes for patching write concern through the bulk api
* Fix to normalize hostnames in uri parsing
* Fix for managing connections in the client pool
* Various other fixes
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* Andrew Clayton
* Denis Gladkikh
* Hannes Magnusson
* Jason Carey
* Jeremy Mikola
* mschoenlaub
* Samantha Ritter
* Tyler Brock
Enjoy!
-- Jason Carey
mongo-c-driver 1.1.0
====================
It is my pleasure to announce to you the 1.1.0 release of the MongoDB C driver.
This release is a stable release with additive ABI changes and bugfixes.
The below changes include some carried over from RC0.
Changes include:
* RC0
* ABI versioning for 1.1 versus 1.0 symbols
* additional geo index options
* authMechanismProperties in URI
* fixes for OS X Yosemite
* removal of replica set member limit
* SCRAM-SHA-1 SASL mechanism
* updated dependency on libbson 1.1 abi
* validation for bulk insert
* various memory leak fixes
* Fixes to documentation typos
* "How to Ask For Help" in the README
* Removed dependency on sasl for PLAIN authentication
* Use provided username, if available, for X.509 auth
* Fixed WriteConcern error reporting for some writes
* Check for closed sockets before attempting RPCs
* Fixes for gridfs file seek
* Fixes for mongoc_cursor_clone()
* Fixes for unix domain socket support
* Fixes for polling on win32
* Improved warnings on failure to connect
* Addition of wired tiger options
* Fixes for examples
Additions to the ABI include:
* support for extra option in count
- mongoc_collection_count_with_opts
* additional index options
- mongoc_index_opt_geo_get_default
- mongoc_index_opt_geo_init
- mongoc_index_opt_wt_get_default
- mongoc_index_opt_wt_init
* rand interface to seed and verify the strong random number generation needed
by some auth mechanisms
- mongoc_rand_seed
- mongoc_rand_add
- mongoc_rand_status
* URI additions to support more complicated auth credentials
- mongoc_uri_get_credentials
- mongoc_uri_get_mechanism_properties
* Support for cursor returning metadata crud operations
- mongoc_client_find_databases
- mongoc_collection_find_indexes
- mongoc_database_find_collections
* Kill cursor support
- mongoc_client_kill_cursor
* Various get/setters on cursor
- mongoc_cursor_get_batch_size
- mongoc_cursor_get_id
- mongoc_cursor_set_batch_size
* More socket/stream options
- mongoc_socket_check_closed
- mongoc_socket_inet_ntop
- mongoc_stream_check_closed
- mongoc_stream_write
Additional Notes:
Existing complex index names may contain a zero instead of a type due to
a bug in mongoc_collection_keys_to_index_string. As a result those indexes may
be hard to drop from the driver as they have a name you would not expect.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* Adam Midvidy
* aherlihy
* alexeyvo
* Christian Hergert
* Hannes Magnusson
* Jason Carey
* Jérôme Lebel
* Jesse Jiryu Davis
* lloydzhou
* Mark Benevenuto
* Paul Melnikow
* Samantha Ritter
* Shraya Ramani
* Spencer Jackson
* Tyler Brock
Enjoy!
-- Jason Carey
mongo-c-driver 1.1.0-rc0
========================
It is my pleasure to announce to you the 1.1.0-rc0 release of the MongoDB C driver.
This release is a release candidate with additive ABI changes and bugfixes.
Changes include:
* ABI versioning for 1.1 versus 1.0 symbols
* additional geo index options
* authMechanismProperties in URI
* fixes for OS X Yosemite
* removal of replica set member limit
* SCRAM-SHA-1 SASL mechanism
* updated dependency on libbson 1.1 abi
* validation for bulk insert
* various memory leak fixes
Additions to the ABI include:
* support for extra option in count
- mongoc_collection_count_with_opts
* extra index and collection info
- mongoc_collection_get_index_info
- mongoc_database_get_collection_info
* additional geo options
- mongoc_index_opt_geo_get_default
- mongoc_index_opt_geo_init
* rand interface to seed and verify the strong random number generation needed
by some auth mechanisms
- mongoc_rand_seed
- mongoc_rand_add
- mongoc_rand_status
* URI additions to support more complicated auth credentials
- mongoc_uri_get_credentials
- mongoc_uri_get_mechanism_properties
Additional Notes:
Existing complex index names may contain a zero instead of a type due to
a bug in mongoc_collection_keys_to_index_string. As a result those indexes may
be hard to drop from the driver as they have a name you would not expect.
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* Adam Midvidy
* aherlihy
* alexeyvo
* Christian Hergert
* Jason Carey
* Jérôme Lebel
* Samantha Ritter
* Spencer Jackson
* Tyler Brock
Enjoy!
-- Jason Carey
mongo-c-driver 1.0.2
====================
It is my pleasure to announce to you the 1.0.2 release of the MongoDB C driver.
This release is a minor point release with no ABI changes and mostly small
bugfixes.
Changes include:
* A variety of fixes for read preference based node selection
* Avoided inclusion of getLastError in 2.6 writeConcern
* Correct handling of pass through params for collection_aggregate
* Improved error reporting in socket connect
* Public MONGOC_DEFAULT_CONNECTTIMEOUTMS
Thanks to everyone who contributed to the development of this point release for
libmongoc.
* Adam Midvidy
* Christian Hergert
* Denis Gladkikh
* Jason Carey
* Jeremy Mikola
* Jérôme Lebel
* Tyler Brock
* Wisdom Omuya
-- Jason Carey
mongo-c-driver 1.0.0
====================
It is my very distinct pleasure to announce to you the 1.0 release of
the MongoDB C driver!
This is the culmination of just over a year of work and could not have
been done without the help of our wonderful community.
Thanks to everyone who contributed to the development of this driver!
* Christian Hergert
* Jason Carey
* Gary Murakami
* Christian Heckl
* Frank Watson Song
* Hannes Magnusson
* JeÌroÌ‚me Lebel
* Kyle Suarez
* Maga Napanga
* Michael Kuhn
* Vincent Giersch
* essentia44
* yuqing
Happy Hacking!
-- Christian Hergert
mongo-c-driver 0.98.2
=====================
One final step before our journey to 1.0!
This is a relatively small release, adding some features needed for drivers
building on top of the C driver.
A new libmongoc-priv.so library is installed that does not have symbols
hidden. You can access private headers via the -private.h variants. This
means you will need to recompile your project every time the library is
changed (if you use those private headers, as they are subject to change).
A special thanks to Hannes Magnusson for patches in this release.
See `git shortlog 0.98.0..0.98.2` for a list of all the changes.
-- Christian Hergert
mongo-c-driver 0.98.0
=====================
Another step in the rapidly approaching path to 1.0!
This release is primarily a bugfix release and stablization effort as we
approach 1.0 of the MongoDB C driver.
This release requires 0.98.0 of Libbson for improvements to the memory
management system. You can now setup custom memory allocators at the
start of the process.
This is a RC release that with a few improvements will likely become 1.0.
A special thanks to the following for patches in this cycle:
* Kyle Suarez
* yuqing
See `git shortlog 0.96.4..0.98.0` for a list of all the changes.
-- Christian Hergert
mongo-c-driver 0.96.4
=====================
Another incremental feature update and bugfix release!
In this release, you will find the following changes:
* build/mci.sh script for automatically building Debian packages, RPMs, and
Solaris packaging based on the host operating system.
* Various libbson improvements, now depending on 0.8.4.
* Alignment fixes for Solaris Studio C compiler via libbson.
* Addition of mongoc_gridfs_remove_by_filename() for removing a file from
gridfs by filename.
* client command functions can now take a fully qualified namespace.
* collections can now support names that indicate a command namespace.
* Commands will no longer fail if they do not contain an "ok" field.
* OP_QUERY will now set the slaveOk bit in the wire protocol if
* readPreferences are set to non-PRIMARY.
* Various documentation and build fixes.
Thanks again to all the contributors, and happy hacking!
mongo-c-driver 0.96.2
=====================
Hot on the heels of 0.96.0 we would like to present mongo-c-driver 0.96.2!
This is primarily a bugfix release. Included in this release are:
* Ensure batchSize is used in cursor GETMORE operations with `aggregate`.
* Ensure enough buffer space is allocated for incoming RPC when buffering
from a stream.
* Require libbson 0.8.2 for more robust `bson_next_power_of_two()` when
using `size_t` and BCON compilation fix with C++.
* Handle cursor id's that are not 64-bit values in response from
`aggregate` command.
* Handle upsert on MongoDB < 2.6 when _id does not contain an `ObjectId`.
* Use 100 for default batchSize in `aggregate` command.
Happy Hacking!
mongo-c-driver 0.96.0
=====================
It's that time again, time for another mongo-c-driver release!
This release includes much new documentation, which can be found at
http://docs.mongodb.org/ecosystem/drivers/c/.
Additionally, this release improves support for various exotic systems.
Solaris 10 is supported much better on SPARC and x86_64 based systems.
Some workarounds for mixed-mode sharded-clusters have been added to improve
resiliency when rolling upgrades are performed.
Build improvements have been added to help us detect SASL and SSL
implementations on platforms that do not support pkg-config. This should
simplify building for some of you.
We've added some more logging to SASL authentication to help debug
authentication failures.
A bug causing an abort() when SSL is used and a server is down has been fixed.
We've renamed various _delete() functions to _remove() to provide consistency
with other MongoDB drivers.
You can now specify SSL options for client pools.
-D_REENTRANT is always defined now on Solaris to help with errno detection.
This may not have been done before if using a non-GCC platform with pthreads.
A bug was fixed where timeouts could have been 1000x longer than expected
due to failure to convert from microseconds to milliseconds.
A bug was fixed with authentication in sharded cluster and replica set
scenarios.
Happy Hacking!
mongo-c-driver 0.94.2
=====================
Hot on the heels of 0.94.0 is 0.94.2, a bugfix release.
A bug has been fixed when using TLS streams and large result sets.
In this release, we added support for Sun's C compiler (Sun Pro C) on Solaris.
This allows for builds on Solaris 10 with SPARC using the native toolchain.
This release contains a couple of fixes in libbson as well.
Keep those bug reports coming, and as always, Happy Hacking!
mongo-c-driver 0.94.0
=====================
The mongo-c-driver team is proud to announce the release of 0.94.0. This
release is a followup to the previous release adding more features to be found
in MongoDB 2.6.
You will find some new API's, bug fixes, and more documentation. Under the
hood, 0.94.0 uses the new write-commands as part of MongoDB 2.6 when it
discovers it is communicating with a MongoDB server. There is now a bulk
operation API (See `mongoc-bulk-operation.h`).
Helpers for common server commands have been added. You can find most of
them `mongoc-collection.h`.
To simply using mongo-c-driver from Windows, we've included pre-built binaries
on the release page.
Thanks to all of the contributors this release!
Happy Hacking!
mongo-c-driver 0.92.0
=====================
The mongo-c-driver team is proud to announce the release of 0.92.0. This
release is the culimation of a few months work and has many bug fixes and
new features. It contains over 350 commits from 4 authors since the 0.90.0
release.
The mongo-c-driver release tarballs now contain a bundled copy of libbson.
If you do not have libbson installed or the system installed libbson is too
old, the bundled copy of libbson will be installed.
* Revamped build system to simplify installation.
* Windows Vista and newer support.
* Various GridFS fixes and features.
* Kerberos support via cyrus-sasl.
* Various SSL improvements.
* Support for Solaris 11, FreeBSD 10, RHEL 5+, and SmartOS.
* A new client side expression matcher to perform basic query processing.
It can perform queries such as {'field': {'$in': [1,2,3]}}. See
mongoc_matcher_t for more information.
* A new socket abstraction for platform independent network sockets.
* A new mongoc-dump example for how to write a simple mongodump replacement.
* Counters can use rdtscp instruction on Core iX systems for very fast
counters.
* configure has new options. If in doubt, the defaults are sensible.
* --enable-coverage=yes|no
* --enable-debug=yes|no
* --enable-debug-symbols=yes|no
* --enable-hardening=yes|no
* --enable-optimizations=yes|no
* --enable-ssl=yes|no
* --enable-sasl=yes|no
* --enable-tracing=yes|no
* --with-libbson=auto|system|bundled
mongo-c-driver 0.92.0 requires libbson 0.6.4 or newer.
Happy Hacking!
Libmongoc 0.90.0
================
This is the initial release of the new Libmongoc. We chose 0.90.0 for the
release version to differentiate ourselves from the, now legacy, version of
libmongoc. We will rapidly work towards reaching an API/ABI stable library fit
for a 1.0.0 release.
Libmongoc is Apache licensed so it can be embedded in a multitude of scenarios.
The API of 0.90.0 is completely different from the previous versions. We think
this allowed us to create a high-quality library that you will enjoy using in
your applications.
Many outstanding bugs were closed in the process of creating Libbson 0.90.0. So
if you had a pet issue, please take a look to see if it was resolved as part of
this effort!
Thanks, and enjoy developing your applications with libmongoc!
libmongoc-1.9.2+dfsg/README.rst 0000664 0000000 0000000 00000006731 13226174053 0016114 0 ustar 00root root 0000000 0000000 ==============
mongo-c-driver
==============
About
=====
mongo-c-driver is a client library written in C for MongoDB.
mongo-c-driver depends on `Libbson `_.
Libbson will automatically be built if you do not have it installed on your system.
Documentation / Support / Feedback
==================================
The documentation is available at http://mongoc.org/.
For issues with, questions about, or feedback for libmongoc, please look into
our `support channels `_. Please
do not email any of the libmongoc developers directly with issues or
questions - you're more likely to get an answer on the `mongodb-user list`_
on Google Groups.
Bugs / Feature Requests
=======================
Think you’ve found a bug? Want to see a new feature in libmongoc? Please open a
case in our issue management tool, JIRA:
- `Create an account and login `_.
- Navigate to `the CDRIVER project `_.
- Click **Create Issue** - Please provide as much information as possible about the issue type and how to reproduce it.
Bug reports in JIRA for all driver projects (i.e. CDRIVER, CSHARP, JAVA) and the
Core Server (i.e. SERVER) project are **public**.
How To Ask For Help
-------------------
If you are having difficulty building the driver after reading the below instructions, please email
the `mongodb-user list`_ to ask for help. Please include in your email all of the following
information:
- The version of the driver you are trying to build (branch or tag).
- Examples: master branch, 1.2.1 tag
- Host OS, version, and architecture.
- Examples: Windows 8 64-bit x86, Ubuntu 12.04 32-bit x86, OS X Mavericks
- C Compiler and version.
- Examples: GCC 4.8.2, MSVC 2013 Express, clang 3.4, XCode 5
- The output of ``./autogen.sh`` or ``./configure`` (depending on whether you are building from a
repository checkout or from a tarball). The output starting from "libbson was configured with
the following options" is sufficient.
- The text of the error you encountered.
Failure to include the relevant information will result in additional round-trip
communications to ascertain the necessary details, delaying a useful response.
Here is a made-up example of a help request that provides the relevant
information:
Hello, I'm trying to build the C driver with SSL, from mongo-c-driver-1.2.1.tar.gz. I'm on Ubuntu
14.04, 64-bit Intel, with gcc 4.8.2. I run configure like::
$ ./configure --enable-sasl=yes
checking for gcc... gcc
checking whether the C compiler works... yes
... SNIPPED OUTPUT, but when you ask for help, include full output without any omissions ...
checking for pkg-config... no
checking for SASL... no
checking for sasl_client_init in -lsasl2... no
checking for sasl_client_init in -lsasl... no
configure: error: You must install the Cyrus SASL libraries and development headers to enable SASL support.
Can you tell me what I need to install? Thanks!
.. _mongodb-user list: http://groups.google.com/group/mongodb-user
Security Vulnerabilities
------------------------
If you’ve identified a security vulnerability in a driver or any other
MongoDB project, please report it according to the `instructions here
`_.
Installation
============
Detailed installation instructions are in the manual:
http://mongoc.org/libmongoc/current/installing.html
libmongoc-1.9.2+dfsg/THIRD_PARTY_NOTICES 0000664 0000000 0000000 00000022046 13226174053 0017362 0 ustar 00root root 0000000 0000000 The MongoDB C Driver uses third-party code distributed under different licenses.
License notice for mongoc-stream-tls-secure-channel.c
-------------------------------------------------------------------------------
Curl License
Significant portions of mongoc-stream-tls-secure-channel.c are from Curl.
Copyright (C) 2012 - 2015, Marc Hoersken,
Copyright (C) 2012, Mark Salisbury,
Copyright (C) 2012 - 2015, Daniel Stenberg, , et al.
All rights reserved.
Permission to use, copy, modify, and distribute this software for any purpose
with or without fee is hereby granted, provided that the above copyright
notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of a copyright holder shall not
be used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization of the copyright holder.
License notice for mongoc-b64.c
-------------------------------------------------------------------------------
ISC License
Copyright: 1996, 1998 Internet Software Consortium
1995 International Business Machines, Inc.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
Portions Copyright (c) 1995 by International Business Machines, Inc.
International Business Machines, Inc. (hereinafter called IBM) grants
permission under its copyrights to use, copy, modify, and distribute this
Software with or without fee, provided that the above copyright notice and
all paragraphs of this notice appear in all copies, and that the name of IBM
not be used in connection with the marketing of any product incorporating
the Software or modifications thereof, without specific, written prior
permission.
To the extent it has a right to do so, IBM grants an immunity from suit
under its patents, if any, for the use, sale or manufacture of products to
the extent that such products are used for performing Domain Name System
dynamic updates in TCP/IP networks by means of the Software. No immunity is
granted for any product per se or for any other function of any product.
THE SOFTWARE IS PROVIDED "AS IS", AND IBM DISCLAIMS ALL WARRANTIES,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL,
DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER ARISING
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE, EVEN
IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES.
License notice for utlist.h
-------------------------------------------------------------------------------
BSD 1-Clause License
Copyright: 2007-2014, Troy D. Hanson http://troydhanson.github.com/uthash/
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License notice for silent.m4
-------------------------------------------------------------------------------
DWTFYWTPL License
Copyright: 2010, Damien Lespiau
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
License notice for taglist.py
-------------------------------------------------------------------------------
MIT License
Portions Copyright 2007-2009 by the Sphinx team.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
License notice for mongoc.css_t
-------------------------------------------------------------------------------
MIT License
Portions Copyright 2013 by Ignacy Sokolowski.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
License notice for zlib
-------------------------------------------------------------------------------
/* zlib.h -- interface of the 'zlib' general purpose compression library
version 1.2.11, January 15th, 2017
Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
jloup@gzip.org madler@alumni.caltech.edu
The data format used by the zlib library is described by RFCs (Request for
Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950
(zlib format), rfc1951 (deflate format) and rfc1952 (gzip format).
*/
libmongoc-1.9.2+dfsg/VERSION_CURRENT 0000664 0000000 0000000 00000000011 13226174053 0016660 0 ustar 00root root 0000000 0000000 1.9.3-dev libmongoc-1.9.2+dfsg/VERSION_RELEASED 0000664 0000000 0000000 00000000006 13226174053 0016726 0 ustar 00root root 0000000 0000000 1.9.2
libmongoc-1.9.2+dfsg/autogen.sh 0000775 0000000 0000000 00000002405 13226174053 0016420 0 ustar 00root root 0000000 0000000 #! /bin/sh
# Allow invocation from a separate build directory; in that case, we change
# to the source directory to run the auto*, then change back before running configure
srcdir=`dirname "$0"`
test -z "$srcdir" && srcdir=.
ORIGDIR=`pwd`
cd "$srcdir" || exit 1
if [ ! -f README ]; then
ln -s README.rst README
fi
touch ChangeLog
touch AUTHORS
if test -z "$(which libtoolize)" && test -z "$(which glibtoolize)"; then
echo "Error: libtoolize was not found on your system. Cannot continue."
if test "$(uname)" = "Darwin"; then
echo "On Darwin, this is named glibtoolize"
fi
exit 1
fi
if [ -d .git ]; then
git submodule init
git submodule update
cd src/libbson
NOCONFIGURE=1 ./autogen.sh
cd ../../
elif [ ! -f src/libbson/autogen.sh ]; then
echo "Not a release archive or a git clone"
echo "Please download mongoc from https://github.com/mongodb/mongo-c-driver/releases"
exit 1
fi
if test -z `which autoreconf`; then
echo "Error: autoreconf not found, please install it."
exit 1
fi
autoreconf --force --verbose --install -I build/autotools $ACLOCAL_FLAGS|| exit $?
rm -rf autom4te.cache
cd "$ORIGDIR" || exit 1
if test -z "$NOCONFIGURE"; then
"$srcdir"/configure $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
fi
libmongoc-1.9.2+dfsg/build/ 0000775 0000000 0000000 00000000000 13226174053 0015515 5 ustar 00root root 0000000 0000000 libmongoc-1.9.2+dfsg/build/.gitignore 0000664 0000000 0000000 00000000010 13226174053 0017474 0 ustar 00root root 0000000 0000000 version
libmongoc-1.9.2+dfsg/build/Makefile.am 0000664 0000000 0000000 00000000112 13226174053 0017543 0 ustar 00root root 0000000 0000000 EXTRA_DIST += build/maintainer-flags.txt
include build/cmake/Makefile.am
libmongoc-1.9.2+dfsg/build/autotools/ 0000775 0000000 0000000 00000000000 13226174053 0017546 5 ustar 00root root 0000000 0000000 libmongoc-1.9.2+dfsg/build/autotools/AutomaticInitAndCleanup.m4 0000664 0000000 0000000 00000000236 13226174053 0024516 0 ustar 00root root 0000000 0000000 AS_IF([test "$enable_automatic_init_and_cleanup" != "no"], [
AC_SUBST(MONGOC_NO_AUTOMATIC_GLOBALS, 0)
], [
AC_SUBST(MONGOC_NO_AUTOMATIC_GLOBALS, 1)
])
libmongoc-1.9.2+dfsg/build/autotools/CheckCompiler.m4 0000664 0000000 0000000 00000004323 13226174053 0022522 0 ustar 00root root 0000000 0000000 # If CFLAGS and CXXFLAGS are unset, default to empty.
# This is to tell automake not to include '-g' if C{XX,}FLAGS is not set.
# For more info - http://www.gnu.org/software/automake/manual/autoconf.html#C_002b_002b-Compiler
if test -z "$CXXFLAGS"; then
CXXFLAGS=""
fi
if test -z "$CFLAGS"; then
CFLAGS=""
fi
AC_PROG_CC
AC_PROG_CXX
# Check that an appropriate C compiler is available.
c_compiler="unknown"
AC_LANG_PUSH([C])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#if !(defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER))
#error Not a supported GCC compiler
#endif
#if defined(__GNUC__)
#define GCC_VERSION (__GNUC__ * 10000 \
+ __GNUC_MINOR__ * 100 \
+ __GNUC_PATCHLEVEL__)
#if GCC_VERSION < 40100
#error Not a supported GCC compiler
#endif
#endif
])], [c_compiler="gcc"], [])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#if defined(__clang__)
#define CLANG_VERSION (__clang_major__ * 10000 \
+ __clang_minor__ * 100 \
+ __clang_patchlevel__)
#if CLANG_VERSION < 30300
#error Not a supported Clang compiler
#endif
#endif
])], [c_compiler="clang"], [])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#if !(defined(__SUNPRO_C))
#error Not a supported Sun compiler
#endif
])], [c_compiler="sun"], [])
# The type of parameters for accept, getpeername, getsockname, getsockopt
# all vary the same way by platform.
AX_PROTOTYPE(accept, [
#include
#include
], [
int a = 0;
ARG2 *b = 0;
ARG3 *c = 0;
accept (a, b, c);],
ARG2, [struct sockaddr, void],
ARG3, [socklen_t, size_t, int])
MONGOC_SOCKET_ARG2="$ACCEPT_ARG2"
AC_SUBST(MONGOC_SOCKET_ARG2)
MONGOC_SOCKET_ARG3="$ACCEPT_ARG3"
AC_SUBST(MONGOC_SOCKET_ARG3)
AC_LANG_POP([C])
if test "$c_compiler" = "unknown"; then
AC_MSG_ERROR([Compiler GCC >= 4.1 or Clang >= 3.3 is required for C compilation])
fi
# GLibc 2.19 complains about both _BSD_SOURCE and _GNU_SOURCE. The _GNU_SOURCE
# contains everything anyway. So just use that.
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include
#ifndef __GLIBC__
#error not glibc
#endif
]], [])],
LIBC_FEATURES="-D_GNU_SOURCE",
LIBC_FEATURES="-D_BSD_SOURCE")
AC_SUBST(LIBC_FEATURES)
AC_C_CONST
AC_C_INLINE
AC_C_TYPEOF
libmongoc-1.9.2+dfsg/build/autotools/CheckHost.m4 0000664 0000000 0000000 00000001554 13226174053 0021670 0 ustar 00root root 0000000 0000000 AC_CANONICAL_HOST
os_win32=no
os_netbsd=no
os_freebsd=no
os_openbsd=no
os_hpux=no
os_linux=no
os_solaris=no
os_darwin=no
os_gnu=no
case "$host" in
*-mingw*|*-*-cygwin*)
os_win32=yes
TARGET_OS=windows
;;
*-*-*netbsd*)
os_netbsd=yes
TARGET_OS=unix
;;
*-*-*freebsd*)
os_freebsd=yes
TARGET_OS=unix
;;
*-*-*openbsd*)
os_openbsd=yes
TARGET_OS=unix
;;
*-*-hpux*)
os_hpux=yes
TARGET_OS=unix
;;
*-*-linux*)
os_linux=yes
os_gnu=yes
TARGET_OS=unix
;;
*-*-solaris*)
os_solaris=yes
TARGET_OS=unix
;;
*-*-darwin*)
os_darwin=yes
TARGET_OS=unix
;;
gnu*|k*bsd*-gnu*)
os_gnu=yes
TARGET_OS=unix
;;
*)
AC_MSG_WARN([*** Please add $host to configure.ac checks!])
;;
esac
libmongoc-1.9.2+dfsg/build/autotools/CheckProgs.m4 0000664 0000000 0000000 00000000777 13226174053 0022053 0 ustar 00root root 0000000 0000000 AC_PATH_PROG(PERL, perl)
if test -z "$PERL"; then
AC_MSG_ERROR([You need 'perl' to compile libbson])
fi
AC_PATH_PROG(MV, mv)
if test -z "$MV"; then
AC_MSG_ERROR([You need 'mv' to compile libbson])
fi
AC_PATH_PROG(GREP, grep)
if test -z "$GREP"; then
AC_MSG_ERROR([You need 'grep' to compile libbson])
fi
AC_CHECK_HEADERS_ONCE([strings.h])
AC_CHECK_HEADERS_ONCE([unistd.h])
AC_CHECK_HEADERS_ONCE([stdarg.h])
# Optional for documentation
AC_PATH_PROG(SPHINX_BUILD, sphinx-build)
AC_PROG_INSTALL
libmongoc-1.9.2+dfsg/build/autotools/CheckSSL.m4 0000664 0000000 0000000 00000013376 13226174053 0021421 0 ustar 00root root 0000000 0000000 AC_MSG_CHECKING([whether to enable crypto and TLS])
AC_ARG_ENABLE([ssl],
[AS_HELP_STRING([--enable-ssl=@<:@auto/no/openssl/libressl/darwin@:>@],
[Enable TLS connections and SCRAM-SHA-1 authentication.])],
[],
[enable_ssl=auto])
AC_MSG_RESULT([$enable_ssl])
AC_MSG_CHECKING([whether to use system crypto profile])
AC_ARG_ENABLE(crypto-system-profile,
AC_HELP_STRING([--enable-crypto-system-profile], [use system crypto profile (OpenSSL only) [default=no]]),
[],
[enable_crypto_system_profile="no"])
AC_MSG_RESULT([$enable_crypto_system_profile])
AS_IF([test "$enable_ssl" != "no"],[
AS_IF([test "$enable_ssl" != "darwin" -a "$enable_ssl" != "libressl"],[
PKG_CHECK_MODULES(SSL, [openssl], [enable_openssl=auto], [
AC_CHECK_LIB([ssl],[SSL_library_init],[have_ssl_lib=yes],[have_ssl_lib=no])
AC_CHECK_LIB([crypto],[EVP_DigestInit_ex],[have_crypto_lib=yes],[have_crypto_lib=no])
if test "$have_ssl_lib" = "no" -o "$have_crypto_lib" = "no" ; then
if test "$enable_ssl" = "openssl"; then
AC_MSG_ERROR([You must install the OpenSSL libraries and development headers to enable OpenSSL support.])
else
AC_MSG_WARN([You must install the OpenSSL libraries and development headers to enable OpenSSL support.])
fi
fi
if test "$have_ssl_lib" = "yes" -a "$have_crypto_lib" = "yes"; then
SSL_LIBS="-lssl -lcrypto"
enable_ssl=openssl
fi
])
])
AS_IF([test "$enable_ssl" = "libressl"],[
PKG_CHECK_MODULES(SSL, [libtls], [enable_ssl=libressl], [
AC_CHECK_LIB([tls],[tls_init],[
SSL_LIBS="-ltls -lcrypto"
enable_ssl=libressl
])
])
])
dnl PKG_CHECK_MODULES() doesn't check for headers
dnl OSX for example has the lib, but not headers, so double confirm if OpenSSL works
AS_IF([test "$enable_ssl" = "openssl" -o "$enable_openssl" = "auto"], [
old_CFLAGS=$CFLAGS
CFLAGS=$SSL_CFLAGS
AC_CHECK_HEADERS([openssl/bio.h openssl/ssl.h openssl/err.h openssl/crypto.h],
[have_ssl_headers=yes],
[have_ssl_headers=no])
if test "$have_ssl_headers" = "yes"; then
enable_ssl=openssl
elif test "$enable_ssl" = "openssl"; then
AC_MSG_ERROR([You must install the OpenSSL development headers to enable OpenSSL support.])
else
SSL_LIBS=""
enable_ssl=auto
fi
AC_CHECK_DECLS([ASN1_STRING_get0_data], [have_ASN1_STRING_get0_data=yes], [have_ASN1_STRING_get0_data=no], [[#include ]])
CFLAGS=$old_CFLAGS
])
AS_IF([test "$enable_ssl" != "openssl" -a "$os_darwin" = "yes"],[
SSL_LIBS="-framework Security -framework CoreFoundation"
enable_ssl="darwin"
])
dnl If its still auto, its no.
AS_IF([test "$enable_ssl" = "auto"],[
enable_ssl="no"
])
AC_MSG_CHECKING([which TLS library to use])
AC_MSG_RESULT([$enable_ssl])
], [enable_ssl=no])
AC_SUBST(SSL_CFLAGS)
AC_SUBST(SSL_LIBS)
dnl Disable Windows SSL+Crypto
AC_SUBST(MONGOC_ENABLE_SSL_SECURE_CHANNEL, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO_CNG, 0)
if test "$enable_ssl" = "darwin" -o "$enable_ssl" = "openssl" -o "$enable_ssl" = "libressl"; then
AC_SUBST(MONGOC_ENABLE_SSL, 1)
AC_SUBST(MONGOC_ENABLE_CRYPTO, 1)
if test "$enable_ssl" = "darwin"; then
AC_SUBST(MONGOC_ENABLE_SSL_OPENSSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_LIBRESSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_SECURE_TRANSPORT, 1)
AC_SUBST(MONGOC_ENABLE_CRYPTO_LIBCRYPTO, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO, 1)
elif test "$enable_ssl" = "openssl"; then
AC_SUBST(MONGOC_ENABLE_SSL_OPENSSL, 1)
AC_SUBST(MONGOC_ENABLE_SSL_LIBRESSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_SECURE_TRANSPORT, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO_LIBCRYPTO, 1)
AC_SUBST(MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO, 0)
elif test "$enable_ssl" = "libressl"; then
AC_SUBST(MONGOC_ENABLE_SSL_LIBRESSL, 1)
AC_SUBST(MONGOC_ENABLE_SSL_OPENSSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_SECURE_TRANSPORT, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO_LIBCRYPTO, 1)
AC_SUBST(MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO, 0)
fi
else
AC_SUBST(MONGOC_ENABLE_SSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_LIBRESSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_OPENSSL, 0)
AC_SUBST(MONGOC_ENABLE_SSL_SECURE_TRANSPORT, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO_LIBCRYPTO, 0)
AC_SUBST(MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO, 0)
fi
if test "$have_ASN1_STRING_get0_data" = "yes"; then
AC_SUBST(MONGOC_HAVE_ASN1_STRING_GET0_DATA, 1)
else
AC_SUBST(MONGOC_HAVE_ASN1_STRING_GET0_DATA, 0)
fi
if test "x$enable_crypto_system_profile" = xyes; then
if test "$enable_ssl" = "openssl"; then
AC_SUBST(MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE, 1)
else
AC_MSG_ERROR([--enable-crypto-system-profile only available with OpenSSL.])
fi
else
AC_SUBST(MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE, 0)
fi
AM_CONDITIONAL([ENABLE_SSL], [test "$enable_ssl" = "darwin" -o "$enable_ssl" = "openssl" -o "$enable_ssl" = "libressl"])
AM_CONDITIONAL([ENABLE_SSL_LIBRESSL], [test "$enable_ssl" = "libressl"])
AM_CONDITIONAL([ENABLE_SSL_OPENSSL], [test "$enable_ssl" = "openssl"])
AM_CONDITIONAL([ENABLE_SSL_SECURE_TRANSPORT], [test "$enable_ssl" = "darwin"])
AM_CONDITIONAL([ENABLE_SSL_SECURE_CHANNEL], false)
AM_CONDITIONAL([ENABLE_CRYPTO], [test "$enable_ssl" = "darwin" -o "$enable_ssl" = "openssl" -o "$enable_ssl" = "libressl"])
AM_CONDITIONAL([ENABLE_CRYPTO_LIBCRYPTO], [test "$enable_ssl" = "openssl" -o "$enable_ssl" = "libressl"])
AM_CONDITIONAL([ENABLE_CRYPTO_CNG], false)
AM_CONDITIONAL([ENABLE_CRYPTO_COMMON_CRYPTO], [test "$enable_ssl" = "darwin"])
libmongoc-1.9.2+dfsg/build/autotools/CheckSasl.m4 0000664 0000000 0000000 00000010062 13226174053 0021647 0 ustar 00root root 0000000 0000000 AC_ARG_ENABLE([sasl],
[AS_HELP_STRING([--enable-sasl=@<:@auto/yes/no@:>@],
[Use libsasl for Kerberos.])],
[],
[enable_sasl=auto])
sasl_mode=no
AS_IF([test "$enable_sasl" != "no"],[
AS_IF(
[test "$enable_sasl" = "gssapi"],
[
sasl_mode=gssapi
AS_IF(
[test "$os_darwin" = "yes"],
[SASL_LIBS="-framework GSS"],
[
AC_CHECK_HEADERS(
[gssapi/gssapi.h],
[have_gssapi_headers=yes],
[have_gssapi_headers=no]
)
PKG_CHECK_MODULES(KRB5_GSSAPI,
[krb5-gssapi],
[have_krb5_gssapi=yes],
[have_krb5_gssapi=no]
)
if test "$have_gssapi_headers" = "no" -o "$have_krb5_gssapi" = "no"; then
AC_MSG_ERROR([You must install the krb5 libraries and development headers to enable GSSAPI support.])
fi
SASL_CFLAGS=$KRB5_GSSAPI_CFLAGS
SASL_LIBS=$KRB5_GSSAPI_LIBS
]
)
],
[
PKG_CHECK_MODULES(SASL,
[libsasl2],
[sasl_mode=sasl2],
[
AS_IF([test "$enable_sasl" != "no"],
[
AC_CHECK_LIB([sasl2],[sasl_client_init],[have_sasl2_lib=yes],[have_sasl2_lib=no])
AC_CHECK_LIB([sasl],[sasl_client_init],[have_sasl_lib=yes],[have_sasl_lib=no])
if test "$have_sasl_lib" = "no" -a "$have_sasl2_lib" = "no" -a "$enable_sasl" = "yes" ; then
AC_MSG_ERROR([You must install the Cyrus SASL libraries and development headers to enable SASL support.])
fi
old_CFLAGS=$CFLAGS
CFLAGS=$SASL_CFLAGS
AC_CHECK_HEADER([sasl/sasl.h],[have_sasl_headers=yes],[have_sasl_headers=no])
if test "$have_sasl_headers" = "no" -a "$enable_sasl" = "yes" ; then
AC_MSG_ERROR([You must install the Cyrus SASL development headers to enable SASL support.])
fi
CFLAGS=$old_CFLAGS
if test "$have_sasl_headers" -a "$have_sasl2_lib" = "yes" ; then
sasl_mode=sasl2
SASL_LIBS=-lsasl2
fi
if test "$have_sasl_headers" -a "$have_sasl_lib" = "yes" ; then
sasl_mode=sasl
SASL_LIBS=-lsasl
fi
])
]
)
]
)
])
if test "$enable_sasl" = "auto" -a "$sasl_mode" != "no"; then
AC_CHECK_HEADERS([sasl/sasl.h],
[have_sasl_headers=yes],
[have_sasl_headers=no])
if test "$have_sasl_headers" = "no"; then
SASL_LIBS=""
enable_sasl=no
sasl_mode=no
fi
fi
AM_CONDITIONAL([ENABLE_SASL], [test "$sasl_mode" != "no"])
AM_CONDITIONAL([ENABLE_SASL_GSSAPI], [test "$sasl_mode" = "gssapi"])
AM_CONDITIONAL([ENABLE_SASL_CYRUS], [test "$sasl_mode" = "sasl" -o "$sasl_mode" = "sasl2"])
AM_CONDITIONAL([ENABLE_SASL_SSPI], false)
AC_SUBST(SASL_CFLAGS)
AC_SUBST(SASL_LIBS)
dnl Let mongoc-config.h.in know about SASL status.
if test "$sasl_mode" != "no" ; then
AC_SUBST(MONGOC_ENABLE_SASL, 1)
AC_SUBST(MONGOC_ENABLE_SASL_SSPI, 0)
if test "$sasl_mode" = "gssapi" ; then
AC_SUBST(MONGOC_ENABLE_SASL_GSSAPI, 1)
AC_SUBST(MONGOC_ENABLE_SASL_CYRUS, 0)
AC_SUBST(MONGOC_HAVE_SASL_CLIENT_DONE, 0)
else
AC_SUBST(MONGOC_ENABLE_SASL_GSSAPI, 0)
AC_SUBST(MONGOC_ENABLE_SASL_CYRUS, 1)
AC_CHECK_LIB([sasl2],[sasl_client_done],
[have_sasl_client_done=yes],
[have_sasl_client_done=no])
if test "$have_sasl_client_done" = "yes" ; then
AC_SUBST(MONGOC_HAVE_SASL_CLIENT_DONE, 1)
else
AC_SUBST(MONGOC_HAVE_SASL_CLIENT_DONE, 0)
fi
fi
else
AC_SUBST(MONGOC_ENABLE_SASL, 0)
AC_SUBST(MONGOC_ENABLE_SASL_CYRUS, 0)
AC_SUBST(MONGOC_ENABLE_SASL_GSSAPI, 0)
AC_SUBST(MONGOC_ENABLE_SASL_SSPI, 0)
AC_SUBST(MONGOC_HAVE_SASL_CLIENT_DONE, 0)
fi
libmongoc-1.9.2+dfsg/build/autotools/CheckSnappy.m4 0000664 0000000 0000000 00000001740 13226174053 0022222 0 ustar 00root root 0000000 0000000 # If --with-snappy=auto, determine if there is a system installed snappy
# greater than our required version.
found_snappy=no
AS_IF([test "x${with_snappy}" = xauto -o "x${with_snappy}" = xsystem], [
PKG_CHECK_MODULES(SNAPPY, [snappy], [
found_snappy=yes
], [
# If we didn't find snappy with pkgconfig, search manually. If that
# fails and with-snappy=system, fail.
AC_CHECK_LIB([snappy], [snappy_uncompress], [
AC_CHECK_HEADER([snappy-c.h], [
found_snappy=yes
SNAPPY_LIBS=-lsnappy
])
])
])
])
AS_IF([test "x${found_snappy}" = xyes], [
with_snappy=system
], [
# snappy not found
AS_IF([test "x${with_snappy}" = xsystem], [
AC_MSG_ERROR([Cannot find system installed snappy. try --with-snappy=no])
])
with_snappy=no
])
if test "x${with_snappy}" != "xno"; then
AC_SUBST(MONGOC_ENABLE_COMPRESSION_SNAPPY, 1)
else
AC_SUBST(MONGOC_ENABLE_COMPRESSION_SNAPPY, 0)
fi
AC_SUBST(SNAPPY_LIBS)
libmongoc-1.9.2+dfsg/build/autotools/CheckTarget.m4 0000664 0000000 0000000 00000001147 13226174053 0022177 0 ustar 00root root 0000000 0000000 AC_CANONICAL_SYSTEM
enable_crosscompile=no
if test "x$host" != "x$target"; then
enable_crosscompile=yes
case "$target" in
*-mingw*|*-*-cygwin*)
TARGET_OS=windows
;;
arm*-darwin*)
TARGET_OS=unix
;;
powerpc64-*-linux-gnu)
TARGET_OS=unix
;;
arm*-linux-*)
TARGET_OS=unix
;;
*)
AC_MSG_ERROR([Cross compiling is not supported for target $target])
;;
esac
fi
AC_SUBST(BSON_OS, 1)
if test "$TARGET_OS" = "windows"; then
AC_SUBST(BSON_OS, 2)
fi
libmongoc-1.9.2+dfsg/build/autotools/CheckZlib.m4 0000664 0000000 0000000 00000003020 13226174053 0021641 0 ustar 00root root 0000000 0000000 # If --with-zlib=auto, determine if there is a system installed zlib
# greater than our required version.
found_zlib=no
AS_IF([test "x${with_zlib}" = xauto -o "x${with_zlib}" = xsystem], [
PKG_CHECK_MODULES(ZLIB, [zlib], [
found_zlib=yes
], [
# If we didn't find zlib with pkgconfig, search manually. If that
# fails and with-zlib=system, fail, or if with-zlib=auto, use
# bundled.
AC_CHECK_LIB([zlib], [compress2], [
AC_CHECK_HEADER([zlib.h], [
found_zlib=yes
ZLIB_LIBS=-lz
])
])
])
], [
AS_IF([test "x${with_zlib}" != xbundled -a "x${with_zlib}" != xno], [
AC_MSG_ERROR([Invalid --with-zlib option: must be system, bundled, auto, or no.])
])
])
AS_IF([test "x${found_zlib}" = "xyes"], [
with_zlib=system
], [
# zlib not found
AS_IF([test "x${with_zlib}" = xauto -o "x${with_zlib}" = xbundled], [
with_zlib=bundled
], [
AS_IF([test "x${with_zlib}" = xno], [], [
# zlib not found, with-zlib=system
AC_MSG_ERROR([Cannot find system installed zlib. try --with-zlib=bundled])
])
])
])
# If we are using the bundled zlib, recurse into its configure.
AS_IF([test "x${with_zlib}" = xbundled],[
AC_MSG_CHECKING(whether to enable bundled zlib)
AC_MSG_RESULT(yes)
ZLIB_LIBS=
ZLIB_CFLAGS="-Isrc/zlib-1.2.11"
])
if test "x${with_zlib}" != "xno"; then
AC_SUBST(MONGOC_ENABLE_COMPRESSION_ZLIB, 1)
else
AC_SUBST(MONGOC_ENABLE_COMPRESSION_ZLIB, 0)
fi
AC_SUBST(ZLIB_LIBS)
AC_SUBST(ZLIB_CFLAGS)
libmongoc-1.9.2+dfsg/build/autotools/Coverage.m4 0000664 0000000 0000000 00000000320 13226174053 0021536 0 ustar 00root root 0000000 0000000 COVERAGE_CFLAGS=""
COVERAGE_LDFLAGS=""
if test "$enable_coverage" = "yes"; then
COVERAGE_CFLAGS="--coverage -g"
COVERAGE_LDFLAGS="--coverage"
fi
AC_SUBST(COVERAGE_CFLAGS)
AC_SUBST(COVERAGE_LDFLAGS)
libmongoc-1.9.2+dfsg/build/autotools/FindDependencies.m4 0000664 0000000 0000000 00000002160 13226174053 0023176 0 ustar 00root root 0000000 0000000
# Solaris needs to link against socket libs.
if test "$os_solaris" = "yes"; then
CFLAGS="$CFLAGS -D__EXTENSIONS__"
CFLAGS="$CFLAGS -D_XOPEN_SOURCE=1"
CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED=1"
LDFLAGS="$LDFLAGS -lsocket -lnsl"
fi
# Check if we should enable the bundled libbson.
if test "$with_libbson" = "auto"; then
PKG_CHECK_MODULES(BSON, libbson-1.0 >= libbson_required_version,
[with_libbson=system], [with_libbson=bundled])
fi
AM_CONDITIONAL(ENABLE_LIBBSON, [test "$with_libbson" = "bundled"])
# Check for shm functions.
AC_CHECK_FUNCS([shm_open], [SHM_LIB=],
[AC_CHECK_LIB([rt], [shm_open], [SHM_LIB=-lrt], [SHM_LIB=])])
AC_SUBST([SHM_LIB])
# Check for sched_getcpu
AC_CHECK_FUNCS([sched_getcpu])
AS_IF([test "$enable_rdtscp" = "yes"],
[CPPFLAGS="$CPPFLAGS -DENABLE_RDTSCP"])
AS_IF([test "$enable_shm_counters" = "yes"],
[CPPFLAGS="$CPPFLAGS -DMONGOC_ENABLE_SHM_COUNTERS"])
AC_CHECK_TYPE([socklen_t],
[AC_SUBST(MONGOC_HAVE_SOCKLEN, 1)],
[AC_SUBST(MONGOC_HAVE_SOCKLEN, 0)],
[#include ])
AX_PTHREAD
libmongoc-1.9.2+dfsg/build/autotools/FindResSearch.m4 0000664 0000000 0000000 00000005543 13226174053 0022477 0 ustar 00root root 0000000 0000000 # Windows only.
AC_SUBST(MONGOC_HAVE_DNSAPI, 0)
AS_IF([test "x$enable_srv" = "xyes" -o "x$enable_srv" = "xauto"], [
# Thread-safe DNS query function for _mongoc_client_get_srv.
# Could be a macro, not a function, so check with AC_TRY_LINK.
AC_MSG_CHECKING([for res_nsearch])
save_LIBS="$LIBS"
LIBS="$LIBS -lresolv"
AC_TRY_LINK([
#include
#include
#include
#include
],[
int len;
unsigned char reply[1024];
res_state statep;
len = res_nsearch(
statep, "example.com", ns_c_in, ns_t_srv, reply, sizeof(reply));
],[
AC_MSG_RESULT([yes])
AC_SUBST(MONGOC_HAVE_RES_SEARCH, 0)
AC_SUBST(MONGOC_HAVE_RES_NSEARCH, 1)
AC_SUBST(RESOLV_LIBS, -lresolv)
enable_srv=yes
# We have res_nsearch. Call res_ndestroy (BSD/Mac) or res_nclose (Linux)?
AC_MSG_CHECKING([for res_ndestroy])
AC_TRY_LINK([
#include
#include
#include
#include
],[
res_state statep;
res_ndestroy(statep);
], [
AC_MSG_RESULT([yes])
AC_SUBST(MONGOC_HAVE_RES_NDESTROY, 1)
AC_SUBST(MONGOC_HAVE_RES_NCLOSE, 0)
], [
AC_MSG_RESULT([no])
AC_SUBST(MONGOC_HAVE_RES_NDESTROY, 0)
AC_MSG_CHECKING([for res_nclose])
AC_TRY_LINK([
#include
#include
#include
#include
],[
res_state statep;
res_nclose(statep);
], [
AC_MSG_RESULT([yes])
AC_SUBST(MONGOC_HAVE_RES_NCLOSE, 1)
], [
AC_MSG_RESULT([no])
AC_SUBST(MONGOC_HAVE_RES_NCLOSE, 0)
])
])
],[
AC_SUBST(MONGOC_HAVE_RES_NSEARCH, 0)
AC_SUBST(MONGOC_HAVE_RES_NDESTROY, 0)
AC_SUBST(MONGOC_HAVE_RES_NCLOSE, 0)
AC_MSG_RESULT([no])
AC_MSG_CHECKING([for res_search])
# Thread-unsafe function.
AC_TRY_LINK([
#include
#include
#include
#include
],[
int len;
unsigned char reply[1024];
len = res_search("example.com", ns_c_in, ns_t_srv, reply, sizeof(reply));
], [
AC_MSG_RESULT([yes])
AC_SUBST(MONGOC_HAVE_RES_SEARCH, 1)
AC_SUBST(RESOLV_LIBS, -lresolv)
enable_srv=yes
], [
AC_MSG_RESULT([no])
AC_SUBST(MONGOC_HAVE_RES_SEARCH, 0)
])
])
LIBS="$save_LIBS"
], [
# enable_srv = "no"
AC_SUBST(MONGOC_HAVE_RES_NSEARCH, 0)
AC_SUBST(MONGOC_HAVE_RES_NDESTROY, 0)
AC_SUBST(MONGOC_HAVE_RES_NCLOSE, 0)
AC_SUBST(MONGOC_HAVE_RES_SEARCH, 0)
])
AS_IF([test "x${RESOLV_LIBS}" = "x" -a "x$enable_srv" = "xyes"],
[AC_MSG_ERROR([Cannot find libresolv. Try --disable_srv])])
libmongoc-1.9.2+dfsg/build/autotools/Libbson.m4 0000664 0000000 0000000 00000002156 13226174053 0021404 0 ustar 00root root 0000000 0000000 # If --with-libbson=auto, determine if there is a system installed libbson
# greater than our required version.
AS_IF([test "x${with_libbson}" = xauto],
[PKG_CHECK_MODULES(BSON, [libbson-1.0 >= libbson_required_version],
[with_libbson=system],
[with_libbson=bundled])])
# If we are to use the system, check for libbson enforcing success.
AS_IF([test "x${with_libbson}" = xsystem],
[PKG_CHECK_MODULES(BSON,
[libbson-1.0 >= libbson_required_version],
[],
[AC_MSG_ERROR([
--------------------------------------
The libbson-1.0 library could not be
found on your system. Please install
libbson-1.0 development package or
set --with-libbson=auto.
--------------------------------------
])])])
# If we are using the bundled libbson, recurse into its configure.
AS_IF([test "x${with_libbson}" = xbundled],[
AC_CONFIG_SUBDIRS([src/libbson])
AC_SUBST(BSON_CFLAGS, "-I${srcdir}/src/libbson/src/bson -Isrc/libbson/src/bson")
AC_SUBST(BSON_LIBS, "src/libbson/libbson-1.0.la")
])
libmongoc-1.9.2+dfsg/build/autotools/MaintainerFlags.m4 0000664 0000000 0000000 00000001440 13226174053 0023053 0 ustar 00root root 0000000 0000000 AS_IF(
[test "x$enable_maintainer_flags" = "xyes" && test "x$GCC" = "xyes"],
[
# clang only warns if it doesn't support a warning option, turn it into an
# error so we really know if whether it supports it.
AX_CHECK_COMPILE_FLAG(
"-Werror=unknown-warning-option",
[WERROR_UNKNOWN_OPTION="-Werror=unknown-warning-option"],
[WERROR_UNKNOWN_OPTION=""])
# Read maintainer-flags.txt and apply each flag that the compiler supports.
m4_foreach([MAINTAINER_FLAG], m4_split(m4_normalize(m4_esyscmd(cat build/maintainer-flags.txt))), [
AX_CHECK_COMPILE_FLAG(
MAINTAINER_FLAG,
[MAINTAINER_CFLAGS="$MAINTAINER_CFLAGS MAINTAINER_FLAG"],
[],
[$WERROR_UNKNOWN_OPTION])
])
]
AC_SUBST(MAINTAINER_CFLAGS)
)
libmongoc-1.9.2+dfsg/build/autotools/Optimizations.m4 0000664 0000000 0000000 00000001340 13226174053 0022657 0 ustar 00root root 0000000 0000000 OPTIMIZE_CFLAGS=""
OPTIMIZE_LDFLAGS=""
AC_DEFUN([check_link_flag],
[AX_CHECK_LINK_FLAG([$1], [$2], [$3], [-Werror $4])])
dnl Check if we should use -Bsymbolic
AS_IF([test "$enable_optimizations" != "no"], [
check_link_flag([-Wl,-Bsymbolic], [OPTIMIZE_LDFLAGS="$OPTIMIZE_LDFLAGS -Wl,-Bsymbolic"])
dnl Add the appropriate 'O' level for optimized builds.
CFLAGS="$CFLAGS -O2"
])
AC_SUBST(OPTIMIZE_CFLAGS)
AC_SUBST(OPTIMIZE_LDFLAGS)
# Add '-g' flag to gcc to build with debug symbols.
if test "$enable_debug_symbols" = "min"; then
CFLAGS="$CFLAGS -g1"
elif test "$enable_debug_symbols" != "no"; then
CFLAGS="$CFLAGS -g"
fi
AS_IF([test "$enable_tracing" = "yes"],
[CPPFLAGS="$CPPFLAGS -DMONGOC_TRACE"])
libmongoc-1.9.2+dfsg/build/autotools/PlatformFlags.m4 0000664 0000000 0000000 00000001553 13226174053 0022555 0 ustar 00root root 0000000 0000000 dnl Ignore OpenSSL deprecation warnings on OSX
AS_IF([test "$os_darwin" = "yes"],
[AX_CHECK_COMPILE_FLAG([-Wno-deprecated-declarations], [CFLAGS="$CFLAGS -Wno-deprecated-declarations"])])
dnl We know there are some cast-align issues on OSX
AS_IF([test "$os_darwin" = "yes"],
[AX_CHECK_COMPILE_FLAG([-Wno-cast-align], [CFLAGS="$CFLAGS -Wno-cast-align"])])
AS_IF([test "$os_darwin" = "yes"],
[AX_CHECK_COMPILE_FLAG([-Wno-unneeded-internal-declaration], [CFLAGS="$CFLAGS -Wno-unneeded-internal-declaration"])])
AS_IF([test "$os_darwin" = "yes"],
[AX_CHECK_COMPILE_FLAG([-Wno-error=unused-command-line-argument], [CFLAGS="$CFLAGS -Wno-error=unused-command-line-argument"])])
dnl We know there are some cast-align issues on Solaris
AS_IF([test "$os_solaris" = "yes"],
[AX_CHECK_COMPILE_FLAG([-Wno-cast-align], [CFLAGS="$CFLAGS -Wno-cast-align"])])
libmongoc-1.9.2+dfsg/build/autotools/PrintBuildConfiguration.m4 0000664 0000000 0000000 00000004113 13226174053 0024613 0 ustar 00root root 0000000 0000000 AC_OUTPUT
if test -n "$MONGOC_PRERELEASE_VERSION"; then
cat << EOF
*** IMPORTANT ***
This is an unstable version of libmongoc.
It is for test purposes only.
Please, DO NOT use it in a production environment.
It will probably crash and you will lose your data.
Additionally, the API/ABI may change during the course
of development.
Thanks,
The libmongoc team.
*** END OF WARNING ***
EOF
fi
if test x"${enable_automatic_init_and_cleanup}" != x"no"; then
automatic_init_deprecated="
DEPRECATED: use --disable-automatic-init-and-cleanup"
fi
if test "x$MONGOC_36_EXPERIMENT" = "xyes"; then
experimental_features="
Feature #1 : ${enable_feature_1}"
fi
echo "
libmongoc $MONGOC_VERSION was configured with the following options:
Build configuration:
Enable debugging (slow) : ${enable_debug}
Compile with debug symbols (slow) : ${enable_debug_symbols}
Enable GCC build optimization : ${enable_optimizations}
Enable automatic init and cleanup : ${enable_automatic_init_and_cleanup}${automatic_init_deprecated}
Enable mongodb+srv URIs : ${enable_srv}
Enable maintainer flags : ${enable_maintainer_flags}
Code coverage support : ${enable_coverage}
Cross Compiling : ${enable_crosscompile}
Fast counters : ${enable_rdtscp}
Shared memory performance counters : ${enable_shm_counters}
SASL : ${sasl_mode}
SSL : ${enable_ssl}
Snappy Compression : ${with_snappy}
Zlib Compression : ${with_zlib}
Libbson : ${with_libbson}
${experimental_features}
Documentation:
man : ${enable_man_pages}
HTML : ${enable_html_docs}
"
libmongoc-1.9.2+dfsg/build/autotools/ReadCommandLineArguments.m4 0000664 0000000 0000000 00000012655 13226174053 0024671 0 ustar 00root root 0000000 0000000 AC_MSG_CHECKING([whether to do a debug build])
AC_ARG_ENABLE(debug,
AC_HELP_STRING([--enable-debug], [disable optimizations @<:@default=no@:>@]),
[],[enable_debug="no"])
AC_MSG_RESULT([$enable_debug])
AC_MSG_CHECKING([whether to enable tracing])
AC_ARG_ENABLE(tracing,
AC_HELP_STRING([--enable-tracing], [very verbose debug output @<:@default=no@:>@]),
[],[enable_tracing="no"])
AC_MSG_RESULT([$enable_tracing])
AC_MSG_CHECKING([whether to automatic init and cleanup])
AC_ARG_ENABLE(automatic-init-and-cleanup,
AC_HELP_STRING([--enable-automatic-init-and-cleanup],
[call mongoc_init() and mongoc_cleanup() automatically - DEPRECATED @<:@default=yes@:>@]),
[],[enable_automatic_init_and_cleanup="yes"])
AC_MSG_RESULT([$enable_automatic_init_and_cleanup])
AC_MSG_CHECKING([whether to enable optimized builds])
AC_ARG_ENABLE(optimizations,
AC_HELP_STRING([--enable-optimizations], [turn on build-time optimizations @<:@default=yes@:>@]),
[enable_optimizations=$enableval],
[
if test "$enable_debug" = "yes"; then
enable_optimizations="no";
else
enable_optimizations="yes";
fi
])
AC_MSG_RESULT([$enable_optimizations])
AC_MSG_CHECKING([whether to enable shared memory performance counters])
AC_ARG_ENABLE(shm_counters,
AC_HELP_STRING([--enable-shm-counters], [turn on shared memory performance counters @<:@default=yes@:>@]),
[],[enable_shm_counters="yes"])
AC_MSG_RESULT([$enable_shm_counters])
AC_MSG_CHECKING([whether to enable code coverage support])
AC_ARG_ENABLE(coverage,
AC_HELP_STRING([--enable-coverage], [enable code coverage support @<:@default=no@:>@]),
[],
[enable_coverage="no"])
AC_MSG_RESULT([$enable_coverage])
AC_MSG_CHECKING([whether to enable debug symbols])
AC_ARG_ENABLE(debug_symbols,
AC_HELP_STRING([--enable-debug-symbols=yes|no|min],
[enable debug symbols @<:@default=yes for debug builds, otherwise no@:>@]),
[
case "$enable_debug_symbols" in
yes) enable_debug_symbols="full" ;;
no|min|full) ;;
*) AC_MSG_ERROR([Invalid debug symbols option: must be yes, no, or min.]) ;;
esac
],
[
if test "$enable_debug" = "yes"; then
enable_debug_symbols="yes";
else
enable_debug_symbols="no";
fi
])
AC_MSG_RESULT([$enable_debug_symbols])
AC_ARG_ENABLE([rdtscp],
[AS_HELP_STRING([--enable-rdtscp=@<:@no/yes@:>@],
[fast performance counters on Intel using the RDTSCP instruction @<:@default=no@:>@])],
[],
[enable_rdtscp=no])
AC_ARG_ENABLE(srv,
AC_HELP_STRING([--enable-srv=@<:@auto/yes/no@:>@],
[support mongodb+srv URIs. default=auto]),
[],
[enable_srv=auto])
AS_IF([test "x$enable_srv" != "xyes" -a "x$enable_srv" != "xno"],
[enable_srv=auto])
# use strict compiler flags only on development releases
AS_IF([test "x$MONGOC_PRERELEASE_VERSION" != "x"],
[maintainer_flags_default=yes],
[maintainer_flags_default=no])
AC_ARG_ENABLE([maintainer-flags],
[AS_HELP_STRING([--enable-maintainer-flags=@<:@no/yes@:>@],
[use strict compiler checks @<:@default=no for release builds, yes for prereleases@:>@])],
[],
enable_maintainer_flags=$maintainer_flags_default)
# Check if we should use the bundled (git submodule) libbson
AC_ARG_WITH(libbson,
AC_HELP_STRING([--with-libbson=@<:@auto/system/bundled@:>@],
[use system installed libbson or bundled libbson. default=auto]),
[],
[with_libbson=auto])
AS_IF([test "x$with_libbson" != xbundled -a "x$with_libbson" != xsystem -a "x$with_libbson" != xauto],
[AC_MSG_ERROR([Invalid --with-libbson option: must be system, bundled, or auto])])
AC_ARG_WITH(snappy,
AC_HELP_STRING([--with-snappy=@<:@auto/yes/no@:>@],
[use system installed snappy. default=auto]),
[],
[with_snappy=auto])
AS_IF([test "x$with_snappy" != xyes -a "x$with_snappy" != xsystem -a "x$with_snappy" != xauto -a "x$with_snappy" != xno],
[AC_MSG_ERROR([Invalid --with-snappy option: must be auto, yes, or no])])
AC_ARG_WITH(zlib,
AC_HELP_STRING([--with-zlib=@<:@auto/system/bundled/no@:>@],
[use system installed zlib or bundled zlib. default=auto]),
[],
[with_zlib=auto])
AS_IF([test "x$with_zlib" != xbundled -a "x$with_zlib" != xsystem -a "x$with_zlib" != xauto -a "x$with_zlib" != xno],
[AC_MSG_ERROR([Invalid --with-zlib option: must be system, bundled, auto, no])])
AC_ARG_ENABLE([html-docs],
[AS_HELP_STRING([--enable-html-docs=@<:@yes/no@:>@],
[build HTML documentation @<:@default=no@:>@])],
[],
[enable_html_docs=no])
AC_ARG_ENABLE([man-pages],
[AS_HELP_STRING([--enable-man-pages=@<:@yes/no@:>@],
[build and install man pages @<:@default=no@:>@])],
[],
[enable_man_pages=no])
AC_ARG_ENABLE([examples],
[AS_HELP_STRING([--enable-examples=@<:@yes/no@:>@],
[build MongoDB C Driver example programs])],
[],
[enable_examples=yes])
AC_ARG_ENABLE([tests],
[AS_HELP_STRING([--enable-tests=@<:@yes/no@:>@],
[build MongoDB C Driver tests])],
[],
[enable_tests=yes])
libmongoc-1.9.2+dfsg/build/autotools/SetupAutomake.m4 0000664 0000000 0000000 00000004031 13226174053 0022575 0 ustar 00root root 0000000 0000000 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
AM_PROG_CC_C_O
# OS Conditionals.
AM_CONDITIONAL([OS_WIN32],[test "$os_win32" = "yes"])
AM_CONDITIONAL([OS_UNIX],[test "$os_win32" = "no"])
AM_CONDITIONAL([OS_LINUX],[test "$os_linux" = "yes"])
AM_CONDITIONAL([OS_GNU],[test "$os_gnu" = "yes"])
AM_CONDITIONAL([OS_DARWIN],[test "$os_darwin" = "yes"])
AM_CONDITIONAL([OS_FREEBSD],[test "$os_freebsd" = "yes"])
AM_CONDITIONAL([OS_SOLARIS],[test "$os_solaris" = "yes"])
# Compiler Conditionals.
AM_CONDITIONAL([COMPILER_GCC],[test "$c_compiler" = "gcc" && test "$cxx_compiler" = "g++"])
AM_CONDITIONAL([COMPILER_CLANG],[test "$c_compiler" = "clang" && test "$cxx_compiler" = "clang++"])
# Feature Conditionals
AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug" = "yes"])
AM_CONDITIONAL([ENABLE_STATIC],[test "$enable_static" = "yes"])
# C99 Features
AM_CONDITIONAL([ENABLE_STDBOOL],[test "$enable_stdbool" = "yes"])
# Should we use pthreads
AM_CONDITIONAL([ENABLE_PTHREADS],[test "$enable_pthreads" = "yes"])
# Should we compile the bundled libbson
AM_CONDITIONAL([WITH_LIBBSON],[test "$with_libbson" = "bundled"])
# Should we compile the bundled zlib
AM_CONDITIONAL([WITH_ZLIB],[test "$with_zlib" = "bundled"])
# Should we avoid extra BSON_LIBS when linking (SunStudio)
AM_CONDITIONAL([EXPLICIT_LIBS],[test "$with_gnu_ld" = "yes"])
# Should we build the examples.
AM_CONDITIONAL([ENABLE_EXAMPLES],[test "$enable_examples" = "yes"])
# Should we build the tests.
AM_CONDITIONAL([ENABLE_TESTS],[test "$enable_tests" = "yes"])
# Should we build man pages
AM_CONDITIONAL([ENABLE_MAN_PAGES],[test "$enable_man_pages" = "yes"])
AS_IF([test "$enable_man_pages" = "yes" && test -z "$SPHINX_BUILD"],
[AC_MSG_ERROR([The Sphinx Python package must be installed to generate man pages.])])
# Should we build HTML documentation
AM_CONDITIONAL([ENABLE_HTML_DOCS],[test "$enable_html_docs" = "yes"])
AS_IF([test "$enable_html_docs" = "yes" && test -z "$SPHINX_BUILD"],
[AC_MSG_ERROR([The Sphinx Python package must be installed to generate HTML documentation.])])
libmongoc-1.9.2+dfsg/build/autotools/SetupLibtool.m4 0000664 0000000 0000000 00000000111 13226174053 0022426 0 ustar 00root root 0000000 0000000 LT_PREREQ([2.2])
AC_DISABLE_STATIC
AC_LIBTOOL_WIN32_DLL
AC_PROG_LIBTOOL
libmongoc-1.9.2+dfsg/build/autotools/Versions.m4 0000664 0000000 0000000 00000003744 13226174053 0021630 0 ustar 00root root 0000000 0000000 MONGOC_CURRENT_FILE=${srcdir}/VERSION_CURRENT
MONGOC_VERSION=$(cat $MONGOC_CURRENT_FILE)
# Ensure newline for "cut" implementations that need it, e.g. HP-UX.
MONGOC_MAJOR_VERSION=$( (cat $MONGOC_CURRENT_FILE; echo) | cut -d- -f1 | cut -d. -f1 )
MONGOC_MINOR_VERSION=$( (cat $MONGOC_CURRENT_FILE; echo) | cut -d- -f1 | cut -d. -f2 )
MONGOC_MICRO_VERSION=$( (cat $MONGOC_CURRENT_FILE; echo) | cut -d- -f1 | cut -d. -f3 )
MONGOC_PRERELEASE_VERSION=$(cut -s -d- -f2 $MONGOC_CURRENT_FILE)
AC_SUBST(MONGOC_VERSION)
AC_SUBST(MONGOC_MAJOR_VERSION)
AC_SUBST(MONGOC_MINOR_VERSION)
AC_SUBST(MONGOC_MICRO_VERSION)
AC_SUBST(MONGOC_PRERELEASE_VERSION)
MONGOC_RELEASED_FILE=${srcdir}/VERSION_RELEASED
MONGOC_RELEASED_VERSION=$(cat $MONGOC_RELEASED_FILE)
MONGOC_RELEASED_MAJOR_VERSION=$(cut -d- -f1 $MONGOC_RELEASED_FILE | cut -d. -f1)
MONGOC_RELEASED_MINOR_VERSION=$(cut -d- -f1 $MONGOC_RELEASED_FILE | cut -d. -f2)
MONGOC_RELEASED_MICRO_VERSION=$(cut -d- -f1 $MONGOC_RELEASED_FILE | cut -d. -f3)
MONGOC_RELEASED_PRERELEASE_VERSION=$(cut -s -d- -f2 $MONGOC_RELEASED_FILE)
AC_SUBST(MONGOC_RELEASED_VERSION)
AC_SUBST(MONGOC_RELEASED_MAJOR_VERSION)
AC_SUBST(MONGOC_RELEASED_MINOR_VERSION)
AC_SUBST(MONGOC_RELEASED_MICRO_VERSION)
AC_SUBST(MONGOC_RELEASED_PRERELEASE_VERSION)
AC_MSG_NOTICE([Current version (from VERSION_CURRENT file): $MONGOC_VERSION])
if test "x$MONGOC_RELEASED_PRERELEASE_VERSION" != "x"; then
AC_ERROR([RELEASED_VERSION file has prerelease version $MONGOC_RELEASED_VERSION])
fi
if test "x$MONGOC_VERSION" != "x$MONGOC_RELEASED_VERSION"; then
AC_MSG_NOTICE([Most recent release (from VERSION_RELEASED file): $MONGOC_RELEASED_VERSION])
if test "x$MONGOC_PRERELEASE_VERSION" = "x"; then
AC_ERROR([Current version ($MONGOC_PRERELEASE_VERSION) must be a prerelease (with "-dev", "-beta", etc.) or equal to previous release])
fi
fi
dnl So far, we've synchronized libbson and mongoc versions.
m4_define([libbson_required_version], $MONGOC_RELEASED_VERSION)
m4_define([sasl_required_version], [2.1.6])
libmongoc-1.9.2+dfsg/build/autotools/WeakSymbols.m4 0000664 0000000 0000000 00000000401 13226174053 0022243 0 ustar 00root root 0000000 0000000 AC_MSG_CHECKING(if weak symbols are supported)
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
__attribute__((weak)) void __dummy(void *x) { }
void f(void *x) { __dummy(x); }
]], [[ ]]
)],
[AC_MSG_RESULT(yes)
AC_SUBST(MONGOC_HAVE_WEAK_SYMBOLS, 1)],
[AC_MSG_RESULT(no)])
libmongoc-1.9.2+dfsg/build/autotools/m4/ 0000775 0000000 0000000 00000000000 13226174053 0020066 5 ustar 00root root 0000000 0000000 libmongoc-1.9.2+dfsg/build/autotools/m4/.gitignore 0000664 0000000 0000000 00000000077 13226174053 0022062 0 ustar 00root root 0000000 0000000 lt~obsolete.m4
ltoptions.m4
ltsugar.m4
ltversion.m4
libtool.m4
libmongoc-1.9.2+dfsg/build/autotools/m4/ac_check_typedef.m4 0000664 0000000 0000000 00000002640 13226174053 0023572 0 ustar 00root root 0000000 0000000 dnl @synopsis AC_CHECK_TYPEDEF_(TYPEDEF, HEADER [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]])
dnl
dnl check if the given typedef-name is recognized as a type. The trick
dnl is to use a sizeof(TYPEDEF) and see if the compiler is happy with
dnl that.
dnl
dnl this can be thought of as a mixture of
dnl AC_CHECK_TYPE(TYPEDEF,DEFAULT) and
dnl AC_CHECK_LIB(LIBRARY,FUNCTION,ACTION-IF-FOUND,ACTION-IF-NOT-FOUND)
dnl
dnl a convenience macro AC_CHECK_TYPEDEF_ is provided that will not
dnl emit any message to the user - it just executes one of the actions.
dnl
dnl @category C
dnl @author Guido U. Draheim
dnl @version 2006-10-13
dnl @license GPLWithACException
AC_DEFUN([AC_CHECK_TYPEDEF_],
[dnl
ac_lib_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'`
AC_CACHE_VAL(ac_cv_lib_$ac_lib_var,
[ eval "ac_cv_type_$ac_lib_var='not-found'"
ac_cv_check_typedef_header=`echo ifelse([$2], , stddef.h, $2)`
AC_TRY_COMPILE( [#include <$ac_cv_check_typedef_header>],
[int x = sizeof($1); x = x;],
eval "ac_cv_type_$ac_lib_var=yes" ,
eval "ac_cv_type_$ac_lib_var=no" )
if test `eval echo '$ac_cv_type_'$ac_lib_var` = "no" ; then
ifelse([$4], , :, $4)
else
ifelse([$3], , :, $3)
fi
])])
dnl AC_CHECK_TYPEDEF(TYPEDEF, HEADER [, ACTION-IF-FOUND,
dnl [, ACTION-IF-NOT-FOUND ]])
AC_DEFUN([AC_CHECK_TYPEDEF],
[dnl
AC_MSG_CHECKING([for $1 in $2])
AC_CHECK_TYPEDEF_($1,$2,AC_MSG_RESULT(yes),AC_MSG_RESULT(no))dnl
])
libmongoc-1.9.2+dfsg/build/autotools/m4/ac_compile_check_sizeof.m4 0000664 0000000 0000000 00000001566 13226174053 0025147 0 ustar 00root root 0000000 0000000 AC_DEFUN([AC_COMPILE_CHECK_SIZEOF],
[changequote(<<, >>)dnl
dnl The name to #define.
define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
dnl The cache variable name.
define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
changequote([, ])dnl
AC_MSG_CHECKING(size of $1)
AC_CACHE_VAL(AC_CV_NAME,
[for ac_size in 4 8 1 2 16 $2 ; do # List sizes in rough order of prevalence.
AC_TRY_COMPILE([#include "confdefs.h"
#include <sys/types.h>
$2
], [switch (0) case 0: case (sizeof ($1) == $ac_size):;], AC_CV_NAME=$ac_size)
if test x$AC_CV_NAME != x ; then break; fi
done
])
if test x$AC_CV_NAME = x ; then
AC_MSG_ERROR([cannot determine a size for $1])
fi
AC_MSG_RESULT($AC_CV_NAME)
AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1])
undefine([AC_TYPE_NAME])dnl
undefine([AC_CV_NAME])dnl
])
libmongoc-1.9.2+dfsg/build/autotools/m4/ac_create_stdint_h.m4 0000664 0000000 0000000 00000036622 13226174053 0024143 0 ustar 00root root 0000000 0000000 dnl @synopsis AC_CREATE_STDINT_H [( HEADER-TO-GENERATE [, HEDERS-TO-CHECK])]
dnl
dnl the "ISO C9X: 7.18 Integer types " section requires the
dnl existence of an include file that defines a set of
dnl typedefs, especially uint8_t,int32_t,uintptr_t. Many older
dnl installations will not provide this file, but some will have the
dnl very same definitions in . In other enviroments we can
dnl use the inet-types in which would define the typedefs
dnl int8_t and u_int8_t respectivly.
dnl
dnl This macros will create a local "_stdint.h" or the headerfile given
dnl as an argument. In many cases that file will just have a singular
dnl "#include " or "#include " statement, while
dnl in other environments it will provide the set of basic 'stdint's
dnl defined:
dnl int8_t,uint8_t,int16_t,uint16_t,int32_t,uint32_t,intptr_t,uintptr_t
dnl int_least32_t.. int_fast32_t.. intmax_t which may or may not rely
dnl on the definitions of other files, or using the
dnl AC_COMPILE_CHECK_SIZEOF macro to determine the actual sizeof each
dnl type.
dnl
dnl if your header files require the stdint-types you will want to
dnl create an installable file mylib-int.h that all your other
dnl installable header may include. So if you have a library package
dnl named "mylib", just use
dnl
dnl AC_CREATE_STDINT_H(mylib-int.h)
dnl
dnl in configure.in and go to install that very header file in
dnl Makefile.am along with the other headers (mylib.h) - and the
dnl mylib-specific headers can simply use "#include " to
dnl obtain the stdint-types.
dnl
dnl Remember, if the system already had a valid , the
dnl generated file will include it directly. No need for fuzzy
dnl HAVE_STDINT_H things...
dnl
dnl (note also the newer variant AX_CREATE_STDINT_H of this macro)
dnl
dnl @category C
dnl @author Guido U. Draheim
dnl @version 2003-05-21
dnl @license GPLWithACException
AC_DEFUN([AC_CREATE_STDINT_H],
[# ------ AC CREATE STDINT H -------------------------------------
AC_MSG_CHECKING([for stdint-types....])
ac_stdint_h=`echo ifelse($1, , _stdint.h, $1)`
if test "$ac_stdint_h" = "stdint.h" ; then
AC_MSG_RESULT("(are you sure you want them in ./stdint.h?)")
elif test "$ac_stdint_h" = "inttypes.h" ; then
AC_MSG_RESULT("(are you sure you want them in ./inttypes.h?)")
else
AC_MSG_RESULT("(putting them into $ac_stdint_h)")
mkdir -p $(dirname "$ac_stdint_h")
fi
inttype_headers=`echo inttypes.h sys/inttypes.h sys/inttypes.h $2 \
| sed -e 's/,/ /g'`
ac_cv_header_stdint_x="no-file"
ac_cv_header_stdint_o="no-file"
ac_cv_header_stdint_u="no-file"
for i in stdint.h $inttype_headers ; do
unset ac_cv_type_uintptr_t
unset ac_cv_type_uint64_t
_AC_CHECK_TYPE_NEW(uintptr_t,[ac_cv_header_stdint_x=$i],dnl
continue,[#include <$i>])
AC_CHECK_TYPE(uint64_t,[and64="(uint64_t too)"],[and64=""],[#include<$i>])
AC_MSG_RESULT(... seen our uintptr_t in $i $and64)
break;
done
if test "$ac_cv_header_stdint_x" = "no-file" ; then
for i in stdint.h $inttype_headers ; do
unset ac_cv_type_uint32_t
unset ac_cv_type_uint64_t
AC_CHECK_TYPE(uint32_t,[ac_cv_header_stdint_o=$i],dnl
continue,[#include <$i>])
AC_CHECK_TYPE(uint64_t,[and64="(uint64_t too)"],[and64=""],[#include<$i>])
AC_MSG_RESULT(... seen our uint32_t in $i $and64)
break;
done
if test "$ac_cv_header_stdint_o" = "no-file" ; then
for i in sys/types.h $inttype_headers ; do
unset ac_cv_type_u_int32_t
unset ac_cv_type_u_int64_t
AC_CHECK_TYPE(u_int32_t,[ac_cv_header_stdint_u=$i],dnl
continue,[#include <$i>])
AC_CHECK_TYPE(uint64_t,[and64="(u_int64_t too)"],[and64=""],[#include<$i>])
AC_MSG_RESULT(... seen our u_int32_t in $i $and64)
break;
done
fi
fi
# ----------------- DONE inttypes.h checks MAYBE C basic types --------
if test "$ac_cv_header_stdint_x" = "no-file" ; then
AC_COMPILE_CHECK_SIZEOF(char)
AC_COMPILE_CHECK_SIZEOF(short)
AC_COMPILE_CHECK_SIZEOF(int)
AC_COMPILE_CHECK_SIZEOF(long)
AC_COMPILE_CHECK_SIZEOF(void*)
ac_cv_header_stdint_test="yes"
else
ac_cv_header_stdint_test="no"
fi
# ----------------- DONE inttypes.h checks START header -------------
_ac_stdint_h=AS_TR_CPP(_$ac_stdint_h)
AC_MSG_RESULT(creating $ac_stdint_h : $_ac_stdint_h)
echo "#ifndef" $_ac_stdint_h >$ac_stdint_h
echo "#define" $_ac_stdint_h "1" >>$ac_stdint_h
echo "#ifndef" _GENERATED_STDINT_H >>$ac_stdint_h
echo "#define" _GENERATED_STDINT_H '"'$PACKAGE $VERSION'"' >>$ac_stdint_h
if test "$GCC" = "yes" ; then
echo "/* generated using a gnu compiler version" `$CC --version` "*/" \
>>$ac_stdint_h
else
echo "/* generated using $CC */" >>$ac_stdint_h
fi
echo "" >>$ac_stdint_h
if test "$ac_cv_header_stdint_x" != "no-file" ; then
ac_cv_header_stdint="$ac_cv_header_stdint_x"
elif test "$ac_cv_header_stdint_o" != "no-file" ; then
ac_cv_header_stdint="$ac_cv_header_stdint_o"
elif test "$ac_cv_header_stdint_u" != "no-file" ; then
ac_cv_header_stdint="$ac_cv_header_stdint_u"
else
ac_cv_header_stdint="stddef.h"
fi
# ----------------- See if int_least and int_fast types are present
unset ac_cv_type_int_least32_t
unset ac_cv_type_int_fast32_t
AC_CHECK_TYPE(int_least32_t,,,[#include <$ac_cv_header_stdint>])
AC_CHECK_TYPE(int_fast32_t,,,[#include<$ac_cv_header_stdint>])
if test "$ac_cv_header_stdint" != "stddef.h" ; then
if test "$ac_cv_header_stdint" != "stdint.h" ; then
AC_MSG_RESULT(..adding include stddef.h)
echo "#include " >>$ac_stdint_h
fi ; fi
AC_MSG_RESULT(..adding include $ac_cv_header_stdint)
echo "#include <$ac_cv_header_stdint>" >>$ac_stdint_h
echo "" >>$ac_stdint_h
# ----------------- DONE header START basic int types -------------
if test "$ac_cv_header_stdint_x" = "no-file" ; then
AC_MSG_RESULT(... need to look at C basic types)
dnl ac_cv_header_stdint_test="yes" # moved up before creating the file
else
AC_MSG_RESULT(... seen good stdint.h inttypes)
dnl ac_cv_header_stdint_test="no" # moved up before creating the file
fi
if test "$ac_cv_header_stdint_u" != "no-file" ; then
AC_MSG_RESULT(... seen bsd/sysv typedefs)
cat >>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h < 199901L
#ifndef _HAVE_UINT64_T
#define _HAVE_UINT64_T
typedef long long int64_t;
typedef unsigned long long uint64_t;
#endif
#elif !defined __STRICT_ANSI__
#if defined _MSC_VER || defined __WATCOMC__ || defined __BORLANDC__
#ifndef _HAVE_UINT64_T
#define _HAVE_UINT64_T
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
#endif
#elif defined __GNUC__ || defined __MWERKS__ || defined __ELF__
dnl /* note: all ELF-systems seem to have loff-support which needs 64-bit */
#if !defined _NO_LONGLONG
#ifndef _HAVE_UINT64_T
#define _HAVE_UINT64_T
typedef long long int64_t;
typedef unsigned long long uint64_t;
#endif
#endif
#elif defined __alpha || (defined __mips && defined _ABIN32)
#if !defined _NO_LONGLONG
#ifndef _HAVE_UINT64_T
#define _HAVE_UINT64_T
typedef long int64_t;
typedef unsigned long uint64_t;
#endif
#endif
/* compiler/cpu type ... or just ISO C99 */
#endif
#endif
EOF
# plus a default 64-bit for systems that are likely to be 64-bit ready
case "$ac_cv_sizeof_x:$ac_cv_sizeof_voidp:$ac_cv_sizeof_long" in
1:2:8:8) AC_MSG_RESULT(..adding uint64_t default, normal 64-bit system)
cat >>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <>$ac_stdint_h <