Documentation
¶
Index ¶
- func ClientFromContext(ctx context.Context) (cluster.Client, error)
- func MergeMaps(x, y map[string]any) map[string]any
- func NewContextWithClient(ctx context.Context, client cluster.Client) context.Context
- func NewContextWithReconcilerName(ctx context.Context, reconcilerName string) context.Context
- func ReconcilerNameFromContext(ctx context.Context) (string, error)
- type DummyGenerator
- type Generator
- type HelmGenerator
- type KustomizeGenerator
- type ObjectTransformer
- type ParameterTransformer
- type SchemeBuilder
- type TemplateParameterTransformer
- type TransformableGenerator
- func NewGenerator(generator Generator) TransformableGenerator
- func NewHelmGeneratorWithObjectTransformer(name string, fsys fs.FS, chartPath string, client client.Client, ...) (TransformableGenerator, error)
- func NewHelmGeneratorWithParameterTransformer(name string, fsys fs.FS, chartPath string, client client.Client, ...) (TransformableGenerator, error)
- func NewKustomizeGeneratorWithObjectTransformer(fsys fs.FS, kustomizationPath string, templateSuffix string, ...) (TransformableGenerator, error)
- func NewKustomizeGeneratorWithParameterTransformer(fsys fs.FS, kustomizationPath string, templateSuffix string, ...) (TransformableGenerator, error)
- func NewTransformableHelmGenerator(name string, fsys fs.FS, chartPath string, client client.Client, ...) (TransformableGenerator, error)
- func NewTransformableKustomizeGenerator(fsys fs.FS, kustomizationPath string, templateSuffix string, ...) (TransformableGenerator, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ClientFromContext ¶ added in v0.2.0
Retrieve client from given context.
func MergeMaps ¶
Deep-merge two maps with the usual logic and return the result. The first map (x) must be deeply JSON (i.e. consist deeply of JSON values only). The maps given as input will not be changed.
func NewContextWithClient ¶ added in v0.2.0
Create new context with client added as value.
func NewContextWithReconcilerName ¶ added in v0.2.0
Create new context with reconciler name added as value.
Types ¶
type DummyGenerator ¶
type DummyGenerator struct{}
DummyGenerator is a generator that does nothing.
func NewDummyGenerator ¶
func NewDummyGenerator() (*DummyGenerator, error)
Create a new DummyGenerator.
type Generator ¶
type Generator interface {
Generate(ctx context.Context, namespace string, name string, parameters types.Unstructurable) ([]client.Object, error)
}
Resource generator interface. When called from the reconciler, the arguments namespace, name and parameters will match the return values of the component's GetDeploymentNamespace(), GetDeploymentName() and GetSpec() methods, respectively.
type HelmGenerator ¶
type HelmGenerator struct {
// contains filtered or unexported fields
}
HelmGenerator is a Generator implementation that basically renders a given Helm chart. A few restrictions apply to the provided Helm chart: it must not contain any subcharts, some template functions are not supported, some bultin variables are not supported, and hooks are processed in a slightly different fashion.
func NewHelmGenerator ¶
func NewHelmGenerator(name string, fsys fs.FS, chartPath string, client client.Client, discoveryClient discovery.DiscoveryInterface) (*HelmGenerator, error)
Create a new HelmGenerator. Deprecation warning: the parameters name, client and discoveryClient are ignored (can be passed as empty resp. nil) and will be removed in a future release; the according values will be retrieved from the context passed to Generate().
type KustomizeGenerator ¶
type KustomizeGenerator struct {
// contains filtered or unexported fields
}
KustomizeGenerator is a Generator implementation that basically renders a given Kustomization.
func NewKustomizeGenerator ¶
func NewKustomizeGenerator(fsys fs.FS, kustomizationPath string, templateSuffix string, client client.Client) (*KustomizeGenerator, error)
Create a new KustomizeGenerator. Deprecation warning: the parameter client is ignored (can be passed as nil) and will be removed in a future release; the according value will be retrieved from the context passed to Generate().
type ObjectTransformer ¶
type ObjectTransformer interface {
TransformObjects(namespace string, name string, objects []client.Object) ([]client.Object, error)
}
Object transformer interface. Allows to manipulate the parameters returned by an existing generator.
type ParameterTransformer ¶
type ParameterTransformer interface {
TransformParameters(namespace string, name string, parameters types.Unstructurable) (types.Unstructurable, error)
}
Parameter transformer interface. Allows to manipulate the parameters passed to an existing generator.
type SchemeBuilder ¶ added in v0.2.0
SchemeBuilder interface.
type TemplateParameterTransformer ¶
type TemplateParameterTransformer struct {
// contains filtered or unexported fields
}
func NewTemplateParameterTransformer ¶
func NewTemplateParameterTransformer(fsys fs.FS, path string) (*TemplateParameterTransformer, error)
func (*TemplateParameterTransformer) TransformParameters ¶
func (t *TemplateParameterTransformer) TransformParameters(namespace string, name string, parameters types.Unstructurable) (types.Unstructurable, error)
type TransformableGenerator ¶
type TransformableGenerator interface { Generator WithParameterTransformer(transformer ParameterTransformer) TransformableGenerator WithObjectTransformer(transformer ObjectTransformer) TransformableGenerator }
Interface for generators that can be enhanced with parameter/object transformers.
func NewGenerator ¶
func NewGenerator(generator Generator) TransformableGenerator
func NewHelmGeneratorWithObjectTransformer ¶
func NewHelmGeneratorWithObjectTransformer(name string, fsys fs.FS, chartPath string, client client.Client, discoveryClient discovery.DiscoveryInterface, transformer ObjectTransformer) (TransformableGenerator, error)
Create a new HelmGenerator with an ObjectTransformer attached (further transformers can be attached to the returned generator object). Deprecation warning: the parameters name, client and discoveryClient are ignored (can be passed as empty resp. nil) and will be removed in a future release.
func NewHelmGeneratorWithParameterTransformer ¶
func NewHelmGeneratorWithParameterTransformer(name string, fsys fs.FS, chartPath string, client client.Client, discoveryClient discovery.DiscoveryInterface, transformer ParameterTransformer) (TransformableGenerator, error)
Create a new HelmGenerator with a ParameterTransformer attached (further transformers can be attached to the returned generator object). Deprecation warning: the parameters name, client and discoveryClient are ignored (can be passed as empty resp. nil) and will be removed in a future release.
func NewKustomizeGeneratorWithObjectTransformer ¶
func NewKustomizeGeneratorWithObjectTransformer(fsys fs.FS, kustomizationPath string, templateSuffix string, client client.Client, transformer ObjectTransformer) (TransformableGenerator, error)
Create a new KustomizeGenerator with an ObjectTransformer attached (further transformers can be attached to the returned generator object). Deprecation warning: the parameter client is ignored (can be passed as nil) and will be removed in a future release.
func NewKustomizeGeneratorWithParameterTransformer ¶
func NewKustomizeGeneratorWithParameterTransformer(fsys fs.FS, kustomizationPath string, templateSuffix string, client client.Client, transformer ParameterTransformer) (TransformableGenerator, error)
Create a new KustomizeGenerator with a ParameterTransformer attached (further transformers can be attached to the returned generator object). Deprecation warning: the parameter client is ignored (can be passed as nil) and will be removed in a future release.
func NewTransformableHelmGenerator ¶ added in v0.1.2
func NewTransformableHelmGenerator(name string, fsys fs.FS, chartPath string, client client.Client, discoveryClient discovery.DiscoveryInterface) (TransformableGenerator, error)
Create a new HelmGenerator as TransformableGenerator. Deprecation warning: the parameters name, client and discoveryClient are ignored (can be passed as empty resp. nil) and will be removed in a future release.
func NewTransformableKustomizeGenerator ¶ added in v0.1.2
func NewTransformableKustomizeGenerator(fsys fs.FS, kustomizationPath string, templateSuffix string, client client.Client) (TransformableGenerator, error)
Create a new KustomizeGenerator as TransformableGenerator. Deprecation warning: the parameter client is ignored (can be passed as nil) and will be removed in a future release.