Recently I’ve been working on a Sitecore client project where we had custom facets for xDB. Since writing and reading to xDB goes through xConnect, our custom model needs to be deployed to xConnect. The problem however is that custom xConnect models need to be deployed to multiple locations in xConnect, so every time you introduce a new Facet, the custom xConnect model(s) need to be rebuild and deployed.
By default this is Model deployment is a manual process that involves copying a JSON representation of a model to all instances of xConnect. As you can see it can become a tedious job to do this manually over and over again. So when I looked around the only automated thing I found was in the abandoned Sitecore.HabitatHome.Utilities project, which didn’t work anymore for Sitecore 9.3 and higher.
So I decided to adjust what was there and open source it, and make it more generic so more people can benefit from this. By the way: it’s using SIF!
Introducing the Sitecore SIF Deploy custom xConnect models project
Hereby I want to introduce you to the project on Github. Make sure to check it out if you need to deploy custom xConnect models.
Just drop your custom xConnect models into the Models folder and all you have to do is run the DeployXConnectModels.ps1 script to have them deployed onto your xConnect instance. Follow the readme instructions of course before you begin 😉