Our SaaS solution has a model where each customer has a dedicated Azure SQL Database and multiple environments (so 3 databases per customers). We are currently using liquibase to apply all our SQL changes, and this is working great but we are at the point where we are being hit with deployment scalability issues. We currenlty run Liquibase as a CLI task from bash, and run a single Azure DevOps job per database. We are only able to parallelize by 25 jobs at a time which is resulting in long deployment times for >400 databases. I want to somehow parallelize this so a single job can simultaneously execute multiple liquibase processes against multiple databases. I know we could do this using bash scripting and looping through the databases and running each as a background process, but i’m wondering if this is the best way to do this or others are running similar processes. The challenges I see are how we would monitor the active deployments.
Alternatively has anyone written a utility that uses liquibase to solve a similar issue. Looking for inspriation from the community.