Releases: alajmo/sake
Releases · alajmo/sake
v0.15.1
v0.15.0
Features
- Add support for multiple bastions
Misc
- Update to go 1.20
v0.14.0
Features
- Add ability to modify prefix in text and table themes
- Hide tasks from auto-completion via spec attribute
hidden: true - Add print option to limit output to stdout|stderr
- Default to one of following identity files if no identity specified
~/.ssh/id_rsa,~/.ssh/id_ecdsa,~/.ssh/id_dsa - Add ability to modify default timeout for ssh connections
Fixes
- [BREAKING CHANGE]: No more duplicate tasks, specs, targets, and themes
- Small fix when user config is specified but not found
- Fix some small validation issues with batch and batch-p
- A bunch of smaller fixes
v0.13.0
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
v0.12.1
Fixes
- Fix port out of range when using shorthand format for hosts
v0.12.0
Features
- Add hosts keyword that supports having multiple hosts per server definition
- Specify as a list
- Specify as a string containing range (
192.168.0.[1:10:2]) - Use
inventoryattribute (kubectl get nodes)
- Add silent flag to supress
Running...spinner when running tasks - Support connection string instead of 3 fields:
user@host:port - Support resolving IdentityFile in ssh config (
~/.ssh/config) - Support resolving Includes in ssh config (
~/.ssh/config) - Support glob pattern for Hosts (
Host *) - Add bastion headers to list servers
- Add flags/target config
--limit&--limit-pto limit number of servers task is run on - Add filtering servers on host regex
- Add invert flag on filtering servers
- Add flag
--all-headersfor tasks and servers - Add sub-commands edit/list/describe [specs|targets]
- Add 3 new table outputs (table-2, table-3, table-4)
- [BREAKING CHANGE]: Simplified theme config, now it only accepts manipulation of rows and headers, not specific properties
Fixes
- Use IdentitiesOnly if user specifies a IdentityFile
- Default to
Name, if description is not set, in auto-completion for tasks - Support lowercase ssh config keys (previously they had to be PascalCase)
Deprecated
- [BREAKING CHANGE]: Removed environment variables
SAKE_IDENTITY_FILEandSAKE_PASSWORD, users can use flags instead
v0.11.0
v0.10.3
v0.10.2
v0.10.1
- Small fix for WorkDir being related to calling file when server is local