Skip to content

Releases: geofffranks/spruce

spruce-release Release v1.4.4

15 Jun 18:29
Compare
Choose a tag to compare

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

03 Jun 17:00
Compare
Choose a tag to compare

#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

02 Jun 14:23
Compare
Choose a tag to compare
Pre-release

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 becomes jobs.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

25 May 04:28
Compare
Choose a tag to compare

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

13 May 16:20
Compare
Choose a tag to compare

Bug Fixes

  • Fixing CI pipeline + homebrew version mismatching

spruce-release Release v1.3.0

13 May 15:51
Compare
Choose a tag to compare

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 via go get now, you will need to go 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 the static_ips operator

spruce-release Release v1.2.0

05 May 16:12
Compare
Choose a tag to compare

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

02 Mar 02:09
Compare
Choose a tag to compare

New Features

Spruce Release v1.1.1

01 Mar 21:43
Compare
Choose a tag to compare

New Features

Spruce Release v1.1.0

01 Mar 01:50
Compare
Choose a tag to compare

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.