summaryrefslogtreecommitdiff
path: root/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common.yml
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/gotools/src/github.com/mongodb/mongo-tools/common.yml')
-rw-r--r--src/mongo/gotools/src/github.com/mongodb/mongo-tools/common.yml2281
1 files changed, 0 insertions, 2281 deletions
diff --git a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common.yml b/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common.yml
deleted file mode 100644
index db5fc62a185..00000000000
--- a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/common.yml
+++ /dev/null
@@ -1,2281 +0,0 @@
-#######################################
-# Tools Driver Config for MCI #
-#######################################
-# default command type
-command_type: system
-
-# run the same task in the previous revision if the current task fails
-stepback: true
-
-mongo_tools_variables:
-
-## List of tests to run on each buildvariant
- mongo_tools_task_lists:
- mac_task_list: &macos_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: qa-tests-3.2
- - name: qa-tests-3.4
- - name: qa-tests-3.6
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: qa-dump-restore-with-gzip-current
- - name: qa-dump-restore-with-archiving-current
- - name: unit
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2107
- # - name: replay-replay_test-4.2
- macos_ssl_task_list: &macos_ssl_tasks
- - name: dist
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: unit
- - name: replay-dist
- rhel_x86_64_task_list: &rhel_x86_64_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: legacy30
- - name: lint-go
- - name: format-go
- - name: lint-js
- - name: qa-tests-3.2
- - name: qa-tests-3.4
- - name: qa-tests-3.6
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: qa-dump-restore-with-gzip-current
- - name: qa-dump-restore-with-archiving-current
- - name: unit
- - name: vet
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2116
- # - name: replay-replay_test-4.2
- rhel_x86_64_ssl_task_list: &rhel_x86_64_ssl_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
- rhel_x86_64_enterprise_task_list: &rhel_x86_64_enterprise_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- # Disabled due to TOOLS-2119
- # - name: kerberos
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2116
- # - name: replay-replay_test-4.2
- ubuntu_x86_64_task_list: &ubuntu_x86_64_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: lint-go
- - name: format-go
- - name: lint-js
- - name: qa-tests-3.2
- - name: qa-tests-3.4
- - name: qa-tests-3.6
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: qa-dump-restore-with-gzip-current
- - name: qa-dump-restore-with-archiving-current
- - name: unit
- - name: vet
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2108
- # - name: replay-replay_test-4.2
- ubuntu_x86_64_ssl_task_list: &ubuntu_x86_64_ssl_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
- ubuntu_x86_64_enterprise_task_list: &ubuntu_x86_64_enterprise_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: kerberos
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2108
- # - name: replay-replay_test-4.2
- ubuntu_x86_64_race_task_list: &ubuntu_x86_64_race_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: unit
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2108
- # - name: replay-replay_test-4.2
- windows_64_task_list: &windows_64_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-3.2
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-3.4
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-3.6
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-4.0
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-4.2
- distros:
- - windows-64-vs2017-test
- - name: qa-dump-restore-with-archiving-current
- distros:
- - windows-64-vs2017-test
- - name: qa-dump-restore-with-gzip-current
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-unstable
- - name: unit
- windows_64_ssl_task_list: &windows_64_ssl_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: unit
- windows_64_enterprise_task_list: &windows_64_enterprise_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: kerberos
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-3.2
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-3.4
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-3.6
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-4.0
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-4.2
- distros:
- - windows-64-vs2017-test
- - name: qa-tests-unstable
- distros:
- - windows-64-vs2017-test
- - name: unit
- - name: native-cert-ssl-current
- rhel71_ppc64le_enterprise_task_list: &rhel71_ppc64le_enterprise_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- #- name: kerberos
- - name: qa-dump-restore-with-archiving-current
- - name: qa-dump-restore-with-gzip-current
- - name: qa-tests-3.4
- - name: qa-tests-3.6
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2108
- # - name: replay-replay_test-4.2
- rhel67_s390x_enterprise_task_list: &rhel67_s390x_enterprise_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: integration-4.2
- - name: integration-4.2-auth
- # Disabled due to TOOLS-2119
- # - name: kerberos
- - name: qa-dump-restore-with-archiving-current
- - name: qa-dump-restore-with-gzip-current
- - name: qa-tests-3.4
- - name: qa-tests-3.6
- - name: qa-tests-4.0
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
- - name: replay-sanity_check-4.2
- - name: replay-go_test-4.2
- - name: replay-auth_test-4.2
- - name: replay-sharded_test-4.2
- - name: replay-repl_test-4.2
- # Disabled due to TOOLS-2108
- # - name: replay-replay_test-4.2
- ubuntu1604_arm64_ssl_task_list: &ubuntu1604_arm64_ssl_tasks
- - name: dist
- - name: integration-4.0
- - name: integration-4.0-auth
- - name: qa-tests-3.4
- - name: qa-tests-3.6
- - name: qa-tests-4.0
- - name: replay-dist
- ubuntu1804_arm64_ssl_task_list: &ubuntu1804_arm64_ssl_tasks
- - name: dist
- - name: integration-4.2
- - name: integration-4.2-auth
- - name: qa-dump-restore-with-archiving-current
- - name: qa-dump-restore-with-gzip-current
- - name: qa-tests-4.2
- - name: qa-tests-unstable
- - name: native-cert-ssl-current
- - name: replay-dist
-
-
-## Common mongodb arguments
- mongod_arguments:
- default: &mongod_default_startup_args
- mongod_args: ""
- mongod_port: 33333
- ssl: &mongod_ssl_startup_args
- mongod_args: "--sslMode requireSSL --sslCAFile testdata/certs/ca.pem --sslPEMKeyFile testdata/certs/server.pem"
- mongod_port: 33333
- # Set storage engine as mmapv1 for 32 bit variants because WiredTiger requires 64 bit support.
- win32: &mongod_win32_startup_args
- mongod_args: "--storageEngine=mmapv1"
- mongod_port: 33333
-
- mongo_arguments:
- default: &mongo_default_startup_args
- mongo_args: &mongo_default_startup_args_string "--port 33333"
- mongod_port: 33333
- ssl: &mongo_ssl_startup_args
- mongo_args: "--port 33333 --ssl --sslCAFile ./testdata/certs/ca.pem --sslPEMKeyFile ./testdata/certs/server.pem --sslAllowInvalidCertificates"
- mongod_port: 33333
-
-functions:
-
- "run legacy tests":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- chmod +x bin/*
- mv bin/* ${test_path}/
- cd ${test_path}
- python buildscripts/smoke.py ${smoke_use_ssl} --with-cleanbb --mongod ./mongod --mongo ./mongo --report-file ../../report.json --continue-on-failure --buildlogger-builder MCI_${build_variant} --buildlogger-buildnum ${builder_num|} --buildlogger-credentials ./mci.buildlogger --buildlogger-phase ${task_name}_${execution} ${smoke_args} tool
-
- "run qa-tests":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- chmod +x bin/*
- mv bin/* test/qa-tests/
- cd test/qa-tests
- chmod 400 jstests/libs/key*
-
- python buildscripts/resmoke.py --suite=${resmoke_suite} --continueOnFailure --log=buildlogger --reportFile=../../report.json ${resmoke_args} --excludeWithAnyTags="${excludes}"
-
- "build tool":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- echo "Building ${tool}..."
- if [ "Windows_NT" = "$OS" ]; then
- set -o igncr
- fi;
- # In RHEL 5.5, /usr/bin/ld can't handle --build-id parameters, so
- # use a wrapper if it's present on the system
- #
- if [ -d /opt/ldwrapper/bin ]
- then
- export PATH=/opt/ldwrapper/bin:$PATH
- fi
-
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
- go version
- env | grep ^GO
- go build $(buildflags) -ldflags "$(print_ldflags)" ${args} -tags "$(print_tags failpoints ${build_tags})" -o bin/${tool} ${tool}/main/${tool}.go
- ./bin/${tool} --version
-
- "download mongod":
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- mongotarget=$(if [ "${mongo_target}" ]; then echo "${mongo_target}"; else echo "${mongo_os}"; fi)
- mongoversion=$(if [ "${mongo_version_always_use_latest}" ]; then echo "latest"; else echo "${mongo_version}"; fi)
- dlurl=$(python binaryurl.py --edition=${mongo_edition} --target=$mongotarget --version=$mongoversion --arch=${mongo_arch|x86_64})
- filename=$(echo $dlurl | sed -e "s_.*/__")
- mkdir -p bin
- curl -s $dlurl --output $filename
- ${decompress} $filename
- rm $filename
- if [ "${only_shell}" ]; then
- mv -f ./mongodb-*/bin/mongo${extension} ./bin/
- else
- mv -f ./mongodb-*/bin/mongo${extension} ./bin/
- mv -f ./mongodb-*/bin/mongos${extension} ./bin/
- mv -f ./mongodb-*/bin/mongod${extension} ./bin/
- fi
- chmod +x ./bin/*
- rm -rf ./mongodb-*
-
- "fetch tool" :
- command: s3.get
- params:
- bucket: mciuploads
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/bin/${tool}${extension}
- remote_file: mongo-tools/binaries/${build_id}/${edition|community}/${tool}${extension}
-
- "generate coverage html + text":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- if [ "${coverage}" = "true" ]; then
- if [ "Windows_NT" = "$OS" ]; then
- set -o igncr
- fi;
- go tool cover -html=coverage.out -o coverage.html
- go tool cover -func=coverage.out -o coverage.txt
- fi;
-
- "get buildnumber":
- command: keyval.inc
- params:
- key: "${build_variant}_tools"
- destination: "builder_num"
-
- "move coverage data":
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- if [ "${coverage}" = "true" ]; then
- mv ${package}/coverage.out .
- fi
-
- "run unit test":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- # export sensitive info before `set -x`
- export MONGODB_KERBEROS_PASSWORD=${kerberos_password}
- set -x
- set -v
- if [ "Windows_NT" = "$OS" ]; then
- set -o igncr
- fi;
- export basedir=$PWD
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
- cd ${package}
- go test $(buildflags) -ldflags "$(print_ldflags)" ${coverage_args} -tags "$(print_tags ${build_tags})" -test.v > unit.suite
- export exitcode=$?
- cat unit.suite
- cp unit.suite $basedir/.
- exit $exitcode
-
- "setup integration test":
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- # Set up Kerberos stuff: run kinit if necessary, and add KDC to registry
- # on Windows (see https://wiki.mongodb.com/display/DH/Testing+Kerberos)
- script: |
- set -e
- # export sensitive info before `set -x`
- if [ '${run_kinit}' = 'true' ]; then
- # BUILD-3830
- mkdir -p "$(pwd)/.evergreen"
- touch "$(pwd)/.evergreen/krb5.conf.empty"
- export KRB5_CONFIG="$(pwd)/.evergreen/krb5.conf.empty"
-
- echo "Writing keytab"
- echo ${kerberos_keytab} | base64 -d > "$(pwd)/.evergreen/drivers.keytab"
- echo "Running kinit"
- kinit -k -t "$(pwd)/.evergreen/drivers.keytab" -p drivers@LDAPTEST.10GEN.CC;
- fi;
- set -x
- set -v
- if [ "Windows_NT" = "$OS" ]; then
- cmd /c "REG ADD HKLM\SYSTEM\ControlSet001\Control\Lsa\Kerberos\Domains\LDAPTEST.10GEN.CC /v KdcNames /d ldaptest.10gen.cc /t REG_MULTI_SZ /f"
- fi;
-
- "run tool unit tests":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- if [ "Windows_NT" = "$OS" ]; then
- set -o igncr
- fi;
-
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
- if [ "${UNIT_TEST}" = "true" ]; then
- export TOOLS_TESTING_UNIT="true"
- fi;
- if [ "${run_coverage}" = "true" ]; then
- export RUN_COVERAGE="true"
- fi
- export ON_EVERGREEN="true"
- export TOOLS_BUILD_TAGS=${build_tags}
- ./runTests.sh -v
- exit $?
-
- "run tool integration tests":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- # export sensitive info before `set -x`
- if [ "Windows_NT" = "$OS" ]; then
- set -o igncr
- export MONGODB_KERBEROS_PASSWORD=${kerberos_password}
- fi;
- set -x
- set -v
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
- if [ "${KERBEROS_TEST}" = "true" ]; then
- export TOOLS_TESTING_KERBEROS="true"
- elif [ "${USE_SSL}" = "true" ]; then
- export TOOLS_TESTING_SSL="true"
- export TOOLS_TESTING_INTEGRATION="true"
- fi;
- if [ "${AUTH_TEST}" = "true" ]; then
- export TOOLS_TESTING_AUTH="true"
- export TOOLS_TESTING_INTEGRATION="true"
- fi;
- if [ "${INT_TEST}" = "true" ]; then
- export TOOLS_TESTING_INTEGRATION="true"
- fi;
- if [ "${create_mongod_users_command}" != "" ]; then
- export TOOLS_TESTING_AUTH_USERNAME=${auth_username}
- export TOOLS_TESTING_AUTH_PASSWORD=${auth_password}
- echo "${create_mongod_users_command}" | ./bin/mongo${extension} ${mongo_args} admin
- fi;
- export ON_EVERGREEN="true"
- export TOOLS_BUILD_TAGS="${build_tags}"
- ./runTests.sh -v
- exit $?
-
-
- "create coverage reports":
- command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- set -o verbose
- if [ "Windows_NT" = "$OS" ]; then
- set -o igncr
- fi;
-
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
-
- # XXX Need to fix up use of 'src' below somehow; for now commented out
- # because we're using an actual GOPATH instead of a hack and replaced with a copy
- for i in mongoimport mongoexport mongostat mongorestore mongodump mongofiles; do
- cd $i
- # perl -pe 's/.*src/github.com\/mongodb\/mongo-tools/' coverage_$i.out > coverage_$i_rewrite.out
- go tool cover -html=coverage_$i.out -o coverage_$i.html
- go tool cover -func=coverage_$i.out -o coverage_$i.txt
- cd ..
- done
-
- "upload html coverage":
- command: s3.put
- params:
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/${coverage_pkg}/coverage_${coverage_pkg}.html
- remote_file: mongo-tools/coverage/${coverage_pkg}/${task_id}.html
- bucket: mciuploads
- permissions: public-read
- content_type: text/html
- build_variants: ["ubuntu", "windows-64"]
- display_name: ${coverage_pkg}-html
-
- "upload text coverage":
- command: s3.put
- params:
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/${coverage_pkg}/coverage_${coverage_pkg}.txt
- remote_file: mongo-tools/coverage/${coverage_pkg}/${task_id}.txt
- bucket: mciuploads
- permissions: public-read
- content_type: text/plain
- build_variants: ["ubuntu", "windows-64"]
- display_name: ${coverage_pkg}-text
-
- "setup credentials" :
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- silent: true
- script: |
- set -x
- set -v
- set -e
- cat > mci.buildlogger <<END_OF_CREDS
- slavename='${slave}'
- passwd='${passwd}'
- builder='MCI_${build_variant}'
- build_num=${builder_num}
- build_phase='${task_name}_${execution}'
- END_OF_CREDS
- # Resmoke hardcodes the location of this file so we need to copy it to the working directory
- # we run resmoke from.
- cp mci.buildlogger test/qa-tests
-
- "start mongod":
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- background: true
- script: |
- set -x
- set -v
- set -e
- rm -rf mongodb/db_files mongodb/${logfile|run.log}
- mkdir -p mongodb/db_files
- echo "Starting mongod..."
- PATH=$PWD/bin:$PATH ./bin/mongod${extension} --port ${mongod_port} ${mongod_args} ${additional_args} --dbpath mongodb/db_files --setParameter=enableTestCommands=1
-
- "wait for mongod to be ready":
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- SECS = 0
- while true ; do
- set -o verbose
- ./bin/mongo${extension} ${mongo_args} --eval 'true;'
- if [ "$?" = "0" ]; then
- echo "mongod ready";
- exit 0
- else
- SECS=`expr $SECS + 1`
- if [ $SECS -gt 20 ]; then
- echo "mongod not ready after 20 seconds"
- exit 1
- fi
- echo "waiting for mongod ( ${mongo_args} ) to be ready..." ;
- sleep 1 ;
- fi
- done
-
- "upload tool":
- command: s3.put
- params:
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/bin/${tool}
- remote_file: mongo-tools/binaries/${build_id}/${edition|community}/${tool}${extension}
- bucket: mciuploads
- permissions: public-read
- content_type: application/octet-stream
- display_name: ${tool}
-
- "fetch source" :
- - command: shell.exec
- params:
- script: |
- set -x
- set -v
- set -e
- mkdir -p src/github.com/mongodb
- - command: git.get_project
- params:
- directory: src/github.com/mongodb/mongo-tools
- - command: git.apply_patch
- params:
- directory: src/github.com/mongodb/mongo-tools
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- mkdir -p bin
-
- "upload archive" :
- command: s3.put
- params:
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/${filename}
- remote_file: mongo-tools/mongoreplay/archive/${build_id}/${filename}
- bucket: mciuploads
- permissions: public-read
- content_type: application/gzip
- display_name: ${filename}
-
- "create timeseries" :
- command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- git clone git@github.com:10gen/support-tools
- sudo pip install argparse python-dateutil pytz
- python support-tools/timeseries/timeseries.py /data/mongoreplay/diagnostic.data --html timeseries.html
-
- "upload timeseries" :
- command: s3.put
- params:
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/timeseries.html
- remote_file: mongo-tools/mongoreplay/timeseries/${build_id}/timeseries.html
- bucket: mciuploads
- permissions: public-read
- content_type: text/html
- display_name: timeseries.html
-
- "fetch pcap" :
- command: s3.get
- params:
- bucket: boxes.10gen.com
- aws_key: ${aws_key}
- aws_secret: ${aws_secret}
- local_file: src/github.com/mongodb/mongo-tools/mongoreplay/testPcap/${pcapFname}
- remote_file: build/mongotape/${pcapFname}
-
- "fetch ftdc" :
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- GOPATH=$PWD go get github.com/10gen/ftdc-utils/cmd/ftdc
-
- "fetch golangci-lint" :
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s latest
-
- "create auth_user" :
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- ./bin/mongo --port ${mongod_port} admin --eval "db.createUser({user:\"authorizedUser\", pwd: \"authorizedPwd\", roles:[\"readWriteAnyDatabase\", \"clusterManager\"]});"
-
- "create sharded_cluster" :
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- background: true
- script: |
- set -x
- set -v
- set -e
- echo "starting sharded cluster"
- mkdir -p /data/db/
- PATH=./bin:$PATH ./bin/mongo --nodb --eval 'var d = new ShardingTest({shards:3, mongos:[{port:${mongod_port}}]}); while(true){sleep(1000)}'
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- ./bin/mongo --nodb --eval 'var d; assert.soon(function(x){try{d = new Mongo("localhost:${mongod_port}"); return true} catch(e){return false}}, "timed out connection");d.setLogLevel(5, "write");'
-
- "create repl_set" :
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- background: true
- script: |
- set -x
- set -v
- set -e
- echo "starting repl set"
- mkdir -p /data/db/
- PATH=./bin:$PATH ./bin/mongo --nodb --eval 'TestData = new Object(); TestData.minPort="${mongod_port}"; var repl = new ReplSetTest({nodes:3, name:"repltester"});repl.startSet();repl.initiate();repl.awaitSecondaryNodes();while(true){sleep(1000);}'
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- ./bin/mongo --nodb --eval 'assert.soon(function(x){try{var d = new Mongo("localhost:${mongod_port}"); return true} catch(e){return false}}, "timed out connection")'
-
- "run replay go_test" :
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
-
- if [ "${TESTING_REPLAY}" = "true" ]; then
- export TOOLS_TESTING_REPLAY="true"
- fi
- ${environment_vars} go test $(buildflags) -ldflags "$(print_ldflags)" ${additional_args} -v > ${filename}.suite
-
-
-pre:
- - command: shell.exec
- params:
- silent: true
- script: |
- set -x
- set -v
- ${killall_mci|pkill -9 mongo; pkill -9 mongodump; pkill -9 mongoexport; pkill -9 mongoimport; pkill -9 mongofiles; pkill -9 mongorestore; pkill -9 mongostat; pkill -9 mongotop; pkill -9 mongod; pkill -9 mongos; pkill -f buildlogger.py; pkill -f smoke.py} >/dev/null 2>&1
- rm -rf src /data/db/*
- exit 0
-
-post:
- # attach.results works for jstests, gotest.parse_files for golang tests
- - command: attach.results
- params:
- file_location: src/github.com/mongodb/mongo-tools/report.json
- - command: gotest.parse_files
- params:
- files: ["src/github.com/mongodb/mongo-tools/testing_output/*.suite"]
- - command: shell.exec
- params:
- silent: true
- script: |
- set -x
- set -v
- ${killall_mci|pkill -9 mongo; pkill -9 mongodump; pkill -9 mongoexport; pkill -9 mongoimport; pkill -9 mongofiles; pkill -9 mongorestore; pkill -9 mongostat; pkill -9 mongotop; pkill -9 mongod; pkill -9 mongos; pkill -f buildlogger.py; pkill -f smoke.py} >/dev/null 2>&1
- exit 0
- - command: shell.exec
- params:
- script: |
- set -x
- set -v
- rm -rf /data/db/*
- exit 0
-
-timeout:
- - command: shell.exec
- params:
- silent: true
- script: |
- set -x
- set -v
- # don't attempt to abort on any distro which has a special way of
- # killing everything (i.e. using taskkill on Windows)
- if [ "${killall_mci}" = "" ]; then
- all_tools="bsondump mongodump mongoexport mongofiles mongoimport mongorestore mongostat mongotop"
- # send SIGABRT to print a stacktrace for any hung tool
- pkill -ABRT "^($(echo -n $all_tools | tr ' ' '|'))\$"
- # git the processes a second or two to dump their stacks
- sleep 10
- fi
-
-
-tasks:
-- name: dist
- depends_on:
- commands:
- - func: "fetch source"
- # bsondump
- - func: "build tool"
- vars:
- tool: bsondump
- - func: "upload tool"
- vars:
- tool: bsondump
- # mongodump
- - func: "build tool"
- vars:
- tool: mongodump
- - func: "upload tool"
- vars:
- tool: mongodump
- # mongoexport
- - func: "build tool"
- vars:
- tool: mongoexport
- - func: "upload tool"
- vars:
- tool: mongoexport
- # mongofiles
- - func: "build tool"
- vars:
- tool: mongofiles
- - func: "upload tool"
- vars:
- tool: mongofiles
- # mongoimport
- - func: "build tool"
- vars:
- tool: mongoimport
- - func: "upload tool"
- vars:
- tool: mongoimport
- # mongorestore
- - func: "build tool"
- vars:
- tool: mongorestore
- - func: "upload tool"
- vars:
- tool: mongorestore
- # mongostat
- - func: "build tool"
- vars:
- tool: mongostat
- - func: "upload tool"
- vars:
- tool: mongostat
- # mongotop
- - func: "build tool"
- vars:
- tool: mongotop
- - func: "upload tool"
- vars:
- tool: mongotop
-
-- name: integration-4.0
- commands:
- - func: "fetch source"
- - command: expansions.update
- - func: "download mongod"
- vars:
- mongo_version: "4.0"
- - func: "start mongod"
- - func: "wait for mongod to be ready"
- - func: "run tool integration tests"
- vars:
- INT_TEST: "true"
-
-- name: integration-4.0-auth
- commands:
- - func: "fetch source"
- # Concat auth args
- - command: expansions.update
- params:
- updates:
- - key: "mongod_args"
- concat: " --auth"
- - key: "auth_username"
- value: "passwordIsTaco"
- - key: "auth_password"
- value: "Taco"
- - key: "create_mongod_users_command"
- value: "db.createUser({ user: '${auth_username}', pwd: '${auth_password}', roles: [{ role: '__system', db: 'admin' }] });"
- - func: "download mongod"
- vars:
- mongo_version: "4.0"
- - func: "start mongod"
- - func: "wait for mongod to be ready"
- - func: "run tool integration tests"
- vars:
- INT_TEST: "true"
- AUTH_TEST: "true"
-
-- name: integration-4.2
- commands:
- - func: "fetch source"
- - command: expansions.update
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "start mongod"
- - func: "wait for mongod to be ready"
- - func: "run tool integration tests"
- vars:
- INT_TEST: "true"
-
-- name: integration-4.2-auth
- commands:
- - func: "fetch source"
- # Concat auth args
- - command: expansions.update
- params:
- updates:
- - key: "mongod_args"
- concat: " --auth"
- - key: "auth_username"
- value: "passwordIsTaco"
- - key: "auth_password"
- value: "Taco"
- - key: "create_mongod_users_command"
- value: "db.createUser({ user: '${auth_username}', pwd: '${auth_password}', roles: [{ role: '__system', db: 'admin' }] });"
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "start mongod"
- - func: "wait for mongod to be ready"
- - func: "run tool integration tests"
- vars:
- INT_TEST: "true"
- AUTH_TEST: "true"
-
-- name: kerberos
- commands:
- - func: "fetch source"
- # Explicitly run ONLY Kerberos tests
- - command: expansions.update
- params:
- updates:
- - key: "args"
- value: "${args} -test.types=kerberos"
- - func: "setup integration test"
- - func: "run tool integration tests"
- vars:
- KERBEROS_TEST: "true"
-
-- name: legacy30
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "3.0"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "run legacy tests"
- vars:
- test_path: "test/legacy30"
- smoke_args: "--authMechanism SCRAM-SHA-1"
-
-- name: format-go
- commands:
- - func: "fetch source"
- - func: "fetch golangci-lint"
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
- PATH=$PATH:$PWD/bin golangci-lint run --disable-all -E gofmt ./...
- exit $?
-
-- name: lint-go
- commands:
- - func: "fetch source"
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- . ./set_goenv.sh
- GOROOT="" set_goenv || exit
- retVal=$(go run vendor/github.com/3rf/mongo-lint/golint/golint.go mongo* bson* legacy/*);
- if [ "$retVal" = "" ]; then exit 0; else echo $retVal; exit 1; fi;
-
-- name: lint-js
- commands:
- - func: "fetch source"
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- PATH="/opt/node/bin:$PATH"
- /opt/node/bin/npm install eslint@3.2
- /opt/node/bin/node node_modules/eslint/bin/eslint.js test/qa-tests/jstests/**/*.js
-
-- name: qa-tests-unstable
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "latest"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - func: "run qa-tests"
- vars:
- resmoke_suite: "core${resmoke_use_ssl}"
- excludes: "${excludes}"
-
-- name: qa-tests-4.2
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - func: "run qa-tests"
- vars:
- resmoke_suite: "core${resmoke_use_ssl}"
- excludes: "requires_unstable,${excludes}"
-
-- name: qa-tests-4.0
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "4.0"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - func: "run qa-tests"
- vars:
- resmoke_suite: "core${resmoke_use_ssl}"
- excludes: "requires_min_mongo_42,requires_unstable,${excludes}"
-
-- name: qa-tests-3.6
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "3.6"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - func: "run qa-tests"
- vars:
- resmoke_suite: "core${resmoke_use_ssl}"
- excludes: "requires_min_mongo_40,requires_min_mongo_42,requires_unstable,${excludes}"
-
-- name: qa-tests-3.4
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "3.4"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - func: "run qa-tests"
- vars:
- resmoke_suite: "core${resmoke_use_ssl}"
- excludes: "requires_min_mongo_36,requires_min_mongo_40,requires_min_mongo_42,requires_unstable,${excludes}"
-
-- name: qa-tests-3.2
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "3.2"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - func: "run qa-tests"
- vars:
- resmoke_suite: "core${resmoke_use_ssl}"
- excludes: "requires_min_mongo_34,requires_min_mongo_36,requires_min_mongo_40,requires_min_mongo_42,requires_unstable,${excludes}"
-
-- name: native-cert-ssl-current
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "fetch tool"
- vars:
- tool: mongoimport
- - func: "fetch tool"
- vars:
- tool: mongoexport
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "fetch tool"
- vars:
- tool: mongostat
- - func: "fetch tool"
- vars:
- tool: mongotop
- - func: "fetch tool"
- vars:
- tool: mongofiles
- - func: "fetch tool"
- vars:
- tool: bsondump
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools/test/qa-tests
- script: |
- set -x
- set -v
- set -e
- chmod +x ../../bin/*
- mv ../../bin/* .
- chmod 400 jstests/libs/key*
- python buildscripts/resmoke.py --suite=native_cert_ssl --continueOnFailure --log=buildlogger --reportFile=../../report.json ${resmoke_args} --excludeWithAnyTags="${excludes}"
-
-- name: qa-dump-restore-with-archiving-current
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "run qa-tests"
- vars:
- resmoke_suite: "restore_archive"
- excludes: "requires_unstable,${excludes}"
-
-- name: qa-dump-restore-with-gzip-current
- depends_on:
- - name: dist
- commands:
- - func: "fetch source"
- - func: "get buildnumber"
- - func: "setup credentials"
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "fetch tool"
- vars:
- tool: mongodump
- - func: "fetch tool"
- vars:
- tool: mongorestore
- - func: "run qa-tests"
- vars:
- resmoke_suite: "restore_gzip"
- excludes: "requires_unstable,${excludes}"
-
-- name: unit
- commands:
- - command: expansions.update
- - func: "fetch source"
- - func: "run tool unit tests"
- vars:
- UNIT_TEST: "true"
- run_coverage: "true"
- - func: "create coverage reports"
- - command: expansions.update
- params:
- updates:
- - key: "coverage_pkg"
- value: "mongoimport"
- - func: "upload html coverage"
- - func: "upload text coverage"
- - command: expansions.update
- params:
- updates:
- - key: "coverage_pkg"
- value: "mongoexport"
- - func: "upload html coverage"
- - func: "upload text coverage"
- - command: expansions.update
- params:
- updates:
- - key: "coverage_pkg"
- value: "mongostat"
- - func: "upload html coverage"
- - func: "upload text coverage"
- - command: expansions.update
- params:
- updates:
- - key: "coverage_pkg"
- value: "mongodump"
- - func: "upload html coverage"
- - func: "upload text coverage"
- - command: expansions.update
- params:
- updates:
- - key: "coverage_pkg"
- value: "mongorestore"
- - func: "upload html coverage"
- - func: "upload text coverage"
-
-- name: vet
- commands:
- - func: "fetch source"
- - command: shell.exec
- type: test
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- go tool vet bsondump legacy mongo*
-
-- name: replay-dist
- commands:
- - func: "fetch source"
- - func: "build tool"
- vars:
- tool: mongoreplay
- - func: "upload tool"
- vars:
- tool: mongoreplay
- - func: "build tool"
-
-- name: replay-sanity_check-4.2
- depends_on:
- - name: replay-dist
- commands:
- - func: "fetch source"
- - func: "fetch tool"
- vars:
- tool: mongoreplay
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "start mongod"
- - func: "wait for mongod to be ready"
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- chmod +x bin/mongoreplay
- echo "Running sanity check"
- PATH=$PATH:$PWD/bin ./mongoreplay/sanity_check.sh -p ${mongod_port}
-
-- name: replay-go_test-4.2
- depends_on:
- - name: replay-dist
- commands:
- - func: "fetch source"
- - func: "fetch tool"
- vars:
- tool: mongoreplay
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_multi_channel.pcap
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_single_channel.pcap
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "start mongod"
- - func: "wait for mongod to be ready"
- - func: "run replay go_test"
- vars:
- filename: playtest
- environment_vars: DB_PORT=${mongod_port}
- additional_args: github.com/mongodb/mongo-tools/mongoreplay
- TESTING_REPLAY: true
-
-- name: replay-sharded_test-4.2
- depends_on:
- - name: replay-dist
- commands:
- - func: "fetch source"
- - func: "fetch tool"
- vars:
- tool: mongoreplay
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_multi_channel.pcap
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_single_channel.pcap
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "create sharded_cluster"
- - func: "run replay go_test"
- vars:
- filename: sharded
- environment_vars: DB_PORT=${mongod_port}
- additional_args: github.com/mongodb/mongo-tools/mongoreplay --run "LiveDB"
- TESTING_REPLAY: true
-
-- name: replay-auth_test-4.2
- depends_on:
- - name: replay-dist
- commands:
- - func: "fetch source"
- - func: "fetch tool"
- vars:
- tool: mongoreplay
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_multi_channel.pcap
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_single_channel.pcap
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "start mongod"
- vars:
- additional_args: --auth
- - func: "wait for mongod to be ready"
- - func: "create auth_user"
- vars:
- mongod_port: ${mongod_port}
- - func: "run replay go_test"
- vars:
- filename: authtest
- environment_vars: AUTH=1 DB_PORT=${mongod_port}
- additional_args: github.com/mongodb/mongo-tools/mongoreplay --run "(LiveDB)|(Authed)"
- TESTING_REPLAY: true
-
-- name: replay-repl_test-4.2
- depends_on:
- - name: replay-dist
- commands:
- - func: "fetch source"
- - func: "fetch tool"
- vars:
- tool: mongoreplay
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_multi_channel.pcap
- - func: "fetch pcap"
- vars:
- pcapFname: getmore_single_channel.pcap
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "create repl_set"
- vars:
- mongod_port: ${mongod_port}
- - func: "run replay go_test"
- vars:
- filename: repltest
- environment_vars: DB_PORT=${mongod_port}
- additional_args: github.com/mongodb/mongo-tools/mongoreplay --run "LiveDB"
- TESTING_REPLAY: true
-
-- name: replay-replay_test-4.2
- depends_on:
- - name: replay-dist
- commands:
- - func: "fetch source"
- - func: "fetch tool"
- vars:
- tool: mongoreplay
- - func: "download mongod"
- vars:
- mongo_version: "4.2"
- - func: "fetch ftdc"
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- chmod +x bin/mongoreplay
- echo "Running replay test"
- PATH=$PATH:$PWD/bin:$PWD/vendor/bin ./mongoreplay/replay_test.sh --verbose --explicit --keep
- - command: shell.exec
- params:
- working_dir: src/github.com/mongodb/mongo-tools
- script: |
- set -x
- set -v
- set -e
- tar czf replay.tar.gz tmp.*
- - func: "upload archive"
- vars:
- filename: replay.tar.gz
- - func: "create timeseries"
- - func: "upload timeseries"
-
-buildvariants:
-
-#######################################
-# Amazon x86_64 Buildvariants #
-#######################################
-
-- name: amazonlinux64
- display_name: Amazon Linux 64
- run_on:
- - amazon1-2018-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: amazonlinux64-enterprise
- display_name: Amazon Linux 64 Enterprise
- run_on:
- - amazon1-2018-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: amazon2
- display_name: Amazon Linux 64 v2
- run_on:
- - amazon2-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: amazon2-enterprise
- display_name: Amazon Linux 64 v2 Enterprise
- run_on:
- - amazon2-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# Debian x86_64 Buildvariants #
-#######################################
-
-- name: debian81
- display_name: Debian 8.1
- run_on:
- - debian81-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: debian81-enterprise
- display_name: Debian 8.1 Enterprise
- run_on:
- - debian81-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: debian92
- display_name: Debian 9.2
- run_on:
- - debian92-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: debian92-enterprise
- display_name: Debian 9.2 Enterprise
- run_on:
- - debian92-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# macOS Buildvariant #
-#######################################
-
-- name: macOS-1014
- display_name: MacOS 10.14
- run_on:
- - macos-1014
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "osx"
- mongo_target: "osx-ssl"
- arch: "osx/x86_64"
- excludes: requires_many_files
- tasks: *macos_tasks
-
-- name: macOS-1014-ssl
- display_name: MacOS 10.14 SSL
- run_on:
- - macos-1014
- expansions:
- <<: *mongod_ssl_startup_args
- <<: *mongo_ssl_startup_args
- mongo_os: "osx"
- mongo_target: "osx-ssl"
- arch: "osx/x86_64"
- build_tags: "ssl"
- excludes: requires_many_files
- tasks: *macos_ssl_tasks
-
-#######################################
-# RHEL x86_64 Buildvariants #
-#######################################
-
-- name: rhel62
- display_name: RHEL 6.2
- run_on:
- - rhel62-small
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "rhel62"
- mongo_edition: "targeted"
- build_tags: ""
- arch: "linux/x86_64"
- integration_test_args: integration
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- tasks: *rhel_x86_64_tasks
-
-- name: rhel62-ssl
- display_name: RHEL 6.2 SSL
- run_on:
- - rhel62-small
- expansions:
- <<: *mongod_ssl_startup_args
- <<: *mongo_ssl_startup_args
- mongo_os: "rhel62"
- mongo_edition: "enterprise"
- build_tags: "ssl"
- edition: ssl
- arch: "linux/x86_64"
- smoke_use_ssl: --use-ssl
- resmoke_use_ssl: _ssl
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- integration_test_args: "integration,ssl"
- USE_SSL: "true"
-
- tasks: *rhel_x86_64_ssl_tasks
-
-- name: rhel62-enterprise
- display_name: RHEL 6.2 Enterprise
- run_on:
- - rhel62-small
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "rhel62"
- mongo_edition: "enterprise"
- build_tags: "ssl sasl gssapi"
- smoke_use_ssl: --use-ssl
- resmoke_use_ssl: _ssl
- arch: "linux/x86_64"
- edition: enterprise
- run_kinit: true
- integration_test_args: integration
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- tasks: *rhel_x86_64_enterprise_tasks
-
-- name: rhel70
- display_name: RHEL 7.0
- run_on:
- - rhel70-small
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: rhel70-enterprise
- display_name: RHEL 7.0 Enterprise
- run_on:
- - rhel70-small
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# SUSE x86_64 Buildvariants #
-#######################################
-
-- name: suse12
- display_name: SUSE 12
- run_on:
- - suse12-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: suse12-enterprise
- display_name: SUSE 12 Enterprise
- run_on:
- - suse12-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# Ubuntu x86_64 Buildvariants #
-#######################################
-
-- name: ubuntu1404
- display_name: Ubuntu 14.04
- run_on:
- - ubuntu1404-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: ubuntu1404-enterprise
- display_name: Ubuntu 14.04 Enterprise
- run_on:
- - ubuntu1404-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: ubuntu1604
- display_name: Ubuntu 16.04
- run_on:
- - ubuntu1604-test
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "ubuntu1604"
- mongo_edition: "targeted"
- build_tags: ""
- arch: "linux/x86_64"
- integration_test_args: integration
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- tasks: *ubuntu_x86_64_tasks
-
-- name: ubuntu1604-ssl
- display_name: Ubuntu 16.04 SSL
- run_on:
- - ubuntu1604-test
- expansions:
- <<: *mongod_ssl_startup_args
- <<: *mongo_ssl_startup_args
- mongo_os: "ubuntu1604"
- mongo_edition: "enterprise"
- build_tags: "ssl"
- edition: ssl
- arch: "linux/x86_64"
- smoke_use_ssl: --use-ssl
- resmoke_use_ssl: _ssl
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- integration_test_args: "integration,ssl"
- USE_SSL: "true"
- tasks: *ubuntu_x86_64_ssl_tasks
-
-- name: ubuntu1604-enterprise
- display_name: Ubuntu 16.04 Enterprise
- run_on:
- - ubuntu1604-test
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "ubuntu1604"
- mongo_edition: "enterprise"
- build_tags: "ssl sasl gssapi"
- smoke_use_ssl: --use-ssl
- resmoke_use_ssl: _ssl
- arch: "linux/x86_64"
- edition: enterprise
- run_kinit: true
- integration_test_args: integration
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- tasks: *ubuntu_x86_64_enterprise_tasks
-
-- name: ubuntu1804
- display_name: Ubuntu 18.04
- run_on:
- - ubuntu1804-test
- expansions:
- build_tags: ""
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: ubuntu1804-enterprise
- display_name: Ubuntu 18.04 Enterprise
- run_on:
- - ubuntu1804-test
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# Windows Buildvariants #
-#######################################
-
-- name: windows-64
- display_name: Windows 64-bit
- run_on:
- - windows-64-vs2017-test
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "windows-64"
- mongo_target: "windows_x86_64-2008plus-ssl"
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- excludes: requires_large_ram
- extension: .exe
- arch: "win32/x86_64"
- preproc_gpm: "perl -pi -e 's/\\r\\n/\\n/g' "
- integration_test_args: "integration"
- tasks: *windows_64_tasks
-
-- name: windows-64-ssl
- display_name: Windows 64-bit SSL
- run_on:
- - windows-64-vs2017-compile
- expansions:
- <<: *mongod_ssl_startup_args
- <<: *mongo_ssl_startup_args
- mongo_os: "windows-64"
- mongo_target: "windows_x86_64-2008plus-ssl"
- build_tags: "ssl"
- edition: ssl
- smoke_use_ssl: --use-ssl
- resmoke_use_ssl: _ssl
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- excludes: requires_large_ram,requires_mongo_24
- extension: .exe
- arch: "win32/x86_64"
- preproc_gpm: "perl -pi -e 's/\\r\\n/\\n/g' "
- integration_test_args: "integration,ssl"
- USE_SSL: "true"
- tasks: *windows_64_ssl_tasks
-
-- name: windows-64-enterprise
- display_name: Windows 64-bit Enterprise
- run_on:
- - windows-64-vs2017-compile
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "windows-64"
- mongo_edition: "enterprise"
- mongo_target: "windows"
- build_tags: "sasl gssapi ssl"
- smoke_use_ssl: --use-ssl
- resmoke_args: --jobs $(grep -c ^processor /proc/cpuinfo)
- resmoke_use_ssl: _ssl
- excludes: requires_large_ram,requires_mongo_24
- edition: enterprise
- extension: .exe
- arch: "win32/x86_64"
- preproc_gpm: "perl -pi -e 's/\\r\\n/\\n/g' "
- integration_test_args: "integration"
- tasks: *windows_64_enterprise_tasks
-
-#######################################
-# ARM Buildvariants #
-#######################################
-
-# MongoDB 3.4 - 4.0
-- name: ubuntu1604-arm64-ssl
- display_name: ZAP ARM64 Ubuntu 16.04 SSL
- run_on:
- - ubuntu1604-arm64-small
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "ubuntu1604"
- mongo_edition: "targeted"
- mongo_arch: "arm64"
- build_tags: "ssl"
- resmoke_use_ssl: _ssl
- excludes: requires_mmap_available,requires_large_ram,requires_mongo_24,requires_mongo_26,requires_mongo_30
- resmoke_args: -j 2
- arch: "linux/arm64"
- edition: ssl
- integration_test_args: integration
- USE_SSL: "true"
- tasks: *ubuntu1604_arm64_ssl_tasks
-
-# MongoDB 4.2+
-- name: ubuntu1804-arm64-ssl
- display_name: ZAP ARM64 Ubuntu 18.04 SSL
- run_on:
- - ubuntu1804-arm64-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "ubuntu1804"
- mongo_edition: "targeted"
- mongo_arch: "aarch64"
- build_tags: "ssl"
- resmoke_use_ssl: _ssl
- excludes: requires_mmap_available,requires_large_ram,requires_mongo_24,requires_mongo_26,requires_mongo_30
- resmoke_args: -j 2
- arch: "linux/arm64"
- edition: ssl
- integration_test_args: integration
- USE_SSL: "true"
- tasks: *ubuntu1804_arm64_ssl_tasks
-
-#######################################
-# Power Buildvariants #
-#######################################
-
-- name: rhel71-ppc64le-enterprise
- display_name: ZAP PPC64LE RHEL 7.1 Enterprise
- run_on:
- - rhel71-power8-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "rhel71"
- mongo_edition: "enterprise"
- mongo_arch: "ppc64le"
- build_tags: 'ssl sasl gssapi'
- resmoke_use_ssl: _ssl
- resmoke_args: -j 4
- excludes: requires_mmap_available,requires_large_ram,requires_mongo_24,requires_mongo_26,requires_mongo_30
- arch: "linux/ppc64le"
- edition: enterprise
- run_kinit: true
- integration_test_args: integration
- tasks: *rhel71_ppc64le_enterprise_tasks
-
-# MongoDB 3.4 - 4.0
-- name: ubuntu1604-ppc64le-enterprise
- display_name: ZAP PPC64LE Ubuntu 16.04 Enterprise
- run_on:
- - ubuntu1604-power8-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- build_tags: 'ssl sasl gssapi'
- tasks:
- - name: dist
- - name: replay-dist
-
-# MongoDB 4.2+
-- name: ubuntu1804-ppc64le-enterprise
- display_name: ZAP PPC64LE Ubuntu 18.04 Enterprise
- run_on:
- - ubuntu1804-power8-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- build_tags: 'ssl sasl gssapi'
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# Z (s390x) Buildvariants #
-#######################################
-
-- name: rhel67-s390x-enterprise
- display_name: ZAP s390x RHEL 6.7 Enterprise
- run_on:
- - rhel67-zseries-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "rhel67"
- mongo_edition: "enterprise"
- mongo_arch: "s390x"
- build_tags: "sasl gssapi ssl"
- resmoke_use_ssl: _ssl
- excludes: requires_mmap_available,requires_mongo_24,requires_mongo_26,requires_mongo_30
- resmoke_args: -j 2
- arch: "linux/s390x"
- edition: enterprise
- run_kinit: true
- integration_test_args: integration
- tasks: *rhel67_s390x_enterprise_tasks
-
-- name: rhel72-s390x-enterprise
- display_name: ZAP s390x RHEL 7.2 Enterprise
- run_on:
- - rhel72-zseries-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: ubuntu1604-s390x-enterprise
- display_name: ZAP s390x Ubuntu 16.04 Enterprise
- run_on:
- - ubuntu1604-zseries-small
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-- name: ubuntu1804-s390x-enterprise
- display_name: ZAP s390x Ubuntu 18.04 Enterprise
- run_on:
- - ubuntu1804-zseries-test
- stepback: false
- batchtime: 10080 # weekly
- expansions:
- build_tags: "sasl gssapi ssl"
- tasks:
- - name: dist
- - name: replay-dist
-
-#######################################
-# Experimental Buildvariants #
-#######################################
-
-- name: ubuntu-race
- stepback: false
- batchtime: 1440 # daily
- display_name: z Race Detector Ubuntu 16.04
- run_on:
- - ubuntu1604-test
- expansions:
- <<: *mongod_default_startup_args
- <<: *mongo_default_startup_args
- mongo_os: "ubuntu1604"
- mongo_edition: "enterprise"
- build_tags: "sasl gssapi ssl"
- arch: "linux/x86_64"
- args: "-buildmode=default -race"
- excludes: requires_large_ram
- integration_test_args: integration
- tasks: *ubuntu_x86_64_race_tasks
-