v1alpha1

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Jun 11, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=containerinfra.openstack.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "containerinfra.openstack.crossplane.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	ClustertemplateV1_Kind             = "ClustertemplateV1"
	ClustertemplateV1_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ClustertemplateV1_Kind}.String()
	ClustertemplateV1_KindAPIVersion   = ClustertemplateV1_Kind + "." + CRDGroupVersion.String()
	ClustertemplateV1_GroupVersionKind = CRDGroupVersion.WithKind(ClustertemplateV1_Kind)
)

Repository type metadata.

View Source
var (
	ClusterV1_Kind             = "ClusterV1"
	ClusterV1_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ClusterV1_Kind}.String()
	ClusterV1_KindAPIVersion   = ClusterV1_Kind + "." + CRDGroupVersion.String()
	ClusterV1_GroupVersionKind = CRDGroupVersion.WithKind(ClusterV1_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	NodegroupV1_Kind             = "NodegroupV1"
	NodegroupV1_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NodegroupV1_Kind}.String()
	NodegroupV1_KindAPIVersion   = NodegroupV1_Kind + "." + CRDGroupVersion.String()
	NodegroupV1_GroupVersionKind = CRDGroupVersion.WithKind(NodegroupV1_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type ClusterV1

type ClusterV1 struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterTemplateId) || (has(self.initProvider) && has(self.initProvider.clusterTemplateId))",message="spec.forProvider.clusterTemplateId is a required parameter"
	Spec   ClusterV1Spec   `json:"spec"`
	Status ClusterV1Status `json:"status,omitempty"`
}

ClusterV1 is the Schema for the ClusterV1s API. Manages a V1 Magnum node group resource within OpenStack. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,openstack}

func (*ClusterV1) DeepCopy

func (in *ClusterV1) DeepCopy() *ClusterV1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1.

func (*ClusterV1) DeepCopyInto

func (in *ClusterV1) DeepCopyInto(out *ClusterV1)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterV1) DeepCopyObject

func (in *ClusterV1) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClusterV1) GetCondition

func (mg *ClusterV1) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ClusterV1.

func (*ClusterV1) GetConnectionDetailsMapping

func (tr *ClusterV1) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ClusterV1

func (*ClusterV1) GetDeletionPolicy

func (mg *ClusterV1) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ClusterV1.

func (*ClusterV1) GetID

func (tr *ClusterV1) GetID() string

GetID returns ID of underlying Terraform resource of this ClusterV1

func (*ClusterV1) GetInitParameters added in v0.3.0

func (tr *ClusterV1) GetInitParameters() (map[string]any, error)

GetInitParameters of this ClusterV1

func (*ClusterV1) GetManagementPolicies added in v0.3.0

func (mg *ClusterV1) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ClusterV1.

func (*ClusterV1) GetMergedParameters added in v0.3.0

func (tr *ClusterV1) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ClusterV1

func (*ClusterV1) GetObservation

func (tr *ClusterV1) GetObservation() (map[string]any, error)

GetObservation of this ClusterV1

func (*ClusterV1) GetParameters

func (tr *ClusterV1) GetParameters() (map[string]any, error)

GetParameters of this ClusterV1

func (*ClusterV1) GetProviderConfigReference

func (mg *ClusterV1) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ClusterV1.

func (*ClusterV1) GetPublishConnectionDetailsTo

func (mg *ClusterV1) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ClusterV1.

func (*ClusterV1) GetTerraformResourceType

func (mg *ClusterV1) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ClusterV1

func (*ClusterV1) GetTerraformSchemaVersion

func (tr *ClusterV1) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ClusterV1) GetWriteConnectionSecretToReference

func (mg *ClusterV1) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ClusterV1.

func (*ClusterV1) LateInitialize

func (tr *ClusterV1) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ClusterV1 using its observed tfState. returns True if there are any spec changes for the resource.

func (*ClusterV1) ResolveReferences

func (mg *ClusterV1) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this ClusterV1.

func (*ClusterV1) SetConditions

func (mg *ClusterV1) SetConditions(c ...xpv1.Condition)

SetConditions of this ClusterV1.

func (*ClusterV1) SetDeletionPolicy

func (mg *ClusterV1) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ClusterV1.

func (*ClusterV1) SetManagementPolicies added in v0.3.0

func (mg *ClusterV1) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ClusterV1.

func (*ClusterV1) SetObservation

func (tr *ClusterV1) SetObservation(obs map[string]any) error

SetObservation for this ClusterV1

func (*ClusterV1) SetParameters

func (tr *ClusterV1) SetParameters(params map[string]any) error

SetParameters for this ClusterV1

func (*ClusterV1) SetProviderConfigReference

func (mg *ClusterV1) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ClusterV1.

func (*ClusterV1) SetPublishConnectionDetailsTo

func (mg *ClusterV1) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ClusterV1.

func (*ClusterV1) SetWriteConnectionSecretToReference

func (mg *ClusterV1) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ClusterV1.

type ClusterV1InitParameters added in v0.3.0

type ClusterV1InitParameters struct {
	ClusterTemplateID *string `json:"clusterTemplateId,omitempty" tf:"cluster_template_id,omitempty"`

	CreateTimeout *float64 `json:"createTimeout,omitempty" tf:"create_timeout,omitempty"`

	DiscoveryURL *string `json:"discoveryUrl,omitempty" tf:"discovery_url,omitempty"`

	// The size (in GB) of the Docker volume.
	// Changing this creates a new node group.
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	Flavor *string `json:"flavor,omitempty" tf:"flavor,omitempty"`

	FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"`

	Keypair *string `json:"keypair,omitempty" tf:"keypair,omitempty"`

	// The list of key value pairs representing additional
	// properties of the node group. Changing this creates a new node group.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	MasterCount *float64 `json:"masterCount,omitempty" tf:"master_count,omitempty"`

	MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"`

	// Indicates whether the provided labels should be
	// merged with cluster labels. Changing this creates a new nodegroup.
	MergeLabels *bool `json:"mergeLabels,omitempty" tf:"merge_labels,omitempty"`

	// The name of the node group. Changing this creates a new
	// node group.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The number of nodes for the node group. Changing
	// this update the number of nodes of the node group.
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// The region in which to obtain the V1 Container Infra
	// client. A Container Infra client is needed to create a cluster. If omitted,
	// the region argument of the provider is used. Changing this creates a new
	// node group.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`
}

