Features
- Add ability to register variables which are available to the next tasks
- Add option to ignore errors for indiviual tasks
- Add flag/spec
--list-hostsoption to list targetted hosts - Support output options
csv/json/none - Add new task strategies: linear, host_pinned, free
linear: execute task for each host before proceeding to the next task (default)host_pinned: executes tasks (serial) for a host before proceeding to the next hostfree: tasks without waiting for other tasks
- Add host ordering
inventory: The order is as provided by the inventoryreverse_inventory: The order is the reverse of the inventorysorted: Hosts are alphabetically sorted by hostreverse_sorted: Hosts are sorted by host in reverse alphabetical orderrandom: Hosts are randomly ordered
- Determine number of hosts to run in parallel
batch: specify number of hostsbatch_p: specify number of hosts in percentageforks: max number of concurrent processes
- Add option to display reports at end of tasks by using
--reportflag or specifying it inspecdefinitionrecap: show basic reportrc: show return code for each host and tasktask: show task status for each host and tasktime: show time report for each host and taskall: show all reports
- Add confirm/step task capability
confirm: for the root taskstep: per task and host
Fixes
- Fix omitting attribute
alignwhen creating a theme - Abort tasks prematurely when running in parallel and AnyErrorsFatal set to true
- Fix server range (previously
[2:100]didn't work as strings were compared) - Fix empty error for non existing working directory and update how work_dir works
Minor
- Add option to omit empty columns via flag
--omit-empty-columnsand specomit_empty_columns - Add option to specify target and spec via flags
--target/--spec - Add description to targets and specs
- Add server identity to environment variables
- Add silent/describe attribute to spec definition
- Add ssh user flag option
Changes
- [BREAKING CHANGE]: Deprecated the parallel flag, use batch/batch_p/forks instead
- [BREAKING CHANGE]: Rename default environment variables from
SAKE_SERVER_*toS_*, and remove task default environment variables - [BREAKING CHANGE]: Shorthand flag for silent is now
Q - Switch to default shell when evaluating inventory
- If no command name is set on nested tasks, assign
task-$iinstead oftask - If
--limitflag is higher than available hosts, then select all hosts filtered - Update flag sorting
- Rename
--omit-emptyto--omit-empty-rows - Building
sakewith go 1.19