v1beta2

package
v1.8.3 Latest Latest
Warning

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

Go to latest
Published: Sep 20, 2024 License: Apache-2.0 Imports: 14 Imported by: 1

Documentation

Overview

+kubebuilder:object:generate=true +groupName=datafusion.gcp.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "datafusion.gcp.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

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 (
	Instance_Kind             = "Instance"
	Instance_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Instance_Kind}.String()
	Instance_KindAPIVersion   = Instance_Kind + "." + CRDGroupVersion.String()
	Instance_GroupVersionKind = CRDGroupVersion.WithKind(Instance_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AcceleratorsInitParameters

type AcceleratorsInitParameters struct {

	// The type of an accelator for a CDF instance.
	// Possible values are: CDC, HEALTHCARE, CCAI_INSIGHTS.
	AcceleratorType *string `json:"acceleratorType,omitempty" tf:"accelerator_type,omitempty"`

	// The type of an accelator for a CDF instance.
	// Possible values are: ENABLED, DISABLED.
	State *string `json:"state,omitempty" tf:"state,omitempty"`
}

func (*AcceleratorsInitParameters) DeepCopy

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

func (*AcceleratorsInitParameters) DeepCopyInto

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

type AcceleratorsObservation

type AcceleratorsObservation struct {

	// The type of an accelator for a CDF instance.
	// Possible values are: CDC, HEALTHCARE, CCAI_INSIGHTS.
	AcceleratorType *string `json:"acceleratorType,omitempty" tf:"accelerator_type,omitempty"`

	// The type of an accelator for a CDF instance.
	// Possible values are: ENABLED, DISABLED.
	State *string `json:"state,omitempty" tf:"state,omitempty"`
}

func (*AcceleratorsObservation) DeepCopy

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

func (*AcceleratorsObservation) DeepCopyInto

func (in *AcceleratorsObservation) DeepCopyInto(out *AcceleratorsObservation)

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

type AcceleratorsParameters

type AcceleratorsParameters struct {

	// The type of an accelator for a CDF instance.
	// Possible values are: CDC, HEALTHCARE, CCAI_INSIGHTS.
	// +kubebuilder:validation:Optional
	AcceleratorType *string `json:"acceleratorType" tf:"accelerator_type,omitempty"`

	// The type of an accelator for a CDF instance.
	// Possible values are: ENABLED, DISABLED.
	// +kubebuilder:validation:Optional
	State *string `json:"state" tf:"state,omitempty"`
}

func (*AcceleratorsParameters) DeepCopy

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

func (*AcceleratorsParameters) DeepCopyInto

func (in *AcceleratorsParameters) DeepCopyInto(out *AcceleratorsParameters)

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

type CryptoKeyConfigInitParameters

type CryptoKeyConfigInitParameters struct {

	// The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/kms/v1beta2.CryptoKey
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	KeyReference *string `json:"keyReference,omitempty" tf:"key_reference,omitempty"`

	// Reference to a CryptoKey in kms to populate keyReference.
	// +kubebuilder:validation:Optional
	KeyReferenceRef *v1.Reference `json:"keyReferenceRef,omitempty" tf:"-"`

	// Selector for a CryptoKey in kms to populate keyReference.
	// +kubebuilder:validation:Optional
	KeyReferenceSelector *v1.Selector `json:"keyReferenceSelector,omitempty" tf:"-"`
}

func (*CryptoKeyConfigInitParameters) DeepCopy

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

func (*CryptoKeyConfigInitParameters) DeepCopyInto

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

type CryptoKeyConfigObservation

type CryptoKeyConfigObservation struct {

	// The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
	KeyReference *string `json:"keyReference,omitempty" tf:"key_reference,omitempty"`
}

func (*CryptoKeyConfigObservation) DeepCopy

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

func (*CryptoKeyConfigObservation) DeepCopyInto

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

type CryptoKeyConfigParameters

type CryptoKeyConfigParameters struct {

	// The name of the key which is used to encrypt/decrypt customer data. For key in Cloud KMS, the key should be in the format of projects//locations//keyRings//cryptoKeys/.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/kms/v1beta2.CryptoKey
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	KeyReference *string `json:"keyReference,omitempty" tf:"key_reference,omitempty"`

	// Reference to a CryptoKey in kms to populate keyReference.
	// +kubebuilder:validation:Optional
	KeyReferenceRef *v1.Reference `json:"keyReferenceRef,omitempty" tf:"-"`

	// Selector for a CryptoKey in kms to populate keyReference.
	// +kubebuilder:validation:Optional
	KeyReferenceSelector *v1.Selector `json:"keyReferenceSelector,omitempty" tf:"-"`
}

func (*CryptoKeyConfigParameters) DeepCopy

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

func (*CryptoKeyConfigParameters) DeepCopyInto

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

type EventPublishConfigInitParameters

type EventPublishConfigInitParameters struct {

	// Option to enable Event Publishing.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The resource name of the Pub/Sub topic. Format: projects/{projectId}/topics/{topic_id}
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/pubsub/v1beta2.Topic
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	Topic *string `json:"topic,omitempty" tf:"topic,omitempty"`

	// Reference to a Topic in pubsub to populate topic.
	// +kubebuilder:validation:Optional
	TopicRef *v1.Reference `json:"topicRef,omitempty" tf:"-"`

	// Selector for a Topic in pubsub to populate topic.
	// +kubebuilder:validation:Optional
	TopicSelector *v1.Selector `json:"topicSelector,omitempty" tf:"-"`
}

func (*EventPublishConfigInitParameters) DeepCopy

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

func (*EventPublishConfigInitParameters) DeepCopyInto

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

type EventPublishConfigObservation

type EventPublishConfigObservation struct {

	// Option to enable Event Publishing.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The resource name of the Pub/Sub topic. Format: projects/{projectId}/topics/{topic_id}
	Topic *string `json:"topic,omitempty" tf:"topic,omitempty"`
}

func (*EventPublishConfigObservation) DeepCopy

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

func (*EventPublishConfigObservation) DeepCopyInto

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

type EventPublishConfigParameters

type EventPublishConfigParameters struct {

	// Option to enable Event Publishing.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// The resource name of the Pub/Sub topic. Format: projects/{projectId}/topics/{topic_id}
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/pubsub/v1beta2.Topic
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	Topic *string `json:"topic,omitempty" tf:"topic,omitempty"`

	// Reference to a Topic in pubsub to populate topic.
	// +kubebuilder:validation:Optional
	TopicRef *v1.Reference `json:"topicRef,omitempty" tf:"-"`

	// Selector for a Topic in pubsub to populate topic.
	// +kubebuilder:validation:Optional
	TopicSelector *v1.Selector `json:"topicSelector,omitempty" tf:"-"`
}

func (*EventPublishConfigParameters) DeepCopy

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

func (*EventPublishConfigParameters) DeepCopyInto

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

type Instance

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

Instance is the Schema for the Instances API. Represents a Data Fusion instance. +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,gcp}

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

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

