v1alpha1

package
v0.2.1 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=networking.digitalocean.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "networking.digitalocean.crossplane.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	Certificate_Kind             = "Certificate"
	Certificate_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Certificate_Kind}.String()
	Certificate_KindAPIVersion   = Certificate_Kind + "." + CRDGroupVersion.String()
	Certificate_GroupVersionKind = CRDGroupVersion.WithKind(Certificate_Kind)
)

Repository type metadata.

View Source
var (
	Firewall_Kind             = "Firewall"
	Firewall_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Firewall_Kind}.String()
	Firewall_KindAPIVersion   = Firewall_Kind + "." + CRDGroupVersion.String()
	Firewall_GroupVersionKind = CRDGroupVersion.WithKind(Firewall_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 (
	IP_Kind             = "IP"
	IP_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: IP_Kind}.String()
	IP_KindAPIVersion   = IP_Kind + "." + CRDGroupVersion.String()
	IP_GroupVersionKind = CRDGroupVersion.WithKind(IP_Kind)
)

Repository type metadata.

View Source
var (
	IPAssignment_Kind             = "IPAssignment"
	IPAssignment_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: IPAssignment_Kind}.String()
	IPAssignment_KindAPIVersion   = IPAssignment_Kind + "." + CRDGroupVersion.String()
	IPAssignment_GroupVersionKind = CRDGroupVersion.WithKind(IPAssignment_Kind)
)

Repository type metadata.

View Source
var (
	Loadbalancer_Kind             = "Loadbalancer"
	Loadbalancer_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Loadbalancer_Kind}.String()
	Loadbalancer_KindAPIVersion   = Loadbalancer_Kind + "." + CRDGroupVersion.String()
	Loadbalancer_GroupVersionKind = CRDGroupVersion.WithKind(Loadbalancer_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Certificate

type Certificate 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.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   CertificateSpec   `json:"spec"`
	Status CertificateStatus `json:"status,omitempty"`
}

Certificate is the Schema for the Certificates API. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,do}

func (*Certificate) DeepCopy

func (in *Certificate) DeepCopy() *Certificate

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

func (*Certificate) DeepCopyInto

func (in *Certificate) DeepCopyInto(out *Certificate)

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

func (*Certificate) DeepCopyObject

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

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

func (*Certificate) GetCondition

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

GetCondition of this Certificate.

func (*Certificate) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Certificate

func (*Certificate) GetDeletionPolicy

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

GetDeletionPolicy of this Certificate.

func (*Certificate) GetID

func (tr *Certificate) GetID() string

GetID returns ID of underlying Terraform resource of this Certificate

func (*Certificate) GetInitParameters

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

GetInitParameters of this Certificate

func (*Certificate) GetManagementPolicies

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

GetManagementPolicies of this Certificate.

func (*Certificate) GetMergedParameters added in v0.2.0

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

GetInitParameters of this Certificate

func (*Certificate) GetObservation

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

GetObservation of this Certificate

func (*Certificate) GetParameters

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

GetParameters of this Certificate

func (*Certificate) GetProviderConfigReference

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

GetProviderConfigReference of this Certificate.

func (*Certificate) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Certificate.

func (*Certificate) GetTerraformResourceType

func (mg *Certificate) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Certificate

func (*Certificate) GetTerraformSchemaVersion

func (tr *Certificate) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Certificate) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Certificate.

func (*Certificate) Hub added in v0.2.0

func (tr *Certificate) Hub()

Hub marks this type as a conversion hub.

func (*Certificate) LateInitialize

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

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

func (*Certificate) ResolveReferences

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

ResolveReferences of this Certificate.

func (*Certificate) SetConditions

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

SetConditions of this Certificate.

func (*Certificate) SetDeletionPolicy

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

SetDeletionPolicy of this Certificate.

func (*Certificate) SetManagementPolicies

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

SetManagementPolicies of this Certificate.

func (*Certificate) SetObservation

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

SetObservation for this Certificate

func (*Certificate) SetParameters

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

SetParameters for this Certificate

func (*Certificate) SetProviderConfigReference

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

SetProviderConfigReference of this Certificate.

func (*Certificate) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Certificate.

func (*Certificate) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Certificate.

type CertificateInitParameters

type CertificateInitParameters struct {

	// The full PEM-formatted trust chain
	// between the certificate authority's certificate and your domain's TLS
	// certificate. Only valid when type is custom.
	CertificateChain *string `json:"certificateChain,omitempty" tf:"certificate_chain,omitempty"`

	// List of fully qualified domain names (FQDNs) for
	// which the certificate will be issued. The domains must be managed using
	// DigitalOcean's DNS. Only valid when type is lets_encrypt.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/dns/v1alpha1.Domain
	// +crossplane:generate:reference:selectorFieldName=ID
	// +listType=set
	Domains []*string `json:"domains,omitempty" tf:"domains,omitempty"`

	// References to Domain in dns to populate domains.
	// +kubebuilder:validation:Optional
	DomainsRefs []v1.Reference `json:"domainsRefs,omitempty" tf:"-"`

	// The unique name of the certificate
	ID *v1.Selector `json:"id,omitempty" tf:"-"`

	// The contents of a PEM-formatted public
	// TLS certificate. Only valid when type is custom.
	LeafCertificate *string `json:"leafCertificate,omitempty" tf:"leaf_certificate,omitempty"`

	// The name of the certificate for identification.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The contents of a PEM-formatted private-key
	// corresponding to the SSL certificate. Only valid when type is custom.
	PrivateKeySecretRef *v1.SecretKeySelector `json:"privateKeySecretRef,omitempty" tf:"-"`

	// The type of certificate to provision. Can be either
	// custom or lets_encrypt. Defaults to custom.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*CertificateInitParameters) DeepCopy

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

func (*CertificateInitParameters) DeepCopyInto

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

type CertificateList

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

CertificateList contains a list of Certificates

func (*CertificateList) DeepCopy

func (in *CertificateList) DeepCopy() *CertificateList

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

func (*CertificateList) DeepCopyInto

func (in *CertificateList) DeepCopyInto(out *CertificateList)

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

func (*CertificateList) DeepCopyObject

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

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

func (*CertificateList) GetItems

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

GetItems of this CertificateList.

type CertificateObservation

type CertificateObservation struct {

	// The full PEM-formatted trust chain
	// between the certificate authority's certificate and your domain's TLS
	// certificate. Only valid when type is custom.
	CertificateChain *string `json:"certificateChain,omitempty" tf:"certificate_chain,omitempty"`

	// List of fully qualified domain names (FQDNs) for
	// which the certificate will be issued. The domains must be managed using
	// DigitalOcean's DNS. Only valid when type is lets_encrypt.
	// +listType=set
	Domains []*string `json:"domains,omitempty" tf:"domains,omitempty"`

	// The unique name of the certificate
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The contents of a PEM-formatted public
	// TLS certificate. Only valid when type is custom.
	LeafCertificate *string `json:"leafCertificate,omitempty" tf:"leaf_certificate,omitempty"`

	// The name of the certificate for identification.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The expiration date of the certificate
	NotAfter *string `json:"notAfter,omitempty" tf:"not_after,omitempty"`

	// The SHA-1 fingerprint of the certificate
	Sha1Fingerprint *string `json:"sha1Fingerprint,omitempty" tf:"sha1_fingerprint,omitempty"`

	State *string `json:"state,omitempty" tf:"state,omitempty"`

	// The type of certificate to provision. Can be either
	// custom or lets_encrypt. Defaults to custom.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The UUID of the certificate
	UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"`
}

func (*CertificateObservation) DeepCopy

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

func (*CertificateObservation) DeepCopyInto

func (in *CertificateObservation) DeepCopyInto(out *CertificateObservation)

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

type CertificateParameters

type CertificateParameters struct {

	// The full PEM-formatted trust chain
	// between the certificate authority's certificate and your domain's TLS
	// certificate. Only valid when type is custom.
	// +kubebuilder:validation:Optional
	CertificateChain *string `json:"certificateChain,omitempty" tf:"certificate_chain,omitempty"`

	// List of fully qualified domain names (FQDNs) for
	// which the certificate will be issued. The domains must be managed using
	// DigitalOcean's DNS. Only valid when type is lets_encrypt.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/dns/v1alpha1.Domain
	// +crossplane:generate:reference:selectorFieldName=ID
	// +kubebuilder:validation:Optional
	// +listType=set
	Domains []*string `json:"domains,omitempty" tf:"domains,omitempty"`

	// References to Domain in dns to populate domains.
	// +kubebuilder:validation:Optional
	DomainsRefs []v1.Reference `json:"domainsRefs,omitempty" tf:"-"`

	// The unique name of the certificate
	// +kubebuilder:validation:Optional
	ID *v1.Selector `json:"id,omitempty" tf:"-"`

	// The contents of a PEM-formatted public
	// TLS certificate. Only valid when type is custom.
	// +kubebuilder:validation:Optional
	LeafCertificate *string `json:"leafCertificate,omitempty" tf:"leaf_certificate,omitempty"`

	// The name of the certificate for identification.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The contents of a PEM-formatted private-key
	// corresponding to the SSL certificate. Only valid when type is custom.
	// +kubebuilder:validation:Optional
	PrivateKeySecretRef *v1.SecretKeySelector `json:"privateKeySecretRef,omitempty" tf:"-"`

	// The type of certificate to provision. Can be either
	// custom or lets_encrypt. Defaults to custom.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*CertificateParameters) DeepCopy

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

func (*CertificateParameters) DeepCopyInto

func (in *CertificateParameters) DeepCopyInto(out *CertificateParameters)

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

type CertificateSpec

type CertificateSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     CertificateParameters `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 CertificateInitParameters `json:"initProvider,omitempty"`
}

CertificateSpec defines the desired state of Certificate

func (*CertificateSpec) DeepCopy

func (in *CertificateSpec) DeepCopy() *CertificateSpec

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

func (*CertificateSpec) DeepCopyInto

func (in *CertificateSpec) DeepCopyInto(out *CertificateSpec)

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

type CertificateStatus

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

CertificateStatus defines the observed state of Certificate.

func (*CertificateStatus) DeepCopy

func (in *CertificateStatus) DeepCopy() *CertificateStatus

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

func (*CertificateStatus) DeepCopyInto

func (in *CertificateStatus) DeepCopyInto(out *CertificateStatus)

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

type Firewall

type Firewall 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.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   FirewallSpec   `json:"spec"`
	Status FirewallStatus `json:"status,omitempty"`
}

Firewall is the Schema for the Firewalls API. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,do}

func (*Firewall) DeepCopy

func (in *Firewall) DeepCopy() *Firewall

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

func (*Firewall) DeepCopyInto

func (in *Firewall) DeepCopyInto(out *Firewall)

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

func (*Firewall) DeepCopyObject

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

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

func (*Firewall) GetCondition

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

GetCondition of this Firewall.

func (*Firewall) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Firewall

func (*Firewall) GetDeletionPolicy

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

GetDeletionPolicy of this Firewall.

func (*Firewall) GetID

func (tr *Firewall) GetID() string

GetID returns ID of underlying Terraform resource of this Firewall

func (*Firewall) GetInitParameters

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

GetInitParameters of this Firewall

func (*Firewall) GetManagementPolicies

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

GetManagementPolicies of this Firewall.

func (*Firewall) GetMergedParameters added in v0.2.0

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

GetInitParameters of this Firewall

func (*Firewall) GetObservation

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

GetObservation of this Firewall

func (*Firewall) GetParameters

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

GetParameters of this Firewall

func (*Firewall) GetProviderConfigReference

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

GetProviderConfigReference of this Firewall.

func (*Firewall) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Firewall.

func (*Firewall) GetTerraformResourceType

func (mg *Firewall) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Firewall

func (*Firewall) GetTerraformSchemaVersion

func (tr *Firewall) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Firewall) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Firewall.

func (*Firewall) Hub added in v0.2.0

func (tr *Firewall) Hub()

Hub marks this type as a conversion hub.

func (*Firewall) LateInitialize

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

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

func (*Firewall) ResolveReferences

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

ResolveReferences of this Firewall.

func (*Firewall) SetConditions

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

SetConditions of this Firewall.

func (*Firewall) SetDeletionPolicy

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

SetDeletionPolicy of this Firewall.

func (*Firewall) SetManagementPolicies

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

SetManagementPolicies of this Firewall.

func (*Firewall) SetObservation

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

SetObservation for this Firewall

func (*Firewall) SetParameters

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

SetParameters for this Firewall

func (*Firewall) SetProviderConfigReference

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

SetProviderConfigReference of this Firewall.

func (*Firewall) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Firewall.

func (*Firewall) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Firewall.

type FirewallInitParameters

type FirewallInitParameters struct {

	// The list of the IDs of the Droplets assigned
	// to the Firewall.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	// +listType=set
	DropletIds []*float64 `json:"dropletIds,omitempty" tf:"droplet_ids,omitempty"`

	// References to Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsRefs []v1.Reference `json:"dropletIdsRefs,omitempty" tf:"-"`

	// Selector for a list of Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsSelector *v1.Selector `json:"dropletIdsSelector,omitempty" tf:"-"`

	// The inbound access rule block for the Firewall.
	// The inbound_rule block is documented below.
	InboundRule []InboundRuleInitParameters `json:"inboundRule,omitempty" tf:"inbound_rule,omitempty"`

	// The Firewall name
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The outbound access rule block for the Firewall.
	// The outbound_rule block is documented below.
	OutboundRule []OutboundRuleInitParameters `json:"outboundRule,omitempty" tf:"outbound_rule,omitempty"`

	// The names of the Tags assigned to the Firewall.
	// +listType=set
	Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*FirewallInitParameters) DeepCopy

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

func (*FirewallInitParameters) DeepCopyInto

func (in *FirewallInitParameters) DeepCopyInto(out *FirewallInitParameters)

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

type FirewallList

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

FirewallList contains a list of Firewalls

func (*FirewallList) DeepCopy

func (in *FirewallList) DeepCopy() *FirewallList

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

func (*FirewallList) DeepCopyInto

func (in *FirewallList) DeepCopyInto(out *FirewallList)

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

func (*FirewallList) DeepCopyObject

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

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

func (*FirewallList) GetItems

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

GetItems of this FirewallList.

type FirewallObservation

type FirewallObservation struct {

	// A time value given in ISO8601 combined date and time format
	// that represents when the Firewall was created.
	CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"`

	// The list of the IDs of the Droplets assigned
	// to the Firewall.
	// +listType=set
	DropletIds []*float64 `json:"dropletIds,omitempty" tf:"droplet_ids,omitempty"`

	// A unique ID that can be used to identify and reference a Firewall.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The inbound access rule block for the Firewall.
	// The inbound_rule block is documented below.
	InboundRule []InboundRuleObservation `json:"inboundRule,omitempty" tf:"inbound_rule,omitempty"`

	// The Firewall name
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The outbound access rule block for the Firewall.
	// The outbound_rule block is documented below.
	OutboundRule []OutboundRuleObservation `json:"outboundRule,omitempty" tf:"outbound_rule,omitempty"`

	// An list of object containing the fields, "droplet_id",
	// "removing", and "status".  It is provided to detail exactly which Droplets
	// are having their security policies updated.  When empty, all changes
	// have been successfully applied.
	PendingChanges []PendingChangesObservation `json:"pendingChanges,omitempty" tf:"pending_changes,omitempty"`

	// A status string indicating the current state of the Firewall.
	// This can be "waiting", "succeeded", or "failed".
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// The names of the Tags assigned to the Firewall.
	// +listType=set
	Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*FirewallObservation) DeepCopy

func (in *FirewallObservation) DeepCopy() *FirewallObservation

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

func (*FirewallObservation) DeepCopyInto

func (in *FirewallObservation) DeepCopyInto(out *FirewallObservation)

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

type FirewallParameters

type FirewallParameters struct {

	// The list of the IDs of the Droplets assigned
	// to the Firewall.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	// +kubebuilder:validation:Optional
	// +listType=set
	DropletIds []*float64 `json:"dropletIds,omitempty" tf:"droplet_ids,omitempty"`

	// References to Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsRefs []v1.Reference `json:"dropletIdsRefs,omitempty" tf:"-"`

	// Selector for a list of Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsSelector *v1.Selector `json:"dropletIdsSelector,omitempty" tf:"-"`

	// The inbound access rule block for the Firewall.
	// The inbound_rule block is documented below.
	// +kubebuilder:validation:Optional
	InboundRule []InboundRuleParameters `json:"inboundRule,omitempty" tf:"inbound_rule,omitempty"`

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

	// The outbound access rule block for the Firewall.
	// The outbound_rule block is documented below.
	// +kubebuilder:validation:Optional
	OutboundRule []OutboundRuleParameters `json:"outboundRule,omitempty" tf:"outbound_rule,omitempty"`

	// The names of the Tags assigned to the Firewall.
	// +kubebuilder:validation:Optional
	// +listType=set
	Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*FirewallParameters) DeepCopy

func (in *FirewallParameters) DeepCopy() *FirewallParameters

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

func (*FirewallParameters) DeepCopyInto

func (in *FirewallParameters) DeepCopyInto(out *FirewallParameters)

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

type FirewallSpec

type FirewallSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     FirewallParameters `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 FirewallInitParameters `json:"initProvider,omitempty"`
}

FirewallSpec defines the desired state of Firewall

func (*FirewallSpec) DeepCopy

func (in *FirewallSpec) DeepCopy() *FirewallSpec

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

func (*FirewallSpec) DeepCopyInto

func (in *FirewallSpec) DeepCopyInto(out *FirewallSpec)

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

type FirewallStatus

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

FirewallStatus defines the observed state of Firewall.

func (*FirewallStatus) DeepCopy

func (in *FirewallStatus) DeepCopy() *FirewallStatus

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

func (*FirewallStatus) DeepCopyInto

func (in *FirewallStatus) DeepCopyInto(out *FirewallStatus)

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

type ForwardingRuleInitParameters

type ForwardingRuleInitParameters struct {

	// Deprecated The ID of the TLS certificate to be used for SSL termination.
	CertificateID *string `json:"certificateId,omitempty" tf:"certificate_id,omitempty"`

	// The unique name of the TLS certificate to be used for SSL termination.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/networking/v1alpha1.Certificate
	CertificateName *string `json:"certificateName,omitempty" tf:"certificate_name,omitempty"`

	// Reference to a Certificate in networking to populate certificateName.
	// +kubebuilder:validation:Optional
	CertificateNameRef *v1.Reference `json:"certificateNameRef,omitempty" tf:"-"`

	// Selector for a Certificate in networking to populate certificateName.
	// +kubebuilder:validation:Optional
	CertificateNameSelector *v1.Selector `json:"certificateNameSelector,omitempty" tf:"-"`

	// An integer representing the port on which the Load Balancer instance will listen.
	EntryPort *float64 `json:"entryPort,omitempty" tf:"entry_port,omitempty"`

	// The protocol used for traffic to the Load Balancer. The possible values are: http, https, http2, http3, tcp, or udp.
	EntryProtocol *string `json:"entryProtocol,omitempty" tf:"entry_protocol,omitempty"`

	// A boolean value indicating whether SSL encrypted traffic will be passed through to the backend Droplets. The default value is false.
	TLSPassthrough *bool `json:"tlsPassthrough,omitempty" tf:"tls_passthrough,omitempty"`

	// An integer representing the port on the backend Droplets to which the Load Balancer will send traffic.
	TargetPort *float64 `json:"targetPort,omitempty" tf:"target_port,omitempty"`

	// The protocol used for traffic from the Load Balancer to the backend Droplets. The possible values are: http, https, http2, tcp, or udp.
	TargetProtocol *string `json:"targetProtocol,omitempty" tf:"target_protocol,omitempty"`
}

func (*ForwardingRuleInitParameters) DeepCopy

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

func (*ForwardingRuleInitParameters) DeepCopyInto

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

type ForwardingRuleObservation

type ForwardingRuleObservation struct {

	// Deprecated The ID of the TLS certificate to be used for SSL termination.
	CertificateID *string `json:"certificateId,omitempty" tf:"certificate_id,omitempty"`

	// The unique name of the TLS certificate to be used for SSL termination.
	CertificateName *string `json:"certificateName,omitempty" tf:"certificate_name,omitempty"`

	// An integer representing the port on which the Load Balancer instance will listen.
	EntryPort *float64 `json:"entryPort,omitempty" tf:"entry_port,omitempty"`

	// The protocol used for traffic to the Load Balancer. The possible values are: http, https, http2, http3, tcp, or udp.
	EntryProtocol *string `json:"entryProtocol,omitempty" tf:"entry_protocol,omitempty"`

	// A boolean value indicating whether SSL encrypted traffic will be passed through to the backend Droplets. The default value is false.
	TLSPassthrough *bool `json:"tlsPassthrough,omitempty" tf:"tls_passthrough,omitempty"`

	// An integer representing the port on the backend Droplets to which the Load Balancer will send traffic.
	TargetPort *float64 `json:"targetPort,omitempty" tf:"target_port,omitempty"`

	// The protocol used for traffic from the Load Balancer to the backend Droplets. The possible values are: http, https, http2, tcp, or udp.
	TargetProtocol *string `json:"targetProtocol,omitempty" tf:"target_protocol,omitempty"`
}

func (*ForwardingRuleObservation) DeepCopy

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

func (*ForwardingRuleObservation) DeepCopyInto

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

type ForwardingRuleParameters

type ForwardingRuleParameters struct {

	// Deprecated The ID of the TLS certificate to be used for SSL termination.
	// +kubebuilder:validation:Optional
	CertificateID *string `json:"certificateId,omitempty" tf:"certificate_id,omitempty"`

	// The unique name of the TLS certificate to be used for SSL termination.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/networking/v1alpha1.Certificate
	// +kubebuilder:validation:Optional
	CertificateName *string `json:"certificateName,omitempty" tf:"certificate_name,omitempty"`

	// Reference to a Certificate in networking to populate certificateName.
	// +kubebuilder:validation:Optional
	CertificateNameRef *v1.Reference `json:"certificateNameRef,omitempty" tf:"-"`

	// Selector for a Certificate in networking to populate certificateName.
	// +kubebuilder:validation:Optional
	CertificateNameSelector *v1.Selector `json:"certificateNameSelector,omitempty" tf:"-"`

	// An integer representing the port on which the Load Balancer instance will listen.
	// +kubebuilder:validation:Optional
	EntryPort *float64 `json:"entryPort" tf:"entry_port,omitempty"`

	// The protocol used for traffic to the Load Balancer. The possible values are: http, https, http2, http3, tcp, or udp.
	// +kubebuilder:validation:Optional
	EntryProtocol *string `json:"entryProtocol" tf:"entry_protocol,omitempty"`

	// A boolean value indicating whether SSL encrypted traffic will be passed through to the backend Droplets. The default value is false.
	// +kubebuilder:validation:Optional
	TLSPassthrough *bool `json:"tlsPassthrough,omitempty" tf:"tls_passthrough,omitempty"`

	// An integer representing the port on the backend Droplets to which the Load Balancer will send traffic.
	// +kubebuilder:validation:Optional
	TargetPort *float64 `json:"targetPort" tf:"target_port,omitempty"`

	// The protocol used for traffic from the Load Balancer to the backend Droplets. The possible values are: http, https, http2, tcp, or udp.
	// +kubebuilder:validation:Optional
	TargetProtocol *string `json:"targetProtocol" tf:"target_protocol,omitempty"`
}

func (*ForwardingRuleParameters) DeepCopy

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

func (*ForwardingRuleParameters) DeepCopyInto

func (in *ForwardingRuleParameters) DeepCopyInto(out *ForwardingRuleParameters)

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

type HealthcheckInitParameters

type HealthcheckInitParameters struct {

	// The number of seconds between two consecutive health checks. If not specified, the default value is 10.
	CheckIntervalSeconds *float64 `json:"checkIntervalSeconds,omitempty" tf:"check_interval_seconds,omitempty"`

	// The number of times a health check must pass for a backend Droplet to be marked "healthy" and be re-added to the pool. If not specified, the default value is 5.
	HealthyThreshold *float64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold,omitempty"`

	// The path on the backend Droplets to which the Load Balancer instance will send a request.
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// An integer representing the port on the backend Droplets on which the health check will attempt a connection.
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// The protocol used for health checks sent to the backend Droplets. The possible values are http, https or tcp.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`

	// The number of seconds the Load Balancer instance will wait for a response until marking a health check as failed. If not specified, the default value is 5.
	ResponseTimeoutSeconds *float64 `json:"responseTimeoutSeconds,omitempty" tf:"response_timeout_seconds,omitempty"`

	// The number of times a health check must fail for a backend Droplet to be marked "unhealthy" and be removed from the pool. If not specified, the default value is 3.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold,omitempty"`
}

func (*HealthcheckInitParameters) DeepCopy

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

func (*HealthcheckInitParameters) DeepCopyInto

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

type HealthcheckObservation

type HealthcheckObservation struct {

	// The number of seconds between two consecutive health checks. If not specified, the default value is 10.
	CheckIntervalSeconds *float64 `json:"checkIntervalSeconds,omitempty" tf:"check_interval_seconds,omitempty"`

	// The number of times a health check must pass for a backend Droplet to be marked "healthy" and be re-added to the pool. If not specified, the default value is 5.
	HealthyThreshold *float64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold,omitempty"`

	// The path on the backend Droplets to which the Load Balancer instance will send a request.
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// An integer representing the port on the backend Droplets on which the health check will attempt a connection.
	Port *float64 `json:"port,omitempty" tf:"port,omitempty"`

	// The protocol used for health checks sent to the backend Droplets. The possible values are http, https or tcp.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`

	// The number of seconds the Load Balancer instance will wait for a response until marking a health check as failed. If not specified, the default value is 5.
	ResponseTimeoutSeconds *float64 `json:"responseTimeoutSeconds,omitempty" tf:"response_timeout_seconds,omitempty"`

	// The number of times a health check must fail for a backend Droplet to be marked "unhealthy" and be removed from the pool. If not specified, the default value is 3.
	UnhealthyThreshold *float64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold,omitempty"`
}

func (*HealthcheckObservation) DeepCopy

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

func (*HealthcheckObservation) DeepCopyInto

func (in *HealthcheckObservation) DeepCopyInto(out *HealthcheckObservation)

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

type HealthcheckParameters

type HealthcheckParameters struct {

	// The number of seconds between two consecutive health checks. If not specified, the default value is 10.
	// +kubebuilder:validation:Optional
	CheckIntervalSeconds *float64 `json:"checkIntervalSeconds,omitempty" tf:"check_interval_seconds,omitempty"`

	// The number of times a health check must pass for a backend Droplet to be marked "healthy" and be re-added to the pool. If not specified, the default value is 5.
	// +kubebuilder:validation:Optional
	HealthyThreshold *float64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold,omitempty"`

	// The path on the backend Droplets to which the Load Balancer instance will send a request.
	// +kubebuilder:validation:Optional
	Path *string `json:"path,omitempty" tf:"path,omitempty"`

	// An integer representing the port on the backend Droplets on which the health check will attempt a connection.
	// +kubebuilder:validation:Optional
	Port *float64 `json:"port" tf:"port,omitempty"`

	// The protocol used for health checks sent to the backend Droplets. The possible values are http, https or tcp.
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`

	// The number of seconds the Load Balancer instance will wait for a response until marking a health check as failed. If not specified, the default value is 5.
	// +kubebuilder:validation:Optional
	ResponseTimeoutSeconds *float64 `json:"responseTimeoutSeconds,omitempty" tf:"response_timeout_seconds,omitempty"`

	// The number of times a health check must fail for a backend Droplet to be marked "unhealthy" and be removed from the pool. If not specified, the default value is 3.
	// +kubebuilder:validation:Optional
	UnhealthyThreshold *float64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold,omitempty"`
}

func (*HealthcheckParameters) DeepCopy

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

func (*HealthcheckParameters) DeepCopyInto

func (in *HealthcheckParameters) DeepCopyInto(out *HealthcheckParameters)

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

type IP

type IP 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.region) || (has(self.initProvider) && has(self.initProvider.region))",message="spec.forProvider.region is a required parameter"
	Spec   IPSpec   `json:"spec"`
	Status IPStatus `json:"status,omitempty"`
}

IP is the Schema for the IPs API. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,do}

func (*IP) DeepCopy

func (in *IP) DeepCopy() *IP

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

func (*IP) DeepCopyInto

func (in *IP) DeepCopyInto(out *IP)

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

func (*IP) DeepCopyObject

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

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

func (*IP) GetCondition

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

GetCondition of this IP.

func (*IP) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this IP

func (*IP) GetDeletionPolicy

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

GetDeletionPolicy of this IP.

func (*IP) GetID

func (tr *IP) GetID() string

GetID returns ID of underlying Terraform resource of this IP

func (*IP) GetInitParameters

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

GetInitParameters of this IP

func (*IP) GetManagementPolicies

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

GetManagementPolicies of this IP.

func (*IP) GetMergedParameters added in v0.2.0

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

GetInitParameters of this IP

func (*IP) GetObservation

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

GetObservation of this IP

func (*IP) GetParameters

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

GetParameters of this IP

func (*IP) GetProviderConfigReference

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

GetProviderConfigReference of this IP.

func (*IP) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this IP.

func (*IP) GetTerraformResourceType

func (mg *IP) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this IP

func (*IP) GetTerraformSchemaVersion

func (tr *IP) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*IP) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this IP.

func (*IP) Hub added in v0.2.0

func (tr *IP) Hub()

Hub marks this type as a conversion hub.

func (*IP) LateInitialize

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

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

func (*IP) ResolveReferences

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

ResolveReferences of this IP.

func (*IP) SetConditions

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

SetConditions of this IP.

func (*IP) SetDeletionPolicy

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

SetDeletionPolicy of this IP.

func (*IP) SetManagementPolicies

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

SetManagementPolicies of this IP.

func (*IP) SetObservation

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

SetObservation for this IP

func (*IP) SetParameters

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

SetParameters for this IP

func (*IP) SetProviderConfigReference

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

SetProviderConfigReference of this IP.

func (*IP) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this IP.

func (*IP) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this IP.

type IPAssignment

type IPAssignment struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              IPAssignmentSpec   `json:"spec"`
	Status            IPAssignmentStatus `json:"status,omitempty"`
}

IPAssignment is the Schema for the IPAssignments API. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,do}

func (*IPAssignment) DeepCopy

func (in *IPAssignment) DeepCopy() *IPAssignment

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

func (*IPAssignment) DeepCopyInto

func (in *IPAssignment) DeepCopyInto(out *IPAssignment)

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

func (*IPAssignment) DeepCopyObject

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

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

func (*IPAssignment) GetCondition

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

GetCondition of this IPAssignment.

func (*IPAssignment) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this IPAssignment

func (*IPAssignment) GetDeletionPolicy

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

GetDeletionPolicy of this IPAssignment.

func (*IPAssignment) GetID

func (tr *IPAssignment) GetID() string

GetID returns ID of underlying Terraform resource of this IPAssignment

func (*IPAssignment) GetInitParameters

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

GetInitParameters of this IPAssignment

func (*IPAssignment) GetManagementPolicies

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

GetManagementPolicies of this IPAssignment.

func (*IPAssignment) GetMergedParameters added in v0.2.0

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

GetInitParameters of this IPAssignment

func (*IPAssignment) GetObservation

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

GetObservation of this IPAssignment

func (*IPAssignment) GetParameters

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

GetParameters of this IPAssignment

func (*IPAssignment) GetProviderConfigReference

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

GetProviderConfigReference of this IPAssignment.

func (*IPAssignment) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this IPAssignment.

func (*IPAssignment) GetTerraformResourceType

func (mg *IPAssignment) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this IPAssignment

func (*IPAssignment) GetTerraformSchemaVersion

func (tr *IPAssignment) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*IPAssignment) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this IPAssignment.

func (*IPAssignment) Hub added in v0.2.0

func (tr *IPAssignment) Hub()

Hub marks this type as a conversion hub.

func (*IPAssignment) LateInitialize

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

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

func (*IPAssignment) ResolveReferences

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

ResolveReferences of this IPAssignment.

func (*IPAssignment) SetConditions

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

SetConditions of this IPAssignment.

func (*IPAssignment) SetDeletionPolicy

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

SetDeletionPolicy of this IPAssignment.

func (*IPAssignment) SetManagementPolicies

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

SetManagementPolicies of this IPAssignment.

func (*IPAssignment) SetObservation

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

SetObservation for this IPAssignment

func (*IPAssignment) SetParameters

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

SetParameters for this IPAssignment

func (*IPAssignment) SetProviderConfigReference

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

SetProviderConfigReference of this IPAssignment.

func (*IPAssignment) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this IPAssignment.

func (*IPAssignment) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this IPAssignment.

type IPAssignmentInitParameters

type IPAssignmentInitParameters struct {

	// The ID of Droplet that the reserved IP will be assigned to.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

	// Reference to a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDRef *v1.Reference `json:"dropletIdRef,omitempty" tf:"-"`

	// Selector for a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDSelector *v1.Selector `json:"dropletIdSelector,omitempty" tf:"-"`

	// The reserved IP to assign to the Droplet.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/networking/v1alpha1.IP
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// Reference to a IP in networking to populate ipAddress.
	// +kubebuilder:validation:Optional
	IPAddressRef *v1.Reference `json:"ipAddressRef,omitempty" tf:"-"`

	// Selector for a IP in networking to populate ipAddress.
	// +kubebuilder:validation:Optional
	IPAddressSelector *v1.Selector `json:"ipAddressSelector,omitempty" tf:"-"`
}

func (*IPAssignmentInitParameters) DeepCopy

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

func (*IPAssignmentInitParameters) DeepCopyInto

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

type IPAssignmentList

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

IPAssignmentList contains a list of IPAssignments

func (*IPAssignmentList) DeepCopy

func (in *IPAssignmentList) DeepCopy() *IPAssignmentList

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

func (*IPAssignmentList) DeepCopyInto

func (in *IPAssignmentList) DeepCopyInto(out *IPAssignmentList)

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

func (*IPAssignmentList) DeepCopyObject

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

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

func (*IPAssignmentList) GetItems

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

GetItems of this IPAssignmentList.

type IPAssignmentObservation

type IPAssignmentObservation struct {

	// The ID of Droplet that the reserved IP will be assigned to.
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

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

	// The reserved IP to assign to the Droplet.
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`
}

func (*IPAssignmentObservation) DeepCopy

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

func (*IPAssignmentObservation) DeepCopyInto

func (in *IPAssignmentObservation) DeepCopyInto(out *IPAssignmentObservation)

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

type IPAssignmentParameters

type IPAssignmentParameters struct {

	// The ID of Droplet that the reserved IP will be assigned to.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	// +kubebuilder:validation:Optional
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

	// Reference to a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDRef *v1.Reference `json:"dropletIdRef,omitempty" tf:"-"`

	// Selector for a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDSelector *v1.Selector `json:"dropletIdSelector,omitempty" tf:"-"`

	// The reserved IP to assign to the Droplet.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/networking/v1alpha1.IP
	// +kubebuilder:validation:Optional
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// Reference to a IP in networking to populate ipAddress.
	// +kubebuilder:validation:Optional
	IPAddressRef *v1.Reference `json:"ipAddressRef,omitempty" tf:"-"`

	// Selector for a IP in networking to populate ipAddress.
	// +kubebuilder:validation:Optional
	IPAddressSelector *v1.Selector `json:"ipAddressSelector,omitempty" tf:"-"`
}

func (*IPAssignmentParameters) DeepCopy

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

func (*IPAssignmentParameters) DeepCopyInto

func (in *IPAssignmentParameters) DeepCopyInto(out *IPAssignmentParameters)

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

type IPAssignmentSpec

type IPAssignmentSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     IPAssignmentParameters `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 IPAssignmentInitParameters `json:"initProvider,omitempty"`
}

IPAssignmentSpec defines the desired state of IPAssignment

func (*IPAssignmentSpec) DeepCopy

func (in *IPAssignmentSpec) DeepCopy() *IPAssignmentSpec

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

func (*IPAssignmentSpec) DeepCopyInto

func (in *IPAssignmentSpec) DeepCopyInto(out *IPAssignmentSpec)

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

type IPAssignmentStatus

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

IPAssignmentStatus defines the observed state of IPAssignment.

func (*IPAssignmentStatus) DeepCopy

func (in *IPAssignmentStatus) DeepCopy() *IPAssignmentStatus

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

func (*IPAssignmentStatus) DeepCopyInto

func (in *IPAssignmentStatus) DeepCopyInto(out *IPAssignmentStatus)

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

type IPInitParameters

type IPInitParameters struct {

	// The ID of Droplet that the reserved IP will be assigned to.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

	// Reference to a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDRef *v1.Reference `json:"dropletIdRef,omitempty" tf:"-"`

	// Selector for a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDSelector *v1.Selector `json:"dropletIdSelector,omitempty" tf:"-"`

	// The IP Address of the resource
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// The region that the reserved IP is reserved to.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`
}

func (*IPInitParameters) DeepCopy

func (in *IPInitParameters) DeepCopy() *IPInitParameters

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

func (*IPInitParameters) DeepCopyInto

func (in *IPInitParameters) DeepCopyInto(out *IPInitParameters)

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

type IPList

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

IPList contains a list of IPs

func (*IPList) DeepCopy

func (in *IPList) DeepCopy() *IPList

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

func (*IPList) DeepCopyInto

func (in *IPList) DeepCopyInto(out *IPList)

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

func (*IPList) DeepCopyObject

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

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

func (*IPList) GetItems

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

GetItems of this IPList.

type IPObservation

type IPObservation struct {

	// The ID of Droplet that the reserved IP will be assigned to.
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

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

	// The IP Address of the resource
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// The region that the reserved IP is reserved to.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// The uniform resource name of the reserved ip
	// the uniform resource name for the reserved ip
	Urn *string `json:"urn,omitempty" tf:"urn,omitempty"`
}

func (*IPObservation) DeepCopy

func (in *IPObservation) DeepCopy() *IPObservation

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

func (*IPObservation) DeepCopyInto

func (in *IPObservation) DeepCopyInto(out *IPObservation)

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

type IPParameters

type IPParameters struct {

	// The ID of Droplet that the reserved IP will be assigned to.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	// +kubebuilder:validation:Optional
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

	// Reference to a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDRef *v1.Reference `json:"dropletIdRef,omitempty" tf:"-"`

	// Selector for a Droplet in droplet to populate dropletId.
	// +kubebuilder:validation:Optional
	DropletIDSelector *v1.Selector `json:"dropletIdSelector,omitempty" tf:"-"`

	// The IP Address of the resource
	// +kubebuilder:validation:Optional
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// The region that the reserved IP is reserved to.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`
}

func (*IPParameters) DeepCopy

func (in *IPParameters) DeepCopy() *IPParameters

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

func (*IPParameters) DeepCopyInto

func (in *IPParameters) DeepCopyInto(out *IPParameters)

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

type IPSpec

type IPSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     IPParameters `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 IPInitParameters `json:"initProvider,omitempty"`
}

IPSpec defines the desired state of IP

func (*IPSpec) DeepCopy

func (in *IPSpec) DeepCopy() *IPSpec

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

func (*IPSpec) DeepCopyInto

func (in *IPSpec) DeepCopyInto(out *IPSpec)

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

type IPStatus

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

IPStatus defines the observed state of IP.

func (*IPStatus) DeepCopy

func (in *IPStatus) DeepCopy() *IPStatus

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

func (*IPStatus) DeepCopyInto

func (in *IPStatus) DeepCopyInto(out *IPStatus)

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

type InboundRuleInitParameters

type InboundRuleInitParameters struct {

	// The ports on which traffic will be allowed
	// specified as a string containing a single port, a range (e.g. "8000-9000"),
	// or "1-65535" to open all ports for a protocol. Required for when protocol is
	// tcp or udp.
	PortRange *string `json:"portRange,omitempty" tf:"port_range,omitempty"`

	// The type of traffic to be allowed.
	// This may be one of "tcp", "udp", or "icmp".
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`

	// An array of strings containing the IPv4
	// addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs from which the
	// inbound traffic will be accepted.
	// +listType=set
	SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"`

	// An array containing the IDs of
	// the Droplets from which the inbound traffic will be accepted.
	// +listType=set
	SourceDropletIds []*float64 `json:"sourceDropletIds,omitempty" tf:"source_droplet_ids,omitempty"`

	// An array containing the IDs of
	// the Kubernetes clusters from which the inbound traffic will be accepted.
	// +listType=set
	SourceKubernetesIds []*string `json:"sourceKubernetesIds,omitempty" tf:"source_kubernetes_ids,omitempty"`

	// An array containing the IDs
	// of the Load Balancers from which the inbound traffic will be accepted.
	// +listType=set
	SourceLoadBalancerUids []*string `json:"sourceLoadBalancerUids,omitempty" tf:"source_load_balancer_uids,omitempty"`

	// An array containing the names of Tags
	// corresponding to groups of Droplets from which the inbound traffic
	// will be accepted.
	// +listType=set
	SourceTags []*string `json:"sourceTags,omitempty" tf:"source_tags,omitempty"`
}

func (*InboundRuleInitParameters) DeepCopy

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

func (*InboundRuleInitParameters) DeepCopyInto

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

type InboundRuleObservation

type InboundRuleObservation struct {

	// The ports on which traffic will be allowed
	// specified as a string containing a single port, a range (e.g. "8000-9000"),
	// or "1-65535" to open all ports for a protocol. Required for when protocol is
	// tcp or udp.
	PortRange *string `json:"portRange,omitempty" tf:"port_range,omitempty"`

	// The type of traffic to be allowed.
	// This may be one of "tcp", "udp", or "icmp".
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`

	// An array of strings containing the IPv4
	// addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs from which the
	// inbound traffic will be accepted.
	// +listType=set
	SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"`

	// An array containing the IDs of
	// the Droplets from which the inbound traffic will be accepted.
	// +listType=set
	SourceDropletIds []*float64 `json:"sourceDropletIds,omitempty" tf:"source_droplet_ids,omitempty"`

	// An array containing the IDs of
	// the Kubernetes clusters from which the inbound traffic will be accepted.
	// +listType=set
	SourceKubernetesIds []*string `json:"sourceKubernetesIds,omitempty" tf:"source_kubernetes_ids,omitempty"`

	// An array containing the IDs
	// of the Load Balancers from which the inbound traffic will be accepted.
	// +listType=set
	SourceLoadBalancerUids []*string `json:"sourceLoadBalancerUids,omitempty" tf:"source_load_balancer_uids,omitempty"`

	// An array containing the names of Tags
	// corresponding to groups of Droplets from which the inbound traffic
	// will be accepted.
	// +listType=set
	SourceTags []*string `json:"sourceTags,omitempty" tf:"source_tags,omitempty"`
}

func (*InboundRuleObservation) DeepCopy

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

func (*InboundRuleObservation) DeepCopyInto

func (in *InboundRuleObservation) DeepCopyInto(out *InboundRuleObservation)

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

type InboundRuleParameters

type InboundRuleParameters struct {

	// The ports on which traffic will be allowed
	// specified as a string containing a single port, a range (e.g. "8000-9000"),
	// or "1-65535" to open all ports for a protocol. Required for when protocol is
	// tcp or udp.
	// +kubebuilder:validation:Optional
	PortRange *string `json:"portRange,omitempty" tf:"port_range,omitempty"`

	// The type of traffic to be allowed.
	// This may be one of "tcp", "udp", or "icmp".
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`

	// An array of strings containing the IPv4
	// addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs from which the
	// inbound traffic will be accepted.
	// +kubebuilder:validation:Optional
	// +listType=set
	SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"`

	// An array containing the IDs of
	// the Droplets from which the inbound traffic will be accepted.
	// +kubebuilder:validation:Optional
	// +listType=set
	SourceDropletIds []*float64 `json:"sourceDropletIds,omitempty" tf:"source_droplet_ids,omitempty"`

	// An array containing the IDs of
	// the Kubernetes clusters from which the inbound traffic will be accepted.
	// +kubebuilder:validation:Optional
	// +listType=set
	SourceKubernetesIds []*string `json:"sourceKubernetesIds,omitempty" tf:"source_kubernetes_ids,omitempty"`

	// An array containing the IDs
	// of the Load Balancers from which the inbound traffic will be accepted.
	// +kubebuilder:validation:Optional
	// +listType=set
	SourceLoadBalancerUids []*string `json:"sourceLoadBalancerUids,omitempty" tf:"source_load_balancer_uids,omitempty"`

	// An array containing the names of Tags
	// corresponding to groups of Droplets from which the inbound traffic
	// will be accepted.
	// +kubebuilder:validation:Optional
	// +listType=set
	SourceTags []*string `json:"sourceTags,omitempty" tf:"source_tags,omitempty"`
}

func (*InboundRuleParameters) DeepCopy

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

func (*InboundRuleParameters) DeepCopyInto

func (in *InboundRuleParameters) DeepCopyInto(out *InboundRuleParameters)

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

type Loadbalancer

type Loadbalancer 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.forwardingRule) || (has(self.initProvider) && has(self.initProvider.forwardingRule))",message="spec.forProvider.forwardingRule 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   LoadbalancerSpec   `json:"spec"`
	Status LoadbalancerStatus `json:"status,omitempty"`
}

Loadbalancer is the Schema for the Loadbalancers API. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,do}

func (*Loadbalancer) DeepCopy

func (in *Loadbalancer) DeepCopy() *Loadbalancer

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

func (*Loadbalancer) DeepCopyInto

func (in *Loadbalancer) DeepCopyInto(out *Loadbalancer)

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

func (*Loadbalancer) DeepCopyObject

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

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

func (*Loadbalancer) GetCondition

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

GetCondition of this Loadbalancer.

func (*Loadbalancer) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Loadbalancer

func (*Loadbalancer) GetDeletionPolicy

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

GetDeletionPolicy of this Loadbalancer.

func (*Loadbalancer) GetID

func (tr *Loadbalancer) GetID() string

GetID returns ID of underlying Terraform resource of this Loadbalancer

func (*Loadbalancer) GetInitParameters

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

GetInitParameters of this Loadbalancer

func (*Loadbalancer) GetManagementPolicies

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

GetManagementPolicies of this Loadbalancer.

func (*Loadbalancer) GetMergedParameters added in v0.2.0

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

GetInitParameters of this Loadbalancer

func (*Loadbalancer) GetObservation

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

GetObservation of this Loadbalancer

func (*Loadbalancer) GetParameters

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

GetParameters of this Loadbalancer

func (*Loadbalancer) GetProviderConfigReference

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

GetProviderConfigReference of this Loadbalancer.

func (*Loadbalancer) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Loadbalancer.

func (*Loadbalancer) GetTerraformResourceType

func (mg *Loadbalancer) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Loadbalancer

func (*Loadbalancer) GetTerraformSchemaVersion

func (tr *Loadbalancer) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Loadbalancer) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Loadbalancer.

func (*Loadbalancer) Hub added in v0.2.0

func (tr *Loadbalancer) Hub()

Hub marks this type as a conversion hub.

func (*Loadbalancer) LateInitialize

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

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

func (*Loadbalancer) ResolveReferences

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

