Chances are good that if you've been around any part of the PowerShell community during the past couple of years, you've at least heard of Universal Dashboard (UD).
If, somehow, you haven't heard of it yet UD is a product from Ironman Software, which is headed up by Adam Driscoll. It started as a tool focused on easily spinning up dashboards using PowerShell and has since developed into a full-on web framework. It has even given birth of a community of its own.
But UD isn't the topic of this post, at least not directly.
Enter Universal Automation
As the name implies, UA is an automation platform for PowerShell.
If you're anything like me, you've probably got a bunch of scripts running as scheduled tasks or jobs on a server (or two). UA is a nice step up in IT maturity from that scenario.
What do you get over and above just throwing your scripts at the task scheduler?
First, it's backed by a database that logs all of the times your scripts ran, their status, their output, and how much time you've saved by automating a task instead of performing it manually. All of this opens up a number of options for reporting on your automation wins.
Second, it leveraged git for built in version control. You can even configure a remote to which will automatically pull and push changes. This means you can set UA up on a server, configure the git remote, and then manage the scripts and their schedules from the comfort of your workstation!
Third is really nice, it runs on Linux. If you're the type to have random scripts you run at home (I'm not the only one, I'm sure), then you could run UA on a Raspberry Pi.
There are more features, but the final one I'll talk about here is that it leverages UD to give you a dashboard for your UA server. This dashboard is optional but very, very cool. It gives you a visual of the status of all your scripts and allows you to manage them (heck, you can even edit your scripts directly within the dashboard!)
This tool has been in private beta for a little longer than a month, and just in the last couple of days it graduated to public beta. You can get your hands on it now via the PowerShell Gallery remembering that there are two components, the server and companion dashboard.
While not yet ready to be deployed in production and take on all of the scheduled scripts you're running today, I would encourage you to give it a go.
As you test out your unique use cases, you're bound to run into small issues here and there. If you do, please do open an issue on GitHub. Adam and the crew can't fix problems that they don't yet know exist!
You'll notice I haven't given any instructions here on how to use, or even install, UA. The thing is that it is under very active development at the moment and the best thing I can do to ensure instructions are up to date is point you at the documentation.
Go check out the docs, install the tool, and have fun!
More to Come
There's going to be more content about Universal Automation coming soon. I've got a couple of cool use cases I want to show off (with code samples that you won't find in the docs), but they deserve posts of their own.
In the meantime, I'd love to hear what sort of use cases you could be looking to throw at UA.