Database Continuous Integration (CI) is often the final piece of the CI story for a project and with good reason; it is hard to do and much harder to have something your team will describe as ‘great’.

Having worked with numerous companies over the years to implement Redgate’s Compliant Database DevOps solution, I have seen many of the challenges that teams face with database changes and the trade offs between moving fast and maintaining quality.

Database bottlenecks

There is no way to escape database bottlenecks. Even with a perfect database development process, database CI and automated database deployments. Your production target is…

We’ve reached the stage with Spawn where the application is stable and we are actively recruiting new users through our open beta. With this extra usage, and coming from other parts of the world we now have the problem of user operations being interrupted by our deployments. With the vast majority of use previously coming from our internal teams, scheduling deployments outside of UK working hours or communicating deployments to our teams was an adequate solution. …

Testing Spawn has always been a problematic; with so many moving parts and reliance on technologies such as Kubernetes, unit tests will never be enough to give us confidence that our application is production quality. This blog post will take a look at our application, the problems and constraints when testing as well as what we have done in the last few months to take a flaky 2.5–3 hour test run to a more consistent 25–35 minute run that is much more representative of production.

Our application

Spawn is a cloud hosted service that delivers databases on demand for dev, CI and…

There’s something about the human condition that gives us a love of speed. Faster vehicles. Faster computers. Faster internet. We’ve been chasing speed and efficiency for millenia, and so it’s natural for that desire to make its way into our development practices.

Development containers are part of a Visual Studio Code extension that allows you to easily develop your applications inside a Docker container. This is a wonderful tool for speeding up your development cycle. By utilizing them, we get a few instantly recognizable benefits:

1. No need to install frameworks and dependencies locally. These are included in your container…

Matthew Flatt

Research Engineer at Redgate Software

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store