ReportPlanArgs

data class ReportPlanArgs(val description: Output<String>? = null, val name: Output<String>? = null, val reportDeliveryChannel: Output<ReportPlanReportDeliveryChannelArgs>? = null, val reportSetting: Output<ReportPlanReportSettingArgs>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<ReportPlanArgs>

Provides an AWS Backup Report Plan resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.backup.ReportPlan("example", {
name: "example_name",
description: "example description",
reportDeliveryChannel: {
formats: [
"CSV",
"JSON",
],
s3BucketName: "example-bucket-name",
},
reportSetting: {
reportTemplate: "RESTORE_JOB_REPORT",
},
tags: {
Name: "Example Report Plan",
},
});
import pulumi
import pulumi_aws as aws
example = aws.backup.ReportPlan("example",
name="example_name",
description="example description",
report_delivery_channel={
"formats": [
"CSV",
"JSON",
],
"s3_bucket_name": "example-bucket-name",
},
report_setting={
"report_template": "RESTORE_JOB_REPORT",
},
tags={
"Name": "Example Report Plan",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Backup.ReportPlan("example", new()
{
Name = "example_name",
Description = "example description",
ReportDeliveryChannel = new Aws.Backup.Inputs.ReportPlanReportDeliveryChannelArgs
{
Formats = new[]
{
"CSV",
"JSON",
},
S3BucketName = "example-bucket-name",
},
ReportSetting = new Aws.Backup.Inputs.ReportPlanReportSettingArgs
{
ReportTemplate = "RESTORE_JOB_REPORT",
},
Tags =
{
{ "Name", "Example Report Plan" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/backup"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := backup.NewReportPlan(ctx, "example", &backup.ReportPlanArgs{
Name: pulumi.String("example_name"),
Description: pulumi.String("example description"),
ReportDeliveryChannel: &backup.ReportPlanReportDeliveryChannelArgs{
Formats: pulumi.StringArray{
pulumi.String("CSV"),
pulumi.String("JSON"),
},
S3BucketName: pulumi.String("example-bucket-name"),
},
ReportSetting: &backup.ReportPlanReportSettingArgs{
ReportTemplate: pulumi.String("RESTORE_JOB_REPORT"),
},
Tags: pulumi.StringMap{
"Name": pulumi.String("Example Report Plan"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.backup.ReportPlan;
import com.pulumi.aws.backup.ReportPlanArgs;
import com.pulumi.aws.backup.inputs.ReportPlanReportDeliveryChannelArgs;
import com.pulumi.aws.backup.inputs.ReportPlanReportSettingArgs;
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 example = new ReportPlan("example", ReportPlanArgs.builder()
.name("example_name")
.description("example description")
.reportDeliveryChannel(ReportPlanReportDeliveryChannelArgs.builder()
.formats(
"CSV",
"JSON")
.s3BucketName("example-bucket-name")
.build())
.reportSetting(ReportPlanReportSettingArgs.builder()
.reportTemplate("RESTORE_JOB_REPORT")
.build())
.tags(Map.of("Name", "Example Report Plan"))
.build());
}
}
resources:
example:
type: aws:backup:ReportPlan
properties:
name: example_name
description: example description
reportDeliveryChannel:
formats:
- CSV
- JSON
s3BucketName: example-bucket-name
reportSetting:
reportTemplate: RESTORE_JOB_REPORT
tags:
Name: Example Report Plan

Import

Using pulumi import, import Backup Report Plan using the id which corresponds to the name of the Backup Report Plan. For example:

$ pulumi import aws:backup/reportPlan:ReportPlan test <id>

Constructors

Link copied to clipboard
constructor(description: Output<String>? = null, name: Output<String>? = null, reportDeliveryChannel: Output<ReportPlanReportDeliveryChannelArgs>? = null, reportSetting: Output<ReportPlanReportSettingArgs>? = null, tags: Output<Map<String, String>>? = null)

Properties

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

The description of the report plan with a maximum of 1,024 characters

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

The unique name of the report plan. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.

Link copied to clipboard

An object that contains information about where and how to deliver your reports, specifically your Amazon S3 bucket name, S3 key prefix, and the formats of your reports. Detailed below.

Link copied to clipboard

An object that identifies the report template for the report. Reports are built using a report template. Detailed below.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Metadata that you can assign to help organize the report plans you create. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Functions

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