When its RDBMS, I used Liquibase to deploy the changes in the target database. That has support for multi-tenancy & roll back to different versions.
In Mongo, I tried to find the equivalent library and found the below.
- https://github.com/mongobee/mongobee - Requires java skillset. Last update was 2 Years ago.
- https://github.com/coldze/mongol - Stick to just Json. Low reputation.
- https://github.com/mongeez/mongeez - Kind of promising but very outdated.
- https://github.com/tj/node-migrate - Done in jS, has reputation better than others, but lot of learning required to be familiar with this framework IMO.
For me the criteria are,
- Upgrade from one version to any new version must be possible.
- Downgrade from the current version to any old version must be possible ( should have the feasibility to do the complex migration. Ex, refer to the different collections and assign a computed value from the output.
- Must be able to extract the changes before execution. For verification purposes mostly. Otherwise, during new build deployment, the changes alone to be executed.
- Easy to adopt, so a lot of learning should be avoided.
You have some other working concept, eager to know. Thanks,
A.