builder

package
v1.0.5 Latest Latest
Warning

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

Go to latest
Published: Mar 8, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package builder implements builder and CRDs for creating API objects for testing.

Index

Constants

This section is empty.

Variables

View Source
var (
	// BootstrapGroupVersion is group version used for bootstrap objects.
	BootstrapGroupVersion = schema.GroupVersion{Group: "bootstrap.cluster.x-k8s.io", Version: "v1beta1"}

	// GenericBootstrapConfigKind is the Kind for the GenericBootstrapConfig.
	GenericBootstrapConfigKind = "GenericBootstrapConfig"
	// GenericBootstrapConfigCRD is a generic boostrap CRD.
	GenericBootstrapConfigCRD = generateCRD(BootstrapGroupVersion.WithKind(GenericBootstrapConfigKind))

	// GenericBootstrapConfigTemplateKind is the Kind for the GenericBoostrapConfigTemplate.
	GenericBootstrapConfigTemplateKind = "GenericBootstrapConfigTemplate"
	// GenericBootstrapConfigTemplateCRD is a generic boostrap template CRD.
	GenericBootstrapConfigTemplateCRD = generateCRD(BootstrapGroupVersion.WithKind(GenericBootstrapConfigTemplateKind))
)
View Source
var (
	// ControlPlaneGroupVersion is group version used for control plane objects.
	ControlPlaneGroupVersion = schema.GroupVersion{Group: "controlplane.cluster.x-k8s.io", Version: "v1beta1"}

	// GenericControlPlaneKind is the Kind for the GenericControlPlane.
	GenericControlPlaneKind = "GenericControlPlane"
	// GenericControlPlaneCRD is a generic control plane CRD.
	GenericControlPlaneCRD = generateCRD(ControlPlaneGroupVersion.WithKind(GenericControlPlaneKind))

	// GenericControlPlaneTemplateKind is the Kind for the GenericControlPlaneTemplate.
	GenericControlPlaneTemplateKind = "GenericControlPlaneTemplate"
	// GenericControlPlaneTemplateCRD is a generic control plane template CRD.
	GenericControlPlaneTemplateCRD = generateCRD(ControlPlaneGroupVersion.WithKind(GenericControlPlaneTemplateKind))
)
View Source
var (
	// InfrastructureGroupVersion is group version used for infrastructure objects.
	InfrastructureGroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"}

	// GenericInfrastructureMachineKind is the Kind for the GenericInfrastructureMachine.
	GenericInfrastructureMachineKind = "GenericInfrastructureMachine"
	// GenericInfrastructureMachineCRD is a generic infrastructure machine CRD.
	GenericInfrastructureMachineCRD = generateCRD(InfrastructureGroupVersion.WithKind(GenericInfrastructureMachineKind))

	// GenericInfrastructureMachineTemplateKind is the Kind for the GenericInfrastructureMachineTemplate.
	GenericInfrastructureMachineTemplateKind = "GenericInfrastructureMachineTemplate"
	// GenericInfrastructureMachineTemplateCRD is a generic infrastructure machine template CRD.
	GenericInfrastructureMachineTemplateCRD = generateCRD(InfrastructureGroupVersion.WithKind(GenericInfrastructureMachineTemplateKind))

	// GenericInfrastructureClusterKind is the kind for the GenericInfrastructureCluster type.
	GenericInfrastructureClusterKind = "GenericInfrastructureCluster"
	// GenericInfrastructureClusterCRD is a generic infrastructure machine CRD.
	GenericInfrastructureClusterCRD = generateCRD(InfrastructureGroupVersion.WithKind(GenericInfrastructureClusterKind))

	// GenericInfrastructureClusterTemplateKind is the kind for the GenericInfrastructureClusterTemplate type.
	GenericInfrastructureClusterTemplateKind = "GenericInfrastructureClusterTemplate"
	// GenericInfrastructureClusterTemplateCRD is a generic infrastructure machine template CRD.
	GenericInfrastructureClusterTemplateCRD = generateCRD(InfrastructureGroupVersion.WithKind(GenericInfrastructureClusterTemplateKind))
)
View Source
var (
	// RemediationGroupVersion is group version used for remediation objects.
	RemediationGroupVersion = schema.GroupVersion{Group: "remediation.external.io", Version: "v1beta1"}

	// GenericRemediationCRD is a generic infrastructure remediation CRD.
	GenericRemediationCRD = generateCRD(RemediationGroupVersion.WithKind("GenericExternalRemediation"))

	// GenericRemediationTemplateCRD is a generic infrastructure remediation template CRD.
	GenericRemediationTemplateCRD = generateCRD(RemediationGroupVersion.WithKind("GenericExternalRemediationTemplate"))
)

