Skip to content

chore(NODE-6957): add docs for container tests in CI #4550

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 4, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions test/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ about the types of tests and how to run them.
- [Deployed Lambda Tests](#deployed-lambda-tests)
- [Kerberos Tests](#kerberos-tests)
- [AWS Authentication tests](#aws-authentication-tests)
- [Container Tests](#container-tests)
- [TODO Special Env Sections](#todo-special-env-sections)
- [Testing driver changes with mongosh](#testing-driver-changes-with-mongosh)
- [Point mongosh to the driver](#point-mongosh-to-the-driver)
Expand Down Expand Up @@ -651,6 +652,39 @@ Choose your AWS authentication credential type and export the `AWS_CREDENTIAL_TY

1. Run the `bash .evergreen/run-mongodb-aws-tests.sh`.

### Container Tests

It may become required to run tests or debug code inside a live Azure or GCP container. The best way to do this is to leverage
our existing integration test suite and run Evergreen patches against a single integration test.

_Note that in cases where the tests need to run longer than one hour to ensure that tokens expire
that the mocha timeout must be increased in order for the test not to timeout._

## GCP

1. Add a new GCP prose test to `test/integration/auth/mongodb_oidc_gcp.prose.06.test.ts` that mimics the behaviour that
needs to be tested.
2. Ensure that the test has the `only` attribute so only it will run.
3. For additional Node.js options (like HTTP debug), add them to `GCPOIDC_TEST_CMD` in `.evergreen/run-oidc-tests-gcp.sh`
4. Create an evergreen patch and schedule only the `oidc-auth-test-gcp-latest` variant.

## Azure

1. Add a new Azure prose test to `test/integration/auth/mongodb_oidc_azure.prose.05.test.ts` that mimics the behaviour that
needs to be tested.
2. Ensure that the test has the `only` attribute so only it will run.
3. For additional Node.js options (like HTTP debug), add them to `AZUREOIDC_TEST_CMD` in `.evergreen/run-oidc-tests-azure.sh`
4. Create an evergreen patch and schedule only the `oidc-auth-test-azure-latest` variant.

## AWS

1. Add a new AWS prose test to `test/integration/auth/mongodb_oidc_k8s.prose.07.test.ts` that mimics the behaviour that
needs to be tested.
2. Ensure that the test has the `only` attribute so only it will run.
3. For additional Node.js options (like HTTP debug), add them to `K8S_TEST_CMD` in `.evergreen/run-oidc-tests-k8s.sh`
4. Create an evergreen patch and schedule only the `oidc-auth-test-k8s-latest-aks` variant.


### TODO Special Env Sections

- TLS
Expand Down