Continuing on with my efforts to make the SSDT Deployment Report more useful, I’m pleased to say that I’ve added reporting on any alerts that appear in the Deployment Report. Let’s take a look at a report that has warnings in it -

<?xml version="1.0"?>
        <Alert Name="CreateClusteredIndex">
            <Issue Value="Primary Key: unnamed constraint on [dbo].[TestTwo]"/>
        <Alert Name="DataIssue">
            <Issue Value="The table [dbo].[TestThree] is being dropped, data loss could occur." Id="1"/>
        <Operation Name="Drop">
            <Item Value="Permission" Type="SqlPermissionStatement"/>
            <Item Value="Permission" Type="SqlPermissionStatement"/>
            <Item Value="[dbo].[TestThree]" Type="SqlTable">
                <Issue Id="1"/>
        <Operation Name="Create">
            <Item Value="[dbo].[TestOne]" Type="SqlTable"/>
            <Item Value="Primary Key: unnamed constraint on [dbo].[TestTwo]" Type="SqlPrimaryKeyConstraint"/>

The potential changes can cause data loss, as well as create an unamed constraint. The unnamed object is not the worst thing in the world, bad practice maybe, but potential data loss can be a Very Bad Thing indeed, leading to Potential Job Loss (I kid).

So if we were to run PoshSSDTBuildDeploy and generate a deployment report, the output will look like this -


and we can clearly see that there are two alerts. I’ve yet to add the id to the tables being outputted; would be good to join these tables perhaps? But not yet put much effort into figuring out how to do this…

Latest version is now on PowerShellGallery. PoshSSDTBuildDeploy