/carvel-ytt

YAML templating tool that works on YAML structure instead of text

Primary LanguageGoApache License 2.0Apache-2.0

logo

ytt

Overview

ytt (pronounced spelled out) is a templating tool that understands YAML structure. It helps you easily configure complex software via reusable templates and user provided values. Ytt includes the following features:

  • Structural templating: understands yaml structure so users can focus on their configuration instead of issues associated with text templating, such as YAML value quoting or manual template indentation
  • Built-in programming language: includes the "fully featured" Python-like programming language Starklark which helps ease the burden of configuring complex software through a richer set of functionality.
  • Reusable configuration: You can reuse the same configuration in different environments by applying environment-specific values.
  • Custom validations: coupled with the fast and deterministic execution, allows you to take advantage of faster feedback loops when creating and testing templates
  • Overlays: this advanced configuration helps users manage the customization required for complex software. For more, see this example in the online playground.
  • Sandboxing: provides a secure, deterministic environment for execution of templates

Try it

To get started with ytt and to see examples, you use the online playground or download the binaries and run the playground locally.

Join the Community and Make Carvel Better

Carvel is better because of our contributors and maintainers. It is because of you that we can bring great software to the community. Please join us during our online community meetings. Details can be found on our Carvel website.

You can chat with us on Kubernetes Slack in the #carvel channel and follow us on Twitter at @carvel_dev.

Check out which organizations are using and contributing to Carvel: Adopter's list

Integrating with ytt

If you want to integrate ytt within your own tooling, review our APIs.