func (*ClusterV1InitParameters) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1InitParameters.

func (*ClusterV1InitParameters) DeepCopyInto added in v0.3.0

func (in *ClusterV1InitParameters) DeepCopyInto(out *ClusterV1InitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterV1List

type ClusterV1List struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ClusterV1 `json:"items"`
}

ClusterV1List contains a list of ClusterV1s

func (*ClusterV1List) DeepCopy

func (in *ClusterV1List) DeepCopy() *ClusterV1List

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1List.

func (*ClusterV1List) DeepCopyInto

func (in *ClusterV1List) DeepCopyInto(out *ClusterV1List)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterV1List) DeepCopyObject

func (in *ClusterV1List) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClusterV1List) GetItems

func (l *ClusterV1List) GetItems() []resource.Managed

GetItems of this ClusterV1List.

type ClusterV1Observation

type ClusterV1Observation struct {
	APIAddress *string `json:"apiAddress,omitempty" tf:"api_address,omitempty"`

	ClusterTemplateID *string `json:"clusterTemplateId,omitempty" tf:"cluster_template_id,omitempty"`

	CoeVersion *string `json:"coeVersion,omitempty" tf:"coe_version,omitempty"`

	ContainerVersion *string `json:"containerVersion,omitempty" tf:"container_version,omitempty"`

	CreateTimeout *float64 `json:"createTimeout,omitempty" tf:"create_timeout,omitempty"`

	// The time at which node group was created.
	CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"`

	DiscoveryURL *string `json:"discoveryUrl,omitempty" tf:"discovery_url,omitempty"`

	// The size (in GB) of the Docker volume.
	// Changing this creates a new node group.
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	FixedNetwork *string `json:"fixedNetwork,omitempty" tf:"fixed_network,omitempty"`

	FixedSubnet *string `json:"fixedSubnet,omitempty" tf:"fixed_subnet,omitempty"`

	Flavor *string `json:"flavor,omitempty" tf:"flavor,omitempty"`

	FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	Keypair *string `json:"keypair,omitempty" tf:"keypair,omitempty"`

	// The list of key value pairs representing additional
	// properties of the node group. Changing this creates a new node group.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	MasterAddresses []*string `json:"masterAddresses,omitempty" tf:"master_addresses,omitempty"`

	MasterCount *float64 `json:"masterCount,omitempty" tf:"master_count,omitempty"`

	MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"`

	// Indicates whether the provided labels should be
	// merged with cluster labels. Changing this creates a new nodegroup.
	MergeLabels *bool `json:"mergeLabels,omitempty" tf:"merge_labels,omitempty"`

	// The name of the node group. Changing this creates a new
	// node group.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	NodeAddresses []*string `json:"nodeAddresses,omitempty" tf:"node_addresses,omitempty"`

	// The number of nodes for the node group. Changing
	// this update the number of nodes of the node group.
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// The project of the node group. Required if admin
	// wants to create a cluster in another project. Changing this creates a new
	// node group.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// The region in which to obtain the V1 Container Infra
	// client. A Container Infra client is needed to create a cluster. If omitted,
	// the region argument of the provider is used. Changing this creates a new
	// node group.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	StackID *string `json:"stackId,omitempty" tf:"stack_id,omitempty"`

	// The time at which node group was created.
	UpdatedAt *string `json:"updatedAt,omitempty" tf:"updated_at,omitempty"`

	UserID *string `json:"userId,omitempty" tf:"user_id,omitempty"`
}

