v1beta1

package
v1.127.0 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: 6 Imported by: 0

Documentation

Overview

Package v1beta1 contains API Schema definitions for the billingbudgets v1beta1 API group. +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/GoogleCloudPlatform/k8s-config-connector/pkg/clients/generated/pkg/apis/billingbudgets +k8s:defaulter-gen=TypeMeta +groupName=billingbudgets.cnrm.cloud.google.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is the group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: "billingbudgets.cnrm.cloud.google.com", Version: "v1beta1"}

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

	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme

	BillingBudgetsBudgetGVK = schema.GroupVersionKind{
		Group:   SchemeGroupVersion.Group,
		Version: SchemeGroupVersion.Version,
		Kind:    reflect.TypeOf(BillingBudgetsBudget{}).Name(),
	}
)

Functions

This section is empty.

Types

type BillingBudgetsBudget

type BillingBudgetsBudget struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BillingBudgetsBudgetSpec   `json:"spec,omitempty"`
	Status BillingBudgetsBudgetStatus `json:"status,omitempty"`
}

BillingBudgetsBudget is the Schema for the billingbudgets API +k8s:openapi-gen=true

func (*BillingBudgetsBudget) DeepCopy

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

func (*BillingBudgetsBudget) DeepCopyInto

func (in *BillingBudgetsBudget) DeepCopyInto(out *BillingBudgetsBudget)

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

func (*BillingBudgetsBudget) DeepCopyObject

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

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

type BillingBudgetsBudgetList

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

BillingBudgetsBudgetList contains a list of BillingBudgetsBudget

func (*BillingBudgetsBudgetList) DeepCopy

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

func (*BillingBudgetsBudgetList) DeepCopyInto

func (in *BillingBudgetsBudgetList) DeepCopyInto(out *BillingBudgetsBudgetList)

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

func (*BillingBudgetsBudgetList) DeepCopyObject

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

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

type BillingBudgetsBudgetSpec

type BillingBudgetsBudgetSpec struct {
	/* Optional. Rules to apply to notifications sent based on budget spend and thresholds. */
	// +optional
	AllUpdatesRule *BudgetAllUpdatesRule `json:"allUpdatesRule,omitempty"`

	/* Required. Budgeted amount. */
	Amount BudgetAmount `json:"amount"`

	/* Immutable. */
	BillingAccountRef v1alpha1.ResourceRef `json:"billingAccountRef"`

	/* Optional. Filters that define which resources are used to compute the actual spend against the budget amount, such as projects, services, and the budget's time period, as well as other filters. */
	// +optional
	BudgetFilter *BudgetBudgetFilter `json:"budgetFilter,omitempty"`

	/* User data for display name in UI. The name must be less than or equal to 60 characters. */
	// +optional
	DisplayName *string `json:"displayName,omitempty"`

	/* Immutable. Optional. The service-generated name of the resource. Used for acquisition only. Leave unset to create a new resource. */
	// +optional
	ResourceID *string `json:"resourceID,omitempty"`

	/* Optional. Rules that trigger alerts (notifications of thresholds being crossed) when spend exceeds the specified percentages of the budget. */
	// +optional
	ThresholdRules []BudgetThresholdRules `json:"thresholdRules,omitempty"`
}

func (*BillingBudgetsBudgetSpec) DeepCopy

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

func (*BillingBudgetsBudgetSpec) DeepCopyInto

func (in *BillingBudgetsBudgetSpec) DeepCopyInto(out *BillingBudgetsBudgetSpec)

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

type BillingBudgetsBudgetStatus

