Releases: geofffranks/spruce
Releases · geofffranks/spruce
spruce-release Release v1.4.4
New Features
(( prune ))
is a new operator that allows for specifying
keys to be pruned inside your YAML files, similar to the--prune
flag
Fixes
spruce
is once again generated with CGO_ENABLED=0, to remove dynamically
linked files, and increase portability. This regressed during a recent
update to the CI pipeline.
spruce-release Release v1.4.2
#Bug Fixes
- Starting in 1.4.1, error messages were mistakenly sent to os.Stdout, making
lots of things difficult to detect. - Fixed issues where colorized output does not appear for errors, when stdout of
spruce was redirected to a file.
spruce-release Release v1.4.1
NOTES
WARNING: there was a bug intruduced in this version of spruce
that would send error messages to STDOUT instead of STDERR. This has been fixed in 1.4.2.
Improvements
- Error messages from missing
(( param ))
calls are now isolated,
so that any errors that may be caused by the params not having been
overridden is suppressed. - Error messages are now colorized, if applicable, for easier readability
- Error messages resolve indexes out to names, if possible, for easier readability
(jobs.0.networks.0.static_ips
becomesjobs.myjob.networks.mynet.static_ips
)
Bug Fixes
- Fixed a panic caused when the
(( inject ))
operator tried to do dependency
checking on values that do not exist. This now results in an error message
from the(( inject ))
operator, instead of a panic.
spruce-release Release v1.4.0
New Features
- The
(( vault ))
operator now allows for multiple arguments.
It previously required exactly one argument. Now if given multiple
arguments, they are concatenated together, and used as the path
to search inside Vault. For example:(( vault meta.vault_prefix "/key:pass" ))
.
One-argument(( vault ))
calls still behave as they used to.
spruce-release Release v1.3.1
Bug Fixes
- Fixing CI pipeline + homebrew version mismatching
spruce-release Release v1.3.0
New Features
spruce
is now split into a main spruce package, a logging package, and a cmd package.
This allows people to easily embed spruce's merging logic inside other Go applications.
Unfortunately, to retrieve the binary viago get
now, you will need togo get github.com/geofffranks/spruce/...
.
However, homebrew, and downloading binaries directly from https://github.com/geofffranks/spruce/releases still
work as they used to.
Bug Fixes
spruce
now supports BOSH 2.0 manifests with regards to thestatic_ips
operator
spruce-release Release v1.2.0
Bug Fixes
- Specifying a static IP pool that ends before it starts no longer
causes the(( static_ips ... ))
operator to loop infiinitely
trying to increment its way to the end of the range. spruce merge
now requires an explicit environment variable
($REDACT) to be set, or it will fail to render the final YAML
if it contains any(( vault ... ))
calls. This should help
cases where people accidentally forget to authenticate to the
vault, and then deploy BOSH manifests that are REDACTED all
over the place.- Add support for environment variables (using familiar syntax of
$VARNAME
) inside of operator argument lists. These references
will be replaced with their string literal equivalents upon
activation.
Spruce Release v1.1.2
New Features
- Now using CI Pipeline to trigger updates to the homebrew forumla
at https://github.com/starkandwayne/homebrew-cf
Spruce Release v1.1.1
New Features
- Now using CI Pipeline to trigger updates to the homebrew forumla
at https://github.com/starkandwayne/homebrew-cf
Spruce Release v1.1.0
New Features
- New
(( keys ... ))
operator for extracting the keys of a map
into a list, elsewhere in your manifest.
Bug Fixes
- Fixed Cursor.Glob aliasing bug. This was a pretty severe bug
affecting anyone using multiple static ranges in their network
definition.