func (*ClusterV1Observation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1Observation.

func (*ClusterV1Observation) DeepCopyInto

func (in *ClusterV1Observation) DeepCopyInto(out *ClusterV1Observation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterV1Parameters

type ClusterV1Parameters struct {

	// +kubebuilder:validation:Optional
	ClusterTemplateID *string `json:"clusterTemplateId,omitempty" tf:"cluster_template_id,omitempty"`

	// +kubebuilder:validation:Optional
	CreateTimeout *float64 `json:"createTimeout,omitempty" tf:"create_timeout,omitempty"`

	// +kubebuilder:validation:Optional
	DiscoveryURL *string `json:"discoveryUrl,omitempty" tf:"discovery_url,omitempty"`

	// The size (in GB) of the Docker volume.
	// Changing this creates a new node group.
	// +kubebuilder:validation:Optional
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-openstack/apis/networking/v1alpha1.NetworkV2
	// +kubebuilder:validation:Optional
	FixedNetwork *string `json:"fixedNetwork,omitempty" tf:"fixed_network,omitempty"`

	// Reference to a NetworkV2 in networking to populate fixedNetwork.
	// +kubebuilder:validation:Optional
	FixedNetworkRef *v1.Reference `json:"fixedNetworkRef,omitempty" tf:"-"`

	// Selector for a NetworkV2 in networking to populate fixedNetwork.
	// +kubebuilder:validation:Optional
	FixedNetworkSelector *v1.Selector `json:"fixedNetworkSelector,omitempty" tf:"-"`

	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-openstack/apis/networking/v1alpha1.SubnetV2
	// +kubebuilder:validation:Optional
	FixedSubnet *string `json:"fixedSubnet,omitempty" tf:"fixed_subnet,omitempty"`

	// Reference to a SubnetV2 in networking to populate fixedSubnet.
	// +kubebuilder:validation:Optional
	FixedSubnetRef *v1.Reference `json:"fixedSubnetRef,omitempty" tf:"-"`

	// Selector for a SubnetV2 in networking to populate fixedSubnet.
	// +kubebuilder:validation:Optional
	FixedSubnetSelector *v1.Selector `json:"fixedSubnetSelector,omitempty" tf:"-"`

	// +kubebuilder:validation:Optional
	Flavor *string `json:"flavor,omitempty" tf:"flavor,omitempty"`

	// +kubebuilder:validation:Optional
	FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"`

	// +kubebuilder:validation:Optional
	Keypair *string `json:"keypair,omitempty" tf:"keypair,omitempty"`

	// The list of key value pairs representing additional
	// properties of the node group. Changing this creates a new node group.
	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// +kubebuilder:validation:Optional
	MasterCount *float64 `json:"masterCount,omitempty" tf:"master_count,omitempty"`

	// +kubebuilder:validation:Optional
	MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"`

	// Indicates whether the provided labels should be
	// merged with cluster labels. Changing this creates a new nodegroup.
	// +kubebuilder:validation:Optional
	MergeLabels *bool `json:"mergeLabels,omitempty" tf:"merge_labels,omitempty"`

	// The name of the node group. Changing this creates a new
	// node group.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The number of nodes for the node group. Changing
	// this update the number of nodes of the node group.
	// +kubebuilder:validation:Optional
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// The region in which to obtain the V1 Container Infra
	// client. A Container Infra client is needed to create a cluster. If omitted,
	// the region argument of the provider is used. Changing this creates a new
	// node group.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`
}

func (*ClusterV1Parameters) DeepCopy

func (in *ClusterV1Parameters) DeepCopy() *ClusterV1Parameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1Parameters.

func (*ClusterV1Parameters) DeepCopyInto

func (in *ClusterV1Parameters) DeepCopyInto(out *ClusterV1Parameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterV1Spec

type ClusterV1Spec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ClusterV1Parameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ClusterV1InitParameters `json:"initProvider,omitempty"`
}

ClusterV1Spec defines the desired state of ClusterV1

func (*ClusterV1Spec) DeepCopy

func (in *ClusterV1Spec) DeepCopy() *ClusterV1Spec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1Spec.

func (*ClusterV1Spec) DeepCopyInto

func (in *ClusterV1Spec) DeepCopyInto(out *ClusterV1Spec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterV1Status

type ClusterV1Status struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ClusterV1Observation `json:"atProvider,omitempty"`
}

ClusterV1Status defines the observed state of ClusterV1.

func (*ClusterV1Status) DeepCopy

func (in *ClusterV1Status) DeepCopy() *ClusterV1Status

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterV1Status.

func (*ClusterV1Status) DeepCopyInto

func (in *ClusterV1Status) DeepCopyInto(out *ClusterV1Status)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClustertemplateV1

type ClustertemplateV1 struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.coe) || (has(self.initProvider) && has(self.initProvider.coe))",message="spec.forProvider.coe is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.image) || (has(self.initProvider) && has(self.initProvider.image))",message="spec.forProvider.image is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   ClustertemplateV1Spec   `json:"spec"`
	Status ClustertemplateV1Status `json:"status,omitempty"`
}

ClustertemplateV1 is the Schema for the ClustertemplateV1s API. Manages a V1 Magnum cluster template resource within OpenStack. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,openstack}

func (*ClustertemplateV1) DeepCopy

func (in *ClustertemplateV1) DeepCopy() *ClustertemplateV1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1.

func (*ClustertemplateV1) DeepCopyInto

func (in *ClustertemplateV1) DeepCopyInto(out *ClustertemplateV1)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClustertemplateV1) DeepCopyObject

func (in *ClustertemplateV1) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClustertemplateV1) GetCondition

func (mg *ClustertemplateV1) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ClustertemplateV1.

func (*ClustertemplateV1) GetConnectionDetailsMapping

func (tr *ClustertemplateV1) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ClustertemplateV1

func (*ClustertemplateV1) GetDeletionPolicy

func (mg *ClustertemplateV1) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ClustertemplateV1.

func (*ClustertemplateV1) GetID

func (tr *ClustertemplateV1) GetID() string

GetID returns ID of underlying Terraform resource of this ClustertemplateV1

func (*ClustertemplateV1) GetInitParameters added in v0.3.0

func (tr *ClustertemplateV1) GetInitParameters() (map[string]any, error)

GetInitParameters of this ClustertemplateV1

func (*ClustertemplateV1) GetManagementPolicies added in v0.3.0

func (mg *ClustertemplateV1) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ClustertemplateV1.

func (*ClustertemplateV1) GetMergedParameters added in v0.3.0

func (tr *ClustertemplateV1) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ClustertemplateV1

func (*ClustertemplateV1) GetObservation

func (tr *ClustertemplateV1) GetObservation() (map[string]any, error)

GetObservation of this ClustertemplateV1

func (*ClustertemplateV1) GetParameters

func (tr *ClustertemplateV1) GetParameters() (map[string]any, error)

GetParameters of this ClustertemplateV1

func (*ClustertemplateV1) GetProviderConfigReference

func (mg *ClustertemplateV1) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ClustertemplateV1.

func (*ClustertemplateV1) GetPublishConnectionDetailsTo

func (mg *ClustertemplateV1) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ClustertemplateV1.

func (*ClustertemplateV1) GetTerraformResourceType

func (mg *ClustertemplateV1) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ClustertemplateV1

func (*ClustertemplateV1) GetTerraformSchemaVersion

func (tr *ClustertemplateV1) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ClustertemplateV1) GetWriteConnectionSecretToReference

func (mg *ClustertemplateV1) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ClustertemplateV1.

func (*ClustertemplateV1) LateInitialize

func (tr *ClustertemplateV1) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ClustertemplateV1 using its observed tfState. returns True if there are any spec changes for the resource.

func (*ClustertemplateV1) SetConditions

func (mg *ClustertemplateV1) SetConditions(c ...xpv1.Condition)

SetConditions of this ClustertemplateV1.

func (*ClustertemplateV1) SetDeletionPolicy

func (mg *ClustertemplateV1) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ClustertemplateV1.

func (*ClustertemplateV1) SetManagementPolicies added in v0.3.0

func (mg *ClustertemplateV1) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ClustertemplateV1.

func (*ClustertemplateV1) SetObservation

func (tr *ClustertemplateV1) SetObservation(obs map[string]any) error

