aws_budgets_budget

package
v5.45.0 Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Args

type Args struct {
	// AccountId: string, optional
	AccountId terra.StringValue `hcl:"account_id,attr"`
	// BudgetType: string, required
	BudgetType terra.StringValue `hcl:"budget_type,attr" validate:"required"`
	// CostFilters: map of string, optional
	CostFilters terra.MapValue[terra.StringValue] `hcl:"cost_filters,attr"`
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// LimitAmount: string, optional
	LimitAmount terra.StringValue `hcl:"limit_amount,attr"`
	// LimitUnit: string, optional
	LimitUnit terra.StringValue `hcl:"limit_unit,attr"`
	// Name: string, optional
	Name terra.StringValue `hcl:"name,attr"`
	// NamePrefix: string, optional
	NamePrefix terra.StringValue `hcl:"name_prefix,attr"`
	// TimePeriodEnd: string, optional
	TimePeriodEnd terra.StringValue `hcl:"time_period_end,attr"`
	// TimePeriodStart: string, optional
	TimePeriodStart terra.StringValue `hcl:"time_period_start,attr"`
	// TimeUnit: string, required
	TimeUnit terra.StringValue `hcl:"time_unit,attr" validate:"required"`
	// AutoAdjustData: optional
	AutoAdjustData *AutoAdjustData `hcl:"auto_adjust_data,block"`
	// CostFilter: min=0
	CostFilter []CostFilter `hcl:"cost_filter,block" validate:"min=0"`
	// CostTypes: optional
	CostTypes *CostTypes `hcl:"cost_types,block"`
	// Notification: min=0
	Notification []Notification `hcl:"notification,block" validate:"min=0"`
	// PlannedLimit: min=0
	PlannedLimit []PlannedLimit `hcl:"planned_limit,block" validate:"min=0"`
}

Args contains the configurations for aws_budgets_budget.

type AutoAdjustData

type AutoAdjustData struct {
	// AutoAdjustType: string, required
	AutoAdjustType terra.StringValue `hcl:"auto_adjust_type,attr" validate:"required"`
	// AutoAdjustDataHistoricalOptions: optional
	HistoricalOptions *AutoAdjustDataHistoricalOptions `hcl:"historical_options,block"`
}

type AutoAdjustDataAttributes

type AutoAdjustDataAttributes struct {
	// contains filtered or unexported fields
}

func (AutoAdjustDataAttributes) AutoAdjustType

func (aad AutoAdjustDataAttributes) AutoAdjustType() terra.StringValue

func (AutoAdjustDataAttributes) HistoricalOptions

func (AutoAdjustDataAttributes) InternalRef

func (aad AutoAdjustDataAttributes) InternalRef() (terra.Reference, error)

func (AutoAdjustDataAttributes) InternalTokens

func (aad AutoAdjustDataAttributes) InternalTokens() (hclwrite.Tokens, error)

func (AutoAdjustDataAttributes) InternalWithRef

func (AutoAdjustDataAttributes) LastAutoAdjustTime

func (aad AutoAdjustDataAttributes) LastAutoAdjustTime() terra.StringValue

type AutoAdjustDataHistoricalOptions

type AutoAdjustDataHistoricalOptions struct {
	// BudgetAdjustmentPeriod: number, required
	BudgetAdjustmentPeriod terra.NumberValue `hcl:"budget_adjustment_period,attr" validate:"required"`
}

type AutoAdjustDataHistoricalOptionsAttributes

type AutoAdjustDataHistoricalOptionsAttributes struct {
	// contains filtered or unexported fields
}

func (AutoAdjustDataHistoricalOptionsAttributes) BudgetAdjustmentPeriod

func (ho AutoAdjustDataHistoricalOptionsAttributes) BudgetAdjustmentPeriod() terra.NumberValue

func (AutoAdjustDataHistoricalOptionsAttributes) InternalRef

func (AutoAdjustDataHistoricalOptionsAttributes) InternalTokens

func (AutoAdjustDataHistoricalOptionsAttributes) InternalWithRef

func (AutoAdjustDataHistoricalOptionsAttributes) LookbackAvailablePeriods

func (ho AutoAdjustDataHistoricalOptionsAttributes) LookbackAvailablePeriods() terra.NumberValue

type AutoAdjustDataHistoricalOptionsState

type AutoAdjustDataHistoricalOptionsState struct {
	BudgetAdjustmentPeriod   float64 `json:"budget_adjustment_period"`
	LookbackAvailablePeriods float64 `json:"lookback_available_periods"`
}

type AutoAdjustDataState

type AutoAdjustDataState struct {
	AutoAdjustType     string                                 `json:"auto_adjust_type"`
	LastAutoAdjustTime string                                 `json:"last_auto_adjust_time"`
	HistoricalOptions  []AutoAdjustDataHistoricalOptionsState `json:"historical_options"`
}

type CostFilter

type CostFilter struct {
	// Name: string, required
	Name terra.StringValue `hcl:"name,attr" validate:"required"`
	// Values: list of string, required
	Values terra.ListValue[terra.StringValue] `hcl:"values,attr" validate:"required"`
}

