elsa-workflows / elsa-workflows/elsa-core

CosmosDB MongoDB API Compatibility

Open
#6,832 3 comments 0 reactions 0 assignees View on GitHub
triaged
Dominant language
C#
Stars
7.9k
Forks
1.5k
Avg merge
15h 22m
Merged PRs (30d)
114

Description

## Feature Request

### Problem Overview
**Is your feature request related to a problem? Please describe.**
I’d like to build a fully Azure-native app using Cosmos DB’s MongoDB API instead of relying on MongoDB Atlas. At the moment, the existing MongoDB persistence module doesn’t support the Cosmos DB MongoDB API well.

### Proposed Solution
**Describe the solution you'd like**
Ideally, the existing MongoDB persistence module could be updated to support Cosmos DB by introducing a new configuration variable (e.g. IsCosmosDb, defaulting to false to avoid breaking changes). When set to true, this would allow the module to adjust its behaviour to accommodate the differences in Cosmos DB’s implementation of the MongoDB API — especially around index handling.

### Alternative Solutions
**Describe alternatives you've considered**
To further reduce the risk of breaking changes, a separate persistence module (e.g. CosmosMongoDb) could be created specifically for Cosmos DB using the MongoDB API.

### Use Cases
**Identify potential use cases**
This would benefit users who want to keep their entire solution on Azure, making better use of native services and supporting more streamlined Infrastructure-as-Code (IaC) deployments.

### Impact of Feature
**Explain the potential impact**
Enabling Cosmos DB support would unlock fully Azure-native architectures, improve automation potential, and make infrastructure governance easier.

### Visuals and Mockups
**Provide any visuals**
The module would behave similarly to the existing MongoDB implementation but with Cosmos DB MongoDB API compatibility.

### Additional Context
**Add any other context**
N/A

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.