So I previously mentioned I'd knocked up a simple automation tool, for deploying policies (read "scripts") from a central location to a number of distinct machines.
There seemed to be a small amount of interest, so I've written it all up:
- slaughter - Perl System Administration & Automation tool
Why slaughter? I have no idea. Yesterday evening it made sense, somehow, on the basis it rhymed with auto - (auto as in automation). This morning it made less sense. But meh.
This list of primitives has grown a little and the brief examples probably provide a little bit of flavour.
In short you:
- Install the package upon a client you wish to manage.
- When "slaughter" is invoked it will fetch http://example.com/slaughter/default.policy
- This file may include other policy files via "IncludePolicy" statements.
- Once all the named policies have been downloaded/expanded they'll be written to a local file.
- The local file will have Perl-fu wrapped around it such that the Slaughter::linux module is available
- This is where the definitions for "FetchFile", "Mounts", etc are located.
- The local file will be executed then removed.
All in all its probably more complex than it needs to be, but I've managed to get interesting things primarily with these new built-in primitives and none of it is massively Debian, or even Linux, specific.
Tags: automation, slaughter 3 comments
this looks a lot like CFEngine and Puppet...