SQLBits 2018

SQL Server and Continuous Integration

Continuous Integration is a method of working with source control that is designed to ease the process of merging code. You will see how a CI approach to database development can reduce the time to go from an idea to production.
It's understandable that developers love to work in separate code branches, but this can create painful complications if not managed.

Do you dread large merge conflicts when integrating code?
Continuous Integration is a method of working where we merge and fully test our code multiple times a day. This is only possible with a high level of automation.

I'll be discussing the tools I use to achieve this automation when developing SQL Server databases.

Finding automating the deployment of database changes hard?
ReadyRoll is a tool that allows you to test deployments during development.

How do you know your database change won’t affect something you haven’t thought of?
tSQLt and Pester unit tests can put your mind at rest.

Having trouble keeping your test environments in sync with production?
Docker enables us to fix this with infrastructure as code

You will see how a CI approach to database development can increase team efficiency and reduce the time to go from an idea to production.