We have accumulated quite a toolbox when it comes to DBA resources. Our clients come to us with a lot of questions that sometimes require creative solutions. One of the most valuable assets we have come across is the free to use dbatools project.
What is dbatools?
dbatools is an open source PowerShell module that provides a collection of commands that a DBA (or Dev, Sysadmin etc.) can use to easily perform their day-to-day tasks on a SQL Server. The project was started by Chrissy LeMaire as a handful of commands in July 2014. It has since grown to over 500 commands all hosted in the Microsoft PowerShell Gallery, thanks to the helps of over 150 contributing developers/DBAs. The chances are, if there is a task you need to perform, dbatools has a command for it.
The project’s primary aim is to enable automation. Automation is something that we at Data Masterminds rely heavily on, not only to deliver services to our clients more efficiently, but also to reduce human-errors. If a script can be designed to perform a task, we can be sure that it will execute the same steps without forgetting anything. This is where dbatools helps immensely. The hundreds of commands that are at our (and your) disposal can create robust processes to streamline management of your database. We, for example, employ commands from dbatools to implement standardized database maintenance for thousands of databases.
Code from the internet? But I don’t trust it!
We still run into companies that are fundamentally opposed to open source code/code projects “from the internet”. The oft-cited reason for this is that open source is somehow untrustworthy (even though the source code is open and readable).
In an effort to dispel this stigma and offer assurance that the posted code is clean, the dbatools project will be implementing code signing for the published PowerShell module. This allows dbatools to provide a seal of authenticity to the module when it’s published and combat any possibility of malware being inserted. Code signing is provided by a trusted third-party certificate authority and ensures that the code that has been signed matches the code that has been downloaded. dbatools was built for use in the largest and most secure environments in mind, so adding stringent procedures like code signing that protect dbatools users is a no-brainer
Free to use code isn’t free to make
We love dbatools; it has been an invaluable resource for us and our clients. We believe in their mission and have loved both the results we’ve seen and the direction they plan to take the project in. We have happily financially supported the project in the past, which included covering the cost of their AppVeyor licenses for automating testing of their code against all current versions of SQL Server.
Code signing certificates cost money. Because the dbatools project is a free to use module, and always will be, they need help finding financial sources to cover these costs.
Recently, when the dbatools team took to Twitter to seek financial support to acquire a code signing certificate, we immediately stepped up again. The code signing certificate will allow more people to use the module than ever before, even in environments that require stricter security be adhered to.
We believe ensuring the code on dbatools gets the certificate it needs is a win for the community at large. We can’t wait to see what this helps dbatools achieve (and helps DBAs achieve) in the future.