SetObservation for this ClustertemplateV1

func (*ClustertemplateV1) SetParameters

func (tr *ClustertemplateV1) SetParameters(params map[string]any) error

SetParameters for this ClustertemplateV1

func (*ClustertemplateV1) SetProviderConfigReference

func (mg *ClustertemplateV1) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ClustertemplateV1.

func (*ClustertemplateV1) SetPublishConnectionDetailsTo

func (mg *ClustertemplateV1) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ClustertemplateV1.

func (*ClustertemplateV1) SetWriteConnectionSecretToReference

func (mg *ClustertemplateV1) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ClustertemplateV1.

type ClustertemplateV1InitParameters added in v0.3.0

type ClustertemplateV1InitParameters struct {

	// The API server port for the Container
	// Orchestration Engine for this cluster template. Changing this updates the
	// API server port of the existing cluster template.
	ApiserverPort *float64 `json:"apiserverPort,omitempty" tf:"apiserver_port,omitempty"`

	// The distro for the cluster (fedora-atomic,
	// coreos, etc.). Changing this updates the cluster distro of the existing
	// cluster template.
	ClusterDistro *string `json:"clusterDistro,omitempty" tf:"cluster_distro,omitempty"`

	// The Container Orchestration Engine for this cluster
	// template. Changing this updates the engine of the existing cluster
	// template.
	Coe *string `json:"coe,omitempty" tf:"coe,omitempty"`

	// Address of the DNS nameserver that is used in
	// nodes of the cluster. Changing this updates the DNS nameserver of the
	// existing cluster template.
	DNSNameserver *string `json:"dnsNameserver,omitempty" tf:"dns_nameserver,omitempty"`

	// Docker storage driver. Changing this
	// updates the Docker storage driver of the existing cluster template.
	DockerStorageDriver *string `json:"dockerStorageDriver,omitempty" tf:"docker_storage_driver,omitempty"`

	// The size (in GB) of the Docker volume.
	// Changing this updates the Docker volume size of the existing cluster
	// template.
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	// The ID of the external network that will
	// be used for the cluster. Changing this updates the external network ID of
	// the existing cluster template.
	ExternalNetworkID *string `json:"externalNetworkId,omitempty" tf:"external_network_id,omitempty"`

	// The fixed network that will be attached to the
	// cluster. Changing this updates the fixed network of the existing cluster
	// template.
	FixedNetwork *string `json:"fixedNetwork,omitempty" tf:"fixed_network,omitempty"`

	// The fixed subnet that will be attached to the
	// cluster. Changing this updates the fixed subnet of the existing cluster
	// template.
	FixedSubnet *string `json:"fixedSubnet,omitempty" tf:"fixed_subnet,omitempty"`

	// The flavor for the nodes of the cluster. Can be set via
	// the OS_MAGNUM_FLAVOR environment variable. Changing this updates the
	// flavor of the existing cluster template.
	Flavor *string `json:"flavor,omitempty" tf:"flavor,omitempty"`

	// Indicates whether created cluster should
	// create floating IP for every node or not. Changing this updates the
	// floating IP enabled attribute of the existing cluster template.
	FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"`

	// The address of a proxy for receiving all HTTP
	// requests and relay them. Changing this updates the HTTP proxy address of
	// the existing cluster template.
	HTTPProxy *string `json:"httpProxy,omitempty" tf:"http_proxy,omitempty"`

	// The address of a proxy for receiving all HTTPS
	// requests and relay them. Changing this updates the HTTPS proxy address of
	// the existing cluster template.
	HTTPSProxy *string `json:"httpsProxy,omitempty" tf:"https_proxy,omitempty"`

	// Indicates whether the ClusterTemplate is hidden or not.
	// Changing this updates the hidden attribute of the existing cluster
	// template.
	Hidden *bool `json:"hidden,omitempty" tf:"hidden,omitempty"`

	// The reference to an image that is used for nodes of the
	// cluster. Can be set via the OS_MAGNUM_IMAGE environment variable.
	// Changing this updates the image attribute of the existing cluster template.
	Image *string `json:"image,omitempty" tf:"image,omitempty"`

	// The insecure registry URL for the cluster
	// template. Changing this updates the insecure registry attribute of the
	// existing cluster template.
	InsecureRegistry *string `json:"insecureRegistry,omitempty" tf:"insecure_registry,omitempty"`

	// The name of the Compute service SSH keypair.
	// Changing this updates the keypair of the existing cluster template.
	KeypairID *string `json:"keypairId,omitempty" tf:"keypair_id,omitempty"`

	// The list of key value pairs representing additional
	// properties of the cluster template. Changing this updates the labels of the
	// existing cluster template.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The flavor for the master nodes. Can be set via
	// the OS_MAGNUM_MASTER_FLAVOR environment variable. Changing this updates
	// the master flavor of the existing cluster template.
	MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"`

	// Indicates whether created cluster should
	// has a loadbalancer for master nodes or not. Changing this updates the
	// attribute of the existing cluster template.
	MasterLBEnabled *bool `json:"masterLbEnabled,omitempty" tf:"master_lb_enabled,omitempty"`

	// The name of the cluster template. Changing this updates
	// the name of the existing cluster template.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The name of the driver for the container
	// network. Changing this updates the network driver of the existing cluster
	// template.
	NetworkDriver *string `json:"networkDriver,omitempty" tf:"network_driver,omitempty"`

	// A comma-separated list of IP addresses that shouldn't
	// be used in the cluster. Changing this updates the no proxy list of the
	// existing cluster template.
	NoProxy *string `json:"noProxy,omitempty" tf:"no_proxy,omitempty"`

	// Indicates whether cluster template should be public.
	// Changing this updates the public attribute of the existing cluster
	// template.
	Public *bool `json:"public,omitempty" tf:"public,omitempty"`

	// The region in which to obtain the V1 Container Infra
	// client. A Container Infra client is needed to create a cluster template. If
	// omitted,the region argument of the provider is used. Changing this
	// creates a new cluster template.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Indicates whether Docker registry is enabled
	// in the cluster. Changing this updates the registry enabled attribute of the
	// existing cluster template.
	RegistryEnabled *bool `json:"registryEnabled,omitempty" tf:"registry_enabled,omitempty"`

	// The server type for the cluster template. Changing
	// this updates the server type of the existing cluster template.
	ServerType *string `json:"serverType,omitempty" tf:"server_type,omitempty"`

	// Indicates whether the TLS should be disabled in
	// the cluster. Changing this updates the attribute of the existing cluster.
	TLSDisabled *bool `json:"tlsDisabled,omitempty" tf:"tls_disabled,omitempty"`

	// The name of the driver that is used for the
	// volumes of the cluster nodes. Changing this updates the volume driver of
	// the existing cluster template.
	VolumeDriver *string `json:"volumeDriver,omitempty" tf:"volume_driver,omitempty"`
}

