PublishDacPac
1.1.1
Publish-DacPac allows you to deploy a SQL Server Database DACPAC to a SQL Server instance using a DAC Publish Profile.
SSDT (SQL Server Data Tools) is Microsoft's tool to design (declare) the entire database model including tables, views, stored procedures, functions, schemas, etc. etc. etc. SSDT covering
Publish-DacPac allows you to deploy a SQL Server Database DACPAC to a SQL Server instance using a DAC Publish Profile.
SSDT (SQL Server Data Tools) is Microsoft's tool to design (declare) the entire database model including tables, views, stored procedures, functions, schemas, etc. etc. etc. SSDT covering all aspects of a database design.
SSDT is now fully integrated into Visual Studio. When you perform a build of a SSDT Visual Studio project, it creates a DACPAC which defines all of the SQL Server objects - like tables, views, and instance objects, including logins - associated with a database.
Publish-DacPac simplifies the use of SqlPackage.exe to deploy a DACPAC by using a DAC Publish Profile which provides for fine-grained control over the database creation and upgrades, including upgrades for schema, triggers, stored procedures, roles, users, extended properties etc. Using a DAC Publish Profile, multiple different properties can be set to ensure that the database is created or upgraded properly.
Publish-DacPac compares the content of a DACPAC to the database already on the target server and generates a deployment script. You can tailor how publish works using a DAC Publish Profile.
Publish-DacPac can be used to automate the deployment of databases, either as part of a build in Azure DevOps, or part of a server deployment using Octopus Deploy or Azure DevOps Release Manager.
To automate build and deployment of databases in Azure DevOps, you can use MsBuild to create DACPAC from your Visual Studio solution. You can then add a PowerShell task which uses Publish-DacPac to invoke SQLPackage.exe to deploy each DACPAC using your own custom DAC Publish Profile.
Full documentation can be found on our project site https://github.com/DrJohnT/PublishDacPac
Minimum PowerShell version
5.0
Installation Options
Owners
Copyright
Copyright (c) 2019-2021 Dr. John Tunnicliffe. All rights reserved.
Package Details
Author(s)
- Dr. John Tunnicliffe
Tags
SSDT deployment DACPAC deploy publish SQL database DAC sqlserver Profile Azure DevOps SqlPackage powershell pipeline release data-tier on-premise automation
Functions
Find-SqlPackageLocations Get-SqlDatabasePath Get-SqlPackagePath Invoke-ExternalCommand Ping-SqlDatabase Ping-SqlServer Publish-DacPac Select-SqlPackageVersion Remove-Database
Dependencies
This module has no dependencies.
Release Notes
FileList
- PublishDacPac.nuspec
- LICENSE
- PublishDacPac.psd1
- PublishDacPac.psm1
- README.md
- en-US\about_PublishDacPac.help.txt
- en-US\PublishDacPac-help.xml
- public\Find-SqlPackageLocations.ps1
- public\Get-SqlDatabasePath.ps1
- public\Get-SqlPackagePath.ps1
- public\Invoke-ExternalCommand.ps1
- public\Ping-SqlDatabase.ps1
- public\Ping-SqlServer.ps1
- public\Publish-DacPac.ps1
- public\Remove-Database.ps1
- public\Select-SqlPackageVersion.ps1
Version History
Version | Downloads | Last updated |
---|---|---|
1.1.1 (current version) | 17,588 | 1/11/2021 |
1.1.0 | 44 | 1/8/2021 |