type BillingBudgetsBudgetStatus struct {
	/* Conditions represent the latest available observations of the
	   BillingBudgetsBudget's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`
	/* Optional. Etag to validate that the object is unchanged for a read-modify-write operation. An empty etag will cause an update to overwrite other changes. */
	// +optional
	Etag *string `json:"etag,omitempty"`

	/* ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. */
	// +optional
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`
}

func (*BillingBudgetsBudgetStatus) DeepCopy

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

func (*BillingBudgetsBudgetStatus) DeepCopyInto

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

type BudgetAllUpdatesRule

type BudgetAllUpdatesRule struct {
	/* Optional. When set to true, disables default notifications sent when a threshold is exceeded. Default notifications are sent to those with Billing Account Administrator and Billing Account User IAM roles for the target account. */
	// +optional
	DisableDefaultIamRecipients *bool `json:"disableDefaultIamRecipients,omitempty"`

	// +optional
	MonitoringNotificationChannels []v1alpha1.ResourceRef `json:"monitoringNotificationChannels,omitempty"`

	// +optional
	PubsubTopicRef *v1alpha1.ResourceRef `json:"pubsubTopicRef,omitempty"`

	/* Optional. Required when NotificationsRule.pubsub_topic is set. The schema version of the notification sent to NotificationsRule.pubsub_topic. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format. */
	// +optional
	SchemaVersion *string `json:"schemaVersion,omitempty"`
}

func (*BudgetAllUpdatesRule) DeepCopy

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

func (*BudgetAllUpdatesRule) DeepCopyInto

func (in *BudgetAllUpdatesRule) DeepCopyInto(out *BudgetAllUpdatesRule)

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

type BudgetAmount

type BudgetAmount struct {
	/* Use the last period's actual spend as the budget for the present period. LastPeriodAmount can only be set when the budget's time period is a . */
	// +optional
	LastPeriodAmount *BudgetLastPeriodAmount `json:"lastPeriodAmount,omitempty"`

	/* A specified amount to use as the budget. `currency_code` is optional. If specified when creating a budget, it must match the currency of the billing account. If specified when updating a budget, it must match the currency_code of the existing budget. The `currency_code` is provided on output. */
	// +optional
	SpecifiedAmount *BudgetSpecifiedAmount `json:"specifiedAmount,omitempty"`
}

func (*BudgetAmount) DeepCopy

func (in *BudgetAmount) DeepCopy() *BudgetAmount

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

func (*BudgetAmount) DeepCopyInto

func (in *BudgetAmount) DeepCopyInto(out *BudgetAmount)

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

type BudgetBudgetFilter

type BudgetBudgetFilter struct {
	/* Optional. Specifies to track usage for recurring calendar period. For example, assume that CalendarPeriod.QUARTER is set. The budget will track usage from April 1 to June 30, when the current calendar month is April, May, June. After that, it will track usage from July 1 to September 30 when the current calendar month is July, August, September, so on. Possible values: CALENDAR_PERIOD_UNSPECIFIED, MONTH, QUARTER, YEAR */
	// +optional
	CalendarPeriod *string `json:"calendarPeriod,omitempty"`

	/* Optional. If Filter.credit_types_treatment is INCLUDE_SPECIFIED_CREDITS, this is a list of credit types to be subtracted from gross cost to determine the spend for threshold calculations. See a list of acceptable credit type values. If Filter.credit_types_treatment is not INCLUDE_SPECIFIED_CREDITS, this field must be empty. */
	// +optional
	CreditTypes []string `json:"creditTypes,omitempty"`

	/* Optional. If not set, default behavior is `INCLUDE_ALL_CREDITS`. */
	// +optional
	CreditTypesTreatment *string `json:"creditTypesTreatment,omitempty"`

	/* Optional. Specifies to track usage from any start date (required) to any end date (optional). This time period is static, it does not recur. */
	// +optional
	CustomPeriod *BudgetCustomPeriod `json:"customPeriod,omitempty"`

	/* Optional. A single label and value pair specifying that usage from only this set of labeled resources should be included in the budget. Currently, multiple entries or multiple values per entry are not allowed. If omitted, the report will include all labeled and unlabeled usage. */
	// +optional
	Labels map[string]BudgetLabels `json:"labels,omitempty"`

	// +optional
	Projects []v1alpha1.ResourceRef `json:"projects,omitempty"`

	/* Optional. A set of services of the form `services/{service_id}`, specifying that usage from only this set of services should be included in the budget. If omitted, the report will include usage for all the services. The service names are available through the Catalog API: https://cloud.google.com/billing/v1/how-tos/catalog-api. */
	// +optional
	Services []string `json:"services,omitempty"`

	// +optional
	Subaccounts []v1alpha1.ResourceRef `json:"subaccounts,omitempty"`
}

func (*BudgetBudgetFilter) DeepCopy

func (in *BudgetBudgetFilter) DeepCopy() *BudgetBudgetFilter

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

func (*BudgetBudgetFilter) DeepCopyInto

func (in *BudgetBudgetFilter) DeepCopyInto(out *BudgetBudgetFilter)

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

type BudgetCustomPeriod

type BudgetCustomPeriod struct {
	/* Immutable. Optional. The end date of the time period. Budgets with elapsed end date won't be processed. If unset, specifies to track all usage incurred since the start_date. */
	// +optional
	EndDate *BudgetEndDate `json:"endDate,omitempty"`

	/* Immutable. Required. The start date must be after January 1, 2017. */
	StartDate BudgetStartDate `json:"startDate"`
}

func (*BudgetCustomPeriod) DeepCopy

func (in *BudgetCustomPeriod) DeepCopy() *BudgetCustomPeriod

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

func (*BudgetCustomPeriod) DeepCopyInto

func (in *BudgetCustomPeriod) DeepCopyInto(out *BudgetCustomPeriod)

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

type BudgetEndDate

type BudgetEndDate struct {
	/* Immutable. Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. */
	// +optional
	Day *int64 `json:"day,omitempty"`

	/* Immutable. Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. */
	// +optional
	Month *int64 `json:"month,omitempty"`

	/* Immutable. Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. */
	// +optional
	Year *int64 `json:"year,omitempty"`
}

func (*BudgetEndDate) DeepCopy

func (in *BudgetEndDate) DeepCopy() *BudgetEndDate

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

func (*BudgetEndDate) DeepCopyInto

func (in *BudgetEndDate) DeepCopyInto(out *BudgetEndDate)

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

type BudgetLabels

type BudgetLabels struct {
	/* Immutable. The values of the label */
	// +optional
	Values []string `json:"values,omitempty"`
}

func (*BudgetLabels) DeepCopy

func (in *BudgetLabels) DeepCopy() *BudgetLabels

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

func (*BudgetLabels) DeepCopyInto

func (in *BudgetLabels) DeepCopyInto(out *BudgetLabels)

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

type BudgetLastPeriodAmount

type BudgetLastPeriodAmount struct {
}

func (*BudgetLastPeriodAmount) DeepCopy

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

func (*BudgetLastPeriodAmount) DeepCopyInto

func (in *BudgetLastPeriodAmount) DeepCopyInto(out *BudgetLastPeriodAmount)

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

type BudgetSpecifiedAmount

type BudgetSpecifiedAmount struct {
	/* Immutable. The three-letter currency code defined in ISO 4217. */
	// +optional
	CurrencyCode *string `json:"currencyCode,omitempty"`

	/* Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000. */
	// +optional
	Nanos *int64 `json:"nanos,omitempty"`

	/* The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar. */
	// +optional
	Units *int64 `json:"units,omitempty"`
}

func (*BudgetSpecifiedAmount) DeepCopy

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

func (*BudgetSpecifiedAmount) DeepCopyInto

func (in *BudgetSpecifiedAmount) DeepCopyInto(out *BudgetSpecifiedAmount)

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

type BudgetStartDate

type BudgetStartDate struct {
	/* Immutable. Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. */
	// +optional
	Day *int64 `json:"day,omitempty"`

	/* Immutable. Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. */
	// +optional
	Month *int64 `json:"month,omitempty"`

	/* Immutable. Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. */
	// +optional
	Year *int64 `json:"year,omitempty"`
}

func (*BudgetStartDate) DeepCopy

func (in *BudgetStartDate) DeepCopy() *BudgetStartDate

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

func (*BudgetStartDate) DeepCopyInto

func (in *BudgetStartDate) DeepCopyInto(out *BudgetStartDate)

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

type BudgetThresholdRules

type BudgetThresholdRules struct {
	/* Optional. The type of basis used to determine if spend has passed the threshold. Behavior defaults to CURRENT_SPEND if not set. Possible values: BASIS_UNSPECIFIED, CURRENT_SPEND, FORECASTED_SPEND */
	// +optional
	SpendBasis *string `json:"spendBasis,omitempty"`

	/* Required. Send an alert when this threshold is exceeded. This is a 1.0-based percentage, so 0.5 = 50%. Validation: non-negative number. */
	ThresholdPercent float64 `json:"thresholdPercent"`
}

func (*BudgetThresholdRules) DeepCopy

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

func (*BudgetThresholdRules) DeepCopyInto

func (in *BudgetThresholdRules) DeepCopyInto(out *BudgetThresholdRules)

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