ResolveReferences of this Loadbalancer.

func (*Loadbalancer) SetConditions

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

SetConditions of this Loadbalancer.

func (*Loadbalancer) SetDeletionPolicy

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

SetDeletionPolicy of this Loadbalancer.

func (*Loadbalancer) SetManagementPolicies

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

SetManagementPolicies of this Loadbalancer.

func (*Loadbalancer) SetObservation

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

SetObservation for this Loadbalancer

func (*Loadbalancer) SetParameters

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

SetParameters for this Loadbalancer

func (*Loadbalancer) SetProviderConfigReference

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

SetProviderConfigReference of this Loadbalancer.

func (*Loadbalancer) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Loadbalancer.

func (*Loadbalancer) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Loadbalancer.

type LoadbalancerFirewallInitParameters

type LoadbalancerFirewallInitParameters struct {

	// A list of strings describing allow rules. Must be colon delimited strings of the form {type}:{source}
	// the rules for ALLOWING traffic to the LB (strings in the form: 'ip:1.2.3.4' or 'cidr:1.2.0.0/16')
	Allow []*string `json:"allow,omitempty" tf:"allow,omitempty"`

	// A list of strings describing deny rules. Must be colon delimited strings of the form {type}:{source}
	// the rules for DENYING traffic to the LB (strings in the form: 'ip:1.2.3.4' or 'cidr:1.2.0.0/16')
	Deny []*string `json:"deny,omitempty" tf:"deny,omitempty"`
}

func (*LoadbalancerFirewallInitParameters) DeepCopy

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

func (*LoadbalancerFirewallInitParameters) DeepCopyInto

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

type LoadbalancerFirewallObservation

type LoadbalancerFirewallObservation struct {

	// A list of strings describing allow rules. Must be colon delimited strings of the form {type}:{source}
	// the rules for ALLOWING traffic to the LB (strings in the form: 'ip:1.2.3.4' or 'cidr:1.2.0.0/16')
	Allow []*string `json:"allow,omitempty" tf:"allow,omitempty"`

	// A list of strings describing deny rules. Must be colon delimited strings of the form {type}:{source}
	// the rules for DENYING traffic to the LB (strings in the form: 'ip:1.2.3.4' or 'cidr:1.2.0.0/16')
	Deny []*string `json:"deny,omitempty" tf:"deny,omitempty"`
}

func (*LoadbalancerFirewallObservation) DeepCopy

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

func (*LoadbalancerFirewallObservation) DeepCopyInto

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

type LoadbalancerFirewallParameters

type LoadbalancerFirewallParameters struct {

	// A list of strings describing allow rules. Must be colon delimited strings of the form {type}:{source}
	// the rules for ALLOWING traffic to the LB (strings in the form: 'ip:1.2.3.4' or 'cidr:1.2.0.0/16')
	// +kubebuilder:validation:Optional
	Allow []*string `json:"allow,omitempty" tf:"allow,omitempty"`

	// A list of strings describing deny rules. Must be colon delimited strings of the form {type}:{source}
	// the rules for DENYING traffic to the LB (strings in the form: 'ip:1.2.3.4' or 'cidr:1.2.0.0/16')
	// +kubebuilder:validation:Optional
	Deny []*string `json:"deny,omitempty" tf:"deny,omitempty"`
}

func (*LoadbalancerFirewallParameters) DeepCopy

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

func (*LoadbalancerFirewallParameters) DeepCopyInto

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

type LoadbalancerInitParameters

type LoadbalancerInitParameters struct {

	// The load balancing algorithm used to determine
	// which backend Droplet will be selected by a client. It must be either round_robin
	// or least_connections. The default value is round_robin.
	Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"`

	// A boolean value indicating whether to disable automatic DNS record creation for Let's Encrypt certificates that are added to the load balancer. Default value is false.
	DisableLetsEncryptDNSRecords *bool `json:"disableLetsEncryptDnsRecords,omitempty" tf:"disable_lets_encrypt_dns_records,omitempty"`

	// A list of the IDs of each droplet to be attached to the Load Balancer.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	// +listType=set
	DropletIds []*float64 `json:"dropletIds,omitempty" tf:"droplet_ids,omitempty"`

	// References to Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsRefs []v1.Reference `json:"dropletIdsRefs,omitempty" tf:"-"`

	// Selector for a list of Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsSelector *v1.Selector `json:"dropletIdsSelector,omitempty" tf:"-"`

	// The name of a Droplet tag corresponding to Droplets to be assigned to the Load Balancer.
	DropletTag *string `json:"dropletTag,omitempty" tf:"droplet_tag,omitempty"`

	// A boolean value indicating whether HTTP keepalive connections are maintained to target Droplets. Default value is false.
	EnableBackendKeepalive *bool `json:"enableBackendKeepalive,omitempty" tf:"enable_backend_keepalive,omitempty"`

	// A boolean value indicating whether PROXY
	// Protocol should be used to pass information from connecting client requests to
	// the backend service. Default value is false.
	EnableProxyProtocol *bool `json:"enableProxyProtocol,omitempty" tf:"enable_proxy_protocol,omitempty"`

	// A block containing rules for allowing/denying traffic to the Load Balancer. The firewall block is documented below. Only 1 firewall is allowed.
	Firewall []LoadbalancerFirewallInitParameters `json:"firewall,omitempty" tf:"firewall,omitempty"`

	// A list of forwarding_rule to be assigned to the
	// Load Balancer. The forwarding_rule block is documented below.
	ForwardingRule []ForwardingRuleInitParameters `json:"forwardingRule,omitempty" tf:"forwarding_rule,omitempty"`

	// Specifies the idle timeout for HTTPS connections on the load balancer in seconds.
	HTTPIdleTimeoutSeconds *float64 `json:"httpIdleTimeoutSeconds,omitempty" tf:"http_idle_timeout_seconds,omitempty"`

	// A healthcheck block to be assigned to the
	// Load Balancer. The healthcheck block is documented below. Only 1 healthcheck is allowed.
	Healthcheck []HealthcheckInitParameters `json:"healthcheck,omitempty" tf:"healthcheck,omitempty"`

	// The Load Balancer name
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/project/v1alpha1.Project
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Reference to a Project in project to populate projectId.
	// +kubebuilder:validation:Optional
	ProjectIDRef *v1.Reference `json:"projectIdRef,omitempty" tf:"-"`

	// Selector for a Project in project to populate projectId.
	// +kubebuilder:validation:Optional
	ProjectIDSelector *v1.Selector `json:"projectIdSelector,omitempty" tf:"-"`

	// A boolean value indicating whether
	// HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
	// Default value is false.
	RedirectHTTPToHTTPS *bool `json:"redirectHttpToHttps,omitempty" tf:"redirect_http_to_https,omitempty"`

	// The region to start in
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// The size of the Load Balancer. It must be either lb-small, lb-medium, or lb-large. Defaults to lb-small. Only one of size or size_unit may be provided.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The size of the Load Balancer. It must be in the range (1, 100). Defaults to 1. Only one of size or size_unit may be provided.
	SizeUnit *float64 `json:"sizeUnit,omitempty" tf:"size_unit,omitempty"`

	// A sticky_sessions block to be assigned to the
	// Load Balancer. The sticky_sessions block is documented below. Only 1 sticky_sessions block is allowed.
	StickySessions []StickySessionsInitParameters `json:"stickySessions,omitempty" tf:"sticky_sessions,omitempty"`

	// An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are cookies or none. If not specified, the default value is none.
	// the type of the load balancer (GLOBAL or REGIONAL)
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The ID of the VPC where the load balancer will be located.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/vpc/v1alpha1.VPC
	VPCUUID *string `json:"vpcUuid,omitempty" tf:"vpc_uuid,omitempty"`

	// Reference to a VPC in vpc to populate vpcUuid.
	// +kubebuilder:validation:Optional
	VPCUUIDRef *v1.Reference `json:"vpcUuidRef,omitempty" tf:"-"`

	// Selector for a VPC in vpc to populate vpcUuid.
	// +kubebuilder:validation:Optional
	VPCUUIDSelector *v1.Selector `json:"vpcUuidSelector,omitempty" tf:"-"`
}

func (*LoadbalancerInitParameters) DeepCopy

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

func (*LoadbalancerInitParameters) DeepCopyInto

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

type LoadbalancerList

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

LoadbalancerList contains a list of Loadbalancers

func (*LoadbalancerList) DeepCopy

func (in *LoadbalancerList) DeepCopy() *LoadbalancerList

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

func (*LoadbalancerList) DeepCopyInto

func (in *LoadbalancerList) DeepCopyInto(out *LoadbalancerList)

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

func (*LoadbalancerList) DeepCopyObject

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

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

func (*LoadbalancerList) GetItems

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

GetItems of this LoadbalancerList.

type LoadbalancerObservation

