SQL Clone
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 


Continuous Integration with Microsoft SQL Server


Continuous Integration with Microsoft SQL Server

Author
Message
joao.osorio
joao.osorio
SSC Veteran
SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)

Group: General Forum Members
Points: 259 Visits: 62
Comments posted to this topic are about the item Continuous Integration with Microsoft SQL Server
funbi
funbi
SSCrazy
SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)SSCrazy (2.9K reputation)

Group: General Forum Members
Points: 2937 Visits: 1056
"This scenario has a limitation worth pointing out. It suitable for schema changes only, with no regard for data and, more importantly, constraints over the data."

Unless these points are addressed then we haven't really solved anything.
Pascal J v Vuuren
Pascal J v Vuuren
SSC Veteran
SSC Veteran (218 reputation)SSC Veteran (218 reputation)SSC Veteran (218 reputation)SSC Veteran (218 reputation)SSC Veteran (218 reputation)SSC Veteran (218 reputation)SSC Veteran (218 reputation)SSC Veteran (218 reputation)

Group: General Forum Members
Points: 218 Visits: 183
Thanks for sharing. And yes, we're also doing a fair bit of CI in the database space. We have a dedicated environment for that, but follow a similar process for standing up an Alpha testing environment using near production data.

We use TFS for version control and builds, with a customised build template that will handle the standard stack (SSDB, SSAS, SSRS, SSIS). We run two templates, one for a build of artefacts and one for deployment + testing of those artefacts, using the same Powershell script + Manifest for deployment to higher environments. We use BDD (Specflow + custom data generation and testing schemas for data generation off features) to exercise the product features; all green on the Test Manager Test suite allows deployment artefacts to get generated for release.

Pickles on the end of the stream for living documentation, although getting business users to read that is still a chore. Still, it shows us per build how our tests are and what has failed and it has saved our bacon a few times when building new features and having to remember how something worked.

Next step is to include the deployment documents in the build and start the next phase for CD.
joao.osorio
joao.osorio
SSC Veteran
SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)

Group: General Forum Members
Points: 259 Visits: 62
Thank you for your comment. I wouldn't go as far as state that it doesn't solve anything. You can automate and track schema changes on individual files, including constraints.

What you can't do is apply new constraints, which are detected by the SSDT, without inserting the reference data previously.

Also, you can compare target tables on two databases and generate DML scripts using Visual Studio 2015 with SQL Server Data Tools.
jackdleach
jackdleach
SSC Rookie
SSC Rookie (48 reputation)SSC Rookie (48 reputation)SSC Rookie (48 reputation)SSC Rookie (48 reputation)SSC Rookie (48 reputation)SSC Rookie (48 reputation)SSC Rookie (48 reputation)SSC Rookie (48 reputation)

Group: General Forum Members
Points: 48 Visits: 42
I had my hopes up, right up until the end where it's noted that constraints aren't handled.

So, just another half baked solution. Nice approach, but still not there.

----
Jack D. Leach
www.dymeng.com
Dave Semmelink
Dave Semmelink
Valued Member
Valued Member (63 reputation)Valued Member (63 reputation)Valued Member (63 reputation)Valued Member (63 reputation)Valued Member (63 reputation)Valued Member (63 reputation)Valued Member (63 reputation)Valued Member (63 reputation)

Group: General Forum Members
Points: 63 Visits: 25
As pointed out, this might not be a complete solution for Continuous Integration, but it is a great starting point, and it gave me some ideas of how to proceed.
Gerald Britton
Gerald Britton
SSCertifiable
SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)SSCertifiable (7.2K reputation)

Group: General Forum Members
Points: 7187 Visits: 1782
Just to quickly answer the final question:

So, is anyone doing CI with SQL server yet?


These days, it seems everyone is doing CI with SQL Server. Redgate (sponsors of this forum) have a suite of products dedicated to just that. Just click the Redgate link at the top right of any page on this forum then click on DLM. (Disclaimer: I do not work for Redgate and we are not using DLM where I work)

Redgate are hardly alone in this space! There are plenty of other players and lots of home-grown solutions.

Gerald Britton, MCSE-DP, MVPToronto PASS Chapter
Steve Jones
Steve Jones
SSC Guru
SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)