type CostFilterAttributes

type CostFilterAttributes struct {
	// contains filtered or unexported fields
}

func (CostFilterAttributes) InternalRef

func (cf CostFilterAttributes) InternalRef() (terra.Reference, error)

func (CostFilterAttributes) InternalTokens

func (cf CostFilterAttributes) InternalTokens() (hclwrite.Tokens, error)

func (CostFilterAttributes) InternalWithRef

func (cf CostFilterAttributes) InternalWithRef(ref terra.Reference) CostFilterAttributes

func (CostFilterAttributes) Name

func (CostFilterAttributes) Values

type CostFilterState

type CostFilterState struct {
	Name   string   `json:"name"`
	Values []string `json:"values"`
}

type CostTypes

type CostTypes struct {
	// IncludeCredit: bool, optional
	IncludeCredit terra.BoolValue `hcl:"include_credit,attr"`
	// IncludeDiscount: bool, optional
	IncludeDiscount terra.BoolValue `hcl:"include_discount,attr"`
	// IncludeOtherSubscription: bool, optional
	IncludeOtherSubscription terra.BoolValue `hcl:"include_other_subscription,attr"`
	// IncludeRecurring: bool, optional
	IncludeRecurring terra.BoolValue `hcl:"include_recurring,attr"`
	// IncludeRefund: bool, optional
	IncludeRefund terra.BoolValue `hcl:"include_refund,attr"`
	// IncludeSubscription: bool, optional
	IncludeSubscription terra.BoolValue `hcl:"include_subscription,attr"`
	// IncludeSupport: bool, optional
	IncludeSupport terra.BoolValue `hcl:"include_support,attr"`
	// IncludeTax: bool, optional
	IncludeTax terra.BoolValue `hcl:"include_tax,attr"`
	// IncludeUpfront: bool, optional
	IncludeUpfront terra.BoolValue `hcl:"include_upfront,attr"`
	// UseAmortized: bool, optional
	UseAmortized terra.BoolValue `hcl:"use_amortized,attr"`
	// UseBlended: bool, optional
	UseBlended terra.BoolValue `hcl:"use_blended,attr"`
}

type CostTypesAttributes

type CostTypesAttributes struct {
	// contains filtered or unexported fields
}

func (CostTypesAttributes) IncludeCredit

func (ct CostTypesAttributes) IncludeCredit() terra.BoolValue

func (CostTypesAttributes) IncludeDiscount

func (ct CostTypesAttributes) IncludeDiscount() terra.BoolValue

func (CostTypesAttributes) IncludeOtherSubscription

func (ct CostTypesAttributes) IncludeOtherSubscription() terra.BoolValue

func (CostTypesAttributes) IncludeRecurring

func (ct CostTypesAttributes) IncludeRecurring() terra.BoolValue

func (CostTypesAttributes) IncludeRefund

func (ct CostTypesAttributes) IncludeRefund() terra.BoolValue

func (CostTypesAttributes) IncludeSubscription

func (ct CostTypesAttributes) IncludeSubscription() terra.BoolValue

func (CostTypesAttributes) IncludeSupport

func (ct CostTypesAttributes) IncludeSupport() terra.BoolValue

func (CostTypesAttributes) IncludeTax

func (ct CostTypesAttributes) IncludeTax() terra.BoolValue

func (CostTypesAttributes) IncludeUpfront

func (ct CostTypesAttributes) IncludeUpfront() terra.BoolValue

func (CostTypesAttributes) InternalRef

func (ct CostTypesAttributes) InternalRef() (terra.Reference, error)

func (CostTypesAttributes) InternalTokens

func (ct CostTypesAttributes) InternalTokens() (hclwrite.Tokens, error)

func (CostTypesAttributes) InternalWithRef

func (ct CostTypesAttributes) InternalWithRef(ref terra.Reference) CostTypesAttributes

func (CostTypesAttributes) UseAmortized

func (ct CostTypesAttributes) UseAmortized() terra.BoolValue

func (CostTypesAttributes) UseBlended

func (ct CostTypesAttributes) UseBlended() terra.BoolValue

type CostTypesState

type CostTypesState struct {
	IncludeCredit            bool `json:"include_credit"`
	IncludeDiscount          bool `json:"include_discount"`
	IncludeOtherSubscription bool `json:"include_other_subscription"`
	IncludeRecurring         bool `json:"include_recurring"`
	IncludeRefund            bool `json:"include_refund"`
	IncludeSubscription      bool `json:"include_subscription"`
	IncludeSupport           bool `json:"include_support"`
	IncludeTax               bool `json:"include_tax"`
	IncludeUpfront           bool `json:"include_upfront"`
	UseAmortized             bool `json:"use_amortized"`
	UseBlended               bool `json:"use_blended"`
}

type Notification

