s6

S6

Sparrow6 command line client and plugin manager.

Usage

help:

s6 --help

actions:

s6 $action|$options $thing

Plugins

Sparrow plugins - are portable Sparrow tasks.

update index

s6 --index-update

upload plugin

s6 --upload

s6 --install --force $plugin # forceful upload, even if a higher version is installed

plugin info

s6 --plg-info $plugin

uninstall plugin

s6 --uninstall $plugin

run plugin

Run plugin

s6 --plg-run $plugin

For example:

s6 --plg-run timetest

Run plugin with parameters:

s6 --plg-run $plugin@param1=value1,param2=value2

For example:

s6 --plg-run bash@command=uptime,debug=1

sudo env PATH=$PATH env SP6_REPO=$SP6_REPO s6 --plg-run user@name=sparrow,action=create

To run multiple plugins use + sign:

s6 --plg-run directory@path=/tmp/foo,action=create+file@content='hello world',target=/tmp/foo/hello.txt

sudo env PATH=$PATH env SP6_REPO=$SP6_REPO s6 --plg-run group@name=brirds,\
action=create+user@name=sparrow,password=123456,groups=brirds,action=create

show plugin manual

s6 --plg-man $plugin

Repository

Repository is a storage for sparrow plugins. Repository allows to search and installs plugins. More about sparrow repositories read at documentation/repository.

Repository commands:

show repository info

s6 --repo-info

initialize local repository

s6 --repo-init /path/to/repo/root

Modules

Module is a collection of Sparrow tasks run sequentially.

run module

s6 --module-run $module@param1=value1,param2=value2

For example:

s6 --module-run Archive@source=/home/melezhik/archive.tar.gz,target=/tmp/foo2,verbose=1

Sparrow tasks

Sparrow tasks are scripts written on Sparrow compatible languages.

sparrow tasks list

s6 --task-list

List tasks limited by subfolder:

s6 --task-list tasks/folder

List tasks filtered by Raku regexp:

s6 --task-list "regexp"

For example:

s6 --task-list 'foo || bar || baz'

run sparrow task

s6 --task-run task/path

You can pass parameters and run multiple tasks as you do with sparrow plugins:

s6 --task-run task/path@param1=value1,param2=value2

s6 --task-run task/path1+task/path2

show sparrow task

s6 --task-cat task/path

delete sparrow task

s6 --sparrow-del task/path

Raku tasks

Raku tasks are high level scenarios to run Sparrow tasks written on Sparrow compatible languages.

raku tasks list

s6 --rt-list

run raku task

s6 --rt-run task/path

create/update raku task

s6 --rt-set task/path

show raku task

s6 --rt-cat task/path

delete raku task

s6 --rt-del task/path

options

  • --verbose

Enable verbose mode, adds some low detail messages.

  • --debug

Enable debug mode, even more messages.

Author

Alexey Melezhik

Thanks to

God as the One Who inspires me in my life!

Sparrow6 v0.0.33

Sparrow is a Raku based automation framework

Authors

  • Alexey Melezhik

License

Artistic-2.0

Dependencies

File::Directory::TreeHash::Merge:ver<1.0.0>YAMLishJSON::TinyData::DumpColorizable

Test Dependencies

Provides

  • Sparrow6
  • Sparrow6::Common::Config
  • Sparrow6::Common::Helpers
  • Sparrow6::DSL
  • Sparrow6::DSL::Assert
  • Sparrow6::DSL::Bash
  • Sparrow6::DSL::CPAN::Package
  • Sparrow6::DSL::Common
  • Sparrow6::DSL::Directory
  • Sparrow6::DSL::File
  • Sparrow6::DSL::Git
  • Sparrow6::DSL::Group
  • Sparrow6::DSL::Package
  • Sparrow6::DSL::Service
  • Sparrow6::DSL::Ssh
  • Sparrow6::DSL::Systemd
  • Sparrow6::DSL::Template
  • Sparrow6::DSL::User
  • Sparrow6::DSL::Zef
  • Sparrow6::RakuTask
  • Sparrow6::SparrowTask
  • Sparrow6::Task
  • Sparrow6::Task::Check
  • Sparrow6::Task::Check::Context
  • Sparrow6::Task::Check::Context::Common
  • Sparrow6::Task::Repository
  • Sparrow6::Task::Repository::Helpers::Common
  • Sparrow6::Task::Repository::Helpers::Index
  • Sparrow6::Task::Repository::Helpers::Init
  • Sparrow6::Task::Repository::Helpers::Plugin
  • Sparrow6::Task::Runner
  • Sparrow6::Task::Runner::Helpers::Bash
  • Sparrow6::Task::Runner::Helpers::Check
  • Sparrow6::Task::Runner::Helpers::Common
  • Sparrow6::Task::Runner::Helpers::Perl
  • Sparrow6::Task::Runner::Helpers::Perl6
  • Sparrow6::Task::Runner::Helpers::Powershell
  • Sparrow6::Task::Runner::Helpers::Python
  • Sparrow6::Task::Runner::Helpers::Ruby
  • Sparrow6::Task::Runner::Helpers::Test

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.