billing

package
v3.10.1 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountIamBinding

type AccountIamBinding struct {
	pulumi.CustomResourceState

	// The billing account id.
	BillingAccountId pulumi.StringOutput                 `pulumi:"billingAccountId"`
	Condition        AccountIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the billing account's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// A list of users that the role should apply to. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding
	Members pulumi.StringArrayOutput `pulumi:"members"`
	// The role that should be applied.
	Role pulumi.StringOutput `pulumi:"role"`
}

Allows creation and management of a single binding within IAM policy for an existing Google Cloud Platform Billing Account.

> **Note:** This resource __must not__ be used in conjunction with

`billing.AccountIamMember` for the __same role__ or they will fight over
what your policy should be.

> **Note:** On create, this resource will overwrite members of any existing roles.

Use `pulumi import` and inspect the output to ensure
your existing members are preserved.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v3/go/gcp/billing"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		binding, err := billing.NewAccountIamBinding(ctx, "binding", &billing.AccountIamBindingArgs{
			BillingAccountId: pulumi.String("00AA00-000AAA-00AA0A"),
			Members: pulumi.StringArray{
				pulumi.String("user:alice@gmail.com"),
			},
			Role: pulumi.String("roles/billing.viewer"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAccountIamBinding

func GetAccountIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountIamBindingState, opts ...pulumi.ResourceOption) (*AccountIamBinding, error)

GetAccountIamBinding gets an existing AccountIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccountIamBinding

func NewAccountIamBinding(ctx *pulumi.Context,
	name string, args *AccountIamBindingArgs, opts ...pulumi.ResourceOption) (*AccountIamBinding, error)

NewAccountIamBinding registers a new resource with the given unique name, arguments, and options.

type AccountIamBindingArgs

type AccountIamBindingArgs struct {
	// The billing account id.
	BillingAccountId pulumi.StringInput
	Condition        AccountIamBindingConditionPtrInput
	// A list of users that the role should apply to. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding
	Members pulumi.StringArrayInput
	// The role that should be applied.
	Role pulumi.StringInput
}

The set of arguments for constructing a AccountIamBinding resource.

func (AccountIamBindingArgs) ElementType

func (AccountIamBindingArgs) ElementType() reflect.Type

type AccountIamBindingCondition

type AccountIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type AccountIamBindingConditionArgs

type AccountIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (AccountIamBindingConditionArgs) ElementType

func (AccountIamBindingConditionArgs) ToAccountIamBindingConditionOutput

func (i AccountIamBindingConditionArgs) ToAccountIamBindingConditionOutput() AccountIamBindingConditionOutput

func (AccountIamBindingConditionArgs) ToAccountIamBindingConditionOutputWithContext

func (i AccountIamBindingConditionArgs) ToAccountIamBindingConditionOutputWithContext(ctx context.Context) AccountIamBindingConditionOutput

func (AccountIamBindingConditionArgs) ToAccountIamBindingConditionPtrOutput

func (i AccountIamBindingConditionArgs) ToAccountIamBindingConditionPtrOutput() AccountIamBindingConditionPtrOutput

func (AccountIamBindingConditionArgs) ToAccountIamBindingConditionPtrOutputWithContext

func (i AccountIamBindingConditionArgs) ToAccountIamBindingConditionPtrOutputWithContext(ctx context.Context) AccountIamBindingConditionPtrOutput

type AccountIamBindingConditionInput

type AccountIamBindingConditionInput interface {
	pulumi.Input

	ToAccountIamBindingConditionOutput() AccountIamBindingConditionOutput
	ToAccountIamBindingConditionOutputWithContext(context.Context) AccountIamBindingConditionOutput
}

AccountIamBindingConditionInput is an input type that accepts AccountIamBindingConditionArgs and AccountIamBindingConditionOutput values. You can construct a concrete instance of `AccountIamBindingConditionInput` via:

AccountIamBindingConditionArgs{...}

type AccountIamBindingConditionOutput

type AccountIamBindingConditionOutput struct{ *pulumi.OutputState }

func (AccountIamBindingConditionOutput) Description

func (AccountIamBindingConditionOutput) ElementType

func (AccountIamBindingConditionOutput) Expression

func (AccountIamBindingConditionOutput) Title

func (AccountIamBindingConditionOutput) ToAccountIamBindingConditionOutput

func (o AccountIamBindingConditionOutput) ToAccountIamBindingConditionOutput() AccountIamBindingConditionOutput

func (AccountIamBindingConditionOutput) ToAccountIamBindingConditionOutputWithContext

func (o AccountIamBindingConditionOutput) ToAccountIamBindingConditionOutputWithContext(ctx context.Context) AccountIamBindingConditionOutput

func (AccountIamBindingConditionOutput) ToAccountIamBindingConditionPtrOutput

func (o AccountIamBindingConditionOutput) ToAccountIamBindingConditionPtrOutput() AccountIamBindingConditionPtrOutput

func (AccountIamBindingConditionOutput) ToAccountIamBindingConditionPtrOutputWithContext

func (o AccountIamBindingConditionOutput) ToAccountIamBindingConditionPtrOutputWithContext(ctx context.Context) AccountIamBindingConditionPtrOutput

type AccountIamBindingConditionPtrInput

type AccountIamBindingConditionPtrInput interface {
	pulumi.Input

	ToAccountIamBindingConditionPtrOutput() AccountIamBindingConditionPtrOutput
	ToAccountIamBindingConditionPtrOutputWithContext(context.Context) AccountIamBindingConditionPtrOutput
}

AccountIamBindingConditionPtrInput is an input type that accepts AccountIamBindingConditionArgs, AccountIamBindingConditionPtr and AccountIamBindingConditionPtrOutput values. You can construct a concrete instance of `AccountIamBindingConditionPtrInput` via:

		 AccountIamBindingConditionArgs{...}

 or:

		 nil

type AccountIamBindingConditionPtrOutput

type AccountIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (AccountIamBindingConditionPtrOutput) Description

