Documentation ¶
Overview ¶
Package engine implements the Go template engine as a Tiller Engine.
Tiller provides a simple interface for taking a Chart and rendering its templates. The 'engine' package implements this interface using Go's built-in 'text/template' package.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewLookupFunction ¶ added in v3.1.0
NewLookupFunction returns a function for looking up objects in the cluster. If the resource does not exist, no error is raised.
func Render ¶
Render takes a chart, optional values, and value overrides, and attempts to render the Go templates using the default options.
func RenderWithClient ¶ added in v3.1.0
func RenderWithClient(chrt *chart.Chart, values chartutil.Values, config *rest.Config) (map[string]string, error)
RenderWithClient takes a chart, optional values, and value overrides, and attempts to render the Go templates using the default options. This engine is client aware and so can have template functions that interact with the client
Types ¶
type Engine ¶
type Engine struct { // If strict is enabled, template rendering will fail if a template references // a value that was not passed in. Strict bool // In LintMode, some 'required' template values may be missing, so don't fail LintMode bool // contains filtered or unexported fields }
Engine is an implementation of 'cmd/tiller/environment'.Engine that uses Go templates.
func (Engine) Render ¶
Render takes a chart, optional values, and value overrides, and attempts to render the Go templates.
Render can be called repeatedly on the same engine.
This will look in the chart's 'templates' data (e.g. the 'templates/' directory) and attempt to render the templates there using the values passed in.
Values are scoped to their templates. A dependency template will not have access to the values set for its parent. If chart "foo" includes chart "bar", "bar" will not have access to the values for "foo".
Values should be prepared with something like `chartutils.ReadValues`.
Values are passed through the templates according to scope. If the top layer chart includes the chart foo, which includes the chart bar, the values map will be examined for a table called "foo". If "foo" is found in vals, that section of the values will be passed into the "foo" chart. And if that section contains a value named "bar", that value will be passed on to the bar chart during render time.