v1beta2

package
v1.9.2 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2024 License: Apache-2.0 Imports: 15 Imported by: 1

Documentation

Overview

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

Index

Constants

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

Package type metadata.

Variables

View Source
var (
	FolderBucketConfig_Kind             = "FolderBucketConfig"
	FolderBucketConfig_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: FolderBucketConfig_Kind}.String()
	FolderBucketConfig_KindAPIVersion   = FolderBucketConfig_Kind + "." + CRDGroupVersion.String()
	FolderBucketConfig_GroupVersionKind = CRDGroupVersion.WithKind(FolderBucketConfig_Kind)
)

Repository type metadata.

View Source
var (
	FolderSink_Kind             = "FolderSink"
	FolderSink_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: FolderSink_Kind}.String()
	FolderSink_KindAPIVersion   = FolderSink_Kind + "." + CRDGroupVersion.String()
	FolderSink_GroupVersionKind = CRDGroupVersion.WithKind(FolderSink_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 (
	Metric_Kind             = "Metric"
	Metric_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Metric_Kind}.String()
	Metric_KindAPIVersion   = Metric_Kind + "." + CRDGroupVersion.String()
	Metric_GroupVersionKind = CRDGroupVersion.WithKind(Metric_Kind)
)

Repository type metadata.

View Source
var (
	ProjectBucketConfig_Kind             = "ProjectBucketConfig"
	ProjectBucketConfig_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ProjectBucketConfig_Kind}.String()
	ProjectBucketConfig_KindAPIVersion   = ProjectBucketConfig_Kind + "." + CRDGroupVersion.String()
	ProjectBucketConfig_GroupVersionKind = CRDGroupVersion.WithKind(ProjectBucketConfig_Kind)
)

Repository type metadata.

