graph TB
start -->|"When triggered by CI or Draft Tag"| compile[Compile]
compile --> tests[Tests]
compile -->|"generates"| binary[Binary Executable]
binary -->|"is uploaded to"| s3a[Evergreen S3]
compile -->|"when Compile is successful"| package[Package]
compile -->|"when Compile is successful"| e2e[E2E Tests]
package -->|"generates"| distributable[Distributable Package]
distributable -->|"is uploaded to"| s3b[Evergreen S3]
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const fs = require('fs'); | |
const path = require('path'); | |
const { execSync } = require('child_process'); | |
const _ = require('lodash'); | |
const fsExtra = require('fs-extra'); | |
const fileList = execSync('git ls-files').toString().trim().split('\n') | |
function removeDuplicateDebugEntries(text) { | |
if (!text.includes("compass*")) { | |
return text; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env node | |
const { Command } = require('commander'); | |
const fs = require('fs'); | |
const colorConvert = require('color-convert'); | |
const colorDiff = require('color-diff'); | |
const isBinaryFileSync = require("isbinaryfile").isBinaryFileSync; | |
const chalk = require('chalk'); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env node | |
const { promises: fs } = require("fs"); | |
const path = require("path"); | |
const { program } = require("commander"); | |
const chronoNode = require("chrono-node"); | |
const { pick } = require("lodash"); | |
const fecha = require("fecha"); | |
const { gunzip: gunzipCb, constants: zlibConstants } = require("zlib"); | |
const { promisify } = require("util"); | |
const { glob: globCb } = require("glob"); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM ubuntu:20.04 | |
EXPOSE 27017 | |
ARG MONGODB_VERSION=6.0.0-rc4 | |
RUN apt-get update -y && apt-get install -y \ | |
curl libcurl4 libgssapi-krb5-2 libldap-2.4-2 libwrap0 \ | |
libsasl2-2 libsasl2-modules libsasl2-modules-gssapi-mit \ | |
snmp openssl liblzma5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { union, unionBy } from 'lodash'; | |
import { AnyError, MongoClient, ReadPreference } from 'mongodb'; | |
import { | |
isEnterprise, | |
getGenuineMongoDB, | |
getDataLake, | |
} from 'mongodb-build-info'; |
This is a POC fix for some kerberos issues in Compass.
Compass crashes after a successful authentication to kerberos.
This is caused by the fact that the authentication with kerberos gets triggered multiple times inside the driver (to start the connection pool?), however the GSSPI code is not meant to deal with concurrent calls as that seems to break the state of the authentication completely.
Looks like the kerberos module itself could be not re-entrant.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
generate_file() { | |
if [ ! -f "$1" ]; then | |
echo "$2" > "$1" | |
fi | |
} | |
# --- | |
# package.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { MongoClient } = require('mongodb'); | |
const assert = require('assert'); | |
const HOST = 'centos-east.win.mongodb-field.com'; | |
const PORT = '27017'; | |
const PRINCIPAL = '[email protected]'; | |
const GSSAPI_SERVICE_NAME = 'mongo-ent'; | |
describe('MongoClient authentication with kerberos', () => { | |
const options = { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const { MongoClient } = require('mongodb'); | |
const assert = require('assert'); | |
describe('mongodb cursor issue', function() { | |
this.timeout(2000); | |
let client; | |
let dbName; | |
let db; | |
let collection; |
NewerOlder