automated build and test (for continuous integration) - david atkinson - sql in the city 2013
DESCRIPTION
SQL In The City presentation from David Atkinson, Red Gate Software.The What, Why and How to automate your software build and test for continuous database integration.TRANSCRIPT
1. Database objects/scripts aren’t in version control
2. Database objects/scripts are in version control
3. An automated build system exists to build and test the database
4. An automated release system is used to promote your database to your environments
1. Database objects/scripts aren’t in version control
2. Database objects/scripts are in version control
3. An automated build system exists to build and test the database
4. An automated release system is used to promote your database to your environments
1. Database objects/scripts aren’t in version control
2. Database objects/scripts are in version control
3. An automated build system exists to build and test the database
4. An automated release system is used to promote your database to your environments
1. Database objects/scripts aren’t in version control
2. Database objects/scripts are in version control
3. An automated build system exists to build and test the database
4. An automated release system is used to promote your database to your environments
1. Database objects/scripts aren’t in version control
2. Database objects/scripts are in version control
3. An automated build system exists to build and test the database
4. An automated release system is used to promote your database to your environments
1. Database objects/scripts aren’t in version control
2. Database objects/scripts are in version control
3. An automated build system exists to build test the database
4. An automated release system is used to promote your database to your environments
•
–
–
–
–
•
•
•
–
•
–
•
–
–
–
–
–
•
•
•
•
•
•
Custom Migration Scripts
An introduction
Generating a deployment script
1
12
How changes are made
1 2 3 4 5 6
modify procedure
create table
drop view
create trigger
delete column
1 2 3 4 5 6
modify procedure
create table
drop view
create trigger
delete column
7 8 9 10 11 12
modify trigger
create view
create procedure
create function
drop procedure
modify function
How changes are made
How SQL Compare sees the world
1
12
But not all changes can be inferred
1 2 3 4 5 6
7 8 9 10 11 12
table rename
column rename add NOT NULL
column without DEFAULT
split table
merge table
data transformation
data motion
merge column
split column
SQL Compare and SQL Source Control
support custom migration scripts
1 2 3 4 5 6
7 8 9 10 11 12
Custom migration script
Deployment script with migration
scripts
1
12
1
12
1’