cur

package
v3.38.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LookupReportDefinitionArgs

type LookupReportDefinitionArgs struct {
	// The name of the report definition to match.
	ReportName string `pulumi:"reportName"`
}

A collection of arguments for invoking getReportDefinition.

type LookupReportDefinitionResult

type LookupReportDefinitionResult struct {
	// A list of additional artifacts.
	AdditionalArtifacts []string `pulumi:"additionalArtifacts"`
	// A list of schema elements.
	AdditionalSchemaElements []string `pulumi:"additionalSchemaElements"`
	// Preferred format for report.
	Compression string `pulumi:"compression"`
	// Preferred compression format for report.
	Format string `pulumi:"format"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// If true reports are updated after they have been finalized.
	RefreshClosedReports bool   `pulumi:"refreshClosedReports"`
	ReportName           string `pulumi:"reportName"`
	// Overwrite the previous version of each report or to deliver the report in addition to the previous versions.
	ReportVersioning string `pulumi:"reportVersioning"`
	// Name of customer S3 bucket.
	S3Bucket string `pulumi:"s3Bucket"`
	// Preferred report path prefix.
	S3Prefix string `pulumi:"s3Prefix"`
	// Region of customer S3 bucket.
	S3Region string `pulumi:"s3Region"`
	// The frequency on which report data are measured and displayed.
	TimeUnit string `pulumi:"timeUnit"`
}

A collection of values returned by getReportDefinition.

func LookupReportDefinition

func LookupReportDefinition(ctx *pulumi.Context, args *LookupReportDefinitionArgs, opts ...pulumi.InvokeOption) (*LookupReportDefinitionResult, error)

Use this data source to get information on an AWS Cost and Usage Report Definition.

> *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

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cur"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := cur.LookupReportDefinition(ctx, &cur.LookupReportDefinitionArgs{
			ReportName: "example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type ReportDefinition

type ReportDefinition struct {
	pulumi.CustomResourceState

	// 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 reportVersioning must be OVERWRITE_REPORT.
	AdditionalArtifacts pulumi.StringArrayOutput `pulumi:"additionalArtifacts"`
	// A list of schema elements. Valid values are: RESOURCES.
	AdditionalSchemaElements pulumi.StringArrayOutput `pulumi:"additionalSchemaElements"`
	// Compression format for report. Valid values are: GZIP, ZIP, Parquet. If Parquet is used, then format must also be Parquet.
	Compression pulumi.StringOutput `pulumi:"compression"`
	// Format for report. Valid values are: textORcsv, Parquet. If Parquet is used, then Compression must also be Parquet.
	Format pulumi.StringOutput `pulumi:"format"`
	// Set to true to update your reports after they have been finalized if AWS detects charges related to previous months.
	RefreshClosedReports pulumi.BoolPtrOutput `pulumi:"refreshClosedReports"`
	// Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters.
	ReportName pulumi.StringOutput `pulumi:"reportName"`
	// Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: CREATE_NEW_REPORT, OVERWRITE_REPORT
	ReportVersioning pulumi.StringPtrOutput `pulumi:"reportVersioning"`
	// Name of the existing S3 bucket to hold generated reports.
	S3Bucket pulumi.StringOutput `pulumi:"s3Bucket"`
	// Report path prefix. Limited to 256 characters.
	S3Prefix pulumi.StringPtrOutput `pulumi:"s3Prefix"`
	// Region of the existing S3 bucket to hold generated reports.
	S3Region pulumi.StringOutput `pulumi:"s3Region"`
	// The frequency on which report data are measured and displayed.  Valid values are: HOURLY, DAILY.
	TimeUnit pulumi.StringOutput `pulumi:"timeUnit"`
}

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

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/cur"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := cur.NewReportDefinition(ctx, "exampleCurReportDefinition", &cur.ReportDefinitionArgs{
			AdditionalArtifacts: pulumi.StringArray{
				pulumi.String("REDSHIFT"),
				pulumi.String("QUICKSIGHT"),
			},
			AdditionalSchemaElements: pulumi.StringArray{
				pulumi.String("RESOURCES"),
			},
			Compression: pulumi.String("GZIP"),
			Format:      pulumi.String("textORcsv"),
			ReportName:  pulumi.String("example-cur-report-definition"),
			S3Bucket:    pulumi.String("example-bucket-name"),
			S3Region:    pulumi.String("us-east-1"),
			TimeUnit:    pulumi.String("HOURLY"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

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

```sh

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

```

func GetReportDefinition

func GetReportDefinition(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReportDefinitionState, opts ...pulumi.ResourceOption) (*ReportDefinition, error)

GetReportDefinition gets an existing ReportDefinition resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewReportDefinition

func NewReportDefinition(ctx *pulumi.Context,
	name string, args *ReportDefinitionArgs, opts ...pulumi.ResourceOption) (*ReportDefinition, error)

NewReportDefinition registers a new resource with the given unique name, arguments, and options.

func (*ReportDefinition) ElementType added in v3.13.0

func (*ReportDefinition) ElementType() reflect.Type

func (*ReportDefinition) ToReportDefinitionOutput added in v3.13.0

func (i *ReportDefinition) ToReportDefinitionOutput() ReportDefinitionOutput

func (*ReportDefinition) ToReportDefinitionOutputWithContext added in v3.13.0

func (i *ReportDefinition) ToReportDefinitionOutputWithContext(ctx context.Context) ReportDefinitionOutput

func (*ReportDefinition) ToReportDefinitionPtrOutput added in v3.25.0

func (i *ReportDefinition) ToReportDefinitionPtrOutput() ReportDefinitionPtrOutput

func (*ReportDefinition) ToReportDefinitionPtrOutputWithContext added in v3.25.0

func (i *ReportDefinition) ToReportDefinitionPtrOutputWithContext(ctx context.Context) ReportDefinitionPtrOutput

type ReportDefinitionArgs

type ReportDefinitionArgs struct {
	// 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 reportVersioning must be OVERWRITE_REPORT.
	AdditionalArtifacts pulumi.StringArrayInput
	// A list of schema elements. Valid values are: RESOURCES.
	AdditionalSchemaElements pulumi.StringArrayInput
	// Compression format for report. Valid values are: GZIP, ZIP, Parquet. If Parquet is used, then format must also be Parquet.
	Compression pulumi.StringInput
	// Format for report. Valid values are: textORcsv, Parquet. If Parquet is used, then Compression must also be Parquet.
	Format pulumi.StringInput
	// Set to true to update your reports after they have been finalized if AWS detects charges related to previous months.
	RefreshClosedReports pulumi.BoolPtrInput
	// Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters.
	ReportName pulumi.StringInput
	// Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: CREATE_NEW_REPORT, OVERWRITE_REPORT
	ReportVersioning pulumi.StringPtrInput
	// Name of the existing S3 bucket to hold generated reports.
	S3Bucket pulumi.StringInput
	// Report path prefix. Limited to 256 characters.
	S3Prefix pulumi.StringPtrInput
	// Region of the existing S3 bucket to hold generated reports.
	S3Region pulumi.StringInput
	// The frequency on which report data are measured and displayed.  Valid values are: HOURLY, DAILY.
	TimeUnit pulumi.StringInput
}

The set of arguments for constructing a ReportDefinition resource.

func (ReportDefinitionArgs) ElementType

func (ReportDefinitionArgs) ElementType() reflect.Type

type ReportDefinitionArray added in v3.25.0

type ReportDefinitionArray []ReportDefinitionInput

func (ReportDefinitionArray) ElementType added in v3.25.0

func (ReportDefinitionArray) ElementType() reflect.Type

func (ReportDefinitionArray) ToReportDefinitionArrayOutput added in v3.25.0

func (i ReportDefinitionArray) ToReportDefinitionArrayOutput() ReportDefinitionArrayOutput

func (ReportDefinitionArray) ToReportDefinitionArrayOutputWithContext added in v3.25.0

func (i ReportDefinitionArray) ToReportDefinitionArrayOutputWithContext(ctx context.Context) ReportDefinitionArrayOutput

type ReportDefinitionArrayInput added in v3.25.0

type ReportDefinitionArrayInput interface {
	pulumi.Input

	ToReportDefinitionArrayOutput() ReportDefinitionArrayOutput
	ToReportDefinitionArrayOutputWithContext(context.Context) ReportDefinitionArrayOutput
}

ReportDefinitionArrayInput is an input type that accepts ReportDefinitionArray and ReportDefinitionArrayOutput values. You can construct a concrete instance of `ReportDefinitionArrayInput` via:

ReportDefinitionArray{ ReportDefinitionArgs{...} }

type ReportDefinitionArrayOutput added in v3.25.0

type ReportDefinitionArrayOutput struct{ *pulumi.OutputState }

func (ReportDefinitionArrayOutput) ElementType added in v3.25.0

func (ReportDefinitionArrayOutput) Index added in v3.25.0

func (ReportDefinitionArrayOutput) ToReportDefinitionArrayOutput added in v3.25.0

func (o ReportDefinitionArrayOutput) ToReportDefinitionArrayOutput() ReportDefinitionArrayOutput

func (ReportDefinitionArrayOutput) ToReportDefinitionArrayOutputWithContext added in v3.25.0

func (o ReportDefinitionArrayOutput) ToReportDefinitionArrayOutputWithContext(ctx context.Context) ReportDefinitionArrayOutput

type ReportDefinitionInput added in v3.13.0

type ReportDefinitionInput interface {
	pulumi.Input

	ToReportDefinitionOutput() ReportDefinitionOutput
	ToReportDefinitionOutputWithContext(ctx context.Context) ReportDefinitionOutput
}

type ReportDefinitionMap added in v3.25.0

type ReportDefinitionMap map[string]ReportDefinitionInput

func (ReportDefinitionMap) ElementType added in v3.25.0

func (ReportDefinitionMap) ElementType() reflect.Type

func (ReportDefinitionMap) ToReportDefinitionMapOutput added in v3.25.0

func (i ReportDefinitionMap) ToReportDefinitionMapOutput() ReportDefinitionMapOutput

func (ReportDefinitionMap) ToReportDefinitionMapOutputWithContext added in v3.25.0

func (i ReportDefinitionMap) ToReportDefinitionMapOutputWithContext(ctx context.Context) ReportDefinitionMapOutput

type ReportDefinitionMapInput added in v3.25.0

type ReportDefinitionMapInput interface {
	pulumi.Input

	ToReportDefinitionMapOutput() ReportDefinitionMapOutput
	ToReportDefinitionMapOutputWithContext(context.Context) ReportDefinitionMapOutput
}

ReportDefinitionMapInput is an input type that accepts ReportDefinitionMap and ReportDefinitionMapOutput values. You can construct a concrete instance of `ReportDefinitionMapInput` via:

ReportDefinitionMap{ "key": ReportDefinitionArgs{...} }

type ReportDefinitionMapOutput added in v3.25.0

type ReportDefinitionMapOutput struct{ *pulumi.OutputState }

func (ReportDefinitionMapOutput) ElementType added in v3.25.0

func (ReportDefinitionMapOutput) ElementType() reflect.Type

func (ReportDefinitionMapOutput) MapIndex added in v3.25.0

func (ReportDefinitionMapOutput) ToReportDefinitionMapOutput added in v3.25.0

func (o ReportDefinitionMapOutput) ToReportDefinitionMapOutput() ReportDefinitionMapOutput

func (ReportDefinitionMapOutput) ToReportDefinitionMapOutputWithContext added in v3.25.0

func (o ReportDefinitionMapOutput) ToReportDefinitionMapOutputWithContext(ctx context.Context) ReportDefinitionMapOutput

type ReportDefinitionOutput added in v3.13.0

type ReportDefinitionOutput struct {
	*pulumi.OutputState
}

func (ReportDefinitionOutput) ElementType added in v3.13.0

func (ReportDefinitionOutput) ElementType() reflect.Type

func (ReportDefinitionOutput) ToReportDefinitionOutput added in v3.13.0

func (o ReportDefinitionOutput) ToReportDefinitionOutput() ReportDefinitionOutput

func (ReportDefinitionOutput) ToReportDefinitionOutputWithContext added in v3.13.0

func (o ReportDefinitionOutput) ToReportDefinitionOutputWithContext(ctx context.Context) ReportDefinitionOutput

func (ReportDefinitionOutput) ToReportDefinitionPtrOutput added in v3.25.0

func (o ReportDefinitionOutput) ToReportDefinitionPtrOutput() ReportDefinitionPtrOutput

func (ReportDefinitionOutput) ToReportDefinitionPtrOutputWithContext added in v3.25.0

func (o ReportDefinitionOutput) ToReportDefinitionPtrOutputWithContext(ctx context.Context) ReportDefinitionPtrOutput

type ReportDefinitionPtrInput added in v3.25.0

type ReportDefinitionPtrInput interface {
	pulumi.Input

	ToReportDefinitionPtrOutput() ReportDefinitionPtrOutput
	ToReportDefinitionPtrOutputWithContext(ctx context.Context) ReportDefinitionPtrOutput
}

type ReportDefinitionPtrOutput added in v3.25.0

type ReportDefinitionPtrOutput struct {
	*pulumi.OutputState
}

func (ReportDefinitionPtrOutput) ElementType added in v3.25.0

func (ReportDefinitionPtrOutput) ElementType() reflect.Type

func (ReportDefinitionPtrOutput) ToReportDefinitionPtrOutput added in v3.25.0

func (o ReportDefinitionPtrOutput) ToReportDefinitionPtrOutput() ReportDefinitionPtrOutput

func (ReportDefinitionPtrOutput) ToReportDefinitionPtrOutputWithContext added in v3.25.0

func (o ReportDefinitionPtrOutput) ToReportDefinitionPtrOutputWithContext(ctx context.Context) ReportDefinitionPtrOutput

type ReportDefinitionState

type ReportDefinitionState struct {
	// 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 reportVersioning must be OVERWRITE_REPORT.
	AdditionalArtifacts pulumi.StringArrayInput
	// A list of schema elements. Valid values are: RESOURCES.
	AdditionalSchemaElements pulumi.StringArrayInput
	// Compression format for report. Valid values are: GZIP, ZIP, Parquet. If Parquet is used, then format must also be Parquet.
	Compression pulumi.StringPtrInput
	// Format for report. Valid values are: textORcsv, Parquet. If Parquet is used, then Compression must also be Parquet.
	Format pulumi.StringPtrInput
	// Set to true to update your reports after they have been finalized if AWS detects charges related to previous months.
	RefreshClosedReports pulumi.BoolPtrInput
	// Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters.
	ReportName pulumi.StringPtrInput
	// Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: CREATE_NEW_REPORT, OVERWRITE_REPORT
	ReportVersioning pulumi.StringPtrInput
	// Name of the existing S3 bucket to hold generated reports.
	S3Bucket pulumi.StringPtrInput
	// Report path prefix. Limited to 256 characters.
	S3Prefix pulumi.StringPtrInput
	// Region of the existing S3 bucket to hold generated reports.
	S3Region pulumi.StringPtrInput
	// The frequency on which report data are measured and displayed.  Valid values are: HOURLY, DAILY.
	TimeUnit pulumi.StringPtrInput
}

func (ReportDefinitionState) ElementType

func (ReportDefinitionState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL