...
1/**
2 * Copyright 2022 Google LLC
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17```hcl
18data "google_billing_account" "account" {
19 billing_account = "000000-0000000-0000000-000000"
20}
21
22data "google_project" "project" {
23}
24
25resource "google_billing_budget" "budget" {
26 billing_account = data.google_billing_account.account.id
27 display_name = "Example Billing Budget"
28
29 budget_filter {
30 projects = ["projects/${data.google_project.project.number}"]
31 }
32
33 amount {
34 specified_amount {
35 currency_code = "USD"
36 units = "100000"
37 }
38 }
39
40 threshold_rules {
41 threshold_percent = 1.0
42 }
43 threshold_rules {
44 threshold_percent = 1.0
45 spend_basis = "FORECASTED_SPEND"
46 }
47
48 all_updates_rule {
49 monitoring_notification_channels = [
50 google_monitoring_notification_channel.notification_channel.id,
51 ]
52 disable_default_iam_recipients = true
53 }
54}
55
56resource "google_monitoring_notification_channel" "notification_channel" {
57 display_name = "Example Notification Channel"
58 type = "email"
59
60 labels = {
61 email_address = "address@example.com"
62 }
63}
64```
View as plain text