Group: Administrators
Points: 331459 Visits: 20112
Suzy T (6/8/2016)
"This scenario has a limitation worth pointing out. It suitable for schema changes only, with no regard for data and, more importantly, constraints over the data."

Unless these points are addressed then we haven't really solved anything.


I don't know that's true. Plenty of people can manage data separately and don't worry about moving it between environments. I've had a number of applications that didn't every do this.

Data and schema are separate, and while it's nice to be able to build and test both, getting at least one done is a good first step.

Follow me on Twitter: @way0utwest
Forum Etiquette: How to post data/code on a forum to get the best help
My Blog: www.voiceofthedba.com
Steve Jones
Steve Jones
SSC Guru
SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)SSC Guru (331K reputation)

Group: Administrators
Points: 331459 Visits: 20112
g.britton (6/8/2016)
Just to quickly answer the final question:

So, is anyone doing CI with SQL server yet?


These days, it seems everyone is doing CI with SQL Server. Redgate (sponsors of this forum) have a suite of products dedicated to just that. Just click the Redgate link at the top right of any page on this forum then click on DLM. (Disclaimer: I do not work for Redgate and we are not using DLM where I work)

Redgate are hardly alone in this space! There are plenty of other players and lots of home-grown solutions.


I'll say the Redgate solutions for CI/CD are pretty well done. Not perfect, but we handle lots of things, including data and schema changes. We handle constraints. We can manage renames, table/column splits, partitioning, data changes in migrations and more.

There are two ways of doing this. One with with SQL Source Control and the DLM Automation Suite. The other is with ReadyRoll. Both of these lend themselves to good automation and CI/CD processes.

Disclosure: I work for Redgate Software

Follow me on Twitter: @way0utwest
Forum Etiquette: How to post data/code on a forum to get the best help
My Blog: www.voiceofthedba.com
joao.osorio
joao.osorio
SSC Veteran
SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)SSC Veteran (259 reputation)

Group: General Forum Members
Points: 259 Visits: 62
Steve Jones - SSC Editor (6/9/2016)
g.britton (6/8/2016)
Just to quickly answer the final question:

So, is anyone doing CI with SQL server yet?


These days, it seems everyone is doing CI with SQL Server. Redgate (sponsors of this forum) have a suite of products dedicated to just that. Just click the Redgate link at the top right of any page on this forum then click on DLM. (Disclaimer: I do not work for Redgate and we are not using DLM where I work)

Redgate are hardly alone in this space! There are plenty of other players and lots of home-grown solutions.


I'll say the Redgate solutions for CI/CD are pretty well done. Not perfect, but we handle lots of things, including data and schema changes. We handle constraints. We can manage renames, table/column splits, partitioning, data changes in migrations and more.

There are two ways of doing this. One with with SQL Source Control and the DLM Automation Suite. The other is with ReadyRoll. Both of these lend themselves to good automation and CI/CD processes.

Disclosure: I work for Redgate Software


Thank you for the reply, I'm familiar with these tools but still haven't really tried them out.

For the given constraints limitation, you can address it manually, reordering script execution:
1 - Create the new table
2 - Insert new reference data
3 - Create new column on old table with a default value that exists on new table column
4 - Create FK constraint on old table

The issue here is that we'd like an automated process and not havr to re-order scripts manually.

Does Redgate CI/CD tool perform this re-ordering automatically?
Go


Permissions

You can't post new topics.
You can't post topic replies.
You can't post new polls.
You can't post replies to polls.
You can't edit your own topics.
You can't delete your own topics.
You can't edit other topics.
You can't delete other topics.
You can't edit your own posts.
You can't edit other posts.
You can't delete your own posts.
You can't delete other posts.
You can't post events.
You can't edit your own events.
You can't edit other events.
You can't delete your own events.
You can't delete other events.
You can't send private messages.
You can't send emails.
You can read topics.
You can't vote in polls.
You can't upload attachments.
You can download attachments.
You can't post HTML code.
You can't edit HTML code.
You can't post IFCode.
You can't post JavaScript.
You can post emoticons.
You can't post or upload images.

Select a forum








































































































































































SQLServerCentral


Search