Functions

This section is empty.

Types

type BootstrapTemplateBuilder

type BootstrapTemplateBuilder struct {
	// contains filtered or unexported fields
}

BootstrapTemplateBuilder holds the variables needed to build a generic BootstrapTemplate.

func BootstrapTemplate

func BootstrapTemplate(namespace, name string) *BootstrapTemplateBuilder

BootstrapTemplate creates a BootstrapTemplateBuilder with the given name and namespace.

func (*BootstrapTemplateBuilder) Build

Build creates a new Unstructured object with the information passed to the BootstrapTemplateBuilder.

type ClusterBuilder

type ClusterBuilder struct {
	// contains filtered or unexported fields
}

ClusterBuilder holds the variables and objects required to build a clusterv1.Cluster.

func Cluster

func Cluster(namespace, name string) *ClusterBuilder

Cluster returns a ClusterBuilder with the given name and namespace.

func (*ClusterBuilder) Build

func (c *ClusterBuilder) Build() *clusterv1.Cluster

Build returns a Cluster with the attributes added to the ClusterBuilder.

func (*ClusterBuilder) WithClusterClass added in v1.0.0

func (c *ClusterBuilder) WithClusterClass(class clusterv1.ClusterClass) *ClusterBuilder

WithClusterClass adds the passed ClusterClass Name to the ClusterBuilder.

func (*ClusterBuilder) WithControlPlane

func (c *ClusterBuilder) WithControlPlane(t *unstructured.Unstructured) *ClusterBuilder

WithControlPlane adds the passed ControlPlane to the ClusterBuilder.

func (*ClusterBuilder) WithInfrastructureCluster

func (c *ClusterBuilder) WithInfrastructureCluster(t *unstructured.Unstructured) *ClusterBuilder

WithInfrastructureCluster adds the passed InfrastructureCluster to the ClusterBuilder.

type ClusterClassBuilder

type ClusterClassBuilder struct {
	// contains filtered or unexported fields
}

ClusterClassBuilder holds the variables and objects required to build a clusterv1.ClusterClass.

func ClusterClass

func ClusterClass(namespace, name string) *ClusterClassBuilder

ClusterClass returns a ClusterClassBuilder with the given name and namespace.

func (*ClusterClassBuilder) Build

Build takes the objects and variables in the ClusterClass builder and uses them to create a ClusterClass object.

func (*ClusterClassBuilder) WithControlPlaneInfrastructureMachineTemplate

func (c *ClusterClassBuilder) WithControlPlaneInfrastructureMachineTemplate(t *unstructured.Unstructured) *ClusterClassBuilder

WithControlPlaneInfrastructureMachineTemplate adds the ControlPlane's InfrastructureMachineTemplate to the ClusterClassBuilder.

func (*ClusterClassBuilder) WithControlPlaneMetadata

func (c *ClusterClassBuilder) WithControlPlaneMetadata(labels, annotations map[string]string) *ClusterClassBuilder

WithControlPlaneMetadata adds the given labels and annotations for use with the ControlPlane to the ClusterClassBuilder.

func (*ClusterClassBuilder) WithControlPlaneTemplate

func (c *ClusterClassBuilder) WithControlPlaneTemplate(t *unstructured.Unstructured) *ClusterClassBuilder

WithControlPlaneTemplate adds the passed ControlPlaneTemplate to the ClusterClassBuilder.

func (*ClusterClassBuilder) WithInfrastructureClusterTemplate

func (c *ClusterClassBuilder) WithInfrastructureClusterTemplate(t *unstructured.Unstructured) *ClusterClassBuilder

WithInfrastructureClusterTemplate adds the passed InfrastructureClusterTemplate to the ClusterClassBuilder.

func (*ClusterClassBuilder) WithWorkerMachineDeploymentClasses

func (c *ClusterClassBuilder) WithWorkerMachineDeploymentClasses(mdcs []clusterv1.MachineDeploymentClass) *ClusterClassBuilder

WithWorkerMachineDeploymentClasses adds the variables and objects needed to create MachineDeploymentTemplates for a ClusterClassBuilder.

type ControlPlaneBuilder

type ControlPlaneBuilder struct {
	// contains filtered or unexported fields
}

ControlPlaneBuilder holds the variables and objects needed to build a generic object for cluster.spec.controlPlaneRef.

func ControlPlane

func ControlPlane(namespace, name string) *ControlPlaneBuilder

ControlPlane returns a ControlPlaneBuilder with the given name and Namespace.

func (*ControlPlaneBuilder) Build

Build generates an Unstructured object from the information passed to the ControlPlaneBuilder.

func (*ControlPlaneBuilder) WithInfrastructureMachineTemplate

func (f *ControlPlaneBuilder) WithInfrastructureMachineTemplate(t *unstructured.Unstructured) *ControlPlaneBuilder

WithInfrastructureMachineTemplate adds the given unstructured object to the ControlPlaneBuilder as its InfrastructureMachineTemplate.

func (*ControlPlaneBuilder) WithSpecFields

func (f *ControlPlaneBuilder) WithSpecFields(m map[string]interface{}) *ControlPlaneBuilder

WithSpecFields sets a map of spec fields on the unstructured object. The keys in the map represent the path and the value corresponds to the value of the spec field.

Note: all the paths should start with "spec."

Example map: map[string]interface{}{
    "spec.version": "v1.2.3",
}.

func (*ControlPlaneBuilder) WithStatusFields

func (f *ControlPlaneBuilder) WithStatusFields(m map[string]interface{}) *ControlPlaneBuilder

WithStatusFields sets a map of status fields on the unstructured object. The keys in the map represent the path and the value corresponds to the value of the status field.

Note: all the paths should start with "status."

Example map: map[string]interface{}{
    "status.version": "v1.2.3",
}.

type ControlPlaneTemplateBuilder

type ControlPlaneTemplateBuilder struct {
	// contains filtered or unexported fields
}

ControlPlaneTemplateBuilder holds the variables and objects needed to build a generic ControlPlane template.

func ControlPlaneTemplate

func ControlPlaneTemplate(namespace, name string) *ControlPlaneTemplateBuilder

ControlPlaneTemplate creates a NewControlPlaneTemplate builder with the given name and namespace.

func (*ControlPlaneTemplateBuilder) Build

Build creates an Unstructured object from the variables passed to the ControlPlaneTemplateBuilder.

func (*ControlPlaneTemplateBuilder) WithInfrastructureMachineTemplate

func (c *ControlPlaneTemplateBuilder) WithInfrastructureMachineTemplate(t *unstructured.Unstructured) *ControlPlaneTemplateBuilder

WithInfrastructureMachineTemplate adds the given Unstructured object to the ControlPlaneTemplateBuilder as its InfrastructureMachineTemplate.

func (*ControlPlaneTemplateBuilder) WithSpecFields

func (c *ControlPlaneTemplateBuilder) WithSpecFields(fields map[string]interface{}) *ControlPlaneTemplateBuilder

WithSpecFields will add fields of any type to the object spec. It takes an argument, fields, which is of the form path: object.

type InfrastructureClusterBuilder

type InfrastructureClusterBuilder struct {
	// contains filtered or unexported fields
}