func (*ClustertemplateV1InitParameters) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1InitParameters.

func (*ClustertemplateV1InitParameters) DeepCopyInto added in v0.3.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClustertemplateV1List

type ClustertemplateV1List struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ClustertemplateV1 `json:"items"`
}

ClustertemplateV1List contains a list of ClustertemplateV1s

func (*ClustertemplateV1List) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1List.

func (*ClustertemplateV1List) DeepCopyInto

func (in *ClustertemplateV1List) DeepCopyInto(out *ClustertemplateV1List)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClustertemplateV1List) DeepCopyObject

func (in *ClustertemplateV1List) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ClustertemplateV1List) GetItems

func (l *ClustertemplateV1List) GetItems() []resource.Managed

GetItems of this ClustertemplateV1List.

type ClustertemplateV1Observation

type ClustertemplateV1Observation struct {

	// The API server port for the Container
	// Orchestration Engine for this cluster template. Changing this updates the
	// API server port of the existing cluster template.
	ApiserverPort *float64 `json:"apiserverPort,omitempty" tf:"apiserver_port,omitempty"`

	// The distro for the cluster (fedora-atomic,
	// coreos, etc.). Changing this updates the cluster distro of the existing
	// cluster template.
	ClusterDistro *string `json:"clusterDistro,omitempty" tf:"cluster_distro,omitempty"`

	// The Container Orchestration Engine for this cluster
	// template. Changing this updates the engine of the existing cluster
	// template.
	Coe *string `json:"coe,omitempty" tf:"coe,omitempty"`

	// The time at which cluster template was created.
	CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"`

	// Address of the DNS nameserver that is used in
	// nodes of the cluster. Changing this updates the DNS nameserver of the
	// existing cluster template.
	DNSNameserver *string `json:"dnsNameserver,omitempty" tf:"dns_nameserver,omitempty"`

	// Docker storage driver. Changing this
	// updates the Docker storage driver of the existing cluster template.
	DockerStorageDriver *string `json:"dockerStorageDriver,omitempty" tf:"docker_storage_driver,omitempty"`

	// The size (in GB) of the Docker volume.
	// Changing this updates the Docker volume size of the existing cluster
	// template.
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	// The ID of the external network that will
	// be used for the cluster. Changing this updates the external network ID of
	// the existing cluster template.
	ExternalNetworkID *string `json:"externalNetworkId,omitempty" tf:"external_network_id,omitempty"`

	// The fixed network that will be attached to the
	// cluster. Changing this updates the fixed network of the existing cluster
	// template.
	FixedNetwork *string `json:"fixedNetwork,omitempty" tf:"fixed_network,omitempty"`

	// The fixed subnet that will be attached to the
	// cluster. Changing this updates the fixed subnet of the existing cluster
	// template.
	FixedSubnet *string `json:"fixedSubnet,omitempty" tf:"fixed_subnet,omitempty"`

	// The flavor for the nodes of the cluster. Can be set via
	// the OS_MAGNUM_FLAVOR environment variable. Changing this updates the
	// flavor of the existing cluster template.
	Flavor *string `json:"flavor,omitempty" tf:"flavor,omitempty"`

	// Indicates whether created cluster should
	// create floating IP for every node or not. Changing this updates the
	// floating IP enabled attribute of the existing cluster template.
	FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"`

	// The address of a proxy for receiving all HTTP
	// requests and relay them. Changing this updates the HTTP proxy address of
	// the existing cluster template.
	HTTPProxy *string `json:"httpProxy,omitempty" tf:"http_proxy,omitempty"`

	// The address of a proxy for receiving all HTTPS
	// requests and relay them. Changing this updates the HTTPS proxy address of
	// the existing cluster template.
	HTTPSProxy *string `json:"httpsProxy,omitempty" tf:"https_proxy,omitempty"`

	// Indicates whether the ClusterTemplate is hidden or not.
	// Changing this updates the hidden attribute of the existing cluster
	// template.
	Hidden *bool `json:"hidden,omitempty" tf:"hidden,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The reference to an image that is used for nodes of the
	// cluster. Can be set via the OS_MAGNUM_IMAGE environment variable.
	// Changing this updates the image attribute of the existing cluster template.
	Image *string `json:"image,omitempty" tf:"image,omitempty"`

	// The insecure registry URL for the cluster
	// template. Changing this updates the insecure registry attribute of the
	// existing cluster template.
	InsecureRegistry *string `json:"insecureRegistry,omitempty" tf:"insecure_registry,omitempty"`

	// The name of the Compute service SSH keypair.
	// Changing this updates the keypair of the existing cluster template.
	KeypairID *string `json:"keypairId,omitempty" tf:"keypair_id,omitempty"`

	// The list of key value pairs representing additional
	// properties of the cluster template. Changing this updates the labels of the
	// existing cluster template.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The flavor for the master nodes. Can be set via
	// the OS_MAGNUM_MASTER_FLAVOR environment variable. Changing this updates
	// the master flavor of the existing cluster template.
	MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"`

	// Indicates whether created cluster should
	// has a loadbalancer for master nodes or not. Changing this updates the
	// attribute of the existing cluster template.
	MasterLBEnabled *bool `json:"masterLbEnabled,omitempty" tf:"master_lb_enabled,omitempty"`

	// The name of the cluster template. Changing this updates
	// the name of the existing cluster template.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The name of the driver for the container
	// network. Changing this updates the network driver of the existing cluster
	// template.
	NetworkDriver *string `json:"networkDriver,omitempty" tf:"network_driver,omitempty"`

	// A comma-separated list of IP addresses that shouldn't
	// be used in the cluster. Changing this updates the no proxy list of the
	// existing cluster template.
	NoProxy *string `json:"noProxy,omitempty" tf:"no_proxy,omitempty"`

	// The project of the cluster template. Required if
	// admin wants to create a cluster template in another project. Changing this
	// creates a new cluster template.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Indicates whether cluster template should be public.
	// Changing this updates the public attribute of the existing cluster
	// template.
	Public *bool `json:"public,omitempty" tf:"public,omitempty"`

	// The region in which to obtain the V1 Container Infra
	// client. A Container Infra client is needed to create a cluster template. If
	// omitted,the region argument of the provider is used. Changing this
	// creates a new cluster template.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Indicates whether Docker registry is enabled
	// in the cluster. Changing this updates the registry enabled attribute of the
	// existing cluster template.
	RegistryEnabled *bool `json:"registryEnabled,omitempty" tf:"registry_enabled,omitempty"`

	// The server type for the cluster template. Changing
	// this updates the server type of the existing cluster template.
	ServerType *string `json:"serverType,omitempty" tf:"server_type,omitempty"`

	// Indicates whether the TLS should be disabled in
	// the cluster. Changing this updates the attribute of the existing cluster.
	TLSDisabled *bool `json:"tlsDisabled,omitempty" tf:"tls_disabled,omitempty"`

	// The time at which cluster template was created.
	UpdatedAt *string `json:"updatedAt,omitempty" tf:"updated_at,omitempty"`

	// The user of the cluster template. Required if admin
	// wants to create a cluster template for another user. Changing this creates
	// a new cluster template.
	UserID *string `json:"userId,omitempty" tf:"user_id,omitempty"`

	// The name of the driver that is used for the
	// volumes of the cluster nodes. Changing this updates the volume driver of
	// the existing cluster template.
	VolumeDriver *string `json:"volumeDriver,omitempty" tf:"volume_driver,omitempty"`
}