func (AccountIamBindingConditionPtrOutput) Elem

func (AccountIamBindingConditionPtrOutput) ElementType

func (AccountIamBindingConditionPtrOutput) Expression

func (AccountIamBindingConditionPtrOutput) Title

func (AccountIamBindingConditionPtrOutput) ToAccountIamBindingConditionPtrOutput

func (o AccountIamBindingConditionPtrOutput) ToAccountIamBindingConditionPtrOutput() AccountIamBindingConditionPtrOutput

func (AccountIamBindingConditionPtrOutput) ToAccountIamBindingConditionPtrOutputWithContext

func (o AccountIamBindingConditionPtrOutput) ToAccountIamBindingConditionPtrOutputWithContext(ctx context.Context) AccountIamBindingConditionPtrOutput

type AccountIamBindingState

type AccountIamBindingState struct {
	// The billing account id.
	BillingAccountId pulumi.StringPtrInput
	Condition        AccountIamBindingConditionPtrInput
	// (Computed) The etag of the billing account's IAM policy.
	Etag pulumi.StringPtrInput
	// A list of users that the role should apply to. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding
	Members pulumi.StringArrayInput
	// The role that should be applied.
	Role pulumi.StringPtrInput
}

func (AccountIamBindingState) ElementType

func (AccountIamBindingState) ElementType() reflect.Type

type AccountIamMember

type AccountIamMember struct {
	pulumi.CustomResourceState

	// The billing account id.
	BillingAccountId pulumi.StringOutput                `pulumi:"billingAccountId"`
	Condition        AccountIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the billing account's IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// The user that the role should apply to. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding
	Member pulumi.StringOutput `pulumi:"member"`
	// The role that should be applied.
	Role pulumi.StringOutput `pulumi:"role"`
}

Allows creation and management of a single member for a single binding within the IAM policy for an existing Google Cloud Platform Billing Account.

> **Note:** This resource __must not__ be used in conjunction with

`billing.AccountIamBinding` for the __same role__ or they will fight over
what your policy should be.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v3/go/gcp/billing"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		binding, err := billing.NewAccountIamMember(ctx, "binding", &billing.AccountIamMemberArgs{
			BillingAccountId: pulumi.String("00AA00-000AAA-00AA0A"),
			Member:           pulumi.String("user:alice@gmail.com"),
			Role:             pulumi.String("roles/billing.viewer"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAccountIamMember

func GetAccountIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountIamMemberState, opts ...pulumi.ResourceOption) (*AccountIamMember, error)

GetAccountIamMember gets an existing AccountIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccountIamMember

func NewAccountIamMember(ctx *pulumi.Context,
	name string, args *AccountIamMemberArgs, opts ...pulumi.ResourceOption) (*AccountIamMember, error)

NewAccountIamMember registers a new resource with the given unique name, arguments, and options.

type AccountIamMemberArgs

type AccountIamMemberArgs struct {
	// The billing account id.
	BillingAccountId pulumi.StringInput
	Condition        AccountIamMemberConditionPtrInput
	// The user that the role should apply to. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding
	Member pulumi.StringInput
	// The role that should be applied.
	Role pulumi.StringInput
}

The set of arguments for constructing a AccountIamMember resource.

func (AccountIamMemberArgs) ElementType

func (AccountIamMemberArgs) ElementType() reflect.Type

type AccountIamMemberCondition

type AccountIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type AccountIamMemberConditionArgs

type AccountIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (AccountIamMemberConditionArgs) ElementType

func (AccountIamMemberConditionArgs) ToAccountIamMemberConditionOutput

func (i AccountIamMemberConditionArgs) ToAccountIamMemberConditionOutput() AccountIamMemberConditionOutput

func (AccountIamMemberConditionArgs) ToAccountIamMemberConditionOutputWithContext

func (i AccountIamMemberConditionArgs) ToAccountIamMemberConditionOutputWithContext(ctx context.Context) AccountIamMemberConditionOutput

func (AccountIamMemberConditionArgs) ToAccountIamMemberConditionPtrOutput

func (i AccountIamMemberConditionArgs) ToAccountIamMemberConditionPtrOutput() AccountIamMemberConditionPtrOutput

func (AccountIamMemberConditionArgs) ToAccountIamMemberConditionPtrOutputWithContext

func (i AccountIamMemberConditionArgs) ToAccountIamMemberConditionPtrOutputWithContext(ctx context.Context) AccountIamMemberConditionPtrOutput

type AccountIamMemberConditionInput

type AccountIamMemberConditionInput interface {
	pulumi.Input

	ToAccountIamMemberConditionOutput() AccountIamMemberConditionOutput
	ToAccountIamMemberConditionOutputWithContext(context.Context) AccountIamMemberConditionOutput
}

AccountIamMemberConditionInput is an input type that accepts AccountIamMemberConditionArgs and AccountIamMemberConditionOutput values. You can construct a concrete instance of `AccountIamMemberConditionInput` via:

AccountIamMemberConditionArgs{...}

type AccountIamMemberConditionOutput

type AccountIamMemberConditionOutput struct{ *pulumi.OutputState }

func (AccountIamMemberConditionOutput) Description

func (AccountIamMemberConditionOutput) ElementType

func (AccountIamMemberConditionOutput) Expression

func (AccountIamMemberConditionOutput) Title

func (AccountIamMemberConditionOutput) ToAccountIamMemberConditionOutput

func (o AccountIamMemberConditionOutput) ToAccountIamMemberConditionOutput() AccountIamMemberConditionOutput

func (AccountIamMemberConditionOutput) ToAccountIamMemberConditionOutputWithContext

func (o AccountIamMemberConditionOutput) ToAccountIamMemberConditionOutputWithContext(ctx context.Context) AccountIamMemberConditionOutput

func (AccountIamMemberConditionOutput) ToAccountIamMemberConditionPtrOutput

func (o AccountIamMemberConditionOutput) ToAccountIamMemberConditionPtrOutput() AccountIamMemberConditionPtrOutput