type Notification struct {
	// ComparisonOperator: string, required
	ComparisonOperator terra.StringValue `hcl:"comparison_operator,attr" validate:"required"`
	// NotificationType: string, required
	NotificationType terra.StringValue `hcl:"notification_type,attr" validate:"required"`
	// SubscriberEmailAddresses: set of string, optional
	SubscriberEmailAddresses terra.SetValue[terra.StringValue] `hcl:"subscriber_email_addresses,attr"`
	// SubscriberSnsTopicArns: set of string, optional
	SubscriberSnsTopicArns terra.SetValue[terra.StringValue] `hcl:"subscriber_sns_topic_arns,attr"`
	// Threshold: number, required
	Threshold terra.NumberValue `hcl:"threshold,attr" validate:"required"`
	// ThresholdType: string, required
	ThresholdType terra.StringValue `hcl:"threshold_type,attr" validate:"required"`
}

type NotificationAttributes

type NotificationAttributes struct {
	// contains filtered or unexported fields
}

func (NotificationAttributes) ComparisonOperator

func (n NotificationAttributes) ComparisonOperator() terra.StringValue

func (NotificationAttributes) InternalRef

func (n NotificationAttributes) InternalRef() (terra.Reference, error)

func (NotificationAttributes) InternalTokens

func (n NotificationAttributes) InternalTokens() (hclwrite.Tokens, error)

func (NotificationAttributes) InternalWithRef

func (NotificationAttributes) NotificationType

func (n NotificationAttributes) NotificationType() terra.StringValue

func (NotificationAttributes) SubscriberEmailAddresses

func (n NotificationAttributes) SubscriberEmailAddresses() terra.SetValue[terra.StringValue]

func (NotificationAttributes) SubscriberSnsTopicArns

func (n NotificationAttributes) SubscriberSnsTopicArns() terra.SetValue[terra.StringValue]

func (NotificationAttributes) Threshold

func (NotificationAttributes) ThresholdType

func (n NotificationAttributes) ThresholdType() terra.StringValue

type NotificationState

type NotificationState struct {
	ComparisonOperator       string   `json:"comparison_operator"`
	NotificationType         string   `json:"notification_type"`
	SubscriberEmailAddresses []string `json:"subscriber_email_addresses"`
	SubscriberSnsTopicArns   []string `json:"subscriber_sns_topic_arns"`
	Threshold                float64  `json:"threshold"`
	ThresholdType            string   `json:"threshold_type"`
}

type PlannedLimit

type PlannedLimit struct {
	// Amount: string, required
	Amount terra.StringValue `hcl:"amount,attr" validate:"required"`
	// StartTime: string, required
	StartTime terra.StringValue `hcl:"start_time,attr" validate:"required"`
	// Unit: string, required
	Unit terra.StringValue `hcl:"unit,attr" validate:"required"`
}

type PlannedLimitAttributes

type PlannedLimitAttributes struct {
	// contains filtered or unexported fields
}

func (PlannedLimitAttributes) Amount

func (PlannedLimitAttributes) InternalRef

func (pl PlannedLimitAttributes) InternalRef() (terra.Reference, error)

func (PlannedLimitAttributes) InternalTokens

func (pl PlannedLimitAttributes) InternalTokens() (hclwrite.Tokens, error)

func (PlannedLimitAttributes) InternalWithRef

func (PlannedLimitAttributes) StartTime

func (pl PlannedLimitAttributes) StartTime() terra.StringValue

func (PlannedLimitAttributes) Unit

type PlannedLimitState

type PlannedLimitState struct {
	Amount    string `json:"amount"`
	StartTime string `json:"start_time"`
	Unit      string `json:"unit"`
}

type Resource

type Resource struct {
	Name string
	Args Args

	DependsOn terra.Dependencies
	Lifecycle *terra.Lifecycle
	// contains filtered or unexported fields
}

Resource represents the Terraform resource aws_budgets_budget.

func New

func New(name string, args Args) *Resource

New creates a new instance of Resource.

func (*Resource) Attributes

func (abb *Resource) Attributes() awsBudgetsBudgetAttributes

Attributes returns the attributes for Resource.

func (*Resource) Configuration

func (abb *Resource) Configuration() interface{}

Configuration returns the configuration (args) for Resource.

func (*Resource) DependOn

func (abb *Resource) DependOn() terra.Reference

DependOn is used for other resources to depend on Resource.

func (*Resource) Dependencies

func (abb *Resource) Dependencies() terra.Dependencies

Dependencies returns the list of resources Resource depends_on.

func (*Resource) ImportState

func (abb *Resource) ImportState(state io.Reader) error

ImportState imports the given attribute values into Resource's state.

func (*Resource) LifecycleManagement

func (abb *Resource) LifecycleManagement() *terra.Lifecycle

LifecycleManagement returns the lifecycle block for Resource.

func (*Resource) LocalName

func (abb *Resource) LocalName() string

LocalName returns the local name for Resource.

func (*Resource) State

func (abb *Resource) State() (*awsBudgetsBudgetState, bool)

State returns the state and a bool indicating if Resource has state.

func (*Resource) StateMust

func (abb *Resource) StateMust() *awsBudgetsBudgetState

StateMust returns the state for Resource. Panics if the state is nil.

func (*Resource) Type

func (abb *Resource) Type() string

Type returns the Terraform object type for Resource.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL