Documentation ¶
Overview ¶
+groupName=billingbudget.google.kubeform.com
Index ¶
- Variables
- func GetDecoder() map[string]jsoniter.ValDecoder
- func GetEncoder() map[string]jsoniter.ValEncoder
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type BillingBudget
- func (in *BillingBudget) DeepCopy() *BillingBudget
- func (in *BillingBudget) DeepCopyInto(out *BillingBudget)
- func (in *BillingBudget) DeepCopyObject() runtime.Object
- func (r *BillingBudget) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *BillingBudget) ValidateCreate() error
- func (r *BillingBudget) ValidateDelete() error
- func (r *BillingBudget) ValidateUpdate(old runtime.Object) error
- type BillingBudgetList
- type BillingBudgetSpec
- type BillingBudgetSpecAllUpdatesRule
- type BillingBudgetSpecAllUpdatesRuleCodec
- type BillingBudgetSpecAmount
- type BillingBudgetSpecAmountCodec
- type BillingBudgetSpecAmountSpecifiedAmount
- type BillingBudgetSpecAmountSpecifiedAmountCodec
- type BillingBudgetSpecBudgetFilter
- type BillingBudgetSpecBudgetFilterCodec
- type BillingBudgetSpecResource
- type BillingBudgetSpecThresholdRules
- type BillingBudgetStatus
Constants ¶
This section is empty.
Variables ¶
var ( // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. SchemeBuilder runtime.SchemeBuilder AddToScheme = localSchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: billingbudget.GroupName, Version: "v1alpha1"}
Functions ¶
func GetDecoder ¶
func GetDecoder() map[string]jsoniter.ValDecoder
func GetEncoder ¶
func GetEncoder() map[string]jsoniter.ValEncoder
func Kind ¶
Kind takes an unqualified kind and returns a Group qualified GroupKind
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type BillingBudget ¶
type BillingBudget struct { metav1.TypeMeta `json:",inline,omitempty"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BillingBudgetSpec `json:"spec,omitempty"` Status BillingBudgetStatus `json:"status,omitempty"` }
func (*BillingBudget) DeepCopy ¶
func (in *BillingBudget) DeepCopy() *BillingBudget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudget.
func (*BillingBudget) DeepCopyInto ¶
func (in *BillingBudget) DeepCopyInto(out *BillingBudget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BillingBudget) DeepCopyObject ¶
func (in *BillingBudget) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*BillingBudget) SetupWebhookWithManager ¶
func (r *BillingBudget) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*BillingBudget) ValidateCreate ¶
func (r *BillingBudget) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*BillingBudget) ValidateDelete ¶
func (r *BillingBudget) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*BillingBudget) ValidateUpdate ¶
func (r *BillingBudget) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type BillingBudgetList ¶
type BillingBudgetList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // Items is a list of BillingBudget CRD objects Items []BillingBudget `json:"items,omitempty"` }
BillingBudgetList is a list of BillingBudgets
func (*BillingBudgetList) DeepCopy ¶
func (in *BillingBudgetList) DeepCopy() *BillingBudgetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetList.
func (*BillingBudgetList) DeepCopyInto ¶
func (in *BillingBudgetList) DeepCopyInto(out *BillingBudgetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BillingBudgetList) DeepCopyObject ¶
func (in *BillingBudgetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BillingBudgetSpec ¶
type BillingBudgetSpec struct { State *BillingBudgetSpecResource `json:"state,omitempty" tf:"-"` Resource BillingBudgetSpecResource `json:"resource" tf:"resource"` UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"` TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"` ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"` BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"` }
func (*BillingBudgetSpec) DeepCopy ¶
func (in *BillingBudgetSpec) DeepCopy() *BillingBudgetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpec.
func (*BillingBudgetSpec) DeepCopyInto ¶
func (in *BillingBudgetSpec) DeepCopyInto(out *BillingBudgetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetSpecAllUpdatesRule ¶
type BillingBudgetSpecAllUpdatesRule struct { // Boolean. When set to true, disables default notifications sent // when a threshold is exceeded. Default recipients are // those with Billing Account Administrators and Billing // Account Users IAM roles for the target account. // +optional DisableDefaultIamRecipients *bool `json:"disableDefaultIamRecipients,omitempty" tf:"disable_default_iam_recipients"` // The full resource name of a monitoring notification // channel in the form // projects/{project_id}/notificationChannels/{channel_id}. // A maximum of 5 channels are allowed. // +optional MonitoringNotificationChannels []string `json:"monitoringNotificationChannels,omitempty" tf:"monitoring_notification_channels"` // The name of the Cloud Pub/Sub topic where budget related // messages will be published, in the form // projects/{project_id}/topics/{topic_id}. Updates are sent // at regular intervals to the topic. // +optional PubsubTopic *string `json:"pubsubTopic,omitempty" tf:"pubsub_topic"` // The schema version of the notification. Only "1.0" is // accepted. It represents the JSON schema as defined in // https://cloud.google.com/billing/docs/how-to/budgets#notification_format. // +optional SchemaVersion *string `json:"schemaVersion,omitempty" tf:"schema_version"` }
func (*BillingBudgetSpecAllUpdatesRule) DeepCopy ¶
func (in *BillingBudgetSpecAllUpdatesRule) DeepCopy() *BillingBudgetSpecAllUpdatesRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpecAllUpdatesRule.
func (*BillingBudgetSpecAllUpdatesRule) DeepCopyInto ¶
func (in *BillingBudgetSpecAllUpdatesRule) DeepCopyInto(out *BillingBudgetSpecAllUpdatesRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetSpecAllUpdatesRuleCodec ¶
type BillingBudgetSpecAllUpdatesRuleCodec struct { }
+k8s:deepcopy-gen=false
func (BillingBudgetSpecAllUpdatesRuleCodec) Decode ¶
func (BillingBudgetSpecAllUpdatesRuleCodec) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator)
func (BillingBudgetSpecAllUpdatesRuleCodec) Encode ¶
func (BillingBudgetSpecAllUpdatesRuleCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)
func (BillingBudgetSpecAllUpdatesRuleCodec) IsEmpty ¶
func (BillingBudgetSpecAllUpdatesRuleCodec) IsEmpty(ptr unsafe.Pointer) bool
type BillingBudgetSpecAmount ¶
type BillingBudgetSpecAmount struct { // Configures a budget amount that is automatically set to 100% of // last period's spend. // Boolean. Set value to true to use. Do not set to false, instead // use the 'specified_amount' block. // +optional LastPeriodAmount *bool `json:"lastPeriodAmount,omitempty" tf:"last_period_amount"` // A specified amount to use as the budget. currencyCode is // optional. If specified, it must match the currency of the // billing account. The currencyCode is provided on output. // +optional SpecifiedAmount *BillingBudgetSpecAmountSpecifiedAmount `json:"specifiedAmount,omitempty" tf:"specified_amount"` }
func (*BillingBudgetSpecAmount) DeepCopy ¶
func (in *BillingBudgetSpecAmount) DeepCopy() *BillingBudgetSpecAmount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpecAmount.
func (*BillingBudgetSpecAmount) DeepCopyInto ¶
func (in *BillingBudgetSpecAmount) DeepCopyInto(out *BillingBudgetSpecAmount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetSpecAmountCodec ¶
type BillingBudgetSpecAmountCodec struct { }
+k8s:deepcopy-gen=false
func (BillingBudgetSpecAmountCodec) Decode ¶
func (BillingBudgetSpecAmountCodec) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator)
func (BillingBudgetSpecAmountCodec) Encode ¶
func (BillingBudgetSpecAmountCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)
func (BillingBudgetSpecAmountCodec) IsEmpty ¶
func (BillingBudgetSpecAmountCodec) IsEmpty(ptr unsafe.Pointer) bool
type BillingBudgetSpecAmountSpecifiedAmount ¶
type BillingBudgetSpecAmountSpecifiedAmount struct { // The 3-letter currency code defined in ISO 4217. // +optional CurrencyCode *string `json:"currencyCode,omitempty" tf:"currency_code"` // 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" tf:"nanos"` // The whole units of the amount. For example if currencyCode // is "USD", then 1 unit is one US dollar. // +optional Units *string `json:"units,omitempty" tf:"units"` }
func (*BillingBudgetSpecAmountSpecifiedAmount) DeepCopy ¶
func (in *BillingBudgetSpecAmountSpecifiedAmount) DeepCopy() *BillingBudgetSpecAmountSpecifiedAmount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpecAmountSpecifiedAmount.
func (*BillingBudgetSpecAmountSpecifiedAmount) DeepCopyInto ¶
func (in *BillingBudgetSpecAmountSpecifiedAmount) DeepCopyInto(out *BillingBudgetSpecAmountSpecifiedAmount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetSpecAmountSpecifiedAmountCodec ¶
type BillingBudgetSpecAmountSpecifiedAmountCodec struct { }
+k8s:deepcopy-gen=false
func (BillingBudgetSpecAmountSpecifiedAmountCodec) Decode ¶
func (BillingBudgetSpecAmountSpecifiedAmountCodec) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator)
func (BillingBudgetSpecAmountSpecifiedAmountCodec) Encode ¶
func (BillingBudgetSpecAmountSpecifiedAmountCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)
func (BillingBudgetSpecAmountSpecifiedAmountCodec) IsEmpty ¶
func (BillingBudgetSpecAmountSpecifiedAmountCodec) IsEmpty(ptr unsafe.Pointer) bool
type BillingBudgetSpecBudgetFilter ¶
type BillingBudgetSpecBudgetFilter struct { // A set of subaccounts of the form billingAccounts/{account_id}, // specifying that usage from only this set of subaccounts should // be included in the budget. If a subaccount is set to the name of // the parent account, usage from the parent account will be included. // If the field is omitted, the report will include usage from the parent // account and all subaccounts, if they exist. // +optional CreditTypes []string `json:"creditTypes,omitempty" tf:"credit_types"` // Specifies how credits should be treated when determining spend // for threshold calculations. Default value: "INCLUDE_ALL_CREDITS" Possible values: ["INCLUDE_ALL_CREDITS", "EXCLUDE_ALL_CREDITS", "INCLUDE_SPECIFIED_CREDITS"] // +optional CreditTypesTreatment *string `json:"creditTypesTreatment,omitempty" tf:"credit_types_treatment"` // A single label and value pair specifying that usage from only // this set of labeled resources should be included in the budget. // +optional Labels *map[string]string `json:"labels,omitempty" tf:"labels"` // A set of projects of the form projects/{project_number}, // specifying that usage from only this set of projects should be // included in the budget. If omitted, the report will include // all usage for the billing account, regardless of which project // the usage occurred on. // +optional Projects []string `json:"projects,omitempty" tf:"projects"` // 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" tf:"services"` // A set of subaccounts of the form billingAccounts/{account_id}, // specifying that usage from only this set of subaccounts should // be included in the budget. If a subaccount is set to the name of // the parent account, usage from the parent account will be included. // If the field is omitted, the report will include usage from the parent // account and all subaccounts, if they exist. // +optional Subaccounts []string `json:"subaccounts,omitempty" tf:"subaccounts"` }
func (*BillingBudgetSpecBudgetFilter) DeepCopy ¶
func (in *BillingBudgetSpecBudgetFilter) DeepCopy() *BillingBudgetSpecBudgetFilter
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpecBudgetFilter.
func (*BillingBudgetSpecBudgetFilter) DeepCopyInto ¶
func (in *BillingBudgetSpecBudgetFilter) DeepCopyInto(out *BillingBudgetSpecBudgetFilter)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetSpecBudgetFilterCodec ¶
type BillingBudgetSpecBudgetFilterCodec struct { }
+k8s:deepcopy-gen=false
func (BillingBudgetSpecBudgetFilterCodec) Decode ¶
func (BillingBudgetSpecBudgetFilterCodec) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator)
func (BillingBudgetSpecBudgetFilterCodec) Encode ¶
func (BillingBudgetSpecBudgetFilterCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)
func (BillingBudgetSpecBudgetFilterCodec) IsEmpty ¶
func (BillingBudgetSpecBudgetFilterCodec) IsEmpty(ptr unsafe.Pointer) bool
type BillingBudgetSpecResource ¶
type BillingBudgetSpecResource struct { Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"` ID string `json:"id,omitempty" tf:"id,omitempty"` // Defines notifications that are sent on every update to the // billing account's spend, regardless of the thresholds defined // using threshold rules. // +optional AllUpdatesRule *BillingBudgetSpecAllUpdatesRule `json:"allUpdatesRule,omitempty" tf:"all_updates_rule"` // The budgeted amount for each usage period. Amount *BillingBudgetSpecAmount `json:"amount" tf:"amount"` // ID of the billing account to set a budget on. BillingAccount *string `json:"billingAccount" tf:"billing_account"` // Filters that define which resources are used to compute the actual // spend against the budget. // +optional BudgetFilter *BillingBudgetSpecBudgetFilter `json:"budgetFilter,omitempty" tf:"budget_filter"` // User data for display name in UI. Must be <= 60 chars. // +optional DisplayName *string `json:"displayName,omitempty" tf:"display_name"` // Resource name of the budget. The resource name // implies the scope of a budget. Values are of the form // billingAccounts/{billingAccountId}/budgets/{budgetId}. // +optional Name *string `json:"name,omitempty" tf:"name"` // Rules that trigger alerts (notifications of thresholds being // crossed) when spend exceeds the specified percentages of the // budget. ThresholdRules []BillingBudgetSpecThresholdRules `json:"thresholdRules" tf:"threshold_rules"` }
func (*BillingBudgetSpecResource) DeepCopy ¶
func (in *BillingBudgetSpecResource) DeepCopy() *BillingBudgetSpecResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpecResource.
func (*BillingBudgetSpecResource) DeepCopyInto ¶
func (in *BillingBudgetSpecResource) DeepCopyInto(out *BillingBudgetSpecResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetSpecThresholdRules ¶
type BillingBudgetSpecThresholdRules struct { // The type of basis used to determine if spend has passed // the threshold. Default value: "CURRENT_SPEND" Possible values: ["CURRENT_SPEND", "FORECASTED_SPEND"] // +optional SpendBasis *string `json:"spendBasis,omitempty" tf:"spend_basis"` // Send an alert when this threshold is exceeded. This is a // 1.0-based percentage, so 0.5 = 50%. Must be >= 0. ThresholdPercent *float64 `json:"thresholdPercent" tf:"threshold_percent"` }
func (*BillingBudgetSpecThresholdRules) DeepCopy ¶
func (in *BillingBudgetSpecThresholdRules) DeepCopy() *BillingBudgetSpecThresholdRules
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetSpecThresholdRules.
func (*BillingBudgetSpecThresholdRules) DeepCopyInto ¶
func (in *BillingBudgetSpecThresholdRules) DeepCopyInto(out *BillingBudgetSpecThresholdRules)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BillingBudgetStatus ¶
type BillingBudgetStatus struct { // Resource generation, which is updated on mutation by the API Server. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // +optional Phase status.Status `json:"phase,omitempty"` // +optional Conditions []kmapi.Condition `json:"conditions,omitempty"` }
func (*BillingBudgetStatus) DeepCopy ¶
func (in *BillingBudgetStatus) DeepCopy() *BillingBudgetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BillingBudgetStatus.
func (*BillingBudgetStatus) DeepCopyInto ¶
func (in *BillingBudgetStatus) DeepCopyInto(out *BillingBudgetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.