Skip to content

v4.6.0

Choose a tag to compare

@EvSecDev EvSecDev released this 09 May 02:44
· 96 commits to main since this release
de778f7

✅ Added

  • Reload grouping to file metadata header (allows groups of differing reloads to run together)
  • Wet-run mode to test remote setup and check if a file will be deployed without performing mutating actions
  • Metadata header now allows for comments character # at the start of lines (useful for being able to test run scripts locally while retaining the JSON header)
  • Run-as-user argument to override which sudo user commands are executed as
  • Extra print to stat command parsing errors to clarify how the output is wrong
  • Dependency failure check during deployment to avoid deploying dependents if parent file fails

🔄 Changed

  • Requirement to have an active network interface to allow loopback interfaces
  • Default reloads for postfix to use built-in reload instead of systemd
  • Dry run output to always show when requested regardless of verbosity level (excluding level 0)
  • Dry run exit point moved before SSH deployment function
  • Host secrets retrieval to after dry run exit point - controller will no longer prompt for vault passwords for dry-runs
  • Help menu argument descriptions tweaked

❌ Removed

  • Host specific macros (IP, port user)
  • Macro HOSTNAME, replaced with REPOBASEDIR to better represent what value it uses
  • Ability to use only raw JSON in directory metadata file header (must use delimiters now - quick fix command: for file in $(find . -type f -name .directory_metadata_information.json); do sed -i -e '1s/^/#|^^^|# /' -e '$a#|^^^|#' $file ; done)
  • Printing host secrets with dry-run summary output

🔨 Fixed

  • Occasionally the git artifact tracking feature would panic on concurrent map access (fixed by using a map copy to iterate over instead of map itself)
  • Files in repository that were executable would never be deployed (fixed by treating executable file mode as regular file type)
  • Deployment failures would print the host names for all the hosts instead of just the hosts that failed (changed host progress print to only show when host had an error or when the host status is partial/failed)
  • An empty warning message would appear on some file deployment errors (fixed by ensuring warning only gets printed if it contains something)

ℹ️ Instructions

  • Please refer to the README.md file for instructions