func (*ClustertemplateV1Observation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1Observation.

func (*ClustertemplateV1Observation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClustertemplateV1Parameters

type ClustertemplateV1Parameters struct {

	// The API server port for the Container
	// Orchestration Engine for this cluster template. Changing this updates the
	// API server port of the existing cluster template.
	// +kubebuilder:validation:Optional
	ApiserverPort *float64 `json:"apiserverPort,omitempty" tf:"apiserver_port,omitempty"`

	// The distro for the cluster (fedora-atomic,
	// coreos, etc.). Changing this updates the cluster distro of the existing
	// cluster template.
	// +kubebuilder:validation:Optional
	ClusterDistro *string `json:"clusterDistro,omitempty" tf:"cluster_distro,omitempty"`

	// The Container Orchestration Engine for this cluster
	// template. Changing this updates the engine of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	Coe *string `json:"coe,omitempty" tf:"coe,omitempty"`

	// Address of the DNS nameserver that is used in
	// nodes of the cluster. Changing this updates the DNS nameserver of the
	// existing cluster template.
	// +kubebuilder:validation:Optional
	DNSNameserver *string `json:"dnsNameserver,omitempty" tf:"dns_nameserver,omitempty"`

	// Docker storage driver. Changing this
	// updates the Docker storage driver of the existing cluster template.
	// +kubebuilder:validation:Optional
	DockerStorageDriver *string `json:"dockerStorageDriver,omitempty" tf:"docker_storage_driver,omitempty"`

	// The size (in GB) of the Docker volume.
	// Changing this updates the Docker volume size of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	// The ID of the external network that will
	// be used for the cluster. Changing this updates the external network ID of
	// the existing cluster template.
	// +kubebuilder:validation:Optional
	ExternalNetworkID *string `json:"externalNetworkId,omitempty" tf:"external_network_id,omitempty"`

	// The fixed network that will be attached to the
	// cluster. Changing this updates the fixed network of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	FixedNetwork *string `json:"fixedNetwork,omitempty" tf:"fixed_network,omitempty"`

	// The fixed subnet that will be attached to the
	// cluster. Changing this updates the fixed subnet of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	FixedSubnet *string `json:"fixedSubnet,omitempty" tf:"fixed_subnet,omitempty"`

	// The flavor for the nodes of the cluster. Can be set via
	// the OS_MAGNUM_FLAVOR environment variable. Changing this updates the
	// flavor of the existing cluster template.
	// +kubebuilder:validation:Optional
	Flavor *string `json:"flavor,omitempty" tf:"flavor,omitempty"`

	// Indicates whether created cluster should
	// create floating IP for every node or not. Changing this updates the
	// floating IP enabled attribute of the existing cluster template.
	// +kubebuilder:validation:Optional
	FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"`

	// The address of a proxy for receiving all HTTP
	// requests and relay them. Changing this updates the HTTP proxy address of
	// the existing cluster template.
	// +kubebuilder:validation:Optional
	HTTPProxy *string `json:"httpProxy,omitempty" tf:"http_proxy,omitempty"`

	// The address of a proxy for receiving all HTTPS
	// requests and relay them. Changing this updates the HTTPS proxy address of
	// the existing cluster template.
	// +kubebuilder:validation:Optional
	HTTPSProxy *string `json:"httpsProxy,omitempty" tf:"https_proxy,omitempty"`

	// Indicates whether the ClusterTemplate is hidden or not.
	// Changing this updates the hidden attribute of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	Hidden *bool `json:"hidden,omitempty" tf:"hidden,omitempty"`

	// The reference to an image that is used for nodes of the
	// cluster. Can be set via the OS_MAGNUM_IMAGE environment variable.
	// Changing this updates the image attribute of the existing cluster template.
	// +kubebuilder:validation:Optional
	Image *string `json:"image,omitempty" tf:"image,omitempty"`

	// The insecure registry URL for the cluster
	// template. Changing this updates the insecure registry attribute of the
	// existing cluster template.
	// +kubebuilder:validation:Optional
	InsecureRegistry *string `json:"insecureRegistry,omitempty" tf:"insecure_registry,omitempty"`

	// The name of the Compute service SSH keypair.
	// Changing this updates the keypair of the existing cluster template.
	// +kubebuilder:validation:Optional
	KeypairID *string `json:"keypairId,omitempty" tf:"keypair_id,omitempty"`

	// The list of key value pairs representing additional
	// properties of the cluster template. Changing this updates the labels of the
	// existing cluster template.
	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// The flavor for the master nodes. Can be set via
	// the OS_MAGNUM_MASTER_FLAVOR environment variable. Changing this updates
	// the master flavor of the existing cluster template.
	// +kubebuilder:validation:Optional
	MasterFlavor *string `json:"masterFlavor,omitempty" tf:"master_flavor,omitempty"`

	// Indicates whether created cluster should
	// has a loadbalancer for master nodes or not. Changing this updates the
	// attribute of the existing cluster template.
	// +kubebuilder:validation:Optional
	MasterLBEnabled *bool `json:"masterLbEnabled,omitempty" tf:"master_lb_enabled,omitempty"`

	// The name of the cluster template. Changing this updates
	// the name of the existing cluster template.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The name of the driver for the container
	// network. Changing this updates the network driver of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	NetworkDriver *string `json:"networkDriver,omitempty" tf:"network_driver,omitempty"`

	// A comma-separated list of IP addresses that shouldn't
	// be used in the cluster. Changing this updates the no proxy list of the
	// existing cluster template.
	// +kubebuilder:validation:Optional
	NoProxy *string `json:"noProxy,omitempty" tf:"no_proxy,omitempty"`

	// Indicates whether cluster template should be public.
	// Changing this updates the public attribute of the existing cluster
	// template.
	// +kubebuilder:validation:Optional
	Public *bool `json:"public,omitempty" tf:"public,omitempty"`

	// The region in which to obtain the V1 Container Infra
	// client. A Container Infra client is needed to create a cluster template. If
	// omitted,the region argument of the provider is used. Changing this
	// creates a new cluster template.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Indicates whether Docker registry is enabled
	// in the cluster. Changing this updates the registry enabled attribute of the
	// existing cluster template.
	// +kubebuilder:validation:Optional
	RegistryEnabled *bool `json:"registryEnabled,omitempty" tf:"registry_enabled,omitempty"`

	// The server type for the cluster template. Changing
	// this updates the server type of the existing cluster template.
	// +kubebuilder:validation:Optional
	ServerType *string `json:"serverType,omitempty" tf:"server_type,omitempty"`

	// Indicates whether the TLS should be disabled in
	// the cluster. Changing this updates the attribute of the existing cluster.
	// +kubebuilder:validation:Optional
	TLSDisabled *bool `json:"tlsDisabled,omitempty" tf:"tls_disabled,omitempty"`

	// The name of the driver that is used for the
	// volumes of the cluster nodes. Changing this updates the volume driver of
	// the existing cluster template.
	// +kubebuilder:validation:Optional
	VolumeDriver *string `json:"volumeDriver,omitempty" tf:"volume_driver,omitempty"`
}

func (*ClustertemplateV1Parameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1Parameters.

func (*ClustertemplateV1Parameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClustertemplateV1Spec

type ClustertemplateV1Spec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ClustertemplateV1Parameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ClustertemplateV1InitParameters `json:"initProvider,omitempty"`
}

ClustertemplateV1Spec defines the desired state of ClustertemplateV1

func (*ClustertemplateV1Spec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1Spec.

func (*ClustertemplateV1Spec) DeepCopyInto

func (in *ClustertemplateV1Spec) DeepCopyInto(out *ClustertemplateV1Spec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClustertemplateV1Status

type ClustertemplateV1Status struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ClustertemplateV1Observation `json:"atProvider,omitempty"`
}

ClustertemplateV1Status defines the observed state of ClustertemplateV1.

func (*ClustertemplateV1Status) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClustertemplateV1Status.

func (*ClustertemplateV1Status) DeepCopyInto

func (in *ClustertemplateV1Status) DeepCopyInto(out *ClustertemplateV1Status)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodegroupV1

type NodegroupV1 struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clusterId) || (has(self.initProvider) && has(self.initProvider.clusterId))",message="spec.forProvider.clusterId is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   NodegroupV1Spec   `json:"spec"`
	Status NodegroupV1Status `json:"status,omitempty"`
}

NodegroupV1 is the Schema for the NodegroupV1s API. <no value> +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,openstack}

func (*NodegroupV1) DeepCopy

func (in *NodegroupV1) DeepCopy() *NodegroupV1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1.

func (*NodegroupV1) DeepCopyInto

func (in *NodegroupV1) DeepCopyInto(out *NodegroupV1)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodegroupV1) DeepCopyObject

