Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.costmanagement.kotlin.ExportArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.costmanagement.kotlin
import com.pulumi.azurenative.costmanagement.ExportArgs.builder
import com.pulumi.azurenative.costmanagement.kotlin.enums.FormatType
import com.pulumi.azurenative.costmanagement.kotlin.inputs.ExportDefinitionArgs
import com.pulumi.azurenative.costmanagement.kotlin.inputs.ExportDefinitionArgsBuilder
import com.pulumi.azurenative.costmanagement.kotlin.inputs.ExportDeliveryInfoArgs
import com.pulumi.azurenative.costmanagement.kotlin.inputs.ExportDeliveryInfoArgsBuilder
import com.pulumi.azurenative.costmanagement.kotlin.inputs.ExportScheduleArgs
import com.pulumi.azurenative.costmanagement.kotlin.inputs.ExportScheduleArgsBuilder
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* An export resource.
* Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-06-01.
* Other available API versions: 2019-10-01, 2023-04-01-preview, 2023-07-01-preview, 2023-08-01, 2023-09-01, 2023-11-01.
* ## Example Usage
* ### ExportCreateOrUpdateByBillingAccount
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var export = new AzureNative.CostManagement.Export("export", new()
* {
* Definition = new AzureNative.CostManagement.Inputs.ExportDefinitionArgs
* {
* DataSet = new AzureNative.CostManagement.Inputs.ExportDatasetArgs
* {
* Configuration = new AzureNative.CostManagement.Inputs.ExportDatasetConfigurationArgs
* {
* Columns = new[]
* {
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity",
* },
* },
* Granularity = AzureNative.CostManagement.GranularityType.Daily,
* },
* Timeframe = AzureNative.CostManagement.TimeframeType.MonthToDate,
* Type = AzureNative.CostManagement.ExportType.ActualCost,
* },
* DeliveryInfo = new AzureNative.CostManagement.Inputs.ExportDeliveryInfoArgs
* {
* Destination = new AzureNative.CostManagement.Inputs.ExportDeliveryDestinationArgs
* {
* Container = "exports",
* ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182",
* RootFolderPath = "ad-hoc",
* },
* },
* ExportName = "TestExport",
* Format = AzureNative.CostManagement.FormatType.Csv,
* Schedule = new AzureNative.CostManagement.Inputs.ExportScheduleArgs
* {
* Recurrence = AzureNative.CostManagement.RecurrenceType.Weekly,
* RecurrencePeriod = new AzureNative.CostManagement.Inputs.ExportRecurrencePeriodArgs
* {
* From = "2020-06-01T00:00:00Z",
* To = "2020-10-31T00:00:00Z",
* },
* Status = AzureNative.CostManagement.StatusType.Active,
* },
* Scope = "providers/Microsoft.Billing/billingAccounts/123456",
* });
* });
* ```
* ```go
* package main
* import (
* costmanagement "github.com/pulumi/pulumi-azure-native-sdk/costmanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := costmanagement.NewExport(ctx, "export", &costmanagement.ExportArgs{
* Definition: &costmanagement.ExportDefinitionArgs{
* DataSet: &costmanagement.ExportDatasetArgs{
* Configuration: &costmanagement.ExportDatasetConfigurationArgs{
* Columns: pulumi.StringArray{
* pulumi.String("Date"),
* pulumi.String("MeterId"),
* pulumi.String("ResourceId"),
* pulumi.String("ResourceLocation"),
* pulumi.String("Quantity"),
* },
* },
* Granularity: pulumi.String(costmanagement.GranularityTypeDaily),
* },
* Timeframe: pulumi.String(costmanagement.TimeframeTypeMonthToDate),
* Type: pulumi.String(costmanagement.ExportTypeActualCost),
* },
* DeliveryInfo: &costmanagement.ExportDeliveryInfoArgs{
* Destination: &costmanagement.ExportDeliveryDestinationArgs{
* Container: pulumi.String("exports"),
* ResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182"),
* RootFolderPath: pulumi.String("ad-hoc"),
* },
* },
* ExportName: pulumi.String("TestExport"),
* Format: pulumi.String(costmanagement.FormatTypeCsv),
* Schedule: &costmanagement.ExportScheduleArgs{
* Recurrence: pulumi.String(costmanagement.RecurrenceTypeWeekly),
* RecurrencePeriod: &costmanagement.ExportRecurrencePeriodArgs{
* From: pulumi.String("2020-06-01T00:00:00Z"),
* To: pulumi.String("2020-10-31T00:00:00Z"),
* },
* Status: pulumi.String(costmanagement.StatusTypeActive),
* },
* Scope: pulumi.String("providers/Microsoft.Billing/billingAccounts/123456"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.costmanagement.Export;
* import com.pulumi.azurenative.costmanagement.ExportArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDefinitionArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetConfigurationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryInfoArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryDestinationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportScheduleArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportRecurrencePeriodArgs;
* 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) {
* var export = new Export("export", ExportArgs.builder()
* .definition(ExportDefinitionArgs.builder()
* .dataSet(ExportDatasetArgs.builder()
* .configuration(ExportDatasetConfigurationArgs.builder()
* .columns(
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity")
* .build())
* .granularity("Daily")
* .build())
* .timeframe("MonthToDate")
* .type("ActualCost")
* .build())
* .deliveryInfo(ExportDeliveryInfoArgs.builder()
* .destination(ExportDeliveryDestinationArgs.builder()
* .container("exports")
* .resourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182")
* .rootFolderPath("ad-hoc")
* .build())
* .build())
* .exportName("TestExport")
* .format("Csv")
* .schedule(ExportScheduleArgs.builder()
* .recurrence("Weekly")
* .recurrencePeriod(ExportRecurrencePeriodArgs.builder()
* .from("2020-06-01T00:00:00Z")
* .to("2020-10-31T00:00:00Z")
* .build())
* .status("Active")
* .build())
* .scope("providers/Microsoft.Billing/billingAccounts/123456")
* .build());
* }
* }
* ```
* ### ExportCreateOrUpdateByDepartment
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var export = new AzureNative.CostManagement.Export("export", new()
* {
* Definition = new AzureNative.CostManagement.Inputs.ExportDefinitionArgs
* {
* DataSet = new AzureNative.CostManagement.Inputs.ExportDatasetArgs
* {
* Configuration = new AzureNative.CostManagement.Inputs.ExportDatasetConfigurationArgs
* {
* Columns = new[]
* {
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity",
* },
* },
* Granularity = AzureNative.CostManagement.GranularityType.Daily,
* },
* Timeframe = AzureNative.CostManagement.TimeframeType.MonthToDate,
* Type = AzureNative.CostManagement.ExportType.ActualCost,
* },
* DeliveryInfo = new AzureNative.CostManagement.Inputs.ExportDeliveryInfoArgs
* {
* Destination = new AzureNative.CostManagement.Inputs.ExportDeliveryDestinationArgs
* {
* Container = "exports",
* ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182",
* RootFolderPath = "ad-hoc",
* },
* },
* ExportName = "TestExport",
* Format = AzureNative.CostManagement.FormatType.Csv,
* Schedule = new AzureNative.CostManagement.Inputs.ExportScheduleArgs
* {
* Recurrence = AzureNative.CostManagement.RecurrenceType.Weekly,
* RecurrencePeriod = new AzureNative.CostManagement.Inputs.ExportRecurrencePeriodArgs
* {
* From = "2020-06-01T00:00:00Z",
* To = "2020-10-31T00:00:00Z",
* },
* Status = AzureNative.CostManagement.StatusType.Active,
* },
* Scope = "providers/Microsoft.Billing/billingAccounts/12/departments/1234",
* });
* });
* ```
* ```go
* package main
* import (
* costmanagement "github.com/pulumi/pulumi-azure-native-sdk/costmanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := costmanagement.NewExport(ctx, "export", &costmanagement.ExportArgs{
* Definition: &costmanagement.ExportDefinitionArgs{
* DataSet: &costmanagement.ExportDatasetArgs{
* Configuration: &costmanagement.ExportDatasetConfigurationArgs{
* Columns: pulumi.StringArray{
* pulumi.String("Date"),
* pulumi.String("MeterId"),
* pulumi.String("ResourceId"),
* pulumi.String("ResourceLocation"),
* pulumi.String("Quantity"),
* },
* },
* Granularity: pulumi.String(costmanagement.GranularityTypeDaily),
* },
* Timeframe: pulumi.String(costmanagement.TimeframeTypeMonthToDate),
* Type: pulumi.String(costmanagement.ExportTypeActualCost),
* },
* DeliveryInfo: &costmanagement.ExportDeliveryInfoArgs{
* Destination: &costmanagement.ExportDeliveryDestinationArgs{
* Container: pulumi.String("exports"),
* ResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182"),
* RootFolderPath: pulumi.String("ad-hoc"),
* },
* },
* ExportName: pulumi.String("TestExport"),
* Format: pulumi.String(costmanagement.FormatTypeCsv),
* Schedule: &costmanagement.ExportScheduleArgs{
* Recurrence: pulumi.String(costmanagement.RecurrenceTypeWeekly),
* RecurrencePeriod: &costmanagement.ExportRecurrencePeriodArgs{
* From: pulumi.String("2020-06-01T00:00:00Z"),
* To: pulumi.String("2020-10-31T00:00:00Z"),
* },
* Status: pulumi.String(costmanagement.StatusTypeActive),
* },
* Scope: pulumi.String("providers/Microsoft.Billing/billingAccounts/12/departments/1234"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.costmanagement.Export;
* import com.pulumi.azurenative.costmanagement.ExportArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDefinitionArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetConfigurationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryInfoArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryDestinationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportScheduleArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportRecurrencePeriodArgs;
* 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) {
* var export = new Export("export", ExportArgs.builder()
* .definition(ExportDefinitionArgs.builder()
* .dataSet(ExportDatasetArgs.builder()
* .configuration(ExportDatasetConfigurationArgs.builder()
* .columns(
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity")
* .build())
* .granularity("Daily")
* .build())
* .timeframe("MonthToDate")
* .type("ActualCost")
* .build())
* .deliveryInfo(ExportDeliveryInfoArgs.builder()
* .destination(ExportDeliveryDestinationArgs.builder()
* .container("exports")
* .resourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182")
* .rootFolderPath("ad-hoc")
* .build())
* .build())
* .exportName("TestExport")
* .format("Csv")
* .schedule(ExportScheduleArgs.builder()
* .recurrence("Weekly")
* .recurrencePeriod(ExportRecurrencePeriodArgs.builder()
* .from("2020-06-01T00:00:00Z")
* .to("2020-10-31T00:00:00Z")
* .build())
* .status("Active")
* .build())
* .scope("providers/Microsoft.Billing/billingAccounts/12/departments/1234")
* .build());
* }
* }
* ```
* ### ExportCreateOrUpdateByEnrollmentAccount
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var export = new AzureNative.CostManagement.Export("export", new()
* {
* Definition = new AzureNative.CostManagement.Inputs.ExportDefinitionArgs
* {
* DataSet = new AzureNative.CostManagement.Inputs.ExportDatasetArgs
* {
* Configuration = new AzureNative.CostManagement.Inputs.ExportDatasetConfigurationArgs
* {
* Columns = new[]
* {
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity",
* },
* },
* Granularity = AzureNative.CostManagement.GranularityType.Daily,
* },
* Timeframe = AzureNative.CostManagement.TimeframeType.MonthToDate,
* Type = AzureNative.CostManagement.ExportType.ActualCost,
* },
* DeliveryInfo = new AzureNative.CostManagement.Inputs.ExportDeliveryInfoArgs
* {
* Destination = new AzureNative.CostManagement.Inputs.ExportDeliveryDestinationArgs
* {
* Container = "exports",
* ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182",
* RootFolderPath = "ad-hoc",
* },
* },
* ExportName = "TestExport",
* Format = AzureNative.CostManagement.FormatType.Csv,
* Schedule = new AzureNative.CostManagement.Inputs.ExportScheduleArgs
* {
* Recurrence = AzureNative.CostManagement.RecurrenceType.Weekly,
* RecurrencePeriod = new AzureNative.CostManagement.Inputs.ExportRecurrencePeriodArgs
* {
* From = "2020-06-01T00:00:00Z",
* To = "2020-10-31T00:00:00Z",
* },
* Status = AzureNative.CostManagement.StatusType.Active,
* },
* Scope = "providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456",
* });
* });
* ```
* ```go
* package main
* import (
* costmanagement "github.com/pulumi/pulumi-azure-native-sdk/costmanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := costmanagement.NewExport(ctx, "export", &costmanagement.ExportArgs{
* Definition: &costmanagement.ExportDefinitionArgs{
* DataSet: &costmanagement.ExportDatasetArgs{
* Configuration: &costmanagement.ExportDatasetConfigurationArgs{
* Columns: pulumi.StringArray{
* pulumi.String("Date"),
* pulumi.String("MeterId"),
* pulumi.String("ResourceId"),
* pulumi.String("ResourceLocation"),
* pulumi.String("Quantity"),
* },
* },
* Granularity: pulumi.String(costmanagement.GranularityTypeDaily),
* },
* Timeframe: pulumi.String(costmanagement.TimeframeTypeMonthToDate),
* Type: pulumi.String(costmanagement.ExportTypeActualCost),
* },
* DeliveryInfo: &costmanagement.ExportDeliveryInfoArgs{
* Destination: &costmanagement.ExportDeliveryDestinationArgs{
* Container: pulumi.String("exports"),
* ResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182"),
* RootFolderPath: pulumi.String("ad-hoc"),
* },
* },
* ExportName: pulumi.String("TestExport"),
* Format: pulumi.String(costmanagement.FormatTypeCsv),
* Schedule: &costmanagement.ExportScheduleArgs{
* Recurrence: pulumi.String(costmanagement.RecurrenceTypeWeekly),
* RecurrencePeriod: &costmanagement.ExportRecurrencePeriodArgs{
* From: pulumi.String("2020-06-01T00:00:00Z"),
* To: pulumi.String("2020-10-31T00:00:00Z"),
* },
* Status: pulumi.String(costmanagement.StatusTypeActive),
* },
* Scope: pulumi.String("providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.costmanagement.Export;
* import com.pulumi.azurenative.costmanagement.ExportArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDefinitionArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetConfigurationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryInfoArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryDestinationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportScheduleArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportRecurrencePeriodArgs;
* 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) {
* var export = new Export("export", ExportArgs.builder()
* .definition(ExportDefinitionArgs.builder()
* .dataSet(ExportDatasetArgs.builder()
* .configuration(ExportDatasetConfigurationArgs.builder()
* .columns(
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity")
* .build())
* .granularity("Daily")
* .build())
* .timeframe("MonthToDate")
* .type("ActualCost")
* .build())
* .deliveryInfo(ExportDeliveryInfoArgs.builder()
* .destination(ExportDeliveryDestinationArgs.builder()
* .container("exports")
* .resourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182")
* .rootFolderPath("ad-hoc")
* .build())
* .build())
* .exportName("TestExport")
* .format("Csv")
* .schedule(ExportScheduleArgs.builder()
* .recurrence("Weekly")
* .recurrencePeriod(ExportRecurrencePeriodArgs.builder()
* .from("2020-06-01T00:00:00Z")
* .to("2020-10-31T00:00:00Z")
* .build())
* .status("Active")
* .build())
* .scope("providers/Microsoft.Billing/billingAccounts/100/enrollmentAccounts/456")
* .build());
* }
* }
* ```
* ### ExportCreateOrUpdateByManagementGroup
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var export = new AzureNative.CostManagement.Export("export", new()
* {
* Definition = new AzureNative.CostManagement.Inputs.ExportDefinitionArgs
* {
* DataSet = new AzureNative.CostManagement.Inputs.ExportDatasetArgs
* {
* Configuration = new AzureNative.CostManagement.Inputs.ExportDatasetConfigurationArgs
* {
* Columns = new[]
* {
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity",
* },
* },
* Granularity = AzureNative.CostManagement.GranularityType.Daily,
* },
* Timeframe = AzureNative.CostManagement.TimeframeType.MonthToDate,
* Type = AzureNative.CostManagement.ExportType.ActualCost,
* },
* DeliveryInfo = new AzureNative.CostManagement.Inputs.ExportDeliveryInfoArgs
* {
* Destination = new AzureNative.CostManagement.Inputs.ExportDeliveryDestinationArgs
* {
* Container = "exports",
* ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182",
* RootFolderPath = "ad-hoc",
* },
* },
* ExportName = "TestExport",
* Format = AzureNative.CostManagement.FormatType.Csv,
* Schedule = new AzureNative.CostManagement.Inputs.ExportScheduleArgs
* {
* Recurrence = AzureNative.CostManagement.RecurrenceType.Weekly,
* RecurrencePeriod = new AzureNative.CostManagement.Inputs.ExportRecurrencePeriodArgs
* {
* From = "2020-06-01T00:00:00Z",
* To = "2020-10-31T00:00:00Z",
* },
* Status = AzureNative.CostManagement.StatusType.Active,
* },
* Scope = "providers/Microsoft.Management/managementGroups/TestMG",
* });
* });
* ```
* ```go
* package main
* import (
* costmanagement "github.com/pulumi/pulumi-azure-native-sdk/costmanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := costmanagement.NewExport(ctx, "export", &costmanagement.ExportArgs{
* Definition: &costmanagement.ExportDefinitionArgs{
* DataSet: &costmanagement.ExportDatasetArgs{
* Configuration: &costmanagement.ExportDatasetConfigurationArgs{
* Columns: pulumi.StringArray{
* pulumi.String("Date"),
* pulumi.String("MeterId"),
* pulumi.String("ResourceId"),
* pulumi.String("ResourceLocation"),
* pulumi.String("Quantity"),
* },
* },
* Granularity: pulumi.String(costmanagement.GranularityTypeDaily),
* },
* Timeframe: pulumi.String(costmanagement.TimeframeTypeMonthToDate),
* Type: pulumi.String(costmanagement.ExportTypeActualCost),
* },
* DeliveryInfo: &costmanagement.ExportDeliveryInfoArgs{
* Destination: &costmanagement.ExportDeliveryDestinationArgs{
* Container: pulumi.String("exports"),
* ResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182"),
* RootFolderPath: pulumi.String("ad-hoc"),
* },
* },
* ExportName: pulumi.String("TestExport"),
* Format: pulumi.String(costmanagement.FormatTypeCsv),
* Schedule: &costmanagement.ExportScheduleArgs{
* Recurrence: pulumi.String(costmanagement.RecurrenceTypeWeekly),
* RecurrencePeriod: &costmanagement.ExportRecurrencePeriodArgs{
* From: pulumi.String("2020-06-01T00:00:00Z"),
* To: pulumi.String("2020-10-31T00:00:00Z"),
* },
* Status: pulumi.String(costmanagement.StatusTypeActive),
* },
* Scope: pulumi.String("providers/Microsoft.Management/managementGroups/TestMG"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.costmanagement.Export;
* import com.pulumi.azurenative.costmanagement.ExportArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDefinitionArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetConfigurationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryInfoArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryDestinationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportScheduleArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportRecurrencePeriodArgs;
* 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) {
* var export = new Export("export", ExportArgs.builder()
* .definition(ExportDefinitionArgs.builder()
* .dataSet(ExportDatasetArgs.builder()
* .configuration(ExportDatasetConfigurationArgs.builder()
* .columns(
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity")
* .build())
* .granularity("Daily")
* .build())
* .timeframe("MonthToDate")
* .type("ActualCost")
* .build())
* .deliveryInfo(ExportDeliveryInfoArgs.builder()
* .destination(ExportDeliveryDestinationArgs.builder()
* .container("exports")
* .resourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182")
* .rootFolderPath("ad-hoc")
* .build())
* .build())
* .exportName("TestExport")
* .format("Csv")
* .schedule(ExportScheduleArgs.builder()
* .recurrence("Weekly")
* .recurrencePeriod(ExportRecurrencePeriodArgs.builder()
* .from("2020-06-01T00:00:00Z")
* .to("2020-10-31T00:00:00Z")
* .build())
* .status("Active")
* .build())
* .scope("providers/Microsoft.Management/managementGroups/TestMG")
* .build());
* }
* }
* ```
* ### ExportCreateOrUpdateByResourceGroup
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var export = new AzureNative.CostManagement.Export("export", new()
* {
* Definition = new AzureNative.CostManagement.Inputs.ExportDefinitionArgs
* {
* DataSet = new AzureNative.CostManagement.Inputs.ExportDatasetArgs
* {
* Configuration = new AzureNative.CostManagement.Inputs.ExportDatasetConfigurationArgs
* {
* Columns = new[]
* {
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity",
* },
* },
* Granularity = AzureNative.CostManagement.GranularityType.Daily,
* },
* Timeframe = AzureNative.CostManagement.TimeframeType.MonthToDate,
* Type = AzureNative.CostManagement.ExportType.ActualCost,
* },
* DeliveryInfo = new AzureNative.CostManagement.Inputs.ExportDeliveryInfoArgs
* {
* Destination = new AzureNative.CostManagement.Inputs.ExportDeliveryDestinationArgs
* {
* Container = "exports",
* ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182",
* RootFolderPath = "ad-hoc",
* },
* },
* ExportName = "TestExport",
* Format = AzureNative.CostManagement.FormatType.Csv,
* Schedule = new AzureNative.CostManagement.Inputs.ExportScheduleArgs
* {
* Recurrence = AzureNative.CostManagement.RecurrenceType.Weekly,
* RecurrencePeriod = new AzureNative.CostManagement.Inputs.ExportRecurrencePeriodArgs
* {
* From = "2020-06-01T00:00:00Z",
* To = "2020-10-31T00:00:00Z",
* },
* Status = AzureNative.CostManagement.StatusType.Active,
* },
* Scope = "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG",
* });
* });
* ```
* ```go
* package main
* import (
* costmanagement "github.com/pulumi/pulumi-azure-native-sdk/costmanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := costmanagement.NewExport(ctx, "export", &costmanagement.ExportArgs{
* Definition: &costmanagement.ExportDefinitionArgs{
* DataSet: &costmanagement.ExportDatasetArgs{
* Configuration: &costmanagement.ExportDatasetConfigurationArgs{
* Columns: pulumi.StringArray{
* pulumi.String("Date"),
* pulumi.String("MeterId"),
* pulumi.String("ResourceId"),
* pulumi.String("ResourceLocation"),
* pulumi.String("Quantity"),
* },
* },
* Granularity: pulumi.String(costmanagement.GranularityTypeDaily),
* },
* Timeframe: pulumi.String(costmanagement.TimeframeTypeMonthToDate),
* Type: pulumi.String(costmanagement.ExportTypeActualCost),
* },
* DeliveryInfo: &costmanagement.ExportDeliveryInfoArgs{
* Destination: &costmanagement.ExportDeliveryDestinationArgs{
* Container: pulumi.String("exports"),
* ResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182"),
* RootFolderPath: pulumi.String("ad-hoc"),
* },
* },
* ExportName: pulumi.String("TestExport"),
* Format: pulumi.String(costmanagement.FormatTypeCsv),
* Schedule: &costmanagement.ExportScheduleArgs{
* Recurrence: pulumi.String(costmanagement.RecurrenceTypeWeekly),
* RecurrencePeriod: &costmanagement.ExportRecurrencePeriodArgs{
* From: pulumi.String("2020-06-01T00:00:00Z"),
* To: pulumi.String("2020-10-31T00:00:00Z"),
* },
* Status: pulumi.String(costmanagement.StatusTypeActive),
* },
* Scope: pulumi.String("subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.costmanagement.Export;
* import com.pulumi.azurenative.costmanagement.ExportArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDefinitionArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetConfigurationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryInfoArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryDestinationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportScheduleArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportRecurrencePeriodArgs;
* 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) {
* var export = new Export("export", ExportArgs.builder()
* .definition(ExportDefinitionArgs.builder()
* .dataSet(ExportDatasetArgs.builder()
* .configuration(ExportDatasetConfigurationArgs.builder()
* .columns(
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity")
* .build())
* .granularity("Daily")
* .build())
* .timeframe("MonthToDate")
* .type("ActualCost")
* .build())
* .deliveryInfo(ExportDeliveryInfoArgs.builder()
* .destination(ExportDeliveryDestinationArgs.builder()
* .container("exports")
* .resourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182")
* .rootFolderPath("ad-hoc")
* .build())
* .build())
* .exportName("TestExport")
* .format("Csv")
* .schedule(ExportScheduleArgs.builder()
* .recurrence("Weekly")
* .recurrencePeriod(ExportRecurrencePeriodArgs.builder()
* .from("2020-06-01T00:00:00Z")
* .to("2020-10-31T00:00:00Z")
* .build())
* .status("Active")
* .build())
* .scope("subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG")
* .build());
* }
* }
* ```
* ### ExportCreateOrUpdateBySubscription
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var export = new AzureNative.CostManagement.Export("export", new()
* {
* Definition = new AzureNative.CostManagement.Inputs.ExportDefinitionArgs
* {
* DataSet = new AzureNative.CostManagement.Inputs.ExportDatasetArgs
* {
* Configuration = new AzureNative.CostManagement.Inputs.ExportDatasetConfigurationArgs
* {
* Columns = new[]
* {
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity",
* },
* },
* Granularity = AzureNative.CostManagement.GranularityType.Daily,
* },
* Timeframe = AzureNative.CostManagement.TimeframeType.MonthToDate,
* Type = AzureNative.CostManagement.ExportType.ActualCost,
* },
* DeliveryInfo = new AzureNative.CostManagement.Inputs.ExportDeliveryInfoArgs
* {
* Destination = new AzureNative.CostManagement.Inputs.ExportDeliveryDestinationArgs
* {
* Container = "exports",
* ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182",
* RootFolderPath = "ad-hoc",
* },
* },
* ExportName = "TestExport",
* Format = AzureNative.CostManagement.FormatType.Csv,
* Schedule = new AzureNative.CostManagement.Inputs.ExportScheduleArgs
* {
* Recurrence = AzureNative.CostManagement.RecurrenceType.Weekly,
* RecurrencePeriod = new AzureNative.CostManagement.Inputs.ExportRecurrencePeriodArgs
* {
* From = "2020-06-01T00:00:00Z",
* To = "2020-10-31T00:00:00Z",
* },
* Status = AzureNative.CostManagement.StatusType.Active,
* },
* Scope = "subscriptions/00000000-0000-0000-0000-000000000000",
* });
* });
* ```
* ```go
* package main
* import (
* costmanagement "github.com/pulumi/pulumi-azure-native-sdk/costmanagement/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := costmanagement.NewExport(ctx, "export", &costmanagement.ExportArgs{
* Definition: &costmanagement.ExportDefinitionArgs{
* DataSet: &costmanagement.ExportDatasetArgs{
* Configuration: &costmanagement.ExportDatasetConfigurationArgs{
* Columns: pulumi.StringArray{
* pulumi.String("Date"),
* pulumi.String("MeterId"),
* pulumi.String("ResourceId"),
* pulumi.String("ResourceLocation"),
* pulumi.String("Quantity"),
* },
* },
* Granularity: pulumi.String(costmanagement.GranularityTypeDaily),
* },
* Timeframe: pulumi.String(costmanagement.TimeframeTypeMonthToDate),
* Type: pulumi.String(costmanagement.ExportTypeActualCost),
* },
* DeliveryInfo: &costmanagement.ExportDeliveryInfoArgs{
* Destination: &costmanagement.ExportDeliveryDestinationArgs{
* Container: pulumi.String("exports"),
* ResourceId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182"),
* RootFolderPath: pulumi.String("ad-hoc"),
* },
* },
* ExportName: pulumi.String("TestExport"),
* Format: pulumi.String(costmanagement.FormatTypeCsv),
* Schedule: &costmanagement.ExportScheduleArgs{
* Recurrence: pulumi.String(costmanagement.RecurrenceTypeWeekly),
* RecurrencePeriod: &costmanagement.ExportRecurrencePeriodArgs{
* From: pulumi.String("2020-06-01T00:00:00Z"),
* To: pulumi.String("2020-10-31T00:00:00Z"),
* },
* Status: pulumi.String(costmanagement.StatusTypeActive),
* },
* Scope: pulumi.String("subscriptions/00000000-0000-0000-0000-000000000000"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.costmanagement.Export;
* import com.pulumi.azurenative.costmanagement.ExportArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDefinitionArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDatasetConfigurationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryInfoArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportDeliveryDestinationArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportScheduleArgs;
* import com.pulumi.azurenative.costmanagement.inputs.ExportRecurrencePeriodArgs;
* 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) {
* var export = new Export("export", ExportArgs.builder()
* .definition(ExportDefinitionArgs.builder()
* .dataSet(ExportDatasetArgs.builder()
* .configuration(ExportDatasetConfigurationArgs.builder()
* .columns(
* "Date",
* "MeterId",
* "ResourceId",
* "ResourceLocation",
* "Quantity")
* .build())
* .granularity("Daily")
* .build())
* .timeframe("MonthToDate")
* .type("ActualCost")
* .build())
* .deliveryInfo(ExportDeliveryInfoArgs.builder()
* .destination(ExportDeliveryDestinationArgs.builder()
* .container("exports")
* .resourceId("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Storage/storageAccounts/ccmeastusdiag182")
* .rootFolderPath("ad-hoc")
* .build())
* .build())
* .exportName("TestExport")
* .format("Csv")
* .schedule(ExportScheduleArgs.builder()
* .recurrence("Weekly")
* .recurrencePeriod(ExportRecurrencePeriodArgs.builder()
* .from("2020-06-01T00:00:00Z")
* .to("2020-10-31T00:00:00Z")
* .build())
* .status("Active")
* .build())
* .scope("subscriptions/00000000-0000-0000-0000-000000000000")
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:costmanagement:Export TestExport /{scope}/providers/Microsoft.CostManagement/exports/{exportName}
* ```
* @property definition Has the definition for the export.
* @property deliveryInfo Has delivery information for the export.
* @property eTag eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
* @property exportName Export Name.
* @property format The format of the export being delivered. Currently only 'Csv' is supported.
* @property partitionData If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
* @property schedule Has schedule information for the export.
* @property scope The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.
*/
public data class ExportArgs(
public val definition: Output? = null,
public val deliveryInfo: Output? = null,
public val eTag: Output? = null,
public val exportName: Output? = null,
public val format: Output>? = null,
public val partitionData: Output? = null,
public val schedule: Output? = null,
public val scope: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.costmanagement.ExportArgs =
com.pulumi.azurenative.costmanagement.ExportArgs.builder()
.definition(definition?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.deliveryInfo(deliveryInfo?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.eTag(eTag?.applyValue({ args0 -> args0 }))
.exportName(exportName?.applyValue({ args0 -> args0 }))
.format(
format?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.partitionData(partitionData?.applyValue({ args0 -> args0 }))
.schedule(schedule?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.scope(scope?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ExportArgs].
*/
@PulumiTagMarker
public class ExportArgsBuilder internal constructor() {
private var definition: Output? = null
private var deliveryInfo: Output? = null
private var eTag: Output? = null
private var exportName: Output? = null
private var format: Output>? = null
private var partitionData: Output? = null
private var schedule: Output? = null
private var scope: Output? = null
/**
* @param value Has the definition for the export.
*/
@JvmName("ruxgccebiwibxdnj")
public suspend fun definition(`value`: Output) {
this.definition = value
}
/**
* @param value Has delivery information for the export.
*/
@JvmName("ihevffscqphnclkl")
public suspend fun deliveryInfo(`value`: Output) {
this.deliveryInfo = value
}
/**
* @param value eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
*/
@JvmName("xmmittdlonfaqvdb")
public suspend fun eTag(`value`: Output) {
this.eTag = value
}
/**
* @param value Export Name.
*/
@JvmName("qclvvetokgijehfn")
public suspend fun exportName(`value`: Output) {
this.exportName = value
}
/**
* @param value The format of the export being delivered. Currently only 'Csv' is supported.
*/
@JvmName("bqhgvsmiswdihbnr")
public suspend fun format(`value`: Output>) {
this.format = value
}
/**
* @param value If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
*/
@JvmName("yfnvtkffwjreflot")
public suspend fun partitionData(`value`: Output) {
this.partitionData = value
}
/**
* @param value Has schedule information for the export.
*/
@JvmName("kofgplhyasscoxbh")
public suspend fun schedule(`value`: Output) {
this.schedule = value
}
/**
* @param value The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.
*/
@JvmName("xcnbqncmixrdggxx")
public suspend fun scope(`value`: Output) {
this.scope = value
}
/**
* @param value Has the definition for the export.
*/
@JvmName("juliucoxvbmdceve")
public suspend fun definition(`value`: ExportDefinitionArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.definition = mapped
}
/**
* @param argument Has the definition for the export.
*/
@JvmName("nvdilmvonhqyujps")
public suspend fun definition(argument: suspend ExportDefinitionArgsBuilder.() -> Unit) {
val toBeMapped = ExportDefinitionArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.definition = mapped
}
/**
* @param value Has delivery information for the export.
*/
@JvmName("ludacwkxcpvhepfj")
public suspend fun deliveryInfo(`value`: ExportDeliveryInfoArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.deliveryInfo = mapped
}
/**
* @param argument Has delivery information for the export.
*/
@JvmName("whgkgxystbvlciyg")
public suspend fun deliveryInfo(argument: suspend ExportDeliveryInfoArgsBuilder.() -> Unit) {
val toBeMapped = ExportDeliveryInfoArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.deliveryInfo = mapped
}
/**
* @param value eTag of the resource. To handle concurrent update scenario, this field will be used to determine whether the user is updating the latest version or not.
*/
@JvmName("xfhjkojfannrjlyv")
public suspend fun eTag(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.eTag = mapped
}
/**
* @param value Export Name.
*/
@JvmName("eiujnxsqhjwmkksh")
public suspend fun exportName(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.exportName = mapped
}
/**
* @param value The format of the export being delivered. Currently only 'Csv' is supported.
*/
@JvmName("buhstjfsfalkifvg")
public suspend fun format(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.format = mapped
}
/**
* @param value The format of the export being delivered. Currently only 'Csv' is supported.
*/
@JvmName("ugjjettuifuewwhe")
public fun format(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.format = mapped
}
/**
* @param value The format of the export being delivered. Currently only 'Csv' is supported.
*/
@JvmName("iwrlbmgclqplurvt")
public fun format(`value`: FormatType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.format = mapped
}
/**
* @param value If set to true, exported data will be partitioned by size and placed in a blob directory together with a manifest file. Note: this option is currently available only for Microsoft Customer Agreement commerce scopes.
*/
@JvmName("aipfhfurfkypvwph")
public suspend fun partitionData(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.partitionData = mapped
}
/**
* @param value Has schedule information for the export.
*/
@JvmName("hhhptafkeiafrrvr")
public suspend fun schedule(`value`: ExportScheduleArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.schedule = mapped
}
/**
* @param argument Has schedule information for the export.
*/
@JvmName("dbcsvukjipiggdek")
public suspend fun schedule(argument: suspend ExportScheduleArgsBuilder.() -> Unit) {
val toBeMapped = ExportScheduleArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.schedule = mapped
}
/**
* @param value The scope associated with export operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resourceGroup scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for Billing Account scope and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/departments/{departmentId}' for Department scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/enrollmentAccounts/{enrollmentAccountId}' for EnrollmentAccount scope, '/providers/Microsoft.Management/managementGroups/{managementGroupId} for Management Group scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope, '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}/invoiceSections/{invoiceSectionId}' for invoiceSection scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId}' specific for partners.
*/
@JvmName("hfqtantkyrvlsxbs")
public suspend fun scope(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.scope = mapped
}
internal fun build(): ExportArgs = ExportArgs(
definition = definition,
deliveryInfo = deliveryInfo,
eTag = eTag,
exportName = exportName,
format = format,
partitionData = partitionData,
schedule = schedule,
scope = scope,
)
}