Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AppMetadata ¶ added in v0.3.0
type AppMetadata interface { // Namespace returns app namespace. Namespace() string // ChartName returns chart name ChartName() string // TemplatedName converts object name to templated Helm name. // Example: "my-app-service1" -> "{{ include "chart.fullname" . }}-service1" // "my-app-secret" -> "{{ include "chart.fullname" . }}-secret" // etc... TemplatedName(objName string) string // TemplatedString converts a string to templated string with chart name. TemplatedString(str string) string // TrimName trims common prefix from object name if exists. // We trim common prefix because helm already using release for this purpose. TrimName(objName string) string Config() config.Config }
AppMetadata handle common information about K8s objects in the chart.
type Output ¶
type Output interface {
Create(chartName, chartDir string, Crd bool, certManagerAsSubchart bool, certManagerVersion string, certManagerInstallCRD bool, templates []Template, filenames []string) error
}
Output - converts Template into helm chart on disk.
type Processor ¶
type Processor interface { // Process - converts k8s object to Helm template. // return false if not able to process given object type. Process(appMeta AppMetadata, unstructured *unstructured.Unstructured) (bool, Template, error) }
Processor - converts k8s object to helm template. Implement this interface and register it to a context to support a new k8s resource conversion.
type Template ¶
type Template interface { // Filename - returns template filename Filename() string // Values - returns set of values used in template Values() Values // Write - writes helm template into given writer Write(writer io.Writer) error }
Template - represents Helm template in 'templates' directory.
type Values ¶
type Values map[string]interface{}
Values - represents helm template values.yaml.
func (*Values) Add ¶ added in v0.3.0
Add - adds given value to values and returns its helm template representation {{ .Values.<valueName> }}
func (*Values) AddSecret ¶ added in v0.3.1
AddSecret - adds empty value to values and returns its helm template representation {{ required "<valueName>" .Values.<valueName> }}. Set toBase64=true for Secret data to be base64 encoded and set false for Secret stringData.
func (*Values) AddYaml ¶ added in v0.3.31
func (v *Values) AddYaml(value interface{}, indent int, newLine bool, name ...string) (string, error)
AddYaml - adds given value to values and returns its helm template representation as Yaml {{ .Values.<valueName> | toYaml | indent i }} indent <= 0 will be omitted.