View Source
var (
	ProjectSink_Kind             = "ProjectSink"
	ProjectSink_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ProjectSink_Kind}.String()
	ProjectSink_KindAPIVersion   = ProjectSink_Kind + "." + CRDGroupVersion.String()
	ProjectSink_GroupVersionKind = CRDGroupVersion.WithKind(ProjectSink_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type BigqueryOptionsInitParameters

type BigqueryOptionsInitParameters struct {

	// Whether to use BigQuery's partition tables.
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables, the date suffix is no longer present and special query syntax
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables *bool `json:"usePartitionedTables,omitempty" tf:"use_partitioned_tables,omitempty"`
}

func (*BigqueryOptionsInitParameters) DeepCopy

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

func (*BigqueryOptionsInitParameters) DeepCopyInto

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

type BigqueryOptionsObservation

type BigqueryOptionsObservation struct {

	// Whether to use BigQuery's partition tables.
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables, the date suffix is no longer present and special query syntax
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables *bool `json:"usePartitionedTables,omitempty" tf:"use_partitioned_tables,omitempty"`
}

func (*BigqueryOptionsObservation) DeepCopy

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

func (*BigqueryOptionsObservation) DeepCopyInto

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

type BigqueryOptionsParameters

type BigqueryOptionsParameters struct {

	// Whether to use BigQuery's partition tables.
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables, the date suffix is no longer present and special query syntax
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	// +kubebuilder:validation:Optional
	UsePartitionedTables *bool `json:"usePartitionedTables" tf:"use_partitioned_tables,omitempty"`
}

func (*BigqueryOptionsParameters) DeepCopy

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

func (*BigqueryOptionsParameters) DeepCopyInto

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

type BucketOptionsInitParameters

type BucketOptionsInitParameters struct {

	// Specifies a set of buckets with arbitrary widths.
	// Structure is documented below.
	ExplicitBuckets *ExplicitBucketsInitParameters `json:"explicitBuckets,omitempty" tf:"explicit_buckets,omitempty"`

	// Specifies an exponential sequence of buckets that have a width that is proportional to the value of
	// the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.
	// Structure is documented below.
	ExponentialBuckets *ExponentialBucketsInitParameters `json:"exponentialBuckets,omitempty" tf:"exponential_buckets,omitempty"`

	// Specifies a linear sequence of buckets that all have the same width (except overflow and underflow).
	// Each bucket represents a constant absolute uncertainty on the specific value in the bucket.
	// Structure is documented below.
	LinearBuckets *LinearBucketsInitParameters `json:"linearBuckets,omitempty" tf:"linear_buckets,omitempty"`
}

func (*BucketOptionsInitParameters) DeepCopy

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

func (*BucketOptionsInitParameters) DeepCopyInto

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

type BucketOptionsObservation

type BucketOptionsObservation struct {

	// Specifies a set of buckets with arbitrary widths.
	// Structure is documented below.
	ExplicitBuckets *ExplicitBucketsObservation `json:"explicitBuckets,omitempty" tf:"explicit_buckets,omitempty"`

	// Specifies an exponential sequence of buckets that have a width that is proportional to the value of
	// the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.
	// Structure is documented below.
	ExponentialBuckets *ExponentialBucketsObservation `json:"exponentialBuckets,omitempty" tf:"exponential_buckets,omitempty"`

	// Specifies a linear sequence of buckets that all have the same width (except overflow and underflow).
	// Each bucket represents a constant absolute uncertainty on the specific value in the bucket.
	// Structure is documented below.
	LinearBuckets *LinearBucketsObservation `json:"linearBuckets,omitempty" tf:"linear_buckets,omitempty"`
}

func (*BucketOptionsObservation) DeepCopy

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

func (*BucketOptionsObservation) DeepCopyInto

func (in *BucketOptionsObservation) DeepCopyInto(out *BucketOptionsObservation)

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

type BucketOptionsParameters

type BucketOptionsParameters struct {

	// Specifies a set of buckets with arbitrary widths.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ExplicitBuckets *ExplicitBucketsParameters `json:"explicitBuckets,omitempty" tf:"explicit_buckets,omitempty"`

	// Specifies an exponential sequence of buckets that have a width that is proportional to the value of
	// the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	ExponentialBuckets *ExponentialBucketsParameters `json:"exponentialBuckets,omitempty" tf:"exponential_buckets,omitempty"`

	// Specifies a linear sequence of buckets that all have the same width (except overflow and underflow).
	// Each bucket represents a constant absolute uncertainty on the specific value in the bucket.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	LinearBuckets *LinearBucketsParameters `json:"linearBuckets,omitempty" tf:"linear_buckets,omitempty"`
}

func (*BucketOptionsParameters) DeepCopy

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

func (*BucketOptionsParameters) DeepCopyInto

func (in *BucketOptionsParameters) DeepCopyInto(out *BucketOptionsParameters)

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

type CmekSettingsInitParameters

type CmekSettingsInitParameters struct {

	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	KMSKeyName *string `json:"kmsKeyName,omitempty" tf:"kms_key_name,omitempty"`
}

func (*CmekSettingsInitParameters) DeepCopy

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

func (*CmekSettingsInitParameters) DeepCopyInto

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

type CmekSettingsObservation

type CmekSettingsObservation struct {

	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	KMSKeyName *string `json:"kmsKeyName,omitempty" tf:"kms_key_name,omitempty"`

	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	KMSKeyVersionName *string `json:"kmsKeyVersionName,omitempty" tf:"kms_key_version_name,omitempty"`

	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// an identifier for the resource with format folders/{{folder}}/locations/{{location}}/buckets/{{bucket_id}}
	ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"`
}

func (*CmekSettingsObservation) DeepCopy

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

func (*CmekSettingsObservation) DeepCopyInto

func (in *CmekSettingsObservation) DeepCopyInto(out *CmekSettingsObservation)

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

type CmekSettingsParameters

type CmekSettingsParameters struct {

	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	// +kubebuilder:validation:Optional
	KMSKeyName *string `json:"kmsKeyName" tf:"kms_key_name,omitempty"`
}

func (*CmekSettingsParameters) DeepCopy

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

func (*CmekSettingsParameters) DeepCopyInto

func (in *CmekSettingsParameters) DeepCopyInto(out *CmekSettingsParameters)

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

type ExclusionsInitParameters

type ExclusionsInitParameters struct {

	// A description of this exclusion.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A client-assigned identifier, such as load-balancer-exclusion. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*ExclusionsInitParameters) DeepCopy

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

func (*ExclusionsInitParameters) DeepCopyInto

func (in *ExclusionsInitParameters) DeepCopyInto(out *ExclusionsInitParameters)

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

type ExclusionsObservation

type ExclusionsObservation struct {

	// A description of this exclusion.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A client-assigned identifier, such as load-balancer-exclusion. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*ExclusionsObservation) DeepCopy

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

func (*ExclusionsObservation) DeepCopyInto

func (in *ExclusionsObservation) DeepCopyInto(out *ExclusionsObservation)

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

type ExclusionsParameters

type ExclusionsParameters struct {

	// A description of this exclusion.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	// +kubebuilder:validation:Optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See Advanced Log Filters for information on how to
	// write a filter.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter" tf:"filter,omitempty"`

	// A client-assigned identifier, such as load-balancer-exclusion. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`
}

func (*ExclusionsParameters) DeepCopy

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

func (*ExclusionsParameters) DeepCopyInto

func (in *ExclusionsParameters) DeepCopyInto(out *ExclusionsParameters)

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

type ExplicitBucketsInitParameters

type ExplicitBucketsInitParameters struct {

	// The values must be monotonically increasing.
	Bounds []*float64 `json:"bounds,omitempty" tf:"bounds,omitempty"`
}

func (*ExplicitBucketsInitParameters) DeepCopy

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

func (*ExplicitBucketsInitParameters) DeepCopyInto

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

type ExplicitBucketsObservation

type ExplicitBucketsObservation struct {

	// The values must be monotonically increasing.
	Bounds []*float64 `json:"bounds,omitempty" tf:"bounds,omitempty"`
}

func (*ExplicitBucketsObservation) DeepCopy

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

func (*ExplicitBucketsObservation) DeepCopyInto

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

type ExplicitBucketsParameters

type ExplicitBucketsParameters struct {

	// The values must be monotonically increasing.
	// +kubebuilder:validation:Optional
	Bounds []*float64 `json:"bounds" tf:"bounds,omitempty"`
}

func (*ExplicitBucketsParameters) DeepCopy

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

func (*ExplicitBucketsParameters) DeepCopyInto

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

type ExponentialBucketsInitParameters

type ExponentialBucketsInitParameters struct {

	// Must be greater than 1.
	GrowthFactor *float64 `json:"growthFactor,omitempty" tf:"growth_factor,omitempty"`

	// Must be greater than 0.
	NumFiniteBuckets *float64 `json:"numFiniteBuckets,omitempty" tf:"num_finite_buckets,omitempty"`

	// Must be greater than 0.
	Scale *float64 `json:"scale,omitempty" tf:"scale,omitempty"`
}

func (*ExponentialBucketsInitParameters) DeepCopy

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

func (*ExponentialBucketsInitParameters) DeepCopyInto

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

type ExponentialBucketsObservation

type ExponentialBucketsObservation struct {

	// Must be greater than 1.
	GrowthFactor *float64 `json:"growthFactor,omitempty" tf:"growth_factor,omitempty"`

	// Must be greater than 0.
	NumFiniteBuckets *float64 `json:"numFiniteBuckets,omitempty" tf:"num_finite_buckets,omitempty"`

	// Must be greater than 0.
	Scale *float64 `json:"scale,omitempty" tf:"scale,omitempty"`
}

func (*ExponentialBucketsObservation) DeepCopy

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

func (*ExponentialBucketsObservation) DeepCopyInto

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

type ExponentialBucketsParameters

type ExponentialBucketsParameters struct {

	// Must be greater than 1.
	// +kubebuilder:validation:Optional
	GrowthFactor *float64 `json:"growthFactor" tf:"growth_factor,omitempty"`

	// Must be greater than 0.
	// +kubebuilder:validation:Optional
	NumFiniteBuckets *float64 `json:"numFiniteBuckets" tf:"num_finite_buckets,omitempty"`

	// Must be greater than 0.
	// +kubebuilder:validation:Optional
	Scale *float64 `json:"scale" tf:"scale,omitempty"`
}

func (*ExponentialBucketsParameters) DeepCopy

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

func (*ExponentialBucketsParameters) DeepCopyInto

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

type FolderBucketConfig

type FolderBucketConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FolderBucketConfigSpec   `json:"spec"`
	Status            FolderBucketConfigStatus `json:"status,omitempty"`
}

FolderBucketConfig is the Schema for the FolderBucketConfigs API. Manages a folder-level logging bucket config. +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 (*FolderBucketConfig) DeepCopy

func (in *FolderBucketConfig) DeepCopy() *FolderBucketConfig

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

func (*FolderBucketConfig) DeepCopyInto

func (in *FolderBucketConfig) DeepCopyInto(out *FolderBucketConfig)

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

func (*FolderBucketConfig) DeepCopyObject

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

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

func (*FolderBucketConfig) GetCondition

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

GetCondition of this FolderBucketConfig.

func (*FolderBucketConfig) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this FolderBucketConfig

func (*FolderBucketConfig) GetDeletionPolicy

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

GetDeletionPolicy of this FolderBucketConfig.

func (*FolderBucketConfig) GetID

func (tr *FolderBucketConfig) GetID() string

GetID returns ID of underlying Terraform resource of this FolderBucketConfig

func (*FolderBucketConfig) GetInitParameters

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

GetInitParameters of this FolderBucketConfig

func (*FolderBucketConfig) GetManagementPolicies

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

GetManagementPolicies of this FolderBucketConfig.

func (*FolderBucketConfig) GetMergedParameters

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

GetInitParameters of this FolderBucketConfig

func (*FolderBucketConfig) GetObservation

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

GetObservation of this FolderBucketConfig

func (*FolderBucketConfig) GetParameters

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

GetParameters of this FolderBucketConfig

func (*FolderBucketConfig) GetProviderConfigReference

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

GetProviderConfigReference of this FolderBucketConfig.

func (*FolderBucketConfig) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this FolderBucketConfig.

func (*FolderBucketConfig) GetTerraformResourceType

func (mg *FolderBucketConfig) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this FolderBucketConfig

func (*FolderBucketConfig) GetTerraformSchemaVersion

func (tr *FolderBucketConfig) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*FolderBucketConfig) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this FolderBucketConfig.

func (*FolderBucketConfig) Hub

func (tr *FolderBucketConfig) Hub()

Hub marks this type as a conversion hub.

func (*FolderBucketConfig) LateInitialize

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

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

func (*FolderBucketConfig) ResolveReferences

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

func (*FolderBucketConfig) SetConditions

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

SetConditions of this FolderBucketConfig.

func (*FolderBucketConfig) SetDeletionPolicy

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

SetDeletionPolicy of this FolderBucketConfig.

func (*FolderBucketConfig) SetManagementPolicies

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

SetManagementPolicies of this FolderBucketConfig.

func (*FolderBucketConfig) SetObservation

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

SetObservation for this FolderBucketConfig

func (*FolderBucketConfig) SetParameters

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

SetParameters for this FolderBucketConfig

func (*FolderBucketConfig) SetProviderConfigReference

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

SetProviderConfigReference of this FolderBucketConfig.

func (*FolderBucketConfig) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this FolderBucketConfig.

func (*FolderBucketConfig) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this FolderBucketConfig.

type FolderBucketConfigInitParameters

type FolderBucketConfigInitParameters struct {
	CmekSettings *CmekSettingsInitParameters `json:"cmekSettings,omitempty" tf:"cmek_settings,omitempty"`

	// Describes this bucket.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A list of indexed fields and related configuration data. Structure is documented below.
	IndexConfigs []IndexConfigsInitParameters `json:"indexConfigs,omitempty" tf:"index_configs,omitempty"`

	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`
}

func (*FolderBucketConfigInitParameters) DeepCopy

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

func (*FolderBucketConfigInitParameters) DeepCopyInto

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

type FolderBucketConfigList

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

FolderBucketConfigList contains a list of FolderBucketConfigs

func (*FolderBucketConfigList) DeepCopy

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

func (*FolderBucketConfigList) DeepCopyInto

func (in *FolderBucketConfigList) DeepCopyInto(out *FolderBucketConfigList)

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

func (*FolderBucketConfigList) DeepCopyObject

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

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

func (*FolderBucketConfigList) GetItems

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

GetItems of this FolderBucketConfigList.

type FolderBucketConfigObservation

type FolderBucketConfigObservation struct {

	// The name of the logging bucket. Logging automatically creates two log buckets: _Required and _Default.
	BucketID *string `json:"bucketId,omitempty" tf:"bucket_id,omitempty"`

	CmekSettings *CmekSettingsObservation `json:"cmekSettings,omitempty" tf:"cmek_settings,omitempty"`

	// Describes this bucket.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The parent resource that contains the logging bucket.
	Folder *string `json:"folder,omitempty" tf:"folder,omitempty"`

	// an identifier for the resource with format folders/{{folder}}/locations/{{location}}/buckets/{{bucket_id}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// A list of indexed fields and related configuration data. Structure is documented below.
	IndexConfigs []IndexConfigsObservation `json:"indexConfigs,omitempty" tf:"index_configs,omitempty"`

	// The bucket's lifecycle such as active or deleted. See LifecycleState.
	LifecycleState *string `json:"lifecycleState,omitempty" tf:"lifecycle_state,omitempty"`

	// The location of the bucket.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`
}

func (*FolderBucketConfigObservation) DeepCopy

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

func (*FolderBucketConfigObservation) DeepCopyInto

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

type FolderBucketConfigParameters

type FolderBucketConfigParameters struct {

	// The name of the logging bucket. Logging automatically creates two log buckets: _Required and _Default.
	// +kubebuilder:validation:Required
	BucketID *string `json:"bucketId" tf:"bucket_id,omitempty"`

	// +kubebuilder:validation:Optional
	CmekSettings *CmekSettingsParameters `json:"cmekSettings,omitempty" tf:"cmek_settings,omitempty"`

	// Describes this bucket.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The parent resource that contains the logging bucket.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.Folder
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-gcp/config/common.ExtractFolderID()
	// +kubebuilder:validation:Optional
	Folder *string `json:"folder,omitempty" tf:"folder,omitempty"`

	// Reference to a Folder in cloudplatform to populate folder.
	// +kubebuilder:validation:Optional
	FolderRef *v1.Reference `json:"folderRef,omitempty" tf:"-"`

	// Selector for a Folder in cloudplatform to populate folder.
	// +kubebuilder:validation:Optional
	FolderSelector *v1.Selector `json:"folderSelector,omitempty" tf:"-"`

	// A list of indexed fields and related configuration data. Structure is documented below.
	// +kubebuilder:validation:Optional
	IndexConfigs []IndexConfigsParameters `json:"indexConfigs,omitempty" tf:"index_configs,omitempty"`

	// The location of the bucket.
	// +kubebuilder:validation:Required
	Location *string `json:"location" tf:"location,omitempty"`

	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	// +kubebuilder:validation:Optional
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`
}

func (*FolderBucketConfigParameters) DeepCopy

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

func (*FolderBucketConfigParameters) DeepCopyInto

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

type FolderBucketConfigSpec

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

FolderBucketConfigSpec defines the desired state of FolderBucketConfig

func (*FolderBucketConfigSpec) DeepCopy

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

func (*FolderBucketConfigSpec) DeepCopyInto

func (in *FolderBucketConfigSpec) DeepCopyInto(out *FolderBucketConfigSpec)

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

type FolderBucketConfigStatus

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

FolderBucketConfigStatus defines the observed state of FolderBucketConfig.

func (*FolderBucketConfigStatus) DeepCopy

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

func (*FolderBucketConfigStatus) DeepCopyInto

func (in *FolderBucketConfigStatus) DeepCopyInto(out *FolderBucketConfigStatus)

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

type FolderSink

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

FolderSink is the Schema for the FolderSinks API. Manages a folder-level logging sink. +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 (*FolderSink) DeepCopy

func (in *FolderSink) DeepCopy() *FolderSink

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

func (*FolderSink) DeepCopyInto

func (in *FolderSink) DeepCopyInto(out *FolderSink)

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

func (*FolderSink) DeepCopyObject

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

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

func (*FolderSink) GetCondition

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

GetCondition of this FolderSink.

func (*FolderSink) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this FolderSink

func (*FolderSink) GetDeletionPolicy

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

GetDeletionPolicy of this FolderSink.

func (*FolderSink) GetID

func (tr *FolderSink) GetID() string

GetID returns ID of underlying Terraform resource of this FolderSink

func (*FolderSink) GetInitParameters

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

GetInitParameters of this FolderSink

func (*FolderSink) GetManagementPolicies

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

GetManagementPolicies of this FolderSink.

func (*FolderSink) GetMergedParameters

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

GetInitParameters of this FolderSink

func (*FolderSink) GetObservation

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

GetObservation of this FolderSink

func (*FolderSink) GetParameters

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

GetParameters of this FolderSink

func (*FolderSink) GetProviderConfigReference

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

GetProviderConfigReference of this FolderSink.

func (*FolderSink) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this FolderSink.

func (*FolderSink) GetTerraformResourceType

func (mg *FolderSink) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this FolderSink

func (*FolderSink) GetTerraformSchemaVersion

func (tr *FolderSink) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*FolderSink) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this FolderSink.

func (*FolderSink) Hub

func (tr *FolderSink) Hub()

Hub marks this type as a conversion hub.

func (*FolderSink) LateInitialize

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

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

func (*FolderSink) ResolveReferences

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

ResolveReferences of this FolderSink.

func (*FolderSink) SetConditions

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

SetConditions of this FolderSink.

func (*FolderSink) SetDeletionPolicy

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

SetDeletionPolicy of this FolderSink.

func (*FolderSink) SetManagementPolicies

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

SetManagementPolicies of this FolderSink.

func (*FolderSink) SetObservation

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

SetObservation for this FolderSink

func (*FolderSink) SetParameters

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

SetParameters for this FolderSink

func (*FolderSink) SetProviderConfigReference

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

SetProviderConfigReference of this FolderSink.

func (*FolderSink) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this FolderSink.

func (*FolderSink) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this FolderSink.

type FolderSinkInitParameters

type FolderSinkInitParameters struct {

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions *BigqueryOptionsInitParameters `json:"bigqueryOptions,omitempty" tf:"bigquery_options,omitempty"`

	// A description of this sink. The maximum length of the description is 8000 characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// If set to True, then this sink is disabled and it does not export any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusions.filter, it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions []ExclusionsInitParameters `json:"exclusions,omitempty" tf:"exclusions,omitempty"`

	// The filter to apply when exporting logs. Only log entries that match the filter are exported.
	// See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// Whether or not to include children folders in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
	IncludeChildren *bool `json:"includeChildren,omitempty" tf:"include_children,omitempty"`

	// Whether or not to intercept logs from child projects. If true, matching logs will not
	// match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
	InterceptChildren *bool `json:"interceptChildren,omitempty" tf:"intercept_children,omitempty"`
}

func (*FolderSinkInitParameters) DeepCopy

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

func (*FolderSinkInitParameters) DeepCopyInto

func (in *FolderSinkInitParameters) DeepCopyInto(out *FolderSinkInitParameters)

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

type FolderSinkList

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

FolderSinkList contains a list of FolderSinks

func (*FolderSinkList) DeepCopy

func (in *FolderSinkList) DeepCopy() *FolderSinkList

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

func (*FolderSinkList) DeepCopyInto

func (in *FolderSinkList) DeepCopyInto(out *FolderSinkList)

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

func (*FolderSinkList) DeepCopyObject

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

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

func (*FolderSinkList) GetItems

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

GetItems of this FolderSinkList.

type FolderSinkObservation

type FolderSinkObservation struct {

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions *BigqueryOptionsObservation `json:"bigqueryOptions,omitempty" tf:"bigquery_options,omitempty"`

	// A description of this sink. The maximum length of the description is 8000 characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// If set to True, then this sink is disabled and it does not export any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusions.filter, it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions []ExclusionsObservation `json:"exclusions,omitempty" tf:"exclusions,omitempty"`

	// The filter to apply when exporting logs. Only log entries that match the filter are exported.
	// See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The folder to be exported to the sink. Note that either [FOLDER_ID] or folders/[FOLDER_ID] is
	// accepted.
	Folder *string `json:"folder,omitempty" tf:"folder,omitempty"`

	// an identifier for the resource with format folders/{{folder_id}}/sinks/{{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Whether or not to include children folders in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
	IncludeChildren *bool `json:"includeChildren,omitempty" tf:"include_children,omitempty"`

	// Whether or not to intercept logs from child projects. If true, matching logs will not
	// match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
	InterceptChildren *bool `json:"interceptChildren,omitempty" tf:"intercept_children,omitempty"`

	// The identity associated with this sink. This identity must be granted write access to the
	// configured destination.
	WriterIdentity *string `json:"writerIdentity,omitempty" tf:"writer_identity,omitempty"`
}

func (*FolderSinkObservation) DeepCopy

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

func (*FolderSinkObservation) DeepCopyInto

func (in *FolderSinkObservation) DeepCopyInto(out *FolderSinkObservation)

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

type FolderSinkParameters

type FolderSinkParameters struct {

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	// +kubebuilder:validation:Optional
	BigqueryOptions *BigqueryOptionsParameters `json:"bigqueryOptions,omitempty" tf:"bigquery_options,omitempty"`

	// A description of this sink. The maximum length of the description is 8000 characters.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
	// +kubebuilder:validation:Optional
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// If set to True, then this sink is disabled and it does not export any log entries.
	// +kubebuilder:validation:Optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusions.filter, it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	// +kubebuilder:validation:Optional
	Exclusions []ExclusionsParameters `json:"exclusions,omitempty" tf:"exclusions,omitempty"`

	// The filter to apply when exporting logs. Only log entries that match the filter are exported.
	// See Advanced Log Filters for information on how to
	// write a filter.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The folder to be exported to the sink. Note that either [FOLDER_ID] or folders/[FOLDER_ID] is
	// accepted.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.Folder
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("name",true)
	// +kubebuilder:validation:Optional
	Folder *string `json:"folder,omitempty" tf:"folder,omitempty"`

	// Reference to a Folder in cloudplatform to populate folder.
	// +kubebuilder:validation:Optional
	FolderRef *v1.Reference `json:"folderRef,omitempty" tf:"-"`

	// Selector for a Folder in cloudplatform to populate folder.
	// +kubebuilder:validation:Optional
	FolderSelector *v1.Selector `json:"folderSelector,omitempty" tf:"-"`

	// Whether or not to include children folders in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
	// +kubebuilder:validation:Optional
	IncludeChildren *bool `json:"includeChildren,omitempty" tf:"include_children,omitempty"`

	// Whether or not to intercept logs from child projects. If true, matching logs will not
	// match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
	// +kubebuilder:validation:Optional
	InterceptChildren *bool `json:"interceptChildren,omitempty" tf:"intercept_children,omitempty"`
}

func (*FolderSinkParameters) DeepCopy

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

func (*FolderSinkParameters) DeepCopyInto

func (in *FolderSinkParameters) DeepCopyInto(out *FolderSinkParameters)

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

type FolderSinkSpec

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

FolderSinkSpec defines the desired state of FolderSink

func (*FolderSinkSpec) DeepCopy

func (in *FolderSinkSpec) DeepCopy() *FolderSinkSpec

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

func (*FolderSinkSpec) DeepCopyInto

func (in *FolderSinkSpec) DeepCopyInto(out *FolderSinkSpec)

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

type FolderSinkStatus

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

FolderSinkStatus defines the observed state of FolderSink.

func (*FolderSinkStatus) DeepCopy

func (in *FolderSinkStatus) DeepCopy() *FolderSinkStatus

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

func (*FolderSinkStatus) DeepCopyInto

func (in *FolderSinkStatus) DeepCopyInto(out *FolderSinkStatus)

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

type IndexConfigsInitParameters

type IndexConfigsInitParameters struct {

	// The LogEntry field path to index.
	// Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation for details.
	FieldPath *string `json:"fieldPath,omitempty" tf:"field_path,omitempty"`

	// The type of data in this index. Allowed types include INDEX_TYPE_UNSPECIFIED, INDEX_TYPE_STRING and INDEX_TYPE_INTEGER.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IndexConfigsInitParameters) DeepCopy

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

func (*IndexConfigsInitParameters) DeepCopyInto

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

type IndexConfigsObservation

type IndexConfigsObservation struct {

	// The LogEntry field path to index.
	// Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation for details.
	FieldPath *string `json:"fieldPath,omitempty" tf:"field_path,omitempty"`

	// The type of data in this index. Allowed types include INDEX_TYPE_UNSPECIFIED, INDEX_TYPE_STRING and INDEX_TYPE_INTEGER.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IndexConfigsObservation) DeepCopy

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

func (*IndexConfigsObservation) DeepCopyInto

func (in *IndexConfigsObservation) DeepCopyInto(out *IndexConfigsObservation)

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

type IndexConfigsParameters

type IndexConfigsParameters struct {

	// The LogEntry field path to index.
	// Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation for details.
	// +kubebuilder:validation:Optional
	FieldPath *string `json:"fieldPath" tf:"field_path,omitempty"`

	// The type of data in this index. Allowed types include INDEX_TYPE_UNSPECIFIED, INDEX_TYPE_STRING and INDEX_TYPE_INTEGER.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*IndexConfigsParameters) DeepCopy

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

func (*IndexConfigsParameters) DeepCopyInto

func (in *IndexConfigsParameters) DeepCopyInto(out *IndexConfigsParameters)

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

type LabelsInitParameters

type LabelsInitParameters struct {

	// A human-readable description for the label.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The label key.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to INT64.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION, MONEY.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*LabelsInitParameters) DeepCopy

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

func (*LabelsInitParameters) DeepCopyInto

func (in *LabelsInitParameters) DeepCopyInto(out *LabelsInitParameters)

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

type LabelsObservation

type LabelsObservation struct {

	// A human-readable description for the label.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The label key.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to INT64.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION, MONEY.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*LabelsObservation) DeepCopy

func (in *LabelsObservation) DeepCopy() *LabelsObservation

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

func (*LabelsObservation) DeepCopyInto

func (in *LabelsObservation) DeepCopyInto(out *LabelsObservation)

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

type LabelsParameters

type LabelsParameters struct {

	// A human-readable description for the label.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The label key.
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to INT64.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION, MONEY.
	// +kubebuilder:validation:Optional
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*LabelsParameters) DeepCopy

func (in *LabelsParameters) DeepCopy() *LabelsParameters

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

func (*LabelsParameters) DeepCopyInto

func (in *LabelsParameters) DeepCopyInto(out *LabelsParameters)

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

type LinearBucketsInitParameters

type LinearBucketsInitParameters struct {

	// Must be greater than 0.
	NumFiniteBuckets *float64 `json:"numFiniteBuckets,omitempty" tf:"num_finite_buckets,omitempty"`

	// Lower bound of the first bucket.
	Offset *float64 `json:"offset,omitempty" tf:"offset,omitempty"`

	// Must be greater than 0.
	Width *float64 `json:"width,omitempty" tf:"width,omitempty"`
}

func (*LinearBucketsInitParameters) DeepCopy

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

func (*LinearBucketsInitParameters) DeepCopyInto

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

type LinearBucketsObservation

type LinearBucketsObservation struct {

	// Must be greater than 0.
	NumFiniteBuckets *float64 `json:"numFiniteBuckets,omitempty" tf:"num_finite_buckets,omitempty"`

	// Lower bound of the first bucket.
	Offset *float64 `json:"offset,omitempty" tf:"offset,omitempty"`

	// Must be greater than 0.
	Width *float64 `json:"width,omitempty" tf:"width,omitempty"`
}

func (*LinearBucketsObservation) DeepCopy

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

func (*LinearBucketsObservation) DeepCopyInto

func (in *LinearBucketsObservation) DeepCopyInto(out *LinearBucketsObservation)

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

type LinearBucketsParameters

type LinearBucketsParameters struct {

	// Must be greater than 0.
	// +kubebuilder:validation:Optional
	NumFiniteBuckets *float64 `json:"numFiniteBuckets" tf:"num_finite_buckets,omitempty"`

	// Lower bound of the first bucket.
	// +kubebuilder:validation:Optional
	Offset *float64 `json:"offset" tf:"offset,omitempty"`

	// Must be greater than 0.
	// +kubebuilder:validation:Optional
	Width *float64 `json:"width" tf:"width,omitempty"`
}

func (*LinearBucketsParameters) DeepCopy

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

func (*LinearBucketsParameters) DeepCopyInto

func (in *LinearBucketsParameters) DeepCopyInto(out *LinearBucketsParameters)

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

type Metric

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

Metric is the Schema for the Metrics API. Logs-based metric can also be used to extract values from logs and create a a distribution of the values. +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 (*Metric) DeepCopy

func (in *Metric) DeepCopy() *Metric

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

func (*Metric) DeepCopyInto

func (in *Metric) DeepCopyInto(out *Metric)

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

func (*Metric) DeepCopyObject

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

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

func (*Metric) GetCondition

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

GetCondition of this Metric.

func (*Metric) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Metric

func (*Metric) GetDeletionPolicy

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

GetDeletionPolicy of this Metric.

func (*Metric) GetID

func (tr *Metric) GetID() string

GetID returns ID of underlying Terraform resource of this Metric

func (*Metric) GetInitParameters

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

GetInitParameters of this Metric

func (*Metric) GetManagementPolicies

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

GetManagementPolicies of this Metric.

func (*Metric) GetMergedParameters

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

GetInitParameters of this Metric

func (*Metric) GetObservation

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

GetObservation of this Metric

func (*Metric) GetParameters

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

GetParameters of this Metric

func (*Metric) GetProviderConfigReference

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

GetProviderConfigReference of this Metric.

func (*Metric) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Metric.

func (*Metric) GetTerraformResourceType

func (mg *Metric) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Metric

func (*Metric) GetTerraformSchemaVersion

func (tr *Metric) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Metric) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Metric.

func (*Metric) Hub

func (tr *Metric) Hub()

Hub marks this type as a conversion hub.

func (*Metric) LateInitialize

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

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

func (*Metric) ResolveReferences

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

ResolveReferences of this Metric.

func (*Metric) SetConditions

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

SetConditions of this Metric.

func (*Metric) SetDeletionPolicy

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

SetDeletionPolicy of this Metric.

func (*Metric) SetManagementPolicies

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

SetManagementPolicies of this Metric.

func (*Metric) SetObservation

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

SetObservation for this Metric

func (*Metric) SetParameters

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

SetParameters for this Metric

func (*Metric) SetProviderConfigReference

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

SetProviderConfigReference of this Metric.

func (*Metric) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Metric.

func (*Metric) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Metric.

type MetricDescriptorInitParameters

type MetricDescriptorInitParameters struct {

	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case
	// without an ending period, for example "Request count". This field is optional but it is
	// recommended to be set for any metrics associated with user-visible concepts, such as Quota.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The set of labels that can be used to describe a specific instance of this metric type. For
	// example, the appengine.googleapis.com/http/server/response_latencies metric type has a label
	// for the HTTP response code, response_code, so you can look at latencies for successful responses
	// or just for responses that failed.
	// Structure is documented below.
	Labels []LabelsInitParameters `json:"labels,omitempty" tf:"labels,omitempty"`

	// Whether the metric records instantaneous values, changes to a value, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to DELTA.
	// Possible values are: DELTA, GAUGE, CUMULATIVE.
	MetricKind *string `json:"metricKind,omitempty" tf:"metric_kind,omitempty"`

	// The unit in which the metric value is reported. It is only applicable if the valueType is
	// INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset of
	// The Unified Code for Units of Measure standard
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to INT64.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION, MONEY.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*MetricDescriptorInitParameters) DeepCopy

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

func (*MetricDescriptorInitParameters) DeepCopyInto

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

type MetricDescriptorObservation

type MetricDescriptorObservation struct {

	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case
	// without an ending period, for example "Request count". This field is optional but it is
	// recommended to be set for any metrics associated with user-visible concepts, such as Quota.
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The set of labels that can be used to describe a specific instance of this metric type. For
	// example, the appengine.googleapis.com/http/server/response_latencies metric type has a label
	// for the HTTP response code, response_code, so you can look at latencies for successful responses
	// or just for responses that failed.
	// Structure is documented below.
	Labels []LabelsObservation `json:"labels,omitempty" tf:"labels,omitempty"`

	// Whether the metric records instantaneous values, changes to a value, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to DELTA.
	// Possible values are: DELTA, GAUGE, CUMULATIVE.
	MetricKind *string `json:"metricKind,omitempty" tf:"metric_kind,omitempty"`

	// The unit in which the metric value is reported. It is only applicable if the valueType is
	// INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset of
	// The Unified Code for Units of Measure standard
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to INT64.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION, MONEY.
	ValueType *string `json:"valueType,omitempty" tf:"value_type,omitempty"`
}

func (*MetricDescriptorObservation) DeepCopy

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

func (*MetricDescriptorObservation) DeepCopyInto

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

type MetricDescriptorParameters

type MetricDescriptorParameters struct {

	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case
	// without an ending period, for example "Request count". This field is optional but it is
	// recommended to be set for any metrics associated with user-visible concepts, such as Quota.
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// The set of labels that can be used to describe a specific instance of this metric type. For
	// example, the appengine.googleapis.com/http/server/response_latencies metric type has a label
	// for the HTTP response code, response_code, so you can look at latencies for successful responses
	// or just for responses that failed.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	Labels []LabelsParameters `json:"labels,omitempty" tf:"labels,omitempty"`

	// Whether the metric records instantaneous values, changes to a value, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to DELTA.
	// Possible values are: DELTA, GAUGE, CUMULATIVE.
	// +kubebuilder:validation:Optional
	MetricKind *string `json:"metricKind" tf:"metric_kind,omitempty"`

	// The unit in which the metric value is reported. It is only applicable if the valueType is
	// INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset of
	// The Unified Code for Units of Measure standard
	// +kubebuilder:validation:Optional
	Unit *string `json:"unit,omitempty" tf:"unit,omitempty"`

	// Whether the measurement is an integer, a floating-point number, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to INT64.
	// Possible values are: BOOL, INT64, DOUBLE, STRING, DISTRIBUTION, MONEY.
	// +kubebuilder:validation:Optional
	ValueType *string `json:"valueType" tf:"value_type,omitempty"`
}

func (*MetricDescriptorParameters) DeepCopy

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

func (*MetricDescriptorParameters) DeepCopyInto

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

type MetricInitParameters

type MetricInitParameters struct {

	// The resource name of the Log Bucket that owns the Log Metric. Only Log Buckets in projects
	// are supported. The bucket has to be in the same project as the metric.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/logging/v1beta2.ProjectBucketConfig
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"`

	// Reference to a ProjectBucketConfig in logging to populate bucketName.
	// +kubebuilder:validation:Optional
	BucketNameRef *v1.Reference `json:"bucketNameRef,omitempty" tf:"-"`

	// Selector for a ProjectBucketConfig in logging to populate bucketName.
	// +kubebuilder:validation:Optional
	BucketNameSelector *v1.Selector `json:"bucketNameSelector,omitempty" tf:"-"`

	// The bucketOptions are required when the logs-based metric is using a DISTRIBUTION value type and it
	// describes the bucket boundaries used to create a histogram of the extracted values.
	// Structure is documented below.
	BucketOptions *BucketOptionsInitParameters `json:"bucketOptions,omitempty" tf:"bucket_options,omitempty"`

	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this metric is disabled and it does not generate any points.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-filters) which
	// is used to match log entries.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A map from a label key string to an extractor expression which is used to extract data from a log
	// entry field and assign as the label value. Each label key specified in the LabelDescriptor must
	// have an associated extractor expression in this map. The syntax of the extractor expression is
	// the same as for the valueExtractor field.
	// +mapType=granular
	LabelExtractors map[string]*string `json:"labelExtractors,omitempty" tf:"label_extractors,omitempty"`

	// The optional metric descriptor associated with the logs-based metric.
	// If unspecified, it uses a default metric descriptor with a DELTA metric kind,
	// INT64 value type, with no labels and a unit of "1". Such a metric counts the
	// number of log entries matching the filter expression.
	// Structure is documented below.
	MetricDescriptor *MetricDescriptorInitParameters `json:"metricDescriptor,omitempty" tf:"metric_descriptor,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"`

	// A valueExtractor is required when using a distribution logs-based metric to extract the values to
	// record from a log entry. Two functions are supported for value extraction - EXTRACT(field) or
	// REGEXP_EXTRACT(field, regex). The argument are 1. field - The name of the log entry field from which
	// the value is to be extracted. 2. regex - A regular expression using the Google RE2 syntax
	// (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified
	// log entry field. The value of the field is converted to a string before applying the regex. It is an
	// error to specify a regex that does not include exactly one capture group.
	ValueExtractor *string `json:"valueExtractor,omitempty" tf:"value_extractor,omitempty"`
}