func (*Instance) DeepCopyInto

func (in *Instance) DeepCopyInto(out *Instance)

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

func (*Instance) DeepCopyObject

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

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

func (*Instance) GetCondition

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

GetCondition of this Instance.

func (*Instance) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Instance

func (*Instance) GetDeletionPolicy

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

GetDeletionPolicy of this Instance.

func (*Instance) GetID

func (tr *Instance) GetID() string

GetID returns ID of underlying Terraform resource of this Instance

func (*Instance) GetInitParameters

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

GetInitParameters of this Instance

func (*Instance) GetManagementPolicies

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

GetManagementPolicies of this Instance.

func (*Instance) GetMergedParameters

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

GetInitParameters of this Instance

func (*Instance) GetObservation

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

GetObservation of this Instance

func (*Instance) GetParameters

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

GetParameters of this Instance

func (*Instance) GetProviderConfigReference

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

GetProviderConfigReference of this Instance.

func (*Instance) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Instance.

func (*Instance) GetTerraformResourceType

func (mg *Instance) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Instance

func (*Instance) GetTerraformSchemaVersion

func (tr *Instance) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Instance) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Instance.

func (*Instance) Hub

func (tr *Instance) Hub()

Hub marks this type as a conversion hub.

func (*Instance) LateInitialize

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

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

