template

package
v0.0.0-...-d3d374b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 15, 2018 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package template provides TemplateProcessor, capable of transforming Template objects into Config objects.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddParameter

func AddParameter(t *api.Template, param api.Parameter)

AddParameter adds new custom parameter to the Template. It overrides the existing parameter, if already defined.

func GetParameterByName

func GetParameterByName(t *api.Template, name string) *api.Parameter

GetParameterByName searches for a Parameter in the Template based on its name.

Types

type Processor

type Processor struct {
	Generators map[string]Generator
}

Processor process the Template into the List with substituted parameters

func NewProcessor

func NewProcessor(generators map[string]Generator) *Processor

NewProcessor creates new Processor and initializes its set of generators.

func (*Processor) EvaluateParameterSubstitution

func (p *Processor) EvaluateParameterSubstitution(params map[string]api.Parameter, in string) (string, bool)

EvaluateParameterSubstitution replaces escaped parameters in a string with values from the provided map. Returns the substituted value (if any substitution applied) and a boolean indicating if the resulting value should be treated as a string(true) or a non-string value(false) for purposes of json encoding.

func (*Processor) GenerateParameterValues

func (p *Processor) GenerateParameterValues(t *api.Template) *field.Error

GenerateParameterValues generates Value for each Parameter of the given Template that has Generate field specified where Value is not already supplied.

Examples:

from | value ----------------------------- "test[0-9]{1}x" | "test7x" "[0-1]{8}" | "01001100" "0x[A-F0-9]{4}" | "0xB3AF" "[a-zA-Z0-9]{8}" | "hW4yQU5i" If an error occurs, the parameter that caused the error is returned along with the error message.

func (*Processor) Process

func (p *Processor) Process(template *api.Template) field.ErrorList

Process transforms Template object into List object. It generates Parameter values using the defined set of generators first, and then it substitutes all Parameter expression occurrences with their corresponding values (currently in the containers' Environment variables only).

func (*Processor) SubstituteParameters

func (p *Processor) SubstituteParameters(params map[string]api.Parameter, item runtime.Object) (runtime.Object, error)

SubstituteParameters loops over all values defined in structured and unstructured types that are children of item.

Example of Parameter expression:

  • ${PARAMETER_NAME}

type TemplateReference

type TemplateReference struct {
	Namespace string
	Name      string
}

TemplateReference points to a stored template

func ParseTemplateReference

func ParseTemplateReference(s string) (TemplateReference, error)

ParseTemplateReference parses the reference to a template into a TemplateReference.

func (TemplateReference) HasNamespace

func (r TemplateReference) HasNamespace() bool

func (TemplateReference) String

func (r TemplateReference) String() string

Directories

Path Synopsis
api
Package api is the internal version of the API.
Package api is the internal version of the API.
v1
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
validation
Package validation has functions for validating the correctness of Template objects and explaining what is wrong with them when they aren't valid.
Package validation has functions for validating the correctness of Template objects and explaining what is wrong with them when they aren't valid.
client
clientset_generated/internalclientset
This package has the automatically generated clientset.
This package has the automatically generated clientset.
clientset_generated/internalclientset/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
clientset_generated/internalclientset/typed/core/unversioned
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
clientset_generated/internalclientset/typed/core/unversioned/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
clientset_generated/release_v1_3
This package has the automatically generated clientset.
This package has the automatically generated clientset.
clientset_generated/release_v1_3/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
clientset_generated/release_v1_3/typed/core/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
clientset_generated/release_v1_3/typed/core/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
clientset_generated/release_v1_4
This package has the automatically generated clientset.
This package has the automatically generated clientset.
clientset_generated/release_v1_4/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
clientset_generated/release_v1_4/typed/core/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
clientset_generated/release_v1_4/typed/core/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
Package generator defines GeneratorInterface interface and implements some random value generators.
Package generator defines GeneratorInterface interface and implements some random value generators.
examples
Package examples demonstrates possible implementation of some random value generators.
Package examples demonstrates possible implementation of some random value generators.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL