Cover image for Sparrowhub.io - repository of devops and automation utilities

Sparrowhub.io - repository of devops and automation utilities

melezhik profile image Alexey Melezhik ・2 min read

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


Posted on by:

melezhik profile

Alexey Melezhik


Sparrow6 - Raku Automation Framework


Editor guide