github splunk/qbec v0.14.0

latest releases: v0.15.2, v0.15.1, v0.15.0...
3 years ago

Note: there is a regression with the std.manifestJson[Ex] function in this release. Please use v0.14.1 instead.

Update: added a new incompatibility discovered after release

  • qbec now allows data to be imported from external data sources. The current implementation allows you to run
    a command whose standard output may be included in your jsonnet component code.
    The reference page has more details.
    At this point, the expandHelmTemplate native function should be considered deprecated and will be removed
    in a future release. There is nothing that this function could do that cannot be accomplished using an
    external data source.

  • A new command qbec eval can now evaluate a single jsonnet file similar to jsonnet eval. This can also
    be run in the context of a qbec environment to be able to access environment specific properties.
    See qbec eval --help for more details. This deprecates the jsonnet-qbec executable that is packaged in the
    release. This executable may no longer be packaged in a future release.

  • qbec now allows computed variables to be defined in qbec.yaml. This works especially well with external
    data sources and also allow you to cache complex calculations.
    The reference page for qbec.yaml has more details.

  • Environment files for a qbec environment may now be specified as a glob pattern. qbec will load all matching
    files in sorted alphabetical order.

  • Miscellaneous improvements and optimizations for jsonnet evaluation. Most users, unless they are generating
    hundreds of objects or using complex jsonnet libraries will not see any significant performance improvements.

Incompatibilities

  • Preprocessors introduced in v0.13.4 have now been removed. These had awkward semantics and were honestly
    not ready for prime-time. No one was probably using this. The replacement functionality is more general
    and allows you to define computed vaiables in qbec.yaml.

  • Qbec no longer sets the qbec.io/component variable when evaluating components. This was also introduced in
    v0.13.4 and had dodgy semantics. There is no replacement for this functionality. If you started using this
    and are now stuck, please raise an issue where we can discuss this.

  • VM arguments are now processed before qbec changes the working directory to the qbec root. This means that any filename references in --vm:ext-str-list will be evaluated with respect to the directory from which the qbec command was executed and not the qbec root. This is consistent with the way environment files specified on the command line were already being processed.

Don't miss a new qbec release

NewReleases is sending notifications on new releases.