InfrastructureClusterBuilder holds the variables and objects needed to build a generic InfrastructureCluster.

func InfrastructureCluster

func InfrastructureCluster(namespace, name string) *InfrastructureClusterBuilder

InfrastructureCluster returns and InfrastructureClusterBuilder with the given name and namespace.

func (*InfrastructureClusterBuilder) Build

Build returns an Unstructured object with the information passed to the InfrastructureClusterBuilder.

func (*InfrastructureClusterBuilder) WithSpecFields

func (i *InfrastructureClusterBuilder) WithSpecFields(fields map[string]interface{}) *InfrastructureClusterBuilder

WithSpecFields will add fields of any type to the object spec. It takes an argument, fields, which is of the form path: object.

type InfrastructureClusterTemplateBuilder

type InfrastructureClusterTemplateBuilder struct {
	// contains filtered or unexported fields
}

InfrastructureClusterTemplateBuilder holds the variables needed to build a generic InfrastructureClusterTemplate.

func InfrastructureClusterTemplate

func InfrastructureClusterTemplate(namespace, name string) *InfrastructureClusterTemplateBuilder

InfrastructureClusterTemplate returns an InfrastructureClusterTemplateBuilder with the given name and namespace.

func (*InfrastructureClusterTemplateBuilder) Build

Build creates a new Unstructured object with the variables passed to the InfrastructureClusterTemplateBuilder.

func (*InfrastructureClusterTemplateBuilder) WithSpecFields

func (i *InfrastructureClusterTemplateBuilder) WithSpecFields(fields map[string]interface{}) *InfrastructureClusterTemplateBuilder

WithSpecFields will add fields of any type to the object spec. It takes an argument, fields, which is of the form path: object.

type InfrastructureMachineTemplateBuilder

type InfrastructureMachineTemplateBuilder struct {
	// contains filtered or unexported fields
}

InfrastructureMachineTemplateBuilder holds the variables and objects needed to build an InfrastructureMachineTemplate.

func InfrastructureMachineTemplate

func InfrastructureMachineTemplate(namespace, name string) *InfrastructureMachineTemplateBuilder

InfrastructureMachineTemplate creates an InfrastructureMachineTemplateBuilder with the given name and namespace.

func (*InfrastructureMachineTemplateBuilder) Build

Build takes the objects and variables in the InfrastructureMachineTemplateBuilder and generates an unstructured object.

func (*InfrastructureMachineTemplateBuilder) WithSpecFields

func (i *InfrastructureMachineTemplateBuilder) WithSpecFields(fields map[string]interface{}) *InfrastructureMachineTemplateBuilder

WithSpecFields will add fields of any type to the object spec. It takes an argument, fields, which is of the form path: object.

type MachineDeploymentBuilder

type MachineDeploymentBuilder struct {
	// contains filtered or unexported fields
}

MachineDeploymentBuilder holds the variables and objects needed to build a generic MachineDeployment.

func MachineDeployment

func MachineDeployment(namespace, name string) *MachineDeploymentBuilder

MachineDeployment creates a MachineDeploymentBuilder with the given name and namespace.

func (*MachineDeploymentBuilder) Build

Build creates a new MachineDeployment with the variables and objects passed to the MachineDeploymentBuilder.

func (*MachineDeploymentBuilder) WithBootstrapTemplate

WithBootstrapTemplate adds the passed Unstructured object to the MachineDeploymentBuilder as a bootstrapTemplate.

func (*MachineDeploymentBuilder) WithGeneration

func (m *MachineDeploymentBuilder) WithGeneration(generation int64) *MachineDeploymentBuilder

WithGeneration sets the passed value on the machine deployments object metadata.

func (*MachineDeploymentBuilder) WithInfrastructureTemplate

func (m *MachineDeploymentBuilder) WithInfrastructureTemplate(ref *unstructured.Unstructured) *MachineDeploymentBuilder

WithInfrastructureTemplate adds the passed unstructured object to the MachineDeployment builder as an infrastructureMachineTemplate.

