Bicep Module Documentation

← Back to Overview

Module budget-alert

budgetAlert

Property Value Description
general (required) general
amount (required) int The total amount of cost to track with the budget
filter budgetFilter May be used to filter budgets by user-specified dimensions and/or tags.
timeGrain (required) 'Annually'
'BillingAnnual'
'BillingMonth'
'BillingQuarter'
'Monthly'
'Quarterly'
The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers
timePeriod timePeriod Has start and end date of the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. There are no restrictions on the end date.
actualTheshold (required) int Notification is sent when the cost exceeded the threshold. (default: 90)
forcastTheshold int Notification is sent when the forecasted cost exceeded the threshold. (default: 125)
contactEmails (required) array The list of email addresses to send the budget notification to when the threshold is exceeded.

timePeriod

Property Value Description
endDate string The end date for the budget. If not provided, we default this to 10 years from the start date.
startDate string The start date for the budget. (default: first day of current month)

budgetFilter

Property Value Description
and (required) budgetFilterProperties[] The logical "AND" expression. Must have at least 2 items.
dimensions (required) budgetComparisonExpression Has comparison expression for a dimension
tags object Has comparison expression for a tag

budgetFilterProperties

Property Value Description
dimensions (required) budgetComparisonExpression Has comparison expression for a dimension
tags object Has comparison expression for a tag

budgetComparisonExpression

Property Value Description
name (required) string The name of the column to use in comparison.
operator (required) string The operator to use for comparison.
values (required) string[] Array of values to use for comparison

naming

Property Value Description
forceFunctionAsFullName bool Use the function value as the full name of the resource
abbreviation string Override the abbreviation of this resource with this parameter
environment string The resource environment (for example: dev, tst, acc, prd)
location string The resource location (for example: weu, we, westeurope)
customer string The name of the customer
delimiter string The delimiter between resources (default: -)
nameFormat Array containing any of:
'abbreviation'
'customer'
'environment'
'function'
'location'
'param1'
'param2'
'param3'
'useCaseName'
The order of the array defines the order of elements in the naming scheme
param1 string Extra parameter self defined
param2 string Extra parameter self defined
param3 string Extra parameter self defined
function (required) string Function of the resource [can be app, db, security,...]
useCaseName string Name of the use case [can be hub, spoke,...]
suffix string Suffix for the resource, if empty non will be appended, otherwise will be added to the end [can be index, ...]
forceDefaultNaming bool Force the CAF naming instead of default company naming

resourceLock

Property Value Description
name string Character limit: 1-90. Valid characters: Alphanumerics, periods, underscores, hyphens, and parenthesis. Can't end in period.
level (required) 'CanNotDelete'
'ReadOnly'
The level of the lock. Possible values are: CanNotDelete and ReadOnly. CanNotDelete means authorized users are able to read and modify the resources, but not delete. ReadOnly means authorized users can only read from a resource, but they can't modify or delete it. Read-Only locks must be commented to be able to deploy again
notes string Notes about the lock. Maximum of 512 characters.
owners resourceLockOwner[] The owners of the lock

resourceLockOwner

Property Value Description
applicationId (required) string The application ID of the lock owner.

roleAssignment

Property Value Description
principalId (required) string The principal ID
roleDefinitionId (required) string The role definition ID, data file can be used for this
condition string Condition on the role assignment
conditionVersion string Version of the condition. Currently the only accepted value is "2.0"
delegatedManagedIdentityResourceId string Id of the delegated managed identity resource
description string Description of role assignment

general

Property Value Description
tags object Tags of the resource [hashtable]
location (required) string Location of the resource
naming (required) naming Naming module of the resource
resourceGroupName (required) string Name of the resource group where the resource should be located
sharedNaming (required) naming Reference to the default naming
roleAssignments roleAssignment[] Role assignments on the resource
resourceLocks resourceLock[] Resource Locks on the resource

Changelog

2.1.0 (2025-10-07)

Features

  • update resource api version

2.0.1 (2025-09-24)

Bug Fixes

  • remove deployment name + cleanup

2.0.0 (2025-09-24)

⚠ BREAKING CHANGES

  • remove deprecated outputs

Bug Fixes

  • remove deprecated outputs

1.2.3 (2025-04-14)

Bug Fixes

  • automatically add the startdate of current month if empty

1.2.2 (2025-02-28)

Bug Fixes

  • revise descriptions