Crazy question - MSCRM?

Hi guys, we are avid Liquibase users for our Oracle based application. We have a group working on an application that plugs into MSCRM. This application has to create/maintain custom objects in the CRM and we’re struggling with how to maintain those objects across multiple releases. MSCRM has an API that we use to create these objects, and I’ve started to wonder if we might be able to represent this as a database type and just use Liquibase to maintain these objects. Is it possible to add support for a new data store as a plugin?

Thanks Nathan, that’s kind of what I was thinking. We update MSCRM through an API, not directly via SQL so we’d have to write our own classes. The biggest question in my mind that wasn’t immediately clear to me from the docs is whether we could add a new database type via extensions. I’ll check out the change extension support that you mentioned.

Scott Mitchell (

I’m sure it could be done. Liquibase really just needs the databasechangelog table to track applied changesets, and from that point you can either fall back to SQL if that is supported or use custom change classes (or the change extension support from to build whatever you need.

I’ve not really worked with MSCRM to know exactly how you could best set it up, but it should definitely be doable.