func (*MetricInitParameters) DeepCopy

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

func (*MetricInitParameters) DeepCopyInto

func (in *MetricInitParameters) DeepCopyInto(out *MetricInitParameters)

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

type MetricList

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

MetricList contains a list of Metrics

func (*MetricList) DeepCopy

func (in *MetricList) DeepCopy() *MetricList

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

func (*MetricList) DeepCopyInto

func (in *MetricList) DeepCopyInto(out *MetricList)

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

func (*MetricList) DeepCopyObject

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

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

func (*MetricList) GetItems

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

GetItems of this MetricList.

type MetricObservation

type MetricObservation struct {

	// The resource name of the Log Bucket that owns the Log Metric. Only Log Buckets in projects
	// are supported. The bucket has to be in the same project as the metric.
	BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"`

	// The bucketOptions are required when the logs-based metric is using a DISTRIBUTION value type and it
	// describes the bucket boundaries used to create a histogram of the extracted values.
	// Structure is documented below.
	BucketOptions *BucketOptionsObservation `json:"bucketOptions,omitempty" tf:"bucket_options,omitempty"`

	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this metric is disabled and it does not generate any points.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-filters) which
	// is used to match log entries.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

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

	// A map from a label key string to an extractor expression which is used to extract data from a log
	// entry field and assign as the label value. Each label key specified in the LabelDescriptor must
	// have an associated extractor expression in this map. The syntax of the extractor expression is
	// the same as for the valueExtractor field.
	// +mapType=granular
	LabelExtractors map[string]*string `json:"labelExtractors,omitempty" tf:"label_extractors,omitempty"`

	// The optional metric descriptor associated with the logs-based metric.
	// If unspecified, it uses a default metric descriptor with a DELTA metric kind,
	// INT64 value type, with no labels and a unit of "1". Such a metric counts the
	// number of log entries matching the filter expression.
	// Structure is documented below.
	MetricDescriptor *MetricDescriptorObservation `json:"metricDescriptor,omitempty" tf:"metric_descriptor,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"`

	// A valueExtractor is required when using a distribution logs-based metric to extract the values to
	// record from a log entry. Two functions are supported for value extraction - EXTRACT(field) or
	// REGEXP_EXTRACT(field, regex). The argument are 1. field - The name of the log entry field from which
	// the value is to be extracted. 2. regex - A regular expression using the Google RE2 syntax
	// (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified
	// log entry field. The value of the field is converted to a string before applying the regex. It is an
	// error to specify a regex that does not include exactly one capture group.
	ValueExtractor *string `json:"valueExtractor,omitempty" tf:"value_extractor,omitempty"`
}