func (in *NodegroupV1) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NodegroupV1) GetCondition

func (mg *NodegroupV1) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this NodegroupV1.

func (*NodegroupV1) GetConnectionDetailsMapping

func (tr *NodegroupV1) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this NodegroupV1

func (*NodegroupV1) GetDeletionPolicy

func (mg *NodegroupV1) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this NodegroupV1.

func (*NodegroupV1) GetID

func (tr *NodegroupV1) GetID() string

GetID returns ID of underlying Terraform resource of this NodegroupV1

func (*NodegroupV1) GetInitParameters added in v0.3.0

func (tr *NodegroupV1) GetInitParameters() (map[string]any, error)

GetInitParameters of this NodegroupV1

func (*NodegroupV1) GetManagementPolicies added in v0.3.0

func (mg *NodegroupV1) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this NodegroupV1.

func (*NodegroupV1) GetMergedParameters added in v0.3.0

func (tr *NodegroupV1) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this NodegroupV1

func (*NodegroupV1) GetObservation

func (tr *NodegroupV1) GetObservation() (map[string]any, error)

GetObservation of this NodegroupV1

func (*NodegroupV1) GetParameters

func (tr *NodegroupV1) GetParameters() (map[string]any, error)

GetParameters of this NodegroupV1

func (*NodegroupV1) GetProviderConfigReference

