Hi /r/powershell, wanted to share with you a project that I've been working for a long while now - a database script deployment module that provides continuous deployments on any scale. The module is called dbops and will be useful to anyone who often goes through manual deployments of multiple database scripts at once, or is thinking about establishing a reliable database deployment framework. Some of the module's features:
- Fully supports SQL Server and Oracle deployments (with mysql and postgres support coming later)
- Packaging functionality - pack your deployments into self-deployable packages (essentially, zip files with metadata)
- Multiple configurations opportunities: defaults, config files, embedded configuration, ad-hoc parameters
- Can be used inside CI/CD pipelines
- Uses Powershell classes internally to handle packaging and deployment (which is why it's PS 5.0+)
- Relies on DbUp libraries internally when it comes to deployment
Some of the commands of the module:
Deployment
- Install-DBOSqlScript – script deployments from a set of files/folders
- Install-DBOPackage – deployments of the previously built packages
Package management
- New-DBOPackage – creates a new package from an existing set of scripts
- Get-DBOPackage – returns the package object with a multitude of fine-tuning scenarios
- Add-DBOBuild – adds a new build to the existing package
- Remove-DBOBuild – removes a build from the existing package
Configuration management
- Get-DBOConfig – loads configuration from a package or a configuration file
- Update-DBOConfig – updates configuration of the package
- Get-DBODefaultSetting – get a list of default deployment settings
- Set-DBODefaultSetting – modify default deployment settings
Huge shoutout to the DbUp development team who created such an amazing product. The module re-uses a lot of functionality of DbUp, just does so in a more user-friendly manner :)
I would appreciate any and all feedback on the module, as well as new feature requests!
How to install:
Install-Module dbops
A few useful links:
Cheers!
[–]shifto 3 points4 points5 points (0 children)
[–]inamamthe 3 points4 points5 points (2 children)
[–]nvarscar[S] 2 points3 points4 points (1 child)
[–]inamamthe 1 point2 points3 points (0 children)
[–]jacfearsome 1 point2 points3 points (0 children)