MongoDB is dual-licensed with AGPL (the engine) and ASL 2.0 (the drivers). In a nutshell, merely using MongoDB through the drivers does not dictate to release your source code (due to drivers’ ASL 2.0 license).
AFAIK, only if you directly call the mongo engine, you need to give out your code that’s using it (but still not the application code that talks to mongo via the drivers).
Check this MongoDB blog entry: http://blog.mongodb.org/post/103832439/the-agpl
What if you deploy (install, configure) mongodb in your deployment scripts. And then start/stop/restart those processes. And then maybe create some users via mongo shell. Do you need to publish your deployment scripts?
(A bonus question: how can they publish the drivers as ASL 2.0 if those drivers use the AGPL-licensed part of MongoDB over the network? Because they are authors of both?)
Cue the usual “I’m not a lawyer” disclaimer.
This saying, GPL licenses aim to protect the users right to study the code of a piece of software, even if modified and redistributed. AGPL adds another channel of “redistribution” by explicitly stating that exposing the software to use through network systems entails the same consequences as redistributing it.
In your case, however, you are NOT modifying the MongoDB software. You merely creating related, but distinct, works that happen to interact with MongoDB. Just like a web application which uses Mongo as its storage engine, your deployment script are therefore NOT required to be published.
Relevant quote from the linked blog post is here:
The copyleft applies only to the mongod and mongos database programs.
You aren’t modifying either of those two programs, so the copyleft doesn’t apply.
5