SQL Change Automation 4

Continuous Integration and Continuous Delivery with SQL Change Automation

SQL Change Automation helps apply continuous integration (CI) and continuous delivery (CD) to database development. SQL Change Automation provides a set of PowerShell cmdlets which can automate the build and release process. There are also add-ons for some build and release systems that wrap the functionality provided by the PowerShell components.

Typical SQL Change Automation pipeline and workflow

A typical SQL Change Automation pipeline might look like this:

Multi server image

And a typical workflow might look like this:

  • Make changes to the development database using any SQL Server management tool, for instance SSMS
  • Capture those changes in a SQL Change Automation project using the SSMS add-in or Visual Studio extension on the Client PC
  • Commit and push the SQL Change Automation project to the version control server using any version control client, for instance Git
  • The CI server linked to version control uses SQL Change Automation to build a deployment package
  • The deployment package is transferred to the release management server
    • A mechanism to transfer the build artifacts from the CI server to the release management server is necessary, for instance a NuGet feed
  • When it's time to release, the release management server uses SQL Change Automation to deploy the package to a production environment

SQL Source Control and SQL Change Automation

It's possible to use the build and release features provided by SQL Change Automation with existing SQL Source Control projects.

For more information about how SQL Source Control relates to SQL Change Automation, see projects.

Didn't find what you were looking for?