type LoadbalancerObservation struct {

	// The load balancing algorithm used to determine
	// which backend Droplet will be selected by a client. It must be either round_robin
	// or least_connections. The default value is round_robin.
	Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"`

	// A boolean value indicating whether to disable automatic DNS record creation for Let's Encrypt certificates that are added to the load balancer. Default value is false.
	DisableLetsEncryptDNSRecords *bool `json:"disableLetsEncryptDnsRecords,omitempty" tf:"disable_lets_encrypt_dns_records,omitempty"`

	// A list of the IDs of each droplet to be attached to the Load Balancer.
	// +listType=set
	DropletIds []*float64 `json:"dropletIds,omitempty" tf:"droplet_ids,omitempty"`

	// The name of a Droplet tag corresponding to Droplets to be assigned to the Load Balancer.
	DropletTag *string `json:"dropletTag,omitempty" tf:"droplet_tag,omitempty"`

	// A boolean value indicating whether HTTP keepalive connections are maintained to target Droplets. Default value is false.
	EnableBackendKeepalive *bool `json:"enableBackendKeepalive,omitempty" tf:"enable_backend_keepalive,omitempty"`

	// A boolean value indicating whether PROXY
	// Protocol should be used to pass information from connecting client requests to
	// the backend service. Default value is false.
	EnableProxyProtocol *bool `json:"enableProxyProtocol,omitempty" tf:"enable_proxy_protocol,omitempty"`

	// A block containing rules for allowing/denying traffic to the Load Balancer. The firewall block is documented below. Only 1 firewall is allowed.
	Firewall []LoadbalancerFirewallObservation `json:"firewall,omitempty" tf:"firewall,omitempty"`

	// A list of forwarding_rule to be assigned to the
	// Load Balancer. The forwarding_rule block is documented below.
	ForwardingRule []ForwardingRuleObservation `json:"forwardingRule,omitempty" tf:"forwarding_rule,omitempty"`

	// Specifies the idle timeout for HTTPS connections on the load balancer in seconds.
	HTTPIdleTimeoutSeconds *float64 `json:"httpIdleTimeoutSeconds,omitempty" tf:"http_idle_timeout_seconds,omitempty"`

	// A healthcheck block to be assigned to the
	// Load Balancer. The healthcheck block is documented below. Only 1 healthcheck is allowed.
	Healthcheck []HealthcheckObservation `json:"healthcheck,omitempty" tf:"healthcheck,omitempty"`

	// The ID of the Load Balancer
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The ip of the Load Balancer
	IP *string `json:"ip,omitempty" tf:"ip,omitempty"`

	// The Load Balancer name
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// A boolean value indicating whether
	// HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
	// Default value is false.
	RedirectHTTPToHTTPS *bool `json:"redirectHttpToHttps,omitempty" tf:"redirect_http_to_https,omitempty"`

	// The region to start in
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// The size of the Load Balancer. It must be either lb-small, lb-medium, or lb-large. Defaults to lb-small. Only one of size or size_unit may be provided.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The size of the Load Balancer. It must be in the range (1, 100). Defaults to 1. Only one of size or size_unit may be provided.
	SizeUnit *float64 `json:"sizeUnit,omitempty" tf:"size_unit,omitempty"`

	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// A sticky_sessions block to be assigned to the
	// Load Balancer. The sticky_sessions block is documented below. Only 1 sticky_sessions block is allowed.
	StickySessions []StickySessionsObservation `json:"stickySessions,omitempty" tf:"sticky_sessions,omitempty"`

	// An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are cookies or none. If not specified, the default value is none.
	// the type of the load balancer (GLOBAL or REGIONAL)
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The uniform resource name for the Load Balancer
	// the uniform resource name for the load balancer
	Urn *string `json:"urn,omitempty" tf:"urn,omitempty"`

	// The ID of the VPC where the load balancer will be located.
	VPCUUID *string `json:"vpcUuid,omitempty" tf:"vpc_uuid,omitempty"`
}

func (*LoadbalancerObservation) DeepCopy

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

func (*LoadbalancerObservation) DeepCopyInto

func (in *LoadbalancerObservation) DeepCopyInto(out *LoadbalancerObservation)

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

type LoadbalancerParameters

type LoadbalancerParameters struct {

	// The load balancing algorithm used to determine
	// which backend Droplet will be selected by a client. It must be either round_robin
	// or least_connections. The default value is round_robin.
	// +kubebuilder:validation:Optional
	Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"`

	// A boolean value indicating whether to disable automatic DNS record creation for Let's Encrypt certificates that are added to the load balancer. Default value is false.
	// +kubebuilder:validation:Optional
	DisableLetsEncryptDNSRecords *bool `json:"disableLetsEncryptDnsRecords,omitempty" tf:"disable_lets_encrypt_dns_records,omitempty"`

	// A list of the IDs of each droplet to be attached to the Load Balancer.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/droplet/v1alpha1.Droplet
	// +kubebuilder:validation:Optional
	// +listType=set
	DropletIds []*float64 `json:"dropletIds,omitempty" tf:"droplet_ids,omitempty"`

	// References to Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsRefs []v1.Reference `json:"dropletIdsRefs,omitempty" tf:"-"`

	// Selector for a list of Droplet in droplet to populate dropletIds.
	// +kubebuilder:validation:Optional
	DropletIdsSelector *v1.Selector `json:"dropletIdsSelector,omitempty" tf:"-"`

	// The name of a Droplet tag corresponding to Droplets to be assigned to the Load Balancer.
	// +kubebuilder:validation:Optional
	DropletTag *string `json:"dropletTag,omitempty" tf:"droplet_tag,omitempty"`

	// A boolean value indicating whether HTTP keepalive connections are maintained to target Droplets. Default value is false.
	// +kubebuilder:validation:Optional
	EnableBackendKeepalive *bool `json:"enableBackendKeepalive,omitempty" tf:"enable_backend_keepalive,omitempty"`

	// A boolean value indicating whether PROXY
	// Protocol should be used to pass information from connecting client requests to
	// the backend service. Default value is false.
	// +kubebuilder:validation:Optional
	EnableProxyProtocol *bool `json:"enableProxyProtocol,omitempty" tf:"enable_proxy_protocol,omitempty"`

	// A block containing rules for allowing/denying traffic to the Load Balancer. The firewall block is documented below. Only 1 firewall is allowed.
	// +kubebuilder:validation:Optional
	Firewall []LoadbalancerFirewallParameters `json:"firewall,omitempty" tf:"firewall,omitempty"`

	// A list of forwarding_rule to be assigned to the
	// Load Balancer. The forwarding_rule block is documented below.
	// +kubebuilder:validation:Optional
	ForwardingRule []ForwardingRuleParameters `json:"forwardingRule,omitempty" tf:"forwarding_rule,omitempty"`

	// Specifies the idle timeout for HTTPS connections on the load balancer in seconds.
	// +kubebuilder:validation:Optional
	HTTPIdleTimeoutSeconds *float64 `json:"httpIdleTimeoutSeconds,omitempty" tf:"http_idle_timeout_seconds,omitempty"`

	// A healthcheck block to be assigned to the
	// Load Balancer. The healthcheck block is documented below. Only 1 healthcheck is allowed.
	// +kubebuilder:validation:Optional
	Healthcheck []HealthcheckParameters `json:"healthcheck,omitempty" tf:"healthcheck,omitempty"`

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

	// The ID of the project that the load balancer is associated with. If no ID is provided at creation, the load balancer associates with the user's default project.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/project/v1alpha1.Project
	// +kubebuilder:validation:Optional
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Reference to a Project in project to populate projectId.
	// +kubebuilder:validation:Optional
	ProjectIDRef *v1.Reference `json:"projectIdRef,omitempty" tf:"-"`

	// Selector for a Project in project to populate projectId.
	// +kubebuilder:validation:Optional
	ProjectIDSelector *v1.Selector `json:"projectIdSelector,omitempty" tf:"-"`

	// A boolean value indicating whether
	// HTTP requests to the Load Balancer on port 80 will be redirected to HTTPS on port 443.
	// Default value is false.
	// +kubebuilder:validation:Optional
	RedirectHTTPToHTTPS *bool `json:"redirectHttpToHttps,omitempty" tf:"redirect_http_to_https,omitempty"`

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

	// The size of the Load Balancer. It must be either lb-small, lb-medium, or lb-large. Defaults to lb-small. Only one of size or size_unit may be provided.
	// +kubebuilder:validation:Optional
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The size of the Load Balancer. It must be in the range (1, 100). Defaults to 1. Only one of size or size_unit may be provided.
	// +kubebuilder:validation:Optional
	SizeUnit *float64 `json:"sizeUnit,omitempty" tf:"size_unit,omitempty"`

	// A sticky_sessions block to be assigned to the
	// Load Balancer. The sticky_sessions block is documented below. Only 1 sticky_sessions block is allowed.
	// +kubebuilder:validation:Optional
	StickySessions []StickySessionsParameters `json:"stickySessions,omitempty" tf:"sticky_sessions,omitempty"`

	// An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are cookies or none. If not specified, the default value is none.
	// the type of the load balancer (GLOBAL or REGIONAL)
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The ID of the VPC where the load balancer will be located.
	// +crossplane:generate:reference:type=github.com/crossplane-contrib/provider-upjet-digitalocean/apis/vpc/v1alpha1.VPC
	// +kubebuilder:validation:Optional
	VPCUUID *string `json:"vpcUuid,omitempty" tf:"vpc_uuid,omitempty"`

	// Reference to a VPC in vpc to populate vpcUuid.
	// +kubebuilder:validation:Optional
	VPCUUIDRef *v1.Reference `json:"vpcUuidRef,omitempty" tf:"-"`

	// Selector for a VPC in vpc to populate vpcUuid.
	// +kubebuilder:validation:Optional
	VPCUUIDSelector *v1.Selector `json:"vpcUuidSelector,omitempty" tf:"-"`
}

func (*LoadbalancerParameters) DeepCopy

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

func (*LoadbalancerParameters) DeepCopyInto

func (in *LoadbalancerParameters) DeepCopyInto(out *LoadbalancerParameters)

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

type LoadbalancerSpec

type LoadbalancerSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     LoadbalancerParameters `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 LoadbalancerInitParameters `json:"initProvider,omitempty"`
}

LoadbalancerSpec defines the desired state of Loadbalancer

func (*LoadbalancerSpec) DeepCopy

func (in *LoadbalancerSpec) DeepCopy() *LoadbalancerSpec

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

func (*LoadbalancerSpec) DeepCopyInto

func (in *LoadbalancerSpec) DeepCopyInto(out *LoadbalancerSpec)

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

type LoadbalancerStatus

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

LoadbalancerStatus defines the observed state of Loadbalancer.

func (*LoadbalancerStatus) DeepCopy

func (in *LoadbalancerStatus) DeepCopy() *LoadbalancerStatus

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

func (*LoadbalancerStatus) DeepCopyInto

func (in *LoadbalancerStatus) DeepCopyInto(out *LoadbalancerStatus)

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

type OutboundRuleInitParameters

type OutboundRuleInitParameters struct {

	// An array of strings containing the IPv4
	// addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs to which the
	// outbound traffic will be allowed.
	// +listType=set
	DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"`

	// An array containing the IDs of
	// the Droplets to which the outbound traffic will be allowed.
	// +listType=set
	DestinationDropletIds []*float64 `json:"destinationDropletIds,omitempty" tf:"destination_droplet_ids,omitempty"`

	// An array containing the IDs of
	// the Kubernetes clusters to which the outbound traffic will be allowed.
	// +listType=set
	DestinationKubernetesIds []*string `json:"destinationKubernetesIds,omitempty" tf:"destination_kubernetes_ids,omitempty"`

	// An array containing the IDs
	// of the Load Balancers to which the outbound traffic will be allowed.
	// +listType=set
	DestinationLoadBalancerUids []*string `json:"destinationLoadBalancerUids,omitempty" tf:"destination_load_balancer_uids,omitempty"`

	// An array containing the names of Tags
	// corresponding to groups of Droplets to which the outbound traffic will
	// be allowed.
	// +listType=set
	DestinationTags []*string `json:"destinationTags,omitempty" tf:"destination_tags,omitempty"`

	// The ports on which traffic will be allowed
	// specified as a string containing a single port, a range (e.g. "8000-9000"),
	// or "1-65535" to open all ports for a protocol. Required for when protocol is
	// tcp or udp.
	PortRange *string `json:"portRange,omitempty" tf:"port_range,omitempty"`

	// The type of traffic to be allowed.
	// This may be one of "tcp", "udp", or "icmp".
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*OutboundRuleInitParameters) DeepCopy

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

func (*OutboundRuleInitParameters) DeepCopyInto

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

type OutboundRuleObservation

type OutboundRuleObservation struct {

	// An array of strings containing the IPv4
	// addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs to which the
	// outbound traffic will be allowed.
	// +listType=set
	DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"`

	// An array containing the IDs of
	// the Droplets to which the outbound traffic will be allowed.
	// +listType=set
	DestinationDropletIds []*float64 `json:"destinationDropletIds,omitempty" tf:"destination_droplet_ids,omitempty"`

	// An array containing the IDs of
	// the Kubernetes clusters to which the outbound traffic will be allowed.
	// +listType=set
	DestinationKubernetesIds []*string `json:"destinationKubernetesIds,omitempty" tf:"destination_kubernetes_ids,omitempty"`

	// An array containing the IDs
	// of the Load Balancers to which the outbound traffic will be allowed.
	// +listType=set
	DestinationLoadBalancerUids []*string `json:"destinationLoadBalancerUids,omitempty" tf:"destination_load_balancer_uids,omitempty"`

	// An array containing the names of Tags
	// corresponding to groups of Droplets to which the outbound traffic will
	// be allowed.
	// +listType=set
	DestinationTags []*string `json:"destinationTags,omitempty" tf:"destination_tags,omitempty"`

	// The ports on which traffic will be allowed
	// specified as a string containing a single port, a range (e.g. "8000-9000"),
	// or "1-65535" to open all ports for a protocol. Required for when protocol is
	// tcp or udp.
	PortRange *string `json:"portRange,omitempty" tf:"port_range,omitempty"`

	// The type of traffic to be allowed.
	// This may be one of "tcp", "udp", or "icmp".
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*OutboundRuleObservation) DeepCopy

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

func (*OutboundRuleObservation) DeepCopyInto

func (in *OutboundRuleObservation) DeepCopyInto(out *OutboundRuleObservation)

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

type OutboundRuleParameters

type OutboundRuleParameters struct {

	// An array of strings containing the IPv4
	// addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs to which the
	// outbound traffic will be allowed.
	// +kubebuilder:validation:Optional
	// +listType=set
	DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"`

	// An array containing the IDs of
	// the Droplets to which the outbound traffic will be allowed.
	// +kubebuilder:validation:Optional
	// +listType=set
	DestinationDropletIds []*float64 `json:"destinationDropletIds,omitempty" tf:"destination_droplet_ids,omitempty"`

	// An array containing the IDs of
	// the Kubernetes clusters to which the outbound traffic will be allowed.
	// +kubebuilder:validation:Optional
	// +listType=set
	DestinationKubernetesIds []*string `json:"destinationKubernetesIds,omitempty" tf:"destination_kubernetes_ids,omitempty"`

	// An array containing the IDs
	// of the Load Balancers to which the outbound traffic will be allowed.
	// +kubebuilder:validation:Optional
	// +listType=set
	DestinationLoadBalancerUids []*string `json:"destinationLoadBalancerUids,omitempty" tf:"destination_load_balancer_uids,omitempty"`

	// An array containing the names of Tags
	// corresponding to groups of Droplets to which the outbound traffic will
	// be allowed.
	// +kubebuilder:validation:Optional
	// +listType=set
	DestinationTags []*string `json:"destinationTags,omitempty" tf:"destination_tags,omitempty"`

	// The ports on which traffic will be allowed
	// specified as a string containing a single port, a range (e.g. "8000-9000"),
	// or "1-65535" to open all ports for a protocol. Required for when protocol is
	// tcp or udp.
	// +kubebuilder:validation:Optional
	PortRange *string `json:"portRange,omitempty" tf:"port_range,omitempty"`

	// The type of traffic to be allowed.
	// This may be one of "tcp", "udp", or "icmp".
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`
}

func (*OutboundRuleParameters) DeepCopy

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

func (*OutboundRuleParameters) DeepCopyInto

func (in *OutboundRuleParameters) DeepCopyInto(out *OutboundRuleParameters)

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

type PendingChangesInitParameters

type PendingChangesInitParameters struct {
}

func (*PendingChangesInitParameters) DeepCopy

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

func (*PendingChangesInitParameters) DeepCopyInto

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

type PendingChangesObservation

type PendingChangesObservation struct {

	// A unique ID that can be used to identify and reference a Firewall.
	DropletID *float64 `json:"dropletId,omitempty" tf:"droplet_id,omitempty"`

	Removing *bool `json:"removing,omitempty" tf:"removing,omitempty"`

	// A status string indicating the current state of the Firewall.
	// This can be "waiting", "succeeded", or "failed".
	Status *string `json:"status,omitempty" tf:"status,omitempty"`
}

func (*PendingChangesObservation) DeepCopy

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

func (*PendingChangesObservation) DeepCopyInto

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

type PendingChangesParameters

type PendingChangesParameters struct {
}

func (*PendingChangesParameters) DeepCopy

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

func (*PendingChangesParameters) DeepCopyInto

func (in *PendingChangesParameters) DeepCopyInto(out *PendingChangesParameters)

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

type StickySessionsInitParameters

type StickySessionsInitParameters struct {

	// The name to be used for the cookie sent to the client. This attribute is required when using cookies for the sticky sessions type.
	CookieName *string `json:"cookieName,omitempty" tf:"cookie_name,omitempty"`

	// The number of seconds until the cookie set by the Load Balancer expires. This attribute is required when using cookies for the sticky sessions type.
	CookieTTLSeconds *float64 `json:"cookieTtlSeconds,omitempty" tf:"cookie_ttl_seconds,omitempty"`

	// An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are cookies or none. If not specified, the default value is none.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*StickySessionsInitParameters) DeepCopy

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

func (*StickySessionsInitParameters) DeepCopyInto

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

type StickySessionsObservation

type StickySessionsObservation struct {

	// The name to be used for the cookie sent to the client. This attribute is required when using cookies for the sticky sessions type.
	CookieName *string `json:"cookieName,omitempty" tf:"cookie_name,omitempty"`

	// The number of seconds until the cookie set by the Load Balancer expires. This attribute is required when using cookies for the sticky sessions type.
	CookieTTLSeconds *float64 `json:"cookieTtlSeconds,omitempty" tf:"cookie_ttl_seconds,omitempty"`

	// An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are cookies or none. If not specified, the default value is none.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*StickySessionsObservation) DeepCopy

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

func (*StickySessionsObservation) DeepCopyInto

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

type StickySessionsParameters

type StickySessionsParameters struct {

	// The name to be used for the cookie sent to the client. This attribute is required when using cookies for the sticky sessions type.
	// +kubebuilder:validation:Optional
	CookieName *string `json:"cookieName,omitempty" tf:"cookie_name,omitempty"`

	// The number of seconds until the cookie set by the Load Balancer expires. This attribute is required when using cookies for the sticky sessions type.
	// +kubebuilder:validation:Optional
	CookieTTLSeconds *float64 `json:"cookieTtlSeconds,omitempty" tf:"cookie_ttl_seconds,omitempty"`

	// An attribute indicating how and if requests from a client will be persistently served by the same backend Droplet. The possible values are cookies or none. If not specified, the default value is none.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*StickySessionsParameters) DeepCopy

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

func (*StickySessionsParameters) DeepCopyInto

func (in *StickySessionsParameters) DeepCopyInto(out *StickySessionsParameters)

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