func (AccountIamMemberConditionOutput) ToAccountIamMemberConditionPtrOutputWithContext

func (o AccountIamMemberConditionOutput) ToAccountIamMemberConditionPtrOutputWithContext(ctx context.Context) AccountIamMemberConditionPtrOutput

type AccountIamMemberConditionPtrInput

type AccountIamMemberConditionPtrInput interface {
	pulumi.Input

	ToAccountIamMemberConditionPtrOutput() AccountIamMemberConditionPtrOutput
	ToAccountIamMemberConditionPtrOutputWithContext(context.Context) AccountIamMemberConditionPtrOutput
}

AccountIamMemberConditionPtrInput is an input type that accepts AccountIamMemberConditionArgs, AccountIamMemberConditionPtr and AccountIamMemberConditionPtrOutput values. You can construct a concrete instance of `AccountIamMemberConditionPtrInput` via:

		 AccountIamMemberConditionArgs{...}

 or:

		 nil

type AccountIamMemberConditionPtrOutput

type AccountIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (AccountIamMemberConditionPtrOutput) Description

func (AccountIamMemberConditionPtrOutput) Elem

func (AccountIamMemberConditionPtrOutput) ElementType

func (AccountIamMemberConditionPtrOutput) Expression

func (AccountIamMemberConditionPtrOutput) Title

func (AccountIamMemberConditionPtrOutput) ToAccountIamMemberConditionPtrOutput

func (o AccountIamMemberConditionPtrOutput) ToAccountIamMemberConditionPtrOutput() AccountIamMemberConditionPtrOutput

func (AccountIamMemberConditionPtrOutput) ToAccountIamMemberConditionPtrOutputWithContext

func (o AccountIamMemberConditionPtrOutput) ToAccountIamMemberConditionPtrOutputWithContext(ctx context.Context) AccountIamMemberConditionPtrOutput

type AccountIamMemberState

type AccountIamMemberState struct {
	// The billing account id.
	BillingAccountId pulumi.StringPtrInput
	Condition        AccountIamMemberConditionPtrInput
	// (Computed) The etag of the billing account's IAM policy.
	Etag pulumi.StringPtrInput
	// The user that the role should apply to. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding
	Member pulumi.StringPtrInput
	// The role that should be applied.
	Role pulumi.StringPtrInput
}

func (AccountIamMemberState) ElementType

func (AccountIamMemberState) ElementType() reflect.Type

type AccountIamPolicy

type AccountIamPolicy struct {
	pulumi.CustomResourceState

	// The billing account id.
	BillingAccountId pulumi.StringOutput `pulumi:"billingAccountId"`
	Etag             pulumi.StringOutput `pulumi:"etag"`
	// The `organizations.getIAMPolicy` data source that represents
	// the IAM policy that will be applied to the billing account. This policy overrides any existing
	// policy applied to the billing account.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
}

Allows management of the entire IAM policy for an existing Google Cloud Platform Billing Account.

> **Warning:** Billing accounts have a default user that can be **overwritten** by use of this resource. The safest alternative is to use multiple `billing.AccountIamBinding`

resources. If you do use this resource, the best way to be sure that you are
not making dangerous changes is to start by importing your existing policy,
and examining the diff very closely.

> **Note:** This resource __must not__ be used in conjunction with