func (*MetricObservation) DeepCopy

func (in *MetricObservation) DeepCopy() *MetricObservation

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

func (*MetricObservation) DeepCopyInto

func (in *MetricObservation) DeepCopyInto(out *MetricObservation)

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

type MetricParameters

type MetricParameters struct {

	// The resource name of the Log Bucket that owns the Log Metric. Only Log Buckets in projects
	// are supported. The bucket has to be in the same project as the metric.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/logging/v1beta2.ProjectBucketConfig
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	BucketName *string `json:"bucketName,omitempty" tf:"bucket_name,omitempty"`

	// Reference to a ProjectBucketConfig in logging to populate bucketName.
	// +kubebuilder:validation:Optional
	BucketNameRef *v1.Reference `json:"bucketNameRef,omitempty" tf:"-"`

	// Selector for a ProjectBucketConfig in logging to populate bucketName.
	// +kubebuilder:validation:Optional
	BucketNameSelector *v1.Selector `json:"bucketNameSelector,omitempty" tf:"-"`

	// The bucketOptions are required when the logs-based metric is using a DISTRIBUTION value type and it
	// describes the bucket boundaries used to create a histogram of the extracted values.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	BucketOptions *BucketOptionsParameters `json:"bucketOptions,omitempty" tf:"bucket_options,omitempty"`

	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this metric is disabled and it does not generate any points.
	// +kubebuilder:validation:Optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-filters) which
	// is used to match log entries.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A map from a label key string to an extractor expression which is used to extract data from a log
	// entry field and assign as the label value. Each label key specified in the LabelDescriptor must
	// have an associated extractor expression in this map. The syntax of the extractor expression is
	// the same as for the valueExtractor field.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	LabelExtractors map[string]*string `json:"labelExtractors,omitempty" tf:"label_extractors,omitempty"`

	// The optional metric descriptor associated with the logs-based metric.
	// If unspecified, it uses a default metric descriptor with a DELTA metric kind,
	// INT64 value type, with no labels and a unit of "1". Such a metric counts the
	// number of log entries matching the filter expression.
	// Structure is documented below.
	// +kubebuilder:validation:Optional
	MetricDescriptor *MetricDescriptorParameters `json:"metricDescriptor,omitempty" tf:"metric_descriptor,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"`

	// A valueExtractor is required when using a distribution logs-based metric to extract the values to
	// record from a log entry. Two functions are supported for value extraction - EXTRACT(field) or
	// REGEXP_EXTRACT(field, regex). The argument are 1. field - The name of the log entry field from which
	// the value is to be extracted. 2. regex - A regular expression using the Google RE2 syntax
	// (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified
	// log entry field. The value of the field is converted to a string before applying the regex. It is an
	// error to specify a regex that does not include exactly one capture group.
	// +kubebuilder:validation:Optional
	ValueExtractor *string `json:"valueExtractor,omitempty" tf:"value_extractor,omitempty"`
}

