Sparrowhub.io is a repository of automation utilities for the whole range of tasks:
- git automation
- cloud automation (Azure/Aws)
- yaml/json linters
- configuration management
- testing
- scripting and gluing
Quick start
The process of start using Sparrowhub.io is very straightforward:
Install Raku
Sparrowhub.io is built on Raku, so one need to install Raku language first.
Install Sparrowhub.io client
Sparrowhub.io command line client - Sparrow is installed as a Raku module:
$ zef install --/test Sparrow6
Setup a repository
By default Sparrow is set to use a local file repository so one need to point the Sparrowhub.io repo, so that Sparrow could look up a dependecies there:
$ export SP6_REPO=http://sparrowhub.io/repo && sp6 --index-update
Find a plugin and run it
So far Sparrowhub.io contains more then 190 plugin - small reusable scripts written on many languages. To find a plugin you need just run a search through a Sparrow client:
$ s6 --search /pattern/
Once you find a plugin, just run it. For example, to delete old git branch both local and remote version you could run this:
$ s6 --plg-run git-branch-delete@branch=old_branch
Some plugins only make a sense when run as Raku functions. This piece of Raku code uses a git-current-branch
plugin to calculate a name of a current branch and then to do something about it:
use Sparrow6::DSL;
my %state = task-run "current branch", "git-current-branch";
say %state<branch>;
So this is how one can build high level scenarios from small Sparrow plugins.
Sparrowhub.io philosophy is to build something big quickly out of ready building blocks.
You can even use a Tomtit - Sparrow based task runner for better convenience.
More reading
Checkout Sparrowhub.io repository to search for plugins and get the latest project updates.
Best regards
Aleksei