Skip to content

v4.3.1

Choose a tag to compare

@EvSecDev EvSecDev released this 23 Mar 21:52
· 126 commits to main since this release
a786be3

✅ Added

  • Macros for internal variables available in commands (install/check/reload)
  • Argument for writing events and errors to a log file
  • Deployment force mode to ignore unchanged states and always write and reload remote files
  • Concurrency limit to artifact tracking (limited to 250 files at once)
  • Recursion option to seed repository for retrieving all files under a directory
  • Install/Check/Reload commands added as an option in directory metadata JSON metadata header files
  • More systemd default reload commands for unit files in /lib or /usr/lib
  • Seed repository ability to select directories
  • Post deployment metric to show total elapsed time the deployment took
  • Full regular expression feature to '--remote-hosts', '--remote-files', and '--local-files' (must use --regex argument to enable parsing)
  • Option to globally disable reload commands for a deployment (helpful to override any duplicate config option deadlocks)
  • Post deployment metric for bytes transferred to remote host

🔄 Changed

  • Indentation of verbose prints to better align with other prints within a hosts deployment
  • Local to remote path translation function to be more strict (handle spaces in name and absolute paths)
  • File restoration on deployment failure to include non-reload files as well as ensuring restored file metadata is correct
  • Remote file information retrieval from using ls to use stat (adds support for file names with spaces)
  • Maximum recursion for directory deletion from 1000 to 200
  • Check commands run before installation commands (per file)
  • Command timeout of installation commands changede from 90 seconds to 180 seconds
  • Default nginx reload command for seed repository to reload instead of systemctl restart
  • Deployment reload command output to print at verbosity level 2 instead of 3
  • File data handling from string variables to byte arrays to better preserve non-ASCII text

❌ Removed

  • Deprecated 'commit-changes' argument
  • Trailing wildcard feature for '--remote-hosts', '--remote-files', and '--local-files' (Replaced with full regex)

🔨 Fixed

  • Bugs in seed repository: removed ability to cd into a file
  • File restore after reload failure when only changing file metadata would report as a failure despite not failing (fixed by ensuring file hash gets record even when metadata was the only change)
  • Bytes transferred metric counter would only show total size for reloaded files if reload succeeded (fixed by counting file transfer bytes before reload commands are run)
  • If the remote backup directory existed, deployment would fail (fixed by resetting error to nil if backup directory already exists and correcting conditional on string contains)
  • Deployment would fail if remote symlink was already present on remote system (fixed by checking remote existing link/file for validity)

ℹ️ Instructions

  • Please refer to the README.md file for instructions