Budget Subscription Args
data class BudgetSubscriptionArgs(val amount: Output<Double>? = null, val etag: Output<String>? = null, val filter: Output<BudgetSubscriptionFilterArgs>? = null, val name: Output<String>? = null, val notifications: Output<List<BudgetSubscriptionNotificationArgs>>? = null, val subscriptionId: Output<String>? = null, val timeGrain: Output<String>? = null, val timePeriod: Output<BudgetSubscriptionTimePeriodArgs>? = null) : ConvertibleToJava<BudgetSubscriptionArgs>
Manages a Subscription Consumption Budget.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.core.inputs.GetSubscriptionArgs;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.monitoring.ActionGroup;
import com.pulumi.azure.monitoring.ActionGroupArgs;
import com.pulumi.azure.consumption.BudgetSubscription;
import com.pulumi.azure.consumption.BudgetSubscriptionArgs;
import com.pulumi.azure.consumption.inputs.BudgetSubscriptionTimePeriodArgs;
import com.pulumi.azure.consumption.inputs.BudgetSubscriptionFilterArgs;
import com.pulumi.azure.consumption.inputs.BudgetSubscriptionNotificationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var current = CoreFunctions.getSubscription();
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("eastus")
.build());
var exampleActionGroup = new ActionGroup("exampleActionGroup", ActionGroupArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.shortName("example")
.build());
var exampleBudgetSubscription = new BudgetSubscription("exampleBudgetSubscription", BudgetSubscriptionArgs.builder()
.subscriptionId(current.applyValue(getSubscriptionResult -> getSubscriptionResult.id()))
.amount(1000)
.timeGrain("Monthly")
.timePeriod(BudgetSubscriptionTimePeriodArgs.builder()
.startDate("2022-06-01T00:00:00Z")
.endDate("2022-07-01T00:00:00Z")
.build())
.filter(BudgetSubscriptionFilterArgs.builder()
.dimensions(BudgetSubscriptionFilterDimensionArgs.builder()
.name("ResourceGroupName")
.values(exampleResourceGroup.name())
.build())
.tags(BudgetSubscriptionFilterTagArgs.builder()
.name("foo")
.values(
"bar",
"baz")
.build())
.build())
.notifications(
BudgetSubscriptionNotificationArgs.builder()
.enabled(true)
.threshold(90)
.operator("EqualTo")
.contactEmails(
"foo@example.com",
"bar@example.com")
.contactGroups(exampleActionGroup.id())
.contactRoles("Owner")
.build(),
BudgetSubscriptionNotificationArgs.builder()
.enabled(false)
.threshold(100)
.operator("GreaterThan")
.thresholdType("Forecasted")
.contactEmails(
"foo@example.com",
"bar@example.com")
.build())
.build());
}
}
Content copied to clipboard
Import
Subscription Consumption Budgets can be imported using the resource id
, e.g.
$ pulumi import azure:consumption/budgetSubscription:BudgetSubscription example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/subscription1
Content copied to clipboard
Constructors
Link copied to clipboard
fun BudgetSubscriptionArgs(amount: Output<Double>? = null, etag: Output<String>? = null, filter: Output<BudgetSubscriptionFilterArgs>? = null, name: Output<String>? = null, notifications: Output<List<BudgetSubscriptionNotificationArgs>>? = null, subscriptionId: Output<String>? = null, timeGrain: Output<String>? = null, timePeriod: Output<BudgetSubscriptionTimePeriodArgs>? = null)