`billing.AccountIamMember` or `billing.AccountIamBinding`
or they will fight over what your policy should be.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v3/go/gcp/billing"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Binding: []map[string]interface{}{
				map[string]interface{}{
					"role": "roles/billing.viewer",
					"members": []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		policy, err := billing.NewAccountIamPolicy(ctx, "policy", &billing.AccountIamPolicyArgs{
			BillingAccountId: pulumi.String("00AA00-000AAA-00AA0A"),
			PolicyData:       pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetAccountIamPolicy

func GetAccountIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountIamPolicyState, opts ...pulumi.ResourceOption) (*AccountIamPolicy, error)

GetAccountIamPolicy gets an existing AccountIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccountIamPolicy

func NewAccountIamPolicy(ctx *pulumi.Context,
	name string, args *AccountIamPolicyArgs, opts ...pulumi.ResourceOption) (*AccountIamPolicy, error)

NewAccountIamPolicy registers a new resource with the given unique name, arguments, and options.

type AccountIamPolicyArgs

type AccountIamPolicyArgs struct {
	// The billing account id.
	BillingAccountId pulumi.StringInput
	// The `organizations.getIAMPolicy` data source that represents
	// the IAM policy that will be applied to the billing account. This policy overrides any existing
	// policy applied to the billing account.
	PolicyData pulumi.StringInput
}

The set of arguments for constructing a AccountIamPolicy resource.

func (AccountIamPolicyArgs) ElementType

func (AccountIamPolicyArgs) ElementType() reflect.Type

type AccountIamPolicyState

type AccountIamPolicyState struct {
	// The billing account id.
	BillingAccountId pulumi.StringPtrInput
	Etag             pulumi.StringPtrInput
	// The `organizations.getIAMPolicy` data source that represents
	// the IAM policy that will be applied to the billing account. This policy overrides any existing
	// policy applied to the billing account.
	PolicyData pulumi.StringPtrInput
}

func (AccountIamPolicyState) ElementType

func (AccountIamPolicyState) ElementType() reflect.Type

type Budget

type Budget struct {
	pulumi.CustomResourceState

	// Defines notifications that are sent on every update to the
	// billing account's spend, regardless of the thresholds defined
	// using threshold rules.  Structure is documented below.
	AllUpdatesRule BudgetAllUpdatesRulePtrOutput `pulumi:"allUpdatesRule"`
	// The budgeted amount for each usage period.  Structure is documented below.
	Amount BudgetAmountOutput `pulumi:"amount"`
	// ID of the billing account to set a budget on.
	BillingAccount pulumi.StringOutput `pulumi:"billingAccount"`
	// Filters that define which resources are used to compute the actual
	// spend against the budget.  Structure is documented below.
	BudgetFilter BudgetBudgetFilterPtrOutput `pulumi:"budgetFilter"`
	// User data for display name in UI. Must be <= 60 chars.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// Resource name of the budget. The resource name implies the scope of a budget. Values are of the form
	// billingAccounts/{billingAccountId}/budgets/{budgetId}.
	Name pulumi.StringOutput `pulumi:"name"`
	// Rules that trigger alerts (notifications of thresholds being
	// crossed) when spend exceeds the specified percentages of the
	// budget.  Structure is documented below.
	ThresholdRules BudgetThresholdRuleArrayOutput `pulumi:"thresholdRules"`
}

Budget configuration for a billing account.

To get more information about Budget, see:

* [API documentation](https://cloud.google.com/billing/docs/reference/budget/rest/v1beta1/billingAccounts.budgets) * How-to Guides

func GetBudget

func GetBudget(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BudgetState, opts ...pulumi.ResourceOption) (*Budget, error)

GetBudget gets an existing Budget resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBudget

func NewBudget(ctx *pulumi.Context,
	name string, args *BudgetArgs, opts ...pulumi.ResourceOption) (*Budget, error)

NewBudget registers a new resource with the given unique name, arguments, and options.

type BudgetAllUpdatesRule

type BudgetAllUpdatesRule struct {
	// 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.
	PubsubTopic string `pulumi:"pubsubTopic"`
	// 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.
	SchemaVersion *string `pulumi:"schemaVersion"`
}

type BudgetAllUpdatesRuleArgs

type BudgetAllUpdatesRuleArgs struct {
	// 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.
	PubsubTopic pulumi.StringInput `pulumi:"pubsubTopic"`
	// 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.
	SchemaVersion pulumi.StringPtrInput `pulumi:"schemaVersion"`
}

func (BudgetAllUpdatesRuleArgs) ElementType

func (BudgetAllUpdatesRuleArgs) ElementType() reflect.Type

func (BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRuleOutput

func (i BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRuleOutput() BudgetAllUpdatesRuleOutput

func (BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRuleOutputWithContext

func (i BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRuleOutputWithContext(ctx context.Context) BudgetAllUpdatesRuleOutput

func (BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRulePtrOutput

func (i BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRulePtrOutput() BudgetAllUpdatesRulePtrOutput

func (BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRulePtrOutputWithContext

func (i BudgetAllUpdatesRuleArgs) ToBudgetAllUpdatesRulePtrOutputWithContext(ctx context.Context) BudgetAllUpdatesRulePtrOutput

type BudgetAllUpdatesRuleInput

type BudgetAllUpdatesRuleInput interface {
	pulumi.Input

	ToBudgetAllUpdatesRuleOutput() BudgetAllUpdatesRuleOutput
	ToBudgetAllUpdatesRuleOutputWithContext(context.Context) BudgetAllUpdatesRuleOutput
}

BudgetAllUpdatesRuleInput is an input type that accepts BudgetAllUpdatesRuleArgs and BudgetAllUpdatesRuleOutput values. You can construct a concrete instance of `BudgetAllUpdatesRuleInput` via:

BudgetAllUpdatesRuleArgs{...}

type BudgetAllUpdatesRuleOutput

type BudgetAllUpdatesRuleOutput struct{ *pulumi.OutputState }

func (BudgetAllUpdatesRuleOutput) ElementType

func (BudgetAllUpdatesRuleOutput) ElementType() reflect.Type

func (BudgetAllUpdatesRuleOutput) PubsubTopic

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.

func (BudgetAllUpdatesRuleOutput) SchemaVersion

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.

func (BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRuleOutput

func (o BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRuleOutput() BudgetAllUpdatesRuleOutput

func (BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRuleOutputWithContext

func (o BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRuleOutputWithContext(ctx context.Context) BudgetAllUpdatesRuleOutput

func (BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRulePtrOutput

func (o BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRulePtrOutput() BudgetAllUpdatesRulePtrOutput

func (BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRulePtrOutputWithContext

func (o BudgetAllUpdatesRuleOutput) ToBudgetAllUpdatesRulePtrOutputWithContext(ctx context.Context) BudgetAllUpdatesRulePtrOutput

type BudgetAllUpdatesRulePtrInput

type BudgetAllUpdatesRulePtrInput interface {
	pulumi.Input

	ToBudgetAllUpdatesRulePtrOutput() BudgetAllUpdatesRulePtrOutput
	ToBudgetAllUpdatesRulePtrOutputWithContext(context.Context) BudgetAllUpdatesRulePtrOutput
}

BudgetAllUpdatesRulePtrInput is an input type that accepts BudgetAllUpdatesRuleArgs, BudgetAllUpdatesRulePtr and BudgetAllUpdatesRulePtrOutput values. You can construct a concrete instance of `BudgetAllUpdatesRulePtrInput` via:

		 BudgetAllUpdatesRuleArgs{...}

 or:

		 nil

type BudgetAllUpdatesRulePtrOutput

type BudgetAllUpdatesRulePtrOutput struct{ *pulumi.OutputState }

func (BudgetAllUpdatesRulePtrOutput) Elem

func (BudgetAllUpdatesRulePtrOutput) ElementType

func (BudgetAllUpdatesRulePtrOutput) PubsubTopic

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.

func (BudgetAllUpdatesRulePtrOutput) SchemaVersion

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.

func (BudgetAllUpdatesRulePtrOutput) ToBudgetAllUpdatesRulePtrOutput

func (o BudgetAllUpdatesRulePtrOutput) ToBudgetAllUpdatesRulePtrOutput() BudgetAllUpdatesRulePtrOutput

func (BudgetAllUpdatesRulePtrOutput) ToBudgetAllUpdatesRulePtrOutputWithContext

func (o BudgetAllUpdatesRulePtrOutput) ToBudgetAllUpdatesRulePtrOutputWithContext(ctx context.Context) BudgetAllUpdatesRulePtrOutput

type BudgetAmount

type BudgetAmount struct {
	// 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.  Structure is documented below.
	SpecifiedAmount BudgetAmountSpecifiedAmount `pulumi:"specifiedAmount"`
}

type BudgetAmountArgs

type BudgetAmountArgs struct {
	// 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.  Structure is documented below.
	SpecifiedAmount BudgetAmountSpecifiedAmountInput `pulumi:"specifiedAmount"`
}

func (BudgetAmountArgs) ElementType

func (BudgetAmountArgs) ElementType() reflect.Type

func (BudgetAmountArgs) ToBudgetAmountOutput

func (i BudgetAmountArgs) ToBudgetAmountOutput() BudgetAmountOutput

func (BudgetAmountArgs) ToBudgetAmountOutputWithContext

func (i BudgetAmountArgs) ToBudgetAmountOutputWithContext(ctx context.Context) BudgetAmountOutput

func (BudgetAmountArgs) ToBudgetAmountPtrOutput

func (i BudgetAmountArgs) ToBudgetAmountPtrOutput() BudgetAmountPtrOutput

func (BudgetAmountArgs) ToBudgetAmountPtrOutputWithContext

func (i BudgetAmountArgs) ToBudgetAmountPtrOutputWithContext(ctx context.Context) BudgetAmountPtrOutput

type BudgetAmountInput

type BudgetAmountInput interface {
	pulumi.Input

	ToBudgetAmountOutput() BudgetAmountOutput
	ToBudgetAmountOutputWithContext(context.Context) BudgetAmountOutput
}

BudgetAmountInput is an input type that accepts BudgetAmountArgs and BudgetAmountOutput values. You can construct a concrete instance of `BudgetAmountInput` via:

BudgetAmountArgs{...}

type BudgetAmountOutput

type BudgetAmountOutput struct{ *pulumi.OutputState }

func (BudgetAmountOutput) ElementType

func (BudgetAmountOutput) ElementType() reflect.Type

func (BudgetAmountOutput) SpecifiedAmount

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. Structure is documented below.

func (BudgetAmountOutput) ToBudgetAmountOutput

func (o BudgetAmountOutput) ToBudgetAmountOutput() BudgetAmountOutput

func (BudgetAmountOutput) ToBudgetAmountOutputWithContext

func (o BudgetAmountOutput) ToBudgetAmountOutputWithContext(ctx context.Context) BudgetAmountOutput

func (BudgetAmountOutput) ToBudgetAmountPtrOutput

func (o BudgetAmountOutput) ToBudgetAmountPtrOutput() BudgetAmountPtrOutput

func (BudgetAmountOutput) ToBudgetAmountPtrOutputWithContext

func (o BudgetAmountOutput) ToBudgetAmountPtrOutputWithContext(ctx context.Context) BudgetAmountPtrOutput

type BudgetAmountPtrInput

type BudgetAmountPtrInput interface {
	pulumi.Input

	ToBudgetAmountPtrOutput() BudgetAmountPtrOutput
	ToBudgetAmountPtrOutputWithContext(context.Context) BudgetAmountPtrOutput
}

BudgetAmountPtrInput is an input type that accepts BudgetAmountArgs, BudgetAmountPtr and BudgetAmountPtrOutput values. You can construct a concrete instance of `BudgetAmountPtrInput` via:

		 BudgetAmountArgs{...}

 or:

		 nil

type BudgetAmountPtrOutput

type BudgetAmountPtrOutput struct{ *pulumi.OutputState }

func (BudgetAmountPtrOutput) Elem

func (BudgetAmountPtrOutput) ElementType

func (BudgetAmountPtrOutput) ElementType() reflect.Type

func (BudgetAmountPtrOutput) SpecifiedAmount

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. Structure is documented below.

func (BudgetAmountPtrOutput) ToBudgetAmountPtrOutput

func (o BudgetAmountPtrOutput) ToBudgetAmountPtrOutput() BudgetAmountPtrOutput

func (BudgetAmountPtrOutput) ToBudgetAmountPtrOutputWithContext

func (o BudgetAmountPtrOutput) ToBudgetAmountPtrOutputWithContext(ctx context.Context) BudgetAmountPtrOutput

type BudgetAmountSpecifiedAmount

type BudgetAmountSpecifiedAmount struct {
	// The 3-letter currency code defined in ISO 4217.
	CurrencyCode *string `pulumi:"currencyCode"`
	// 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.
	Nanos *int `pulumi:"nanos"`
	// The whole units of the amount. For example if currencyCode
	// is "USD", then 1 unit is one US dollar.
	Units *string `pulumi:"units"`
}

type BudgetAmountSpecifiedAmountArgs

type BudgetAmountSpecifiedAmountArgs struct {
	// The 3-letter currency code defined in ISO 4217.
	CurrencyCode pulumi.StringPtrInput `pulumi:"currencyCode"`
	// 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.
	Nanos pulumi.IntPtrInput `pulumi:"nanos"`
	// The whole units of the amount. For example if currencyCode
	// is "USD", then 1 unit is one US dollar.
	Units pulumi.StringPtrInput `pulumi:"units"`
}

func (BudgetAmountSpecifiedAmountArgs) ElementType

func (BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountOutput

func (i BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountOutput() BudgetAmountSpecifiedAmountOutput

func (BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountOutputWithContext

func (i BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountOutputWithContext(ctx context.Context) BudgetAmountSpecifiedAmountOutput

func (BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountPtrOutput added in v3.2.0

func (i BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountPtrOutput() BudgetAmountSpecifiedAmountPtrOutput

func (BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountPtrOutputWithContext added in v3.2.0

func (i BudgetAmountSpecifiedAmountArgs) ToBudgetAmountSpecifiedAmountPtrOutputWithContext(ctx context.Context) BudgetAmountSpecifiedAmountPtrOutput

type BudgetAmountSpecifiedAmountInput

type BudgetAmountSpecifiedAmountInput interface {
	pulumi.Input

	ToBudgetAmountSpecifiedAmountOutput() BudgetAmountSpecifiedAmountOutput
	ToBudgetAmountSpecifiedAmountOutputWithContext(context.Context) BudgetAmountSpecifiedAmountOutput
}

BudgetAmountSpecifiedAmountInput is an input type that accepts BudgetAmountSpecifiedAmountArgs and BudgetAmountSpecifiedAmountOutput values. You can construct a concrete instance of `BudgetAmountSpecifiedAmountInput` via:

BudgetAmountSpecifiedAmountArgs{...}

type BudgetAmountSpecifiedAmountOutput

type BudgetAmountSpecifiedAmountOutput struct{ *pulumi.OutputState }

func (BudgetAmountSpecifiedAmountOutput) CurrencyCode

The 3-letter currency code defined in ISO 4217.

func (BudgetAmountSpecifiedAmountOutput) ElementType

func (BudgetAmountSpecifiedAmountOutput) Nanos

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.

func (BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountOutput

func (o BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountOutput() BudgetAmountSpecifiedAmountOutput

func (BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountOutputWithContext

func (o BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountOutputWithContext(ctx context.Context) BudgetAmountSpecifiedAmountOutput

func (BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountPtrOutput added in v3.2.0

func (o BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountPtrOutput() BudgetAmountSpecifiedAmountPtrOutput

func (BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountPtrOutputWithContext added in v3.2.0

func (o BudgetAmountSpecifiedAmountOutput) ToBudgetAmountSpecifiedAmountPtrOutputWithContext(ctx context.Context) BudgetAmountSpecifiedAmountPtrOutput

func (BudgetAmountSpecifiedAmountOutput) Units

The whole units of the amount. For example if currencyCode is "USD", then 1 unit is one US dollar.

type BudgetAmountSpecifiedAmountPtrInput added in v3.2.0

type BudgetAmountSpecifiedAmountPtrInput interface {
	pulumi.Input

	ToBudgetAmountSpecifiedAmountPtrOutput() BudgetAmountSpecifiedAmountPtrOutput
	ToBudgetAmountSpecifiedAmountPtrOutputWithContext(context.Context) BudgetAmountSpecifiedAmountPtrOutput
}

BudgetAmountSpecifiedAmountPtrInput is an input type that accepts BudgetAmountSpecifiedAmountArgs, BudgetAmountSpecifiedAmountPtr and BudgetAmountSpecifiedAmountPtrOutput values. You can construct a concrete instance of `BudgetAmountSpecifiedAmountPtrInput` via:

		 BudgetAmountSpecifiedAmountArgs{...}

 or:

		 nil

func BudgetAmountSpecifiedAmountPtr added in v3.2.0

type BudgetAmountSpecifiedAmountPtrOutput added in v3.2.0

type BudgetAmountSpecifiedAmountPtrOutput struct{ *pulumi.OutputState }

func (BudgetAmountSpecifiedAmountPtrOutput) CurrencyCode added in v3.2.0

The 3-letter currency code defined in ISO 4217.

func (BudgetAmountSpecifiedAmountPtrOutput) Elem added in v3.2.0

func (BudgetAmountSpecifiedAmountPtrOutput) ElementType added in v3.2.0

func (BudgetAmountSpecifiedAmountPtrOutput) Nanos added in v3.2.0

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.

func (BudgetAmountSpecifiedAmountPtrOutput) ToBudgetAmountSpecifiedAmountPtrOutput added in v3.2.0

func (o BudgetAmountSpecifiedAmountPtrOutput) ToBudgetAmountSpecifiedAmountPtrOutput() BudgetAmountSpecifiedAmountPtrOutput

func (BudgetAmountSpecifiedAmountPtrOutput) ToBudgetAmountSpecifiedAmountPtrOutputWithContext added in v3.2.0

func (o BudgetAmountSpecifiedAmountPtrOutput) ToBudgetAmountSpecifiedAmountPtrOutputWithContext(ctx context.Context) BudgetAmountSpecifiedAmountPtrOutput

func (BudgetAmountSpecifiedAmountPtrOutput) Units added in v3.2.0

The whole units of the amount. For example if currencyCode is "USD", then 1 unit is one US dollar.

type BudgetArgs

type BudgetArgs struct {
	// Defines notifications that are sent on every update to the
	// billing account's spend, regardless of the thresholds defined
	// using threshold rules.  Structure is documented below.
	AllUpdatesRule BudgetAllUpdatesRulePtrInput
	// The budgeted amount for each usage period.  Structure is documented below.
	Amount BudgetAmountInput
	// ID of the billing account to set a budget on.
	BillingAccount pulumi.StringInput
	// Filters that define which resources are used to compute the actual
	// spend against the budget.  Structure is documented below.
	BudgetFilter BudgetBudgetFilterPtrInput
	// User data for display name in UI. Must be <= 60 chars.
	DisplayName pulumi.StringPtrInput
	// Rules that trigger alerts (notifications of thresholds being
	// crossed) when spend exceeds the specified percentages of the
	// budget.  Structure is documented below.
	ThresholdRules BudgetThresholdRuleArrayInput
}

The set of arguments for constructing a Budget resource.

func (BudgetArgs) ElementType

func (BudgetArgs) ElementType() reflect.Type

type BudgetBudgetFilter

type BudgetBudgetFilter struct {
	// Specifies how credits should be treated when determining spend
	// for threshold calculations.
	CreditTypesTreatment *string `pulumi:"creditTypesTreatment"`
	// A set of projects of the form projects/{project_id},
	// 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. Only zero or one project can be
	// specified currently.
	Projects []string `pulumi:"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.
	Services []string `pulumi:"services"`
}

type BudgetBudgetFilterArgs

type BudgetBudgetFilterArgs struct {
	// Specifies how credits should be treated when determining spend
	// for threshold calculations.
	CreditTypesTreatment pulumi.StringPtrInput `pulumi:"creditTypesTreatment"`
	// A set of projects of the form projects/{project_id},
	// 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. Only zero or one project can be
	// specified currently.
	Projects pulumi.StringArrayInput `pulumi:"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.
	Services pulumi.StringArrayInput `pulumi:"services"`
}

func (BudgetBudgetFilterArgs) ElementType

func (BudgetBudgetFilterArgs) ElementType() reflect.Type

func (BudgetBudgetFilterArgs) ToBudgetBudgetFilterOutput

func (i BudgetBudgetFilterArgs) ToBudgetBudgetFilterOutput() BudgetBudgetFilterOutput

func (BudgetBudgetFilterArgs) ToBudgetBudgetFilterOutputWithContext

func (i BudgetBudgetFilterArgs) ToBudgetBudgetFilterOutputWithContext(ctx context.Context) BudgetBudgetFilterOutput

func (BudgetBudgetFilterArgs) ToBudgetBudgetFilterPtrOutput

func (i BudgetBudgetFilterArgs) ToBudgetBudgetFilterPtrOutput() BudgetBudgetFilterPtrOutput

func (BudgetBudgetFilterArgs) ToBudgetBudgetFilterPtrOutputWithContext

func (i BudgetBudgetFilterArgs) ToBudgetBudgetFilterPtrOutputWithContext(ctx context.Context) BudgetBudgetFilterPtrOutput

type BudgetBudgetFilterInput

type BudgetBudgetFilterInput interface {
	pulumi.Input

	ToBudgetBudgetFilterOutput() BudgetBudgetFilterOutput
	ToBudgetBudgetFilterOutputWithContext(context.Context) BudgetBudgetFilterOutput
}

BudgetBudgetFilterInput is an input type that accepts BudgetBudgetFilterArgs and BudgetBudgetFilterOutput values. You can construct a concrete instance of `BudgetBudgetFilterInput` via:

BudgetBudgetFilterArgs{...}

type BudgetBudgetFilterOutput

type BudgetBudgetFilterOutput struct{ *pulumi.OutputState }

func (BudgetBudgetFilterOutput) CreditTypesTreatment

func (o BudgetBudgetFilterOutput) CreditTypesTreatment() pulumi.StringPtrOutput

Specifies how credits should be treated when determining spend for threshold calculations.

func (BudgetBudgetFilterOutput) ElementType

func (BudgetBudgetFilterOutput) ElementType() reflect.Type

func (BudgetBudgetFilterOutput) Projects

A set of projects of the form projects/{project_id}, 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. Only zero or one project can be specified currently.

func (BudgetBudgetFilterOutput) Services

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.

func (BudgetBudgetFilterOutput) ToBudgetBudgetFilterOutput

func (o BudgetBudgetFilterOutput) ToBudgetBudgetFilterOutput() BudgetBudgetFilterOutput

func (BudgetBudgetFilterOutput) ToBudgetBudgetFilterOutputWithContext

func (o BudgetBudgetFilterOutput) ToBudgetBudgetFilterOutputWithContext(ctx context.Context) BudgetBudgetFilterOutput

func (BudgetBudgetFilterOutput) ToBudgetBudgetFilterPtrOutput

func (o BudgetBudgetFilterOutput) ToBudgetBudgetFilterPtrOutput() BudgetBudgetFilterPtrOutput

func (BudgetBudgetFilterOutput) ToBudgetBudgetFilterPtrOutputWithContext

func (o BudgetBudgetFilterOutput) ToBudgetBudgetFilterPtrOutputWithContext(ctx context.Context) BudgetBudgetFilterPtrOutput

type BudgetBudgetFilterPtrInput

type BudgetBudgetFilterPtrInput interface {
	pulumi.Input

	ToBudgetBudgetFilterPtrOutput() BudgetBudgetFilterPtrOutput
	ToBudgetBudgetFilterPtrOutputWithContext(context.Context) BudgetBudgetFilterPtrOutput
}

BudgetBudgetFilterPtrInput is an input type that accepts BudgetBudgetFilterArgs, BudgetBudgetFilterPtr and BudgetBudgetFilterPtrOutput values. You can construct a concrete instance of `BudgetBudgetFilterPtrInput` via:

		 BudgetBudgetFilterArgs{...}

 or:

		 nil

type BudgetBudgetFilterPtrOutput

type BudgetBudgetFilterPtrOutput struct{ *pulumi.OutputState }

func (BudgetBudgetFilterPtrOutput) CreditTypesTreatment

func (o BudgetBudgetFilterPtrOutput) CreditTypesTreatment() pulumi.StringPtrOutput

Specifies how credits should be treated when determining spend for threshold calculations.

func (BudgetBudgetFilterPtrOutput) Elem

func (BudgetBudgetFilterPtrOutput) ElementType

func (BudgetBudgetFilterPtrOutput) Projects

A set of projects of the form projects/{project_id}, 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. Only zero or one project can be specified currently.

func (BudgetBudgetFilterPtrOutput) Services

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.

func (BudgetBudgetFilterPtrOutput) ToBudgetBudgetFilterPtrOutput

func (o BudgetBudgetFilterPtrOutput) ToBudgetBudgetFilterPtrOutput() BudgetBudgetFilterPtrOutput

func (BudgetBudgetFilterPtrOutput) ToBudgetBudgetFilterPtrOutputWithContext

func (o BudgetBudgetFilterPtrOutput) ToBudgetBudgetFilterPtrOutputWithContext(ctx context.Context) BudgetBudgetFilterPtrOutput

type BudgetState

type BudgetState struct {
	// Defines notifications that are sent on every update to the
	// billing account's spend, regardless of the thresholds defined
	// using threshold rules.  Structure is documented below.
	AllUpdatesRule BudgetAllUpdatesRulePtrInput
	// The budgeted amount for each usage period.  Structure is documented below.
	Amount BudgetAmountPtrInput
	// ID of the billing account to set a budget on.
	BillingAccount pulumi.StringPtrInput
	// Filters that define which resources are used to compute the actual
	// spend against the budget.  Structure is documented below.
	BudgetFilter BudgetBudgetFilterPtrInput
	// User data for display name in UI. Must be <= 60 chars.
	DisplayName pulumi.StringPtrInput
	// Resource name of the budget. The resource name implies the scope of a budget. Values are of the form
	// billingAccounts/{billingAccountId}/budgets/{budgetId}.
	Name pulumi.StringPtrInput
	// Rules that trigger alerts (notifications of thresholds being
	// crossed) when spend exceeds the specified percentages of the
	// budget.  Structure is documented below.
	ThresholdRules BudgetThresholdRuleArrayInput
}

func (BudgetState) ElementType

func (BudgetState) ElementType() reflect.Type

type BudgetThresholdRule

type BudgetThresholdRule struct {
	// The type of basis used to determine if spend has passed
	// the threshold.
	SpendBasis *string `pulumi:"spendBasis"`
	// Send an alert when this threshold is exceeded. This is a
	// 1.0-based percentage, so 0.5 = 50%. Must be >= 0.
	ThresholdPercent float64 `pulumi:"thresholdPercent"`
}

type BudgetThresholdRuleArgs

type BudgetThresholdRuleArgs struct {
	// The type of basis used to determine if spend has passed
	// the threshold.
	SpendBasis pulumi.StringPtrInput `pulumi:"spendBasis"`
	// Send an alert when this threshold is exceeded. This is a
	// 1.0-based percentage, so 0.5 = 50%. Must be >= 0.
	ThresholdPercent pulumi.Float64Input `pulumi:"thresholdPercent"`
}

func (BudgetThresholdRuleArgs) ElementType

func (BudgetThresholdRuleArgs) ElementType() reflect.Type

func (BudgetThresholdRuleArgs) ToBudgetThresholdRuleOutput

func (i BudgetThresholdRuleArgs) ToBudgetThresholdRuleOutput() BudgetThresholdRuleOutput

func (BudgetThresholdRuleArgs) ToBudgetThresholdRuleOutputWithContext

func (i BudgetThresholdRuleArgs) ToBudgetThresholdRuleOutputWithContext(ctx context.Context) BudgetThresholdRuleOutput

type BudgetThresholdRuleArray

type BudgetThresholdRuleArray []BudgetThresholdRuleInput

func (BudgetThresholdRuleArray) ElementType

func (BudgetThresholdRuleArray) ElementType() reflect.Type

func (BudgetThresholdRuleArray) ToBudgetThresholdRuleArrayOutput

func (i BudgetThresholdRuleArray) ToBudgetThresholdRuleArrayOutput() BudgetThresholdRuleArrayOutput

func (BudgetThresholdRuleArray) ToBudgetThresholdRuleArrayOutputWithContext

func (i BudgetThresholdRuleArray) ToBudgetThresholdRuleArrayOutputWithContext(ctx context.Context) BudgetThresholdRuleArrayOutput

type BudgetThresholdRuleArrayInput

type BudgetThresholdRuleArrayInput interface {
	pulumi.Input

	ToBudgetThresholdRuleArrayOutput() BudgetThresholdRuleArrayOutput
	ToBudgetThresholdRuleArrayOutputWithContext(context.Context) BudgetThresholdRuleArrayOutput
}

BudgetThresholdRuleArrayInput is an input type that accepts BudgetThresholdRuleArray and BudgetThresholdRuleArrayOutput values. You can construct a concrete instance of `BudgetThresholdRuleArrayInput` via:

BudgetThresholdRuleArray{ BudgetThresholdRuleArgs{...} }

type BudgetThresholdRuleArrayOutput

type BudgetThresholdRuleArrayOutput struct{ *pulumi.OutputState }

func (BudgetThresholdRuleArrayOutput) ElementType

func (BudgetThresholdRuleArrayOutput) Index

func (BudgetThresholdRuleArrayOutput) ToBudgetThresholdRuleArrayOutput

func (o BudgetThresholdRuleArrayOutput) ToBudgetThresholdRuleArrayOutput() BudgetThresholdRuleArrayOutput

func (BudgetThresholdRuleArrayOutput) ToBudgetThresholdRuleArrayOutputWithContext

func (o BudgetThresholdRuleArrayOutput) ToBudgetThresholdRuleArrayOutputWithContext(ctx context.Context) BudgetThresholdRuleArrayOutput

type BudgetThresholdRuleInput

type BudgetThresholdRuleInput interface {
	pulumi.Input

	ToBudgetThresholdRuleOutput() BudgetThresholdRuleOutput
	ToBudgetThresholdRuleOutputWithContext(context.Context) BudgetThresholdRuleOutput
}

BudgetThresholdRuleInput is an input type that accepts BudgetThresholdRuleArgs and BudgetThresholdRuleOutput values. You can construct a concrete instance of `BudgetThresholdRuleInput` via:

BudgetThresholdRuleArgs{...}

type BudgetThresholdRuleOutput

type BudgetThresholdRuleOutput struct{ *pulumi.OutputState }

func (BudgetThresholdRuleOutput) ElementType

func (BudgetThresholdRuleOutput) ElementType() reflect.Type

func (BudgetThresholdRuleOutput) SpendBasis

The type of basis used to determine if spend has passed the threshold.

func (BudgetThresholdRuleOutput) ThresholdPercent

func (o BudgetThresholdRuleOutput) ThresholdPercent() pulumi.Float64Output

Send an alert when this threshold is exceeded. This is a 1.0-based percentage, so 0.5 = 50%. Must be >= 0.

func (BudgetThresholdRuleOutput) ToBudgetThresholdRuleOutput

func (o BudgetThresholdRuleOutput) ToBudgetThresholdRuleOutput() BudgetThresholdRuleOutput

func (BudgetThresholdRuleOutput) ToBudgetThresholdRuleOutputWithContext

func (o BudgetThresholdRuleOutput) ToBudgetThresholdRuleOutputWithContext(ctx context.Context) BudgetThresholdRuleOutput

Jump to

Keyboard shortcuts

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