func (*MetricParameters) DeepCopy

func (in *MetricParameters) DeepCopy() *MetricParameters

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

func (*MetricParameters) DeepCopyInto

func (in *MetricParameters) DeepCopyInto(out *MetricParameters)

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

type MetricSpec

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

MetricSpec defines the desired state of Metric

func (*MetricSpec) DeepCopy

func (in *MetricSpec) DeepCopy() *MetricSpec

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

func (*MetricSpec) DeepCopyInto

func (in *MetricSpec) DeepCopyInto(out *MetricSpec)

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

type MetricStatus

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

MetricStatus defines the observed state of Metric.

func (*MetricStatus) DeepCopy

func (in *MetricStatus) DeepCopy() *MetricStatus

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

func (*MetricStatus) DeepCopyInto

func (in *MetricStatus) DeepCopyInto(out *MetricStatus)

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

type ProjectBucketConfig

type ProjectBucketConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProjectBucketConfigSpec   `json:"spec"`
	Status            ProjectBucketConfigStatus `json:"status,omitempty"`
}

ProjectBucketConfig is the Schema for the ProjectBucketConfigs API. Manages a project-level logging bucket config. +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 (*ProjectBucketConfig) DeepCopy

func (in *ProjectBucketConfig) DeepCopy() *ProjectBucketConfig

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

