Using other database type¶
Context¶
Open orchestra uses by default a MongoDB database. If you want to use another type of database like SQL, you will need to tune some settings and to replace some files.
Configuration: object manager¶
By default, Open Orchestra uses Doctrine ODM to map database documents to objects. If you want to
use another document manager, the new manager must implement Doctrine\Common\Persistence\ObjectManager
.
You also have to declare it in the configuration:
open_orchestra_base_bundle:
object_manager: namespace/of/objectManager
Override mongo documents and repositories¶
Some bundles have dependencies to mongoDB. The way to replace them depends on the type of dependencies.
Complete replacement of the package¶
The open-orchestra-model-bundle
and open-orchestra-base-api-mongo-model-bundle
are mongoDB
implementations of Open Orchestra entities. To use another database, you have to replace these
packages by new ones adapted to your database.
Bundle replacement¶
Some bundles included in Open Orchestra packages are model bundle developped for mongoDB. To use
another database, these bundles must not be activated in the appKernel
and must be replaced by
yours. These are:
open-orchestra-workflow-function-bundle
:
- WorkflowFunctionAdminBundle
- WorkflowFunctionModelBundle
open-orchestra-media-bundle
:
- MediaModelBundle
open-orchestra-cms-bundle
- GroupBundle
- ModelLogBundle
open-orchestra-user-bundle
- UserModelBundle