What's New in Etcha: v2024.01
Release notes for Etcha v2024.01.
Features
Declarative Helpers
Etcha now ships with declarative helper arguments:
- etcha copyto copy files.
- etcha dirto manage directories.
- etcha fileto manage files.
- etcha getto retrieve files locally or from HTTP endpoints.
- etcha lineto manage lines in files.
- etcha linkto manage symlinks.
Libraries have been updated to use these native functions instead of system helpers.
See CLI for details.
Variable Evaluation
Patterns will now evaluate shell variables (${VARIABLE}) before executing a Command if the variable is defined. This applies to variables specified in check, change, and remove Commands, as well as the new stdin value.
Enhancements
- CLI: Changed and combined CLI arguments to be more concise and reduce the number of similar arguments. See CLI for details.
- Commands: Stdin can now be set for Commands. See Commands for details.
- Config: Container networks can now be set for Exec configs. See Commands for details.
- Jsonnet: Added getArch, a jsonnet library for retrieving the current arch.
- Jsonnet: Added getOS, a jsonnet library for retrieving the current OS.
- Libraries: Added line, a library for managing lines in files.
- Libraries: Added etchaInstall, a library for managing lines in files.
Fixes
- CLI: Fixed etcha rendernot parsing JWTs correctly.
- Lint: Fixed linting reporting duplicate results.
- Patterns: Fixed Pattern imports using the Jsonnet function getEnvnot obeying theexec.envInheritorexec.envvalues within the main configuration or source configuration.
- Sources: Fixed Pattern loading and execution at startup not obeying naming order of sources.