func (*ProjectBucketConfig) DeepCopyInto

func (in *ProjectBucketConfig) DeepCopyInto(out *ProjectBucketConfig)

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

func (*ProjectBucketConfig) DeepCopyObject

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

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

func (*ProjectBucketConfig) GetCondition

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

GetCondition of this ProjectBucketConfig.

func (*ProjectBucketConfig) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this ProjectBucketConfig

func (*ProjectBucketConfig) GetDeletionPolicy

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

GetDeletionPolicy of this ProjectBucketConfig.

func (*ProjectBucketConfig) GetID

func (tr *ProjectBucketConfig) GetID() string

GetID returns ID of underlying Terraform resource of this ProjectBucketConfig

func (*ProjectBucketConfig) GetInitParameters

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

GetInitParameters of this ProjectBucketConfig

func (*ProjectBucketConfig) GetManagementPolicies

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

GetManagementPolicies of this ProjectBucketConfig.

func (*ProjectBucketConfig) GetMergedParameters

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

GetInitParameters of this ProjectBucketConfig

func (*ProjectBucketConfig) GetObservation

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

GetObservation of this ProjectBucketConfig

func (*ProjectBucketConfig) GetParameters

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

GetParameters of this ProjectBucketConfig

func (*ProjectBucketConfig) GetProviderConfigReference

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

GetProviderConfigReference of this ProjectBucketConfig.

func (*ProjectBucketConfig) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this ProjectBucketConfig.

func (*ProjectBucketConfig) GetTerraformResourceType

func (mg *ProjectBucketConfig) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ProjectBucketConfig

func (*ProjectBucketConfig) GetTerraformSchemaVersion

func (tr *ProjectBucketConfig) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ProjectBucketConfig) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this ProjectBucketConfig.

func (*ProjectBucketConfig) Hub

func (tr *ProjectBucketConfig) Hub()

Hub marks this type as a conversion hub.

func (*ProjectBucketConfig) LateInitialize

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

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

func (*ProjectBucketConfig) ResolveReferences

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

ResolveReferences of this ProjectBucketConfig.

func (*ProjectBucketConfig) SetConditions

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

SetConditions of this ProjectBucketConfig.

func (*ProjectBucketConfig) SetDeletionPolicy

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

SetDeletionPolicy of this ProjectBucketConfig.

func (*ProjectBucketConfig) SetManagementPolicies

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

SetManagementPolicies of this ProjectBucketConfig.

func (*ProjectBucketConfig) SetObservation

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

SetObservation for this ProjectBucketConfig

func (*ProjectBucketConfig) SetParameters

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

SetParameters for this ProjectBucketConfig

func (*ProjectBucketConfig) SetProviderConfigReference

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

SetProviderConfigReference of this ProjectBucketConfig.

func (*ProjectBucketConfig) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this ProjectBucketConfig.

func (*ProjectBucketConfig) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this ProjectBucketConfig.

type ProjectBucketConfigCmekSettingsInitParameters

