- Add support for lead target commands
- Fix issue before activating release
- Fix issue #210 which cuased concurrent deploys to pick only the first target.
- It sets the origin repository (
git remote set-url origin <repo>) on every pushed release.
- New commands that let you enable/disable a maintenance mode
- New configuration variables:
maintenance_directory:- The name of the directory on which the maintenance file will be placed.{deploy_path}/{maintenance_directory}. The default directory name ismaintenancemaintenance_filename:- The name of the file that is going to be created in the maintenance_directory. It has to have the.htmlextension to be seen in the browser.{deploy_path}/{maintenance_directory}/{maintenance_filename}. The default filename ismaintenance.html
- Ability to keep all failed releases or just one (issue #154)
- Config Option:
keep_one_failed - CLI Option:
--keep-one-failed
- Config Option:
- Some types and functions were modified to support the new features (e.g.
Hapistrano,runHapistrano, etc.)
- Add support for aeson 2.0
- Add support for GHC 9.0
- Docker image is built on a newer compiler, cabal and alpine version
- Official support for GHC versions older than 8.6
- Add support for working directory
- GHC support for versions older than 8.0. Bounds for base corrected
- Bump path version upper constraint to 0.9
- Allow formatting-7.0
- Allow optparse-applicative-0.16.0.0
- Allow
ansi-terminal0.11
- Support for GHC 8.10
- Support for aeson-1.5
- Allow
time1.10 - Correct the package to reenable Hapistrano in Stackage
- Copy a directory's contents with
local_directoryinstead of using git withrepoandrevision.
- Update upper bounds for
pathandpath-iopackages.
- Update Dockerfile and maintainer.
- Colorize the output in the terminal.
- Support for GHC 8.8
- Support for ssh args in the config file.
- Support for optparse-applicative-0.15
- Replace deprecated function "withProcess" to "withProcessTerm" and add the version of "typed-process-0.2.6.0" as extra dependency.
- Update Docker base image from alpine:3.7 to alpine:3.9
- Add timestamp to output commands:
[16:29:58, 2019-01-23 (-05)] INFO -- : $ find /tmp/hapistrano/releases/ -maxdepth 1 -type d
/tmp/hapistrano/releases/
/tmp/hapistrano/releases/20190123212933
- Support to deploy to a host that has default
zshshell. - Support to deploy using a different shell. Currently supported:
zshandbash. linked_filesandlinked_dirsto link files and directories located in the{deploy_path}/shared/directory.
execWithInheritStdoutwas added toSystem.Hapistrano.Coreto stream output children's to the parent'sstdout.
playScriptandplayScriptLocallyuseexecWithInheritStdoutto stream children's stdout to parent's stdout.
- Read
release-formatandkeep-releasesfrom the configuration file.
- Loose upper bound for yaml 0.11
- Add support to interpolate ENV variables in a configuration file.
- Add support for GHC 8.6.1
- Loose constraint for stm-2.5.0.0
- Updated upper bound for yaml 0.10
- Loose upper bound for path-io 1.4
- Loose upper bound for yaml 0.9
- Loose upper bound for aeson 1.4
- Add Dockerfile
- Adding tested compatibility with GHC 8.4
- Support for temporary 1.3
- Support for aeson 1.3
- Loose uppers bounds for async
- Standarize style
- When showing version information also show git branch and commit
- Add support for deploying to other Unix systems, besides GNU/Linux which didn't supported all the flags that Hapistrano was using. See issue #63
- Use
git checkoutinstead ofgit resetto set the release revision
- Correct bounds for base. GHC support for versions older than 7.10 was dropped on 0.3.0.0
- Add
run_locallyto run user defined commands locally before deployment. Thanks to Sibi (GitHub: psibi) for this contribution
- Allow time 1.8
- Allow process 1.6
- Allow path-io 1.3
- Allow optparse-applicative 0.14
- Add support for help in subcommands. Thanks to Vanessa McHale (GitHub: vmchale) for this contribution
- Fix
-vswitch for hap. Thanks to Sibi (GitHub: psibi) for this contribution - Add
vc_actionto control version control related tasks. Thanks to Sibi (GitHub: psibi) for this contribution
- Fixed a bug with repos not being fetched properly.
- Implemented concurrent deployment to multiple hosts.
- Now completion tokens are dropped automatically like old releases.
- Reduced verbosity of some commands to make reading logs easier.
- Restart command is now invoked after activation of new release (as it should).
- Fix a typo in flag that specifies SSH port for
scp. - Ensure that containing directories for files and directories to copy
exist before invoking
scp.
- Add proper set of dependency version constraints.
- Use
optparse-applicativeto parse arguments. - Allow to specify non-standard SSH port.
- Drop support for GHCs older than 7.10 (because Chris Done's
pathdoes not compile with them, see: commercialhaskell/path#46). - Now Hapistrano uses
hap.yamlfile for all its configuration. - Added the ability to copy arbitrary files and directories verbatim from local machine to target host.
- Add change log (#23).
- Add
README.mdto extra source files. - Handle missing environment variables more graciously.
- Allow GHC 8 and base 4.9.
- Fix tests (#31).
- Use Stack (#17).
- Clean up package (#20).
- Fix tests (#25).
- GHC 7.10 support.
- Refactoring and documentation improvements.
- Various refactoring and relaxed dependency constraints.
- Print error messages to
stderr, return non-zero exit code on failure.
- Initial release.