Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

budget_filter on labels does not work #10201

Assignees
Labels

Comments

@tpdownes
Copy link

tpdownes commented Sep 30, 2021

Community Note

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request.
  • Please do not leave +1 or me too comments, they generate extra noise for issue followers and do not help prioritize the request.
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment.
  • If an issue is assigned to the modular-magician user, it is either in the process of being autogenerated, or is planned to be autogenerated soon. If an issue is assigned to a user, that user is claiming responsibility for the issue. If an issue is assigned to hashibot, a community member has claimed the issue already.

Terraform Version

Terraform v1.0.7
on darwin_amd64

Affected Resource(s)

  • google_billing_budget

Terraform Configuration Files

Various attempts at setting a label(s) on which to filter

  budget_label = {
    "my-key" : "my-value"
  }
  budget_label = {
    "my-key" : jsonencode(["my-value"])
  }
resource "google_billing_budget" "budget" {
  provider = google-beta
  count    = var.create_budget ? 1 : 0

  billing_account = var.billing_account
  display_name    = local.display_name

  budget_filter {
    projects               = local.projects
    credit_types_treatment = var.credit_types_treatment
    services               = local.services
    labels                 = var.labels
  }

  amount {
    specified_amount {
      units = tostring(var.amount)
    }
  }

  dynamic "threshold_rules" {
    for_each = var.alert_spent_percents
    content {
      threshold_percent = threshold_rules.value
    }
  }

  dynamic "all_updates_rule" {
    for_each = local.all_updates_rule
    content {
      pubsub_topic                     = var.alert_pubsub_topic
      monitoring_notification_channels = var.monitoring_notification_channels
    }
  }
}

Expected Behavior

Terraform should create a budget that filters on resource labels.

Actual Behavior

module.budget.google_billing_budget.budget[0]: Creating...
╷
│ Error: Error creating Budget: googleapi: Error 400: Invalid value at 'budget.budget_filter.labels[0].value' (type.googleapis.com/google.protobuf.ListValue), "["my-value"]"
│ Details:
│ [
│   {
│     "@type": "type.googleapis.com/google.rpc.BadRequest",
│     "fieldViolations": [
│       {
│         "description": "Invalid value at 'budget.budget_filter.labels[0].value' (type.googleapis.com/google.protobuf.ListValue), \"[\"my-value\"]\"",
│         "field": "budget.budget_filter.labels[0].value"
│       }
│     ]
│   }
│ ]
│
│   with module.budget.google_billing_budget.budget[0],
│   on .terraform/modules/budget/main.tf line 38, in resource "google_billing_budget" "budget":
│   38: resource "google_billing_budget" "budget" {
│
╵

References

https://issuetracker.google.com/issues/197773823

@github-actions
Copy link

github-actions bot commented Dec 4, 2021

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Dec 4, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.