Spiff reloaded...


Krueger, Uwe <uwe.krueger@...>
 

Is there still somebody out there using spiff?

Then you might be interested in some good news...

End of last year I've started to take a look into the source code.
After providing some major fixes for the official spiff release
I began to introduce new basic functionality that is very useful
for generating deployment manifests, in the context of multiple
cooperating deployments.

Unfortunately the development of the original spiff version is paused,
so, besides the fixes and some minor improvements, no more feature pull
requests were accepted.

Therefore I decided to offer the new functionality in a forked repository.
Here the first released version of spiff++ is out now. As usual with binaries
for linux and darwin.

In contrast to usual preprocessing based solutions for generating
yaml based deployment manifests, spiff completely works in the domain of
the yaml document. This offers the possibility to directly work with the
structured data in the yaml document without the need of thinking in
two description domains.

Spiff++ now significantly improves the possibilities to describe complex
structures in yaml documents based on dynaml expressions embedded in
the yaml documents with full access to the complete document.

- fully compatible with spiff
- as long as development of spiff is paused all fixes will be incorporated
- improved error reporting
- complete set of basic integer arithmetic
- arithmetic and built-in functions based on IPv4 addresses and CIDRs
- logical operators and conditional expressions
- rich set of new built-in functions
- joining of lists and maps
- extended multi-document merging features
- extendable by user defined functions as part of the yaml document by
introducing lambda expressions
- mapping support based on yaml nodes
- access to any foreign data source by consuming outputs of OS commands
- access to the file system
- dynamic in-document template processing

If you want to know more, please have a look at the documentation at

https://github.com/mandelsoft/spiff/blob/master/README.md

there you also find some examples how spiff++ can simplify your manifest
generation.

Happy spiffing
Uwe

Join {cf-dev@lists.cloudfoundry.org to automatically receive all group messages.