- Update dependencies (thor, net-ssh, minitest).
- Replace Travis CI with GitHub Actions.
- Dotfiles (files that start with '.') in recipes, roles and files are now included.
sunzi.ymlis now evaluated as ERB to access environment variables. (e.g.<%= ENV['MY_PASSWORD'] %>)
- Plug-in support for commands.
- Separate
setupandteardowncommands for VPS into thesunzi-vpsgem as a plugin. - "attributes" are now "vars" in sunzi.yml and shell scripts.
- ERB templating (e.g. <%= @vars.environment %>) is always enabled.
- Individual attribute files compiled/attributes/* are no longer supported. Use ERB template methods instead.
sunzi deploy [linode|digital_ocean] [name]will deploy to the instance with additional attributes.
sunzi teardownno longer requires instance names as an argument, it lets you choose from a list instead.
- v1.3: SSH config support. Thanks to @toooooooby
- v1.2: Evaluate everything as ERB templates by default. Added "files" folder.
- v1.1: "set -e" by default. apt-get everywhere in place of aptitude. Linode DNS support for DigitalOcean instances.
- v1.0: System functions are refactored into sunzi.mute() and sunzi.install().
- v0.9: Support for DigitalOcean setup / teardown.
- v0.8: Added
--sudooption tosunzi deploy. - v0.7: Added
erase_remote_folderandcache_remote_recipespreferences for customized behavior. - v0.6: System function sunzi::silencer() added for succinct log messages.
- v0.5: Role-based configuration supported. Reworked directory structure. Incompatible with previous versions.