-
Type: Task
-
Resolution: Unresolved
-
Priority: Unknown
-
None
-
Affects Version/s: None
-
Component/s: None
Use Case
As a... engineer
I want... to support mongoose CSFLE/QE integration tests
So that... I can ensure that mongoose supports CSFLE/QE
Acceptance Criteria
Implementation Requirements
- Add tooling in Mongoose that uses drivers-evergreen-tools to set up a cluster
- Latest server version, sharded cluster, auth enabled, only shared library
- All tests with local KMS providers
- Set up a new Github action that starts a cluster configured for FLE and runs the encryption test suite
- Only test on linux, no need to test cross-platform
- Run GHA on PR open to main and commit to main, maybe remove the PR trigger after FLE work is done.
- (note: we need to install mongodb-client-encryption as package for this test run)
- Update any testing documentation in Mongoose to include instructions about how to test with the new test suite and how to use the new cluster setup tooling
- Create a new test suite for encryption tests
- This test suite must NOT run during regular Mongoose test runs (omit from npm test).
- This test suite requires FLE to be enabled
- Add a test that ensures that autoEncryption is set on the cluster
- Create an mongodb autoencrypted client and encrypt something
Reference:
https://github.com/mongodb-js/zstd/blob/NODE-6539/.github/workflows/test.yml
Testing Requirements
- Create a new test directory (or file) to hold encryption tests and set up infrastructure to run it (and don’t run it during the regular CI runs
- Add a test that ensures that autoEncryption is set on the cluster
- Create an mongodb autoencrypted client and encrypt something