type ProjectBucketConfigCmekSettingsInitParameters struct {

	// The resource name for the configured Cloud KMS key.
	// KMS key name format:
	// 'projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]'
	// To enable CMEK for the bucket, set this field to a valid kmsKeyName for which the associated service account has the required cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.
	// The Cloud KMS key used by the bucket can be updated by changing the kmsKeyName to a new valid key name. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.
	// See Enabling CMEK for Logging Buckets for more information.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/kms/v1beta2.CryptoKey
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	KMSKeyName *string `json:"kmsKeyName,omitempty" tf:"kms_key_name,omitempty"`

	// Reference to a CryptoKey in kms to populate kmsKeyName.
	// +kubebuilder:validation:Optional
	KMSKeyNameRef *v1.Reference `json:"kmsKeyNameRef,omitempty" tf:"-"`

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

func (*ProjectBucketConfigCmekSettingsInitParameters) DeepCopy

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

func (*ProjectBucketConfigCmekSettingsInitParameters) DeepCopyInto

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

type ProjectBucketConfigCmekSettingsObservation

type ProjectBucketConfigCmekSettingsObservation struct {

	// The resource name for the configured Cloud KMS key.
	// KMS key name format:
	// 'projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]'
	// To enable CMEK for the bucket, set this field to a valid kmsKeyName for which the associated service account has the required cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.
	// The Cloud KMS key used by the bucket can be updated by changing the kmsKeyName to a new valid key name. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.
	// See Enabling CMEK for Logging Buckets for more information.
	KMSKeyName *string `json:"kmsKeyName,omitempty" tf:"kms_key_name,omitempty"`

	// The CryptoKeyVersion resource name for the configured Cloud KMS key.
	// KMS key name format:
	// 'projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]'
	// For example:
	// "projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1"
	// This is a read-only field used to convey the specific configured CryptoKeyVersion of kms_key that has been configured. It will be populated in cases where the CMEK settings are bound to a single key version.
	KMSKeyVersionName *string `json:"kmsKeyVersionName,omitempty" tf:"kms_key_version_name,omitempty"`

	// The resource name of the CMEK settings.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The service account associated with a project for which CMEK will apply.
	// Before enabling CMEK for a logging bucket, you must first assign the cloudkms.cryptoKeyEncrypterDecrypter role to the service account associated with the project for which CMEK will apply. Use v2.getCmekSettings to obtain the service account ID.
	// See Enabling CMEK for Logging Buckets for more information.
	ServiceAccountID *string `json:"serviceAccountId,omitempty" tf:"service_account_id,omitempty"`
}

func (*ProjectBucketConfigCmekSettingsObservation) DeepCopy

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

func (*ProjectBucketConfigCmekSettingsObservation) DeepCopyInto

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

type ProjectBucketConfigCmekSettingsParameters

type ProjectBucketConfigCmekSettingsParameters struct {

	// The resource name for the configured Cloud KMS key.
	// KMS key name format:
	// 'projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]'
	// To enable CMEK for the bucket, set this field to a valid kmsKeyName for which the associated service account has the required cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.
	// The Cloud KMS key used by the bucket can be updated by changing the kmsKeyName to a new valid key name. Encryption operations that are in progress will be completed with the key that was in use when they started. Decryption operations will be completed using the key that was used at the time of encryption unless access to that key has been revoked.
	// See Enabling CMEK for Logging Buckets for more information.
	// +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
	KMSKeyName *string `json:"kmsKeyName,omitempty" tf:"kms_key_name,omitempty"`

	// Reference to a CryptoKey in kms to populate kmsKeyName.
	// +kubebuilder:validation:Optional
	KMSKeyNameRef *v1.Reference `json:"kmsKeyNameRef,omitempty" tf:"-"`

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

func (*ProjectBucketConfigCmekSettingsParameters) DeepCopy

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

func (*ProjectBucketConfigCmekSettingsParameters) DeepCopyInto

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

type ProjectBucketConfigIndexConfigsInitParameters

type ProjectBucketConfigIndexConfigsInitParameters struct {

	// The LogEntry field path to index.
	// Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation for details.
	FieldPath *string `json:"fieldPath,omitempty" tf:"field_path,omitempty"`

	// The type of data in this index. Allowed types include INDEX_TYPE_UNSPECIFIED, INDEX_TYPE_STRING and INDEX_TYPE_INTEGER.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ProjectBucketConfigIndexConfigsInitParameters) DeepCopy

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

func (*ProjectBucketConfigIndexConfigsInitParameters) DeepCopyInto

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

type ProjectBucketConfigIndexConfigsObservation

type ProjectBucketConfigIndexConfigsObservation struct {

	// The LogEntry field path to index.
	// Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation for details.
	FieldPath *string `json:"fieldPath,omitempty" tf:"field_path,omitempty"`

	// The type of data in this index. Allowed types include INDEX_TYPE_UNSPECIFIED, INDEX_TYPE_STRING and INDEX_TYPE_INTEGER.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ProjectBucketConfigIndexConfigsObservation) DeepCopy

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

func (*ProjectBucketConfigIndexConfigsObservation) DeepCopyInto

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

type ProjectBucketConfigIndexConfigsParameters

type ProjectBucketConfigIndexConfigsParameters struct {

	// The LogEntry field path to index.
	// Note that some paths are automatically indexed, and other paths are not eligible for indexing. See indexing documentation for details.
	// +kubebuilder:validation:Optional
	FieldPath *string `json:"fieldPath" tf:"field_path,omitempty"`

	// The type of data in this index. Allowed types include INDEX_TYPE_UNSPECIFIED, INDEX_TYPE_STRING and INDEX_TYPE_INTEGER.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*ProjectBucketConfigIndexConfigsParameters) DeepCopy

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

func (*ProjectBucketConfigIndexConfigsParameters) DeepCopyInto

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

type ProjectBucketConfigInitParameters

type ProjectBucketConfigInitParameters struct {

	// The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed. Structure is documented below.
	CmekSettings *ProjectBucketConfigCmekSettingsInitParameters `json:"cmekSettings,omitempty" tf:"cmek_settings,omitempty"`

	// Describes this bucket.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Whether or not Log Analytics is enabled. Logs for buckets with Log Analytics enabled can be queried in the Log Analytics page using SQL queries. Cannot be disabled once enabled.
	EnableAnalytics *bool `json:"enableAnalytics,omitempty" tf:"enable_analytics,omitempty"`

	// A list of indexed fields and related configuration data. Structure is documented below.
	IndexConfigs []ProjectBucketConfigIndexConfigsInitParameters `json:"indexConfigs,omitempty" tf:"index_configs,omitempty"`

	// Whether the bucket is locked. The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
	Locked *bool `json:"locked,omitempty" tf:"locked,omitempty"`

	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`
}

func (*ProjectBucketConfigInitParameters) DeepCopy

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

func (*ProjectBucketConfigInitParameters) DeepCopyInto

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

type ProjectBucketConfigList

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

ProjectBucketConfigList contains a list of ProjectBucketConfigs

func (*ProjectBucketConfigList) DeepCopy

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

func (*ProjectBucketConfigList) DeepCopyInto

func (in *ProjectBucketConfigList) DeepCopyInto(out *ProjectBucketConfigList)

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

func (*ProjectBucketConfigList) DeepCopyObject

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

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

func (*ProjectBucketConfigList) GetItems

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

GetItems of this ProjectBucketConfigList.

type ProjectBucketConfigObservation

type ProjectBucketConfigObservation struct {

	// The name of the logging bucket. Logging automatically creates two log buckets: _Required and _Default.
	BucketID *string `json:"bucketId,omitempty" tf:"bucket_id,omitempty"`

	// The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed. Structure is documented below.
	CmekSettings *ProjectBucketConfigCmekSettingsObservation `json:"cmekSettings,omitempty" tf:"cmek_settings,omitempty"`

	// Describes this bucket.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Whether or not Log Analytics is enabled. Logs for buckets with Log Analytics enabled can be queried in the Log Analytics page using SQL queries. Cannot be disabled once enabled.
	EnableAnalytics *bool `json:"enableAnalytics,omitempty" tf:"enable_analytics,omitempty"`

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

	// A list of indexed fields and related configuration data. Structure is documented below.
	IndexConfigs []ProjectBucketConfigIndexConfigsObservation `json:"indexConfigs,omitempty" tf:"index_configs,omitempty"`

	// The bucket's lifecycle such as active or deleted. See LifecycleState.
	LifecycleState *string `json:"lifecycleState,omitempty" tf:"lifecycle_state,omitempty"`

	// The location of the bucket.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Whether the bucket is locked. The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
	Locked *bool `json:"locked,omitempty" tf:"locked,omitempty"`

	// The resource name of the bucket. For example: "projects/my-project-id/locations/my-location/buckets/my-bucket-id"
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The parent resource that contains the logging bucket.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`
}

func (*ProjectBucketConfigObservation) DeepCopy

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

func (*ProjectBucketConfigObservation) DeepCopyInto

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

type ProjectBucketConfigParameters

type ProjectBucketConfigParameters struct {

	// The name of the logging bucket. Logging automatically creates two log buckets: _Required and _Default.
	// +kubebuilder:validation:Required
	BucketID *string `json:"bucketId" tf:"bucket_id,omitempty"`

	// The CMEK settings of the log bucket. If present, new log entries written to this log bucket are encrypted using the CMEK key provided in this configuration. If a log bucket has CMEK settings, the CMEK settings cannot be disabled later by updating the log bucket. Changing the KMS key is allowed. Structure is documented below.
	// +kubebuilder:validation:Optional
	CmekSettings *ProjectBucketConfigCmekSettingsParameters `json:"cmekSettings,omitempty" tf:"cmek_settings,omitempty"`

	// Describes this bucket.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Whether or not Log Analytics is enabled. Logs for buckets with Log Analytics enabled can be queried in the Log Analytics page using SQL queries. Cannot be disabled once enabled.
	// +kubebuilder:validation:Optional
	EnableAnalytics *bool `json:"enableAnalytics,omitempty" tf:"enable_analytics,omitempty"`

	// A list of indexed fields and related configuration data. Structure is documented below.
	// +kubebuilder:validation:Optional
	IndexConfigs []ProjectBucketConfigIndexConfigsParameters `json:"indexConfigs,omitempty" tf:"index_configs,omitempty"`

	// The location of the bucket.
	// +kubebuilder:validation:Required
	Location *string `json:"location" tf:"location,omitempty"`

	// Whether the bucket is locked. The retention period on a locked bucket cannot be changed. Locked buckets may only be deleted if they are empty.
	// +kubebuilder:validation:Optional
	Locked *bool `json:"locked,omitempty" tf:"locked,omitempty"`

	// The parent resource that contains the logging bucket.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.Project
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("project_id",false)
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Reference to a Project in cloudplatform to populate project.
	// +kubebuilder:validation:Optional
	ProjectRef *v1.Reference `json:"projectRef,omitempty" tf:"-"`

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

	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
	// +kubebuilder:validation:Optional
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`
}

func (*ProjectBucketConfigParameters) DeepCopy

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

func (*ProjectBucketConfigParameters) DeepCopyInto

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

type ProjectBucketConfigSpec

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

ProjectBucketConfigSpec defines the desired state of ProjectBucketConfig

func (*ProjectBucketConfigSpec) DeepCopy

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

func (*ProjectBucketConfigSpec) DeepCopyInto

func (in *ProjectBucketConfigSpec) DeepCopyInto(out *ProjectBucketConfigSpec)

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

type ProjectBucketConfigStatus

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

ProjectBucketConfigStatus defines the observed state of ProjectBucketConfig.

func (*ProjectBucketConfigStatus) DeepCopy

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

func (*ProjectBucketConfigStatus) DeepCopyInto

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

type ProjectSink

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

ProjectSink is the Schema for the ProjectSinks API. Manages a project-level logging sink. +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 (*ProjectSink) DeepCopy

func (in *ProjectSink) DeepCopy() *ProjectSink

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

func (*ProjectSink) DeepCopyInto

func (in *ProjectSink) DeepCopyInto(out *ProjectSink)

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

func (*ProjectSink) DeepCopyObject

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

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

func (*ProjectSink) GetCondition

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

GetCondition of this ProjectSink.

func (*ProjectSink) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this ProjectSink

func (*ProjectSink) GetDeletionPolicy

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

GetDeletionPolicy of this ProjectSink.

func (*ProjectSink) GetID

func (tr *ProjectSink) GetID() string

GetID returns ID of underlying Terraform resource of this ProjectSink

func (*ProjectSink) GetInitParameters

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

GetInitParameters of this ProjectSink

func (*ProjectSink) GetManagementPolicies

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

GetManagementPolicies of this ProjectSink.

func (*ProjectSink) GetMergedParameters

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

GetInitParameters of this ProjectSink

func (*ProjectSink) GetObservation

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

GetObservation of this ProjectSink

func (*ProjectSink) GetParameters

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

GetParameters of this ProjectSink

func (*ProjectSink) GetProviderConfigReference

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

GetProviderConfigReference of this ProjectSink.

func (*ProjectSink) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this ProjectSink.

func (*ProjectSink) GetTerraformResourceType

func (mg *ProjectSink) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ProjectSink

func (*ProjectSink) GetTerraformSchemaVersion

func (tr *ProjectSink) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ProjectSink) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this ProjectSink.

func (*ProjectSink) Hub

func (tr *ProjectSink) Hub()

Hub marks this type as a conversion hub.

func (*ProjectSink) LateInitialize

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

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

func (*ProjectSink) ResolveReferences

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

ResolveReferences of this ProjectSink.

func (*ProjectSink) SetConditions

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

SetConditions of this ProjectSink.

func (*ProjectSink) SetDeletionPolicy

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

SetDeletionPolicy of this ProjectSink.

func (*ProjectSink) SetManagementPolicies

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

SetManagementPolicies of this ProjectSink.

func (*ProjectSink) SetObservation

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

SetObservation for this ProjectSink

func (*ProjectSink) SetParameters

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

SetParameters for this ProjectSink

func (*ProjectSink) SetProviderConfigReference

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

SetProviderConfigReference of this ProjectSink.

func (*ProjectSink) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this ProjectSink.

func (*ProjectSink) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this ProjectSink.

type ProjectSinkBigqueryOptionsInitParameters

type ProjectSinkBigqueryOptionsInitParameters struct {

	// Whether to use BigQuery's partition tables.
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and special query syntax
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables *bool `json:"usePartitionedTables,omitempty" tf:"use_partitioned_tables,omitempty"`
}

func (*ProjectSinkBigqueryOptionsInitParameters) DeepCopy

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

func (*ProjectSinkBigqueryOptionsInitParameters) DeepCopyInto

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

type ProjectSinkBigqueryOptionsObservation

type ProjectSinkBigqueryOptionsObservation struct {

	// Whether to use BigQuery's partition tables.
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and special query syntax
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables *bool `json:"usePartitionedTables,omitempty" tf:"use_partitioned_tables,omitempty"`
}

func (*ProjectSinkBigqueryOptionsObservation) DeepCopy

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

func (*ProjectSinkBigqueryOptionsObservation) DeepCopyInto

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

type ProjectSinkBigqueryOptionsParameters

type ProjectSinkBigqueryOptionsParameters struct {

	// Whether to use BigQuery's partition tables.
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and special query syntax
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	// +kubebuilder:validation:Optional
	UsePartitionedTables *bool `json:"usePartitionedTables" tf:"use_partitioned_tables,omitempty"`
}

func (*ProjectSinkBigqueryOptionsParameters) DeepCopy

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

func (*ProjectSinkBigqueryOptionsParameters) DeepCopyInto

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

type ProjectSinkExclusionsInitParameters

type ProjectSinkExclusionsInitParameters struct {

	// A description of this exclusion.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A client-assigned identifier, such as load-balancer-exclusion. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*ProjectSinkExclusionsInitParameters) DeepCopy

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

func (*ProjectSinkExclusionsInitParameters) DeepCopyInto

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

type ProjectSinkExclusionsObservation

type ProjectSinkExclusionsObservation struct {

	// A description of this exclusion.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// A client-assigned identifier, such as load-balancer-exclusion. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*ProjectSinkExclusionsObservation) DeepCopy

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

func (*ProjectSinkExclusionsObservation) DeepCopyInto

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

type ProjectSinkExclusionsParameters

type ProjectSinkExclusionsParameters struct {

	// A description of this exclusion.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	// +kubebuilder:validation:Optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See Advanced Log Filters for information on how to
	// write a filter.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter" tf:"filter,omitempty"`

	// A client-assigned identifier, such as load-balancer-exclusion. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`
}

func (*ProjectSinkExclusionsParameters) DeepCopy

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

func (*ProjectSinkExclusionsParameters) DeepCopyInto

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

type ProjectSinkInitParameters

type ProjectSinkInitParameters struct {

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions *ProjectSinkBigqueryOptionsInitParameters `json:"bigqueryOptions,omitempty" tf:"bigquery_options,omitempty"`

	// A user managed service account that will be used to write
	// the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are
	// routing logs to a destination outside this sink's project. If not specified, a Logging service account
	// will automatically be generated.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.ServiceAccount
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("email",true)
	CustomWriterIdentity *string `json:"customWriterIdentity,omitempty" tf:"custom_writer_identity,omitempty"`

	// Reference to a ServiceAccount in cloudplatform to populate customWriterIdentity.
	// +kubebuilder:validation:Optional
	CustomWriterIdentityRef *v1.Reference `json:"customWriterIdentityRef,omitempty" tf:"-"`

	// Selector for a ServiceAccount in cloudplatform to populate customWriterIdentity.
	// +kubebuilder:validation:Optional
	CustomWriterIdentitySelector *v1.Selector `json:"customWriterIdentitySelector,omitempty" tf:"-"`

	// A description of this sink. The maximum length of the description is 8000 characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// If set to True, then this sink is disabled and it does not export any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusions.filter, it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions []ProjectSinkExclusionsInitParameters `json:"exclusions,omitempty" tf:"exclusions,omitempty"`

	// The filter to apply when exporting logs. Only log entries that match the filter are exported.
	// See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The ID of the project to create the sink in. If omitted, the project associated with the provider is
	// used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Whether or not to create a unique identity associated with this sink. If false, then the writer_identity used is serviceAccount:cloud-logs@system.gserviceaccount.com. If true (the default),
	// then a unique service account is created and used for this sink. If you wish to publish logs across projects or utilize
	// bigquery_options, you must set unique_writer_identity to true.
	UniqueWriterIdentity *bool `json:"uniqueWriterIdentity,omitempty" tf:"unique_writer_identity,omitempty"`
}

func (*ProjectSinkInitParameters) DeepCopy

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

func (*ProjectSinkInitParameters) DeepCopyInto

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

type ProjectSinkList

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

ProjectSinkList contains a list of ProjectSinks

func (*ProjectSinkList) DeepCopy

func (in *ProjectSinkList) DeepCopy() *ProjectSinkList

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

func (*ProjectSinkList) DeepCopyInto

func (in *ProjectSinkList) DeepCopyInto(out *ProjectSinkList)

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

func (*ProjectSinkList) DeepCopyObject

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

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

func (*ProjectSinkList) GetItems

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

GetItems of this ProjectSinkList.

type ProjectSinkObservation

type ProjectSinkObservation struct {

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions *ProjectSinkBigqueryOptionsObservation `json:"bigqueryOptions,omitempty" tf:"bigquery_options,omitempty"`

	// A user managed service account that will be used to write
	// the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are
	// routing logs to a destination outside this sink's project. If not specified, a Logging service account
	// will automatically be generated.
	CustomWriterIdentity *string `json:"customWriterIdentity,omitempty" tf:"custom_writer_identity,omitempty"`

	// A description of this sink. The maximum length of the description is 8000 characters.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// If set to True, then this sink is disabled and it does not export any log entries.
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusions.filter, it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions []ProjectSinkExclusionsObservation `json:"exclusions,omitempty" tf:"exclusions,omitempty"`

	// The filter to apply when exporting logs. Only log entries that match the filter are exported.
	// See Advanced Log Filters for information on how to
	// write a filter.
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

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

	// The ID of the project to create the sink in. If omitted, the project associated with the provider is
	// used.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Whether or not to create a unique identity associated with this sink. If false, then the writer_identity used is serviceAccount:cloud-logs@system.gserviceaccount.com. If true (the default),
	// then a unique service account is created and used for this sink. If you wish to publish logs across projects or utilize
	// bigquery_options, you must set unique_writer_identity to true.
	UniqueWriterIdentity *bool `json:"uniqueWriterIdentity,omitempty" tf:"unique_writer_identity,omitempty"`

	// The identity associated with this sink. This identity must be granted write access to the
	// configured destination.
	WriterIdentity *string `json:"writerIdentity,omitempty" tf:"writer_identity,omitempty"`
}

func (*ProjectSinkObservation) DeepCopy

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

func (*ProjectSinkObservation) DeepCopyInto

func (in *ProjectSinkObservation) DeepCopyInto(out *ProjectSinkObservation)

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

type ProjectSinkParameters

type ProjectSinkParameters struct {

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	// +kubebuilder:validation:Optional
	BigqueryOptions *ProjectSinkBigqueryOptionsParameters `json:"bigqueryOptions,omitempty" tf:"bigquery_options,omitempty"`

	// A user managed service account that will be used to write
	// the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are
	// routing logs to a destination outside this sink's project. If not specified, a Logging service account
	// will automatically be generated.
	// +crossplane:generate:reference:type=github.com/upbound/provider-gcp/apis/cloudplatform/v1beta1.ServiceAccount
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("email",true)
	// +kubebuilder:validation:Optional
	CustomWriterIdentity *string `json:"customWriterIdentity,omitempty" tf:"custom_writer_identity,omitempty"`

	// Reference to a ServiceAccount in cloudplatform to populate customWriterIdentity.
	// +kubebuilder:validation:Optional
	CustomWriterIdentityRef *v1.Reference `json:"customWriterIdentityRef,omitempty" tf:"-"`

	// Selector for a ServiceAccount in cloudplatform to populate customWriterIdentity.
	// +kubebuilder:validation:Optional
	CustomWriterIdentitySelector *v1.Selector `json:"customWriterIdentitySelector,omitempty" tf:"-"`

	// A description of this sink. The maximum length of the description is 8000 characters.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The destination of the sink (or, in other words, where logs are written to). Can be a Cloud Storage bucket, a PubSub topic, a BigQuery dataset, a Cloud Logging bucket, or a Google Cloud project. Examples:
	// +kubebuilder:validation:Optional
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// If set to True, then this sink is disabled and it does not export any log entries.
	// +kubebuilder:validation:Optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled,omitempty"`

	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusions.filter, it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	// +kubebuilder:validation:Optional
	Exclusions []ProjectSinkExclusionsParameters `json:"exclusions,omitempty" tf:"exclusions,omitempty"`

	// The filter to apply when exporting logs. Only log entries that match the filter are exported.
	// See Advanced Log Filters for information on how to
	// write a filter.
	// +kubebuilder:validation:Optional
	Filter *string `json:"filter,omitempty" tf:"filter,omitempty"`

	// The ID of the project to create the sink in. If omitted, the project associated with the provider is
	// used.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Whether or not to create a unique identity associated with this sink. If false, then the writer_identity used is serviceAccount:cloud-logs@system.gserviceaccount.com. If true (the default),
	// then a unique service account is created and used for this sink. If you wish to publish logs across projects or utilize
	// bigquery_options, you must set unique_writer_identity to true.
	// +kubebuilder:validation:Optional
	UniqueWriterIdentity *bool `json:"uniqueWriterIdentity,omitempty" tf:"unique_writer_identity,omitempty"`
}

func (*ProjectSinkParameters) DeepCopy

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

func (*ProjectSinkParameters) DeepCopyInto

func (in *ProjectSinkParameters) DeepCopyInto(out *ProjectSinkParameters)

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

type ProjectSinkSpec

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

ProjectSinkSpec defines the desired state of ProjectSink

func (*ProjectSinkSpec) DeepCopy

func (in *ProjectSinkSpec) DeepCopy() *ProjectSinkSpec

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

func (*ProjectSinkSpec) DeepCopyInto

func (in *ProjectSinkSpec) DeepCopyInto(out *ProjectSinkSpec)

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

type ProjectSinkStatus

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

ProjectSinkStatus defines the observed state of ProjectSink.

func (*ProjectSinkStatus) DeepCopy

func (in *ProjectSinkStatus) DeepCopy() *ProjectSinkStatus

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

func (*ProjectSinkStatus) DeepCopyInto

func (in *ProjectSinkStatus) DeepCopyInto(out *ProjectSinkStatus)

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