func (*MachineDeploymentBuilder) WithLabels

WithLabels adds the given labels to the MachineDeploymentBuilder.

func (*MachineDeploymentBuilder) WithReplicas

func (m *MachineDeploymentBuilder) WithReplicas(replicas int32) *MachineDeploymentBuilder

WithReplicas sets the number of replicas for the MachineDeploymentClassBuilder.

func (*MachineDeploymentBuilder) WithStatus

WithStatus sets the passed status object as the status of the machine deployment object. TODO (killianmuldoon): Revise making this method consistent with WithSpec fields in objectbuilders.

func (*MachineDeploymentBuilder) WithVersion

func (m *MachineDeploymentBuilder) WithVersion(version string) *MachineDeploymentBuilder

WithVersion sets the passed version on the machine deployment spec.

type MachineDeploymentClassBuilder

type MachineDeploymentClassBuilder struct {
	// contains filtered or unexported fields
}

MachineDeploymentClassBuilder holds the variables and objects required to build a clusterv1.MachineDeploymentClass.

func MachineDeploymentClass

func MachineDeploymentClass(namespace, name string) *MachineDeploymentClassBuilder

MachineDeploymentClass returns a MachineDeploymentClassBuilder with the given name and namespace.

func (*MachineDeploymentClassBuilder) Build

Build creates a full MachineDeploymentClass object with the variables passed to the MachineDeploymentClassBuilder.

func (*MachineDeploymentClassBuilder) WithAnnotations

func (m *MachineDeploymentClassBuilder) WithAnnotations(annotations map[string]string) *MachineDeploymentClassBuilder

WithAnnotations sets the annotations for the MachineDeploymentClassBuilder.

func (*MachineDeploymentClassBuilder) WithBootstrapTemplate

WithBootstrapTemplate registers the passed Unstructured object as the BootstrapTemplate for the MachineDeploymentClassBuilder.

func (*MachineDeploymentClassBuilder) WithClass added in v1.0.0

WithClass sets the MachineDeploymentClass name for the MachineDeploymentClassBuilder.

func (*MachineDeploymentClassBuilder) WithInfrastructureTemplate

WithInfrastructureTemplate registers the passed Unstructured object as the InfrastructureMachineTemplate for the MachineDeploymentClassBuilder.

func (*MachineDeploymentClassBuilder) WithLabels

WithLabels sets the labels for the MachineDeploymentClassBuilder.

type MachineSetBuilder

type MachineSetBuilder struct {
	// contains filtered or unexported fields
}

MachineSetBuilder holds the variables and objects needed to build a generic MachineSet.

func MachineSet

func MachineSet(namespace, name string) *MachineSetBuilder

MachineSet creates a MachineSetBuilder with the given name and namespace.

func (*MachineSetBuilder) Build

Build creates a new MachineSet with the variables and objects passed to the MachineSetBuilder.

func (*MachineSetBuilder) WithBootstrapTemplate

func (m *MachineSetBuilder) WithBootstrapTemplate(ref *unstructured.Unstructured) *MachineSetBuilder

WithBootstrapTemplate adds the passed Unstructured object to the MachineSetBuilder as a bootstrapTemplate.

func (*MachineSetBuilder) WithInfrastructureTemplate

func (m *MachineSetBuilder) WithInfrastructureTemplate(ref *unstructured.Unstructured) *MachineSetBuilder

WithInfrastructureTemplate adds the passed unstructured object to the MachineSet builder as an infrastructureMachineTemplate.

func (*MachineSetBuilder) WithLabels

func (m *MachineSetBuilder) WithLabels(labels map[string]string) *MachineSetBuilder

WithLabels adds the given labels to the MachineSetBuilder.

func (*MachineSetBuilder) WithReplicas

func (m *MachineSetBuilder) WithReplicas(replicas *int32) *MachineSetBuilder

WithReplicas sets the number of replicas for the MachineSetClassBuilder.

Jump to

Keyboard shortcuts

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