func (*Instance) ResolveReferences

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

func (*Instance) SetConditions

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

SetConditions of this Instance.

func (*Instance) SetDeletionPolicy

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

SetDeletionPolicy of this Instance.

func (*Instance) SetManagementPolicies

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

SetManagementPolicies of this Instance.

func (*Instance) SetObservation

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

SetObservation for this Instance

func (*Instance) SetParameters

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

SetParameters for this Instance

func (*Instance) SetProviderConfigReference

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

SetProviderConfigReference of this Instance.

func (*Instance) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Instance.

func (*Instance) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Instance.

type InstanceInitParameters

type InstanceInitParameters struct {

	// List of accelerators enabled for this CDF instance.
	// If accelerators are enabled it is possible a permadiff will be created with the Options field.
	// Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block.
	// Structure is documented below.
	Accelerators []AcceleratorsInitParameters `json:"accelerators,omitempty" tf:"accelerators,omitempty"`

	// The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature.
	// Structure is documented below.
	CryptoKeyConfig *CryptoKeyConfigInitParameters `json:"cryptoKeyConfig,omitempty" tf:"crypto_key_config,omitempty"`

	// User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
	DataprocServiceAccount *string `json:"dataprocServiceAccount,omitempty" tf:"dataproc_service_account,omitempty"`

	// An optional description of the instance.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Display name for an instance.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Option to enable granular role-based access control.
	EnableRbac *bool `json:"enableRbac,omitempty" tf:"enable_rbac,omitempty"`

	// Option to enable Stackdriver Logging.
	EnableStackdriverLogging *bool `json:"enableStackdriverLogging,omitempty" tf:"enable_stackdriver_logging,omitempty"`

	// Option to enable Stackdriver Monitoring.
	EnableStackdriverMonitoring *bool `json:"enableStackdriverMonitoring,omitempty" tf:"enable_stackdriver_monitoring,omitempty"`

	// Option to enable and pass metadata for event publishing.
	// Structure is documented below.
	EventPublishConfig *EventPublishConfigInitParameters `json:"eventPublishConfig,omitempty" tf:"event_publish_config,omitempty"`

	// The resource labels for instance to use to annotate any related underlying resources,
	// such as Compute Engine VMs.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Network configuration options. These are required when a private Data Fusion instance is to be created.
	// Structure is documented below.
	NetworkConfig *NetworkConfigInitParameters `json:"networkConfig,omitempty" tf:"network_config,omitempty"`

	// Map of additional options used to configure the behavior of Data Fusion instance.
	// +mapType=granular
	Options map[string]*string `json:"options,omitempty" tf:"options,omitempty"`

	// Specifies whether the Data Fusion instance should be private. If set to
	// true, all Data Fusion nodes will have private IP addresses and will not be
	// able to access the public internet.
	PrivateInstance *bool `json:"privateInstance,omitempty" tf:"private_instance,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Represents the type of Data Fusion instance. Each type is configured with
	// the default settings for processing and memory.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Current version of the Data Fusion.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*InstanceInitParameters) DeepCopy

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

func (*InstanceInitParameters) DeepCopyInto

func (in *InstanceInitParameters) DeepCopyInto(out *InstanceInitParameters)

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

type InstanceList

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

InstanceList contains a list of Instances

func (*InstanceList) DeepCopy

func (in *InstanceList) DeepCopy() *InstanceList

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

func (*InstanceList) DeepCopyInto

func (in *InstanceList) DeepCopyInto(out *InstanceList)

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

func (*InstanceList) DeepCopyObject

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

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

func (*InstanceList) GetItems

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

GetItems of this InstanceList.

type InstanceObservation

type InstanceObservation struct {

	// Endpoint on which the REST APIs is accessible.
	APIEndpoint *string `json:"apiEndpoint,omitempty" tf:"api_endpoint,omitempty"`

	// List of accelerators enabled for this CDF instance.
	// If accelerators are enabled it is possible a permadiff will be created with the Options field.
	// Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block.
	// Structure is documented below.
	Accelerators []AcceleratorsObservation `json:"accelerators,omitempty" tf:"accelerators,omitempty"`

	// The time the instance was created in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
	CreateTime *string `json:"createTime,omitempty" tf:"create_time,omitempty"`

	// The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature.
	// Structure is documented below.
	CryptoKeyConfig *CryptoKeyConfigObservation `json:"cryptoKeyConfig,omitempty" tf:"crypto_key_config,omitempty"`

	// User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
	DataprocServiceAccount *string `json:"dataprocServiceAccount,omitempty" tf:"dataproc_service_account,omitempty"`

	// An optional description of the instance.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Display name for an instance.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// for all of the labels present on the resource.
	// +mapType=granular
	EffectiveLabels map[string]*string `json:"effectiveLabels,omitempty" tf:"effective_labels,omitempty"`

	// Option to enable granular role-based access control.
	EnableRbac *bool `json:"enableRbac,omitempty" tf:"enable_rbac,omitempty"`

	// Option to enable Stackdriver Logging.
	EnableStackdriverLogging *bool `json:"enableStackdriverLogging,omitempty" tf:"enable_stackdriver_logging,omitempty"`

	// Option to enable Stackdriver Monitoring.
	EnableStackdriverMonitoring *bool `json:"enableStackdriverMonitoring,omitempty" tf:"enable_stackdriver_monitoring,omitempty"`

	// Option to enable and pass metadata for event publishing.
	// Structure is documented below.
	EventPublishConfig *EventPublishConfigObservation `json:"eventPublishConfig,omitempty" tf:"event_publish_config,omitempty"`

	// Cloud Storage bucket generated by Data Fusion in the customer project.
	GcsBucket *string `json:"gcsBucket,omitempty" tf:"gcs_bucket,omitempty"`

	// an identifier for the resource with format projects/{{project}}/locations/{{region}}/instances/{{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The resource labels for instance to use to annotate any related underlying resources,
	// such as Compute Engine VMs.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Network configuration options. These are required when a private Data Fusion instance is to be created.
	// Structure is documented below.
	NetworkConfig *NetworkConfigObservation `json:"networkConfig,omitempty" tf:"network_config,omitempty"`

	// Map of additional options used to configure the behavior of Data Fusion instance.
	// +mapType=granular
	Options map[string]*string `json:"options,omitempty" tf:"options,omitempty"`

	// P4 service account for the customer project.
	P4ServiceAccount *string `json:"p4ServiceAccount,omitempty" tf:"p4_service_account,omitempty"`

	// Specifies whether the Data Fusion instance should be private. If set to
	// true, all Data Fusion nodes will have private IP addresses and will not be
	// able to access the public internet.
	PrivateInstance *bool `json:"privateInstance,omitempty" tf:"private_instance,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The region of the Data Fusion instance.
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Endpoint on which the Data Fusion UI and REST APIs are accessible.
	ServiceEndpoint *string `json:"serviceEndpoint,omitempty" tf:"service_endpoint,omitempty"`

	// The current state of this Data Fusion instance.
	State *string `json:"state,omitempty" tf:"state,omitempty"`

	// Additional information about the current state of this Data Fusion instance if available.
	StateMessage *string `json:"stateMessage,omitempty" tf:"state_message,omitempty"`

	// The name of the tenant project.
	TenantProjectID *string `json:"tenantProjectId,omitempty" tf:"tenant_project_id,omitempty"`

	// The combination of labels configured directly on the resource
	// and default labels configured on the provider.
	// +mapType=granular
	TerraformLabels map[string]*string `json:"terraformLabels,omitempty" tf:"terraform_labels,omitempty"`

	// Represents the type of Data Fusion instance. Each type is configured with
	// the default settings for processing and memory.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// The time the instance was last updated in RFC3339 UTC "Zulu" format, accurate to nanoseconds.
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time,omitempty"`

	// Current version of the Data Fusion.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*InstanceObservation) DeepCopy

func (in *InstanceObservation) DeepCopy() *InstanceObservation

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

func (*InstanceObservation) DeepCopyInto

func (in *InstanceObservation) DeepCopyInto(out *InstanceObservation)

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

type InstanceParameters

type InstanceParameters struct {

	// List of accelerators enabled for this CDF instance.
	// If accelerators are enabled it is possible a permadiff will be created with the Options field.
	// Users will need to either manually update their state file to include these diffed options, or include the field in a lifecycle ignore changes block.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Accelerators []AcceleratorsParameters `json:"accelerators,omitempty" tf:"accelerators,omitempty"`

	// The crypto key configuration. This field is used by the Customer-Managed Encryption Keys (CMEK) feature.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	CryptoKeyConfig *CryptoKeyConfigParameters `json:"cryptoKeyConfig,omitempty" tf:"crypto_key_config,omitempty"`

	// User-managed service account to set on Dataproc when Cloud Data Fusion creates Dataproc to run data processing pipelines.
	// +kubebuilder:validation:Optional
	DataprocServiceAccount *string `json:"dataprocServiceAccount,omitempty" tf:"dataproc_service_account,omitempty"`

	// An optional description of the instance.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Display name for an instance.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Option to enable granular role-based access control.
	// +kubebuilder:validation:Optional
	EnableRbac *bool `json:"enableRbac,omitempty" tf:"enable_rbac,omitempty"`

	// Option to enable Stackdriver Logging.
	// +kubebuilder:validation:Optional
	EnableStackdriverLogging *bool `json:"enableStackdriverLogging,omitempty" tf:"enable_stackdriver_logging,omitempty"`

	// Option to enable Stackdriver Monitoring.
	// +kubebuilder:validation:Optional
	EnableStackdriverMonitoring *bool `json:"enableStackdriverMonitoring,omitempty" tf:"enable_stackdriver_monitoring,omitempty"`

	// Option to enable and pass metadata for event publishing.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	EventPublishConfig *EventPublishConfigParameters `json:"eventPublishConfig,omitempty" tf:"event_publish_config,omitempty"`

	// The resource labels for instance to use to annotate any related underlying resources,
	// such as Compute Engine VMs.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Network configuration options. These are required when a private Data Fusion instance is to be created.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	NetworkConfig *NetworkConfigParameters `json:"networkConfig,omitempty" tf:"network_config,omitempty"`

	// Map of additional options used to configure the behavior of Data Fusion instance.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Options map[string]*string `json:"options,omitempty" tf:"options,omitempty"`

	// Specifies whether the Data Fusion instance should be private. If set to
	// true, all Data Fusion nodes will have private IP addresses and will not be
	// able to access the public internet.
	// +kubebuilder:validation:Optional
	PrivateInstance *bool `json:"privateInstance,omitempty" tf:"private_instance,omitempty"`

	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The region of the Data Fusion instance.
	// +kubebuilder:validation:Optional
	Region *string `json:"region,omitempty" tf:"region,omitempty"`

	// Represents the type of Data Fusion instance. Each type is configured with
	// the default settings for processing and memory.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Current version of the Data Fusion.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Name of the zone in which the Data Fusion instance will be created. Only DEVELOPER instances use this field.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*InstanceParameters) DeepCopy

func (in *InstanceParameters) DeepCopy() *InstanceParameters

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

func (*InstanceParameters) DeepCopyInto

func (in *InstanceParameters) DeepCopyInto(out *InstanceParameters)

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

type InstanceSpec

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

InstanceSpec defines the desired state of Instance

func (*InstanceSpec) DeepCopy

func (in *InstanceSpec) DeepCopy() *InstanceSpec

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

func (*InstanceSpec) DeepCopyInto

func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec)

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

type InstanceStatus

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

InstanceStatus defines the observed state of Instance.

func (*InstanceStatus) DeepCopy

func (in *InstanceStatus) DeepCopy() *InstanceStatus

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

func (*InstanceStatus) DeepCopyInto

func (in *InstanceStatus) DeepCopyInto(out *InstanceStatus)

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

type NetworkConfigInitParameters

type NetworkConfigInitParameters struct {

	// Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
	// the corresponding tenant project from a predefined list of available connection modes.
	// If this field is unspecified for a private instance, VPC peering is used.
	// Possible values are: VPC_PEERING, PRIVATE_SERVICE_CONNECT_INTERFACES.
	ConnectionType *string `json:"connectionType,omitempty" tf:"connection_type,omitempty"`

	// The IP range in CIDR notation to use for the managed Data Fusion instance
	// nodes. This range must not overlap with any other ranges used in the Data Fusion instance network.
	IPAllocation *string `json:"ipAllocation,omitempty" tf:"ip_allocation,omitempty"`

	// Name of the network in the project with which the tenant project
	// will be peered for executing pipelines. In case of shared VPC where the network resides in another host
	// project the network should specified in the form of projects/{host-project-id}/global/networks/{network}
	Network *string `json:"network,omitempty" tf:"network,omitempty"`

	// Optional. Configuration for Private Service Connect.
	// This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
	// Structure is documented below.
	PrivateServiceConnectConfig *PrivateServiceConnectConfigInitParameters `json:"privateServiceConnectConfig,omitempty" tf:"private_service_connect_config,omitempty"`
}

func (*NetworkConfigInitParameters) DeepCopy

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

func (*NetworkConfigInitParameters) DeepCopyInto

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

type NetworkConfigObservation

type NetworkConfigObservation struct {

	// Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
	// the corresponding tenant project from a predefined list of available connection modes.
	// If this field is unspecified for a private instance, VPC peering is used.
	// Possible values are: VPC_PEERING, PRIVATE_SERVICE_CONNECT_INTERFACES.
	ConnectionType *string `json:"connectionType,omitempty" tf:"connection_type,omitempty"`

	// The IP range in CIDR notation to use for the managed Data Fusion instance
	// nodes. This range must not overlap with any other ranges used in the Data Fusion instance network.
	IPAllocation *string `json:"ipAllocation,omitempty" tf:"ip_allocation,omitempty"`

	// Name of the network in the project with which the tenant project
	// will be peered for executing pipelines. In case of shared VPC where the network resides in another host
	// project the network should specified in the form of projects/{host-project-id}/global/networks/{network}
	Network *string `json:"network,omitempty" tf:"network,omitempty"`

	// Optional. Configuration for Private Service Connect.
	// This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
	// Structure is documented below.
	PrivateServiceConnectConfig *PrivateServiceConnectConfigObservation `json:"privateServiceConnectConfig,omitempty" tf:"private_service_connect_config,omitempty"`
}

func (*NetworkConfigObservation) DeepCopy

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

func (*NetworkConfigObservation) DeepCopyInto

func (in *NetworkConfigObservation) DeepCopyInto(out *NetworkConfigObservation)

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

type NetworkConfigParameters

type NetworkConfigParameters struct {

	// Optional. Type of connection for establishing private IP connectivity between the Data Fusion customer project VPC and
	// the corresponding tenant project from a predefined list of available connection modes.
	// If this field is unspecified for a private instance, VPC peering is used.
	// Possible values are: VPC_PEERING, PRIVATE_SERVICE_CONNECT_INTERFACES.
	// +kubebuilder:validation:Optional
	ConnectionType *string `json:"connectionType,omitempty" tf:"connection_type,omitempty"`

	// The IP range in CIDR notation to use for the managed Data Fusion instance
	// nodes. This range must not overlap with any other ranges used in the Data Fusion instance network.
	// +kubebuilder:validation:Optional
	IPAllocation *string `json:"ipAllocation,omitempty" tf:"ip_allocation,omitempty"`

	// Name of the network in the project with which the tenant project
	// will be peered for executing pipelines. In case of shared VPC where the network resides in another host
	// project the network should specified in the form of projects/{host-project-id}/global/networks/{network}
	// +kubebuilder:validation:Optional
	Network *string `json:"network,omitempty" tf:"network,omitempty"`

	// Optional. Configuration for Private Service Connect.
	// This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	PrivateServiceConnectConfig *PrivateServiceConnectConfigParameters `json:"privateServiceConnectConfig,omitempty" tf:"private_service_connect_config,omitempty"`
}

func (*NetworkConfigParameters) DeepCopy

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

func (*NetworkConfigParameters) DeepCopyInto

func (in *NetworkConfigParameters) DeepCopyInto(out *NetworkConfigParameters)

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

type PrivateServiceConnectConfigInitParameters added in v1.7.0

type PrivateServiceConnectConfigInitParameters struct {

	// Optional. The reference to the network attachment used to establish private connectivity.
	// It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}.
	// This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
	NetworkAttachment *string `json:"networkAttachment,omitempty" tf:"network_attachment,omitempty"`

	// Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC.
	// The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment.
	// This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses.
	// If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
	UnreachableCidrBlock *string `json:"unreachableCidrBlock,omitempty" tf:"unreachable_cidr_block,omitempty"`
}

func (*PrivateServiceConnectConfigInitParameters) DeepCopy added in v1.7.0

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

func (*PrivateServiceConnectConfigInitParameters) DeepCopyInto added in v1.7.0

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

type PrivateServiceConnectConfigObservation added in v1.7.0

type PrivateServiceConnectConfigObservation struct {

	// (Output)
	// Output only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC.
	// The size of this block is /25. The format of this field is governed by RFC 4632.
	EffectiveUnreachableCidrBlock *string `json:"effectiveUnreachableCidrBlock,omitempty" tf:"effective_unreachable_cidr_block,omitempty"`

	// Optional. The reference to the network attachment used to establish private connectivity.
	// It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}.
	// This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
	NetworkAttachment *string `json:"networkAttachment,omitempty" tf:"network_attachment,omitempty"`

	// Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC.
	// The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment.
	// This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses.
	// If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
	UnreachableCidrBlock *string `json:"unreachableCidrBlock,omitempty" tf:"unreachable_cidr_block,omitempty"`
}

func (*PrivateServiceConnectConfigObservation) DeepCopy added in v1.7.0

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

func (*PrivateServiceConnectConfigObservation) DeepCopyInto added in v1.7.0

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

type PrivateServiceConnectConfigParameters added in v1.7.0

type PrivateServiceConnectConfigParameters struct {

	// Optional. The reference to the network attachment used to establish private connectivity.
	// It will be of the form projects/{project-id}/regions/{region}/networkAttachments/{network-attachment-id}.
	// This is required only when using connection type PRIVATE_SERVICE_CONNECT_INTERFACES.
	// +kubebuilder:validation:Optional
	NetworkAttachment *string `json:"networkAttachment,omitempty" tf:"network_attachment,omitempty"`

	// Optional. Input only. The CIDR block to which the CDF instance can't route traffic to in the consumer project VPC.
	// The size of this block should be at least /25. This range should not overlap with the primary address range of any subnetwork used by the network attachment.
	// This range can be used for other purposes in the consumer VPC as long as there is no requirement for CDF to reach destinations using these addresses.
	// If this value is not provided, the server chooses a non RFC 1918 address range. The format of this field is governed by RFC 4632.
	// +kubebuilder:validation:Optional
	UnreachableCidrBlock *string `json:"unreachableCidrBlock,omitempty" tf:"unreachable_cidr_block,omitempty"`
}

func (*PrivateServiceConnectConfigParameters) DeepCopy added in v1.7.0

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

func (*PrivateServiceConnectConfigParameters) DeepCopyInto added in v1.7.0

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