SSDT-Continuous-Deployment-Project-Template-Helpers
This is a Visual Studio extension that add some helpers to the SSDT-Continuous-Deployment-Project-Template
Contents
The quick wrapper command for datapatchesIn order to capture changes into the migration table a datapatch should be applied through sp_execute_cd_script. Using the quick wrapper the user can create a datapatch as a plain script with DML statements (INSERT/UPDATE/DELETE) and transform it as parameter to sp_execute_cd_script Constraints to qualify for wrapping
The change promoter of common datapatches to sibling folders that aggregates the fixes for different deploymentsIf the base schema is distributed to several independent databases, this tool will help promoting the datapatch to several sibling folders. It will help to add a SQLCMD reference of the selected script to the needed matching destinations. How it worksIt works with two naming conventions:
Promoting "*.all.sql" files.DemoConstraints for a valid ALL promotion
Promoting "*.sub.sql" files.DemoConstraints for a valid FILTERED SUBset promotion
Advantages
Requirements
InstallationInstall from the Visual Studio Marketplace Demo solutionA demo database project structure can be downloaded from https://github.com/matei-tm/SSDT-Continuous-Deployment-Project-Template-Helpers/tree/develop/examples/SSDT-CICD-Demo ChangelogPlease see project's changelog DisclaimerImportant: This extension, being a code generator, will change files in the targeted database project. Use a suitable source control system (eg, git) to protect your code from transient changes. The datapatch wrapper module updated filesThe helper updates, in the current SSDT project, the current sql file opened in the editor tab of Visual Studio The change promoter updated filesThe helper updates, in the current SSDT project, all the files matching the pattern "*.main.datapatch.sql" contained in all the folders that are at the same level (siblings) as the folder that contains the "*.all.sql" file (the file used for the promotion). Although I should not overwrite any file, other than those mentioned, during this process, I do not provide any warranty or take any responsibility for the loss of data. |