ReportDefinitionArgs

data class ReportDefinitionArgs(val additionalArtifacts: Output<List<String>>? = null, val additionalSchemaElements: Output<List<String>>? = null, val compression: Output<String>? = null, val format: Output<String>? = null, val refreshClosedReports: Output<Boolean>? = null, val reportName: Output<String>? = null, val reportVersioning: Output<String>? = null, val s3Bucket: Output<String>? = null, val s3Prefix: Output<String>? = null, val s3Region: Output<String>? = null, val timeUnit: Output<String>? = null) : ConvertibleToJava<ReportDefinitionArgs>

Manages Cost and Usage Report Definitions.

NOTE: The AWS Cost and Usage Report service is only available in us-east-1 currently. NOTE: If AWS Organizations is enabled, only the master account can use this resource.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.cur.ReportDefinition;
import com.pulumi.aws.cur.ReportDefinitionArgs;
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 exampleCurReportDefinition = new ReportDefinition("exampleCurReportDefinition", ReportDefinitionArgs.builder()
.additionalArtifacts(
"REDSHIFT",
"QUICKSIGHT")
.additionalSchemaElements("RESOURCES")
.compression("GZIP")
.format("textORcsv")
.reportName("example-cur-report-definition")
.s3Bucket("example-bucket-name")
.s3Region("us-east-1")
.timeUnit("HOURLY")
.build());
}
}

Import

Report Definitions can be imported using the report_name, e.g.,

$ pulumi import aws:cur/reportDefinition:ReportDefinition example_cur_report_definition example-cur-report-definition

Constructors

Link copied to clipboard
constructor(additionalArtifacts: Output<List<String>>? = null, additionalSchemaElements: Output<List<String>>? = null, compression: Output<String>? = null, format: Output<String>? = null, refreshClosedReports: Output<Boolean>? = null, reportName: Output<String>? = null, reportVersioning: Output<String>? = null, s3Bucket: Output<String>? = null, s3Prefix: Output<String>? = null, s3Region: Output<String>? = null, timeUnit: Output<String>? = null)

Properties

Link copied to clipboard
val additionalArtifacts: Output<List<String>>? = null

A list of additional artifacts. Valid values are: REDSHIFT, QUICKSIGHT, ATHENA. When ATHENA exists within additional_artifacts, no other artifact type can be declared and report_versioning must be OVERWRITE_REPORT.

Link copied to clipboard
val additionalSchemaElements: Output<List<String>>? = null

A list of schema elements. Valid values are: RESOURCES.

Link copied to clipboard
val compression: Output<String>? = null

Compression format for report. Valid values are: GZIP, ZIP, Parquet. If Parquet is used, then format must also be Parquet.

Link copied to clipboard
val format: Output<String>? = null

Format for report. Valid values are: textORcsv, Parquet. If Parquet is used, then Compression must also be Parquet.

Link copied to clipboard
val refreshClosedReports: Output<Boolean>? = null

Set to true to update your reports after they have been finalized if AWS detects charges related to previous months.

Link copied to clipboard
val reportName: Output<String>? = null

Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters.

Link copied to clipboard
val reportVersioning: Output<String>? = null

Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: CREATE_NEW_REPORT and OVERWRITE_REPORT.

Link copied to clipboard
val s3Bucket: Output<String>? = null

Name of the existing S3 bucket to hold generated reports.

Link copied to clipboard
val s3Prefix: Output<String>? = null

Report path prefix. Limited to 256 characters.

Link copied to clipboard
val s3Region: Output<String>? = null

Region of the existing S3 bucket to hold generated reports.

Link copied to clipboard
val timeUnit: Output<String>? = null

The frequency on which report data are measured and displayed. Valid values are: DAILY, HOURLY, MONTHLY.

Functions

Link copied to clipboard
open override fun toJava(): ReportDefinitionArgs