"level" must be set to "custom" to set individual notification levels error
Bug Report
When I try to configure global notification events with the gitlab_global_level_notifications resource Terraform fails with if I use the module in any form
Relevant Terraform Configuration
terraform {
required_providers {
gitlab = {
source = "gitlabhq/gitlab"
}
}
}
variable "gitlab_global_level_notifications" {
type = map(object({
level = optional(string)
close_issue = optional(bool)
close_merge_request = optional(bool)
failed_pipeline = optional(bool)
fixed_pipeline = optional(bool)
issue_due = optional(bool)
merge_merge_request = optional(bool)
merge_when_pipeline_succeeds = optional(bool)
moved_project = optional(bool)
new_issue = optional(bool)
new_merge_request = optional(bool)
new_note = optional(bool)
push_to_merge_request = optional(bool)
reassign_issue = optional(bool)
reassign_merge_request = optional(bool)
reopen_issue = optional(bool)
reopen_merge_request = optional(bool)
success_pipeline = optional(bool)
}))
default = {}
}
resource "gitlab_global_level_notifications" "notifications" {
for_each = var.gitlab_global_level_notifications
level = each.value.level
close_issue = each.value.close_issue
close_merge_request = each.value.close_merge_request
failed_pipeline = each.value.failed_pipeline
fixed_pipeline = each.value.fixed_pipeline
issue_due = each.value.issue_due
merge_merge_request = each.value.merge_merge_request
merge_when_pipeline_succeeds = each.value.merge_when_pipeline_succeeds
moved_project = each.value.moved_project
new_issue = each.value.new_issue
new_merge_request = each.value.new_merge_request
new_note = each.value.new_note
push_to_merge_request = each.value.push_to_merge_request
reassign_issue = each.value.reassign_issue
reassign_merge_request = each.value.reassign_merge_request
reopen_issue = each.value.reopen_issue
reopen_merge_request = each.value.reopen_merge_request
success_pipeline = each.value.success_pipeline
}
module "global_level_notifications" {
source = "../modules/global_level_notifications"
gitlab_global_level_notifications = {
"example" = {
level = "custom"
close_issue = true
close_merge_request = false
failed_pipeline = true
fixed_pipeline = false
issue_due = true
merge_merge_request = false
merge_when_pipeline_succeeds = true
moved_project = false
new_issue = true
new_merge_request = false
new_note = true
push_to_merge_request = false
reassign_issue = true
reassign_merge_request = false
reopen_issue = true
reopen_merge_request = false
success_pipeline = true
}
}
}
Relevant Terraform Command
terraform apply
Relevant Log Output
│ Error: "level" must be set to "custom" to set individual notification levels
│
│ with module.global_level_notifications.gitlab_global_level_notifications.notifications,
│ on ../modules/global_level_notifications/main.tf line 4, in resource "gitlab_global_level_notifications" "notifications":
│ 4: level = each.value.level
│
│ "level" must be set to "custom" to set individual notification levels
Additional Details
- GitLab Terraform Provider Version:
18.2.0 - GitLab Instance Version:
GitLab Enterprise Edition v17.8.2-ee - Terraform Version:
Terraform v1.6.5 - License Tier:
Ultimate