В последней версии Воробь Я улучшил API «Hosts» позволяет определить несколько конфигураций задач, используя Raku Hashes и массивы:
$ Nano Hosts.raku
[ %( host => "localhost", name => "task1", tags => %( param1 => "val1", param2 => "val2", ) ), %( host => "localhost", name => "task2", tags => %( param1 => "val1", param2 => "val2", ) ), ]
Этот тривиальный пример определяет 2 задания, которые получаются с некоторыми конкретными параметрами. Чтобы запустить эту задачу, мы должны определить сценарий SParrowdo:
$ Nano Sparrowfile.
say "you've passed me:"; say tags(); say tags() ; # other task specific logic here if tags() eq "task1" { # ... } elsif tags() eq "task1" { # ... }
И запустить:
$ SPARROWDO.RAKU
SParrowdo поставит 2 задания в Sparky Очередь, чтобы Sparky справится с ними позже в асинхронном виде.
Отслеживать задачи статусы и отчеты — перейдите в Sparky Frestend — http://127.0.0.1:3000 Отказ
Вы можете переопределить некоторые параметры с использованием командной строки:
$ SPARROWDO.RAKU
SParrowdo — все батареи в комплекте воробей плагины и DSL Можно использовать в своих ежедневных задачах:
$ Nano Hosts.raku
[ %( host => "192.168.0.1", tags => ["frontend","prod"] ), %( host => "192.168.0.2", tags => ["backend","prod"] ), ]
$ Nano Sparrowfile.
if tags(){ package-install "nginx" } elsif tags() { package-install "java" }
Спасибо за чтение.
Алексей
Оригинал: «https://dev.to/melezhik/sparrowdo-ubiquitous-asynchronous-task-runner-with-nice-frontend-5c1k»