func (mg *NodegroupV1) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this NodegroupV1.

func (*NodegroupV1) GetPublishConnectionDetailsTo

func (mg *NodegroupV1) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this NodegroupV1.

func (*NodegroupV1) GetTerraformResourceType

func (mg *NodegroupV1) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NodegroupV1

func (*NodegroupV1) GetTerraformSchemaVersion

func (tr *NodegroupV1) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NodegroupV1) GetWriteConnectionSecretToReference

func (mg *NodegroupV1) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this NodegroupV1.

func (*NodegroupV1) LateInitialize

func (tr *NodegroupV1) LateInitialize(attrs []byte) (bool, error)

LateInitialize this NodegroupV1 using its observed tfState. returns True if there are any spec changes for the resource.

func (*NodegroupV1) SetConditions

func (mg *NodegroupV1) SetConditions(c ...xpv1.Condition)

SetConditions of this NodegroupV1.

func (*NodegroupV1) SetDeletionPolicy

func (mg *NodegroupV1) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this NodegroupV1.

func (*NodegroupV1) SetManagementPolicies added in v0.3.0

func (mg *NodegroupV1) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this NodegroupV1.

func (*NodegroupV1) SetObservation

func (tr *NodegroupV1) SetObservation(obs map[string]any) error

SetObservation for this NodegroupV1

func (*NodegroupV1) SetParameters

func (tr *NodegroupV1) SetParameters(params map[string]any) error

SetParameters for this NodegroupV1

func (*NodegroupV1) SetProviderConfigReference

func (mg *NodegroupV1) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this NodegroupV1.

func (*NodegroupV1) SetPublishConnectionDetailsTo

func (mg *NodegroupV1) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this NodegroupV1.

func (*NodegroupV1) SetWriteConnectionSecretToReference

func (mg *NodegroupV1) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this NodegroupV1.

type NodegroupV1InitParameters added in v0.3.0

type NodegroupV1InitParameters struct {
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	FlavorID *string `json:"flavorId,omitempty" tf:"flavor_id,omitempty"`

	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	MergeLabels *bool `json:"mergeLabels,omitempty" tf:"merge_labels,omitempty"`

	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`

	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*NodegroupV1InitParameters) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1InitParameters.

func (*NodegroupV1InitParameters) DeepCopyInto added in v0.3.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodegroupV1List

type NodegroupV1List struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NodegroupV1 `json:"items"`
}

NodegroupV1List contains a list of NodegroupV1s

func (*NodegroupV1List) DeepCopy

func (in *NodegroupV1List) DeepCopy() *NodegroupV1List

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1List.

func (*NodegroupV1List) DeepCopyInto

func (in *NodegroupV1List) DeepCopyInto(out *NodegroupV1List)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodegroupV1List) DeepCopyObject

func (in *NodegroupV1List) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NodegroupV1List) GetItems

func (l *NodegroupV1List) GetItems() []resource.Managed

GetItems of this NodegroupV1List.

type NodegroupV1Observation

type NodegroupV1Observation struct {
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"`

	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	FlavorID *string `json:"flavorId,omitempty" tf:"flavor_id,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	MergeLabels *bool `json:"mergeLabels,omitempty" tf:"merge_labels,omitempty"`

	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`

	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	Role *string `json:"role,omitempty" tf:"role,omitempty"`

	UpdatedAt *string `json:"updatedAt,omitempty" tf:"updated_at,omitempty"`
}

func (*NodegroupV1Observation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1Observation.

func (*NodegroupV1Observation) DeepCopyInto

func (in *NodegroupV1Observation) DeepCopyInto(out *NodegroupV1Observation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodegroupV1Parameters

type NodegroupV1Parameters struct {

	// +kubebuilder:validation:Optional
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// +kubebuilder:validation:Optional
	DockerVolumeSize *float64 `json:"dockerVolumeSize,omitempty" tf:"docker_volume_size,omitempty"`

	// +kubebuilder:validation:Optional
	FlavorID *string `json:"flavorId,omitempty" tf:"flavor_id,omitempty"`

	// +kubebuilder:validation:Optional
	ImageID *string `json:"imageId,omitempty" tf:"image_id,omitempty"`

	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// +kubebuilder:validation:Optional
	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	// +kubebuilder:validation:Optional
	MergeLabels *bool `json:"mergeLabels,omitempty" tf:"merge_labels,omitempty"`

	// +kubebuilder:validation:Optional
	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`

	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// +kubebuilder:validation:Optional
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// +kubebuilder:validation:Optional
	Role *string `json:"role,omitempty" tf:"role,omitempty"`
}

func (*NodegroupV1Parameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1Parameters.

func (*NodegroupV1Parameters) DeepCopyInto

func (in *NodegroupV1Parameters) DeepCopyInto(out *NodegroupV1Parameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodegroupV1Spec

type NodegroupV1Spec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NodegroupV1Parameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NodegroupV1InitParameters `json:"initProvider,omitempty"`
}

NodegroupV1Spec defines the desired state of NodegroupV1

func (*NodegroupV1Spec) DeepCopy

func (in *NodegroupV1Spec) DeepCopy() *NodegroupV1Spec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1Spec.

func (*NodegroupV1Spec) DeepCopyInto

func (in *NodegroupV1Spec) DeepCopyInto(out *NodegroupV1Spec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodegroupV1Status

type NodegroupV1Status struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NodegroupV1Observation `json:"atProvider,omitempty"`
}

NodegroupV1Status defines the observed state of NodegroupV1.

func (*NodegroupV1Status) DeepCopy

func (in *NodegroupV1Status) DeepCopy() *NodegroupV1Status

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodegroupV1Status.

func (*NodegroupV1Status) DeepCopyInto

func (in *NodegroupV1Status) DeepCopyInto(out *NodegroupV1Status)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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