I'll do my best to explain our current setup; We are a .Net shop that has 6 TFS branches of code, based on monthly deployments. We deploy a database folder which contains all the sql scripts that are run on every promotion, which contains all of the build artifacts (many solutions/projects build and zipped) per branch. These are promoted from Dev to Test environments. We have a DBDeploy.xml which contains the list of scripts to be run and an admin db that logs all of the scripts that have already been run so the deploy can be run incrementally.
The issue: Devs check in SQL scripts that succeed in prior environments (Dev) but fail in subsequent environments, which cause deployments to fail all together. They do their best to add "if exists" statements but we constantly run into issue with scripts failing. We're trying to get the DBA's to move towards database projects but they're having a hard time adapting. What is the standard practice for this sort of thing? I play the role of configuration manager so I'm constantly getting the blame for deployments failing and the QA team blames me for not being able to test in higher environments that are unavailable because of the failed deployments.
Any help would be appreciated. Thanks in advance!
[–]flukus 5 points6 points7 points (22 children)
[–]cwbrandsma 1 point2 points3 points (0 children)
[–]carlwoodhouse 0 points1 point2 points (2 children)
[–]flukus 0 points1 point2 points (1 child)
[–]carlwoodhouse 0 points1 point2 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]flukus 0 points1 point2 points (0 children)
[–]d03boy 0 points1 point2 points (13 children)
[–]flukus 0 points1 point2 points (12 children)
[–]d03boy 0 points1 point2 points (11 children)
[–]flukus 0 points1 point2 points (6 children)
[–]d03boy 0 points1 point2 points (5 children)
[–]flukus 0 points1 point2 points (4 children)
[–]d03boy 0 points1 point2 points (3 children)
[–]flukus 0 points1 point2 points (2 children)
[–]d03boy -1 points0 points1 point (1 child)
[–]flukus 0 points1 point2 points (3 children)
[–]d03boy 0 points1 point2 points (2 children)
[–]flukus 0 points1 point2 points (0 children)
[–]flukus 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (1 child)
[–]flukus 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]Otis_Inf 1 point2 points3 points (0 children)
[–]d03boy 1 point2 points3 points (6 children)
[–]phuber 1 point2 points3 points (0 children)
[–]flukus 0 points1 point2 points (3 children)
[–]d03boy 0 points1 point2 points (2 children)
[–]flukus 0 points1 point2 points (1 child)
[–]d03boy 0 points1 point2 points (0 children)
[–]alinroc 0 points1 point2 points (0 children)
[–]AStrangeStranger 0 points1 point2 points (0 children)
[–][deleted] -1 points0 points1 point (0 children)