ResourceCollectionArgs

data class ResourceCollectionArgs(val cloudformation: Output<ResourceCollectionCloudformationArgs>? = null, val tags: Output<ResourceCollectionTagsArgs>? = null, val type: Output<String>? = null) : ConvertibleToJava<ResourceCollectionArgs>

Resource for managing an AWS DevOps Guru Resource Collection.

Only one type of resource collection (All Account Resources, CloudFormation, or Tags) can be enabled in an account at a time. To avoid persistent differences, this resource should be defined only once.

Example Usage

All Account Resources

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.devopsguru.ResourceCollection("example", {
type: "AWS_SERVICE",
cloudformation: {
stackNames: ["*"],
},
});
import pulumi
import pulumi_aws as aws
example = aws.devopsguru.ResourceCollection("example",
type="AWS_SERVICE",
cloudformation={
"stack_names": ["*"],
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.DevOpsGuru.ResourceCollection("example", new()
{
Type = "AWS_SERVICE",
Cloudformation = new Aws.DevOpsGuru.Inputs.ResourceCollectionCloudformationArgs
{
StackNames = new[]
{
"*",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/devopsguru"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devopsguru.NewResourceCollection(ctx, "example", &devopsguru.ResourceCollectionArgs{
Type: pulumi.String("AWS_SERVICE"),
Cloudformation: &devopsguru.ResourceCollectionCloudformationArgs{
StackNames: pulumi.StringArray{
pulumi.String("*"),
},
},
})
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.devopsguru.ResourceCollection;
import com.pulumi.aws.devopsguru.ResourceCollectionArgs;
import com.pulumi.aws.devopsguru.inputs.ResourceCollectionCloudformationArgs;
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 ResourceCollection("example", ResourceCollectionArgs.builder()
.type("AWS_SERVICE")
.cloudformation(ResourceCollectionCloudformationArgs.builder()
.stackNames("*")
.build())
.build());
}
}
resources:
example:
type: aws:devopsguru:ResourceCollection
properties:
type: AWS_SERVICE
cloudformation:
stackNames:
- '*'

CloudFormation Stacks

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.devopsguru.ResourceCollection("example", {
type: "AWS_CLOUD_FORMATION",
cloudformation: {
stackNames: ["ExampleStack"],
},
});
import pulumi
import pulumi_aws as aws
example = aws.devopsguru.ResourceCollection("example",
type="AWS_CLOUD_FORMATION",
cloudformation={
"stack_names": ["ExampleStack"],
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.DevOpsGuru.ResourceCollection("example", new()
{
Type = "AWS_CLOUD_FORMATION",
Cloudformation = new Aws.DevOpsGuru.Inputs.ResourceCollectionCloudformationArgs
{
StackNames = new[]
{
"ExampleStack",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/devopsguru"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devopsguru.NewResourceCollection(ctx, "example", &devopsguru.ResourceCollectionArgs{
Type: pulumi.String("AWS_CLOUD_FORMATION"),
Cloudformation: &devopsguru.ResourceCollectionCloudformationArgs{
StackNames: pulumi.StringArray{
pulumi.String("ExampleStack"),
},
},
})
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.devopsguru.ResourceCollection;
import com.pulumi.aws.devopsguru.ResourceCollectionArgs;
import com.pulumi.aws.devopsguru.inputs.ResourceCollectionCloudformationArgs;
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 ResourceCollection("example", ResourceCollectionArgs.builder()
.type("AWS_CLOUD_FORMATION")
.cloudformation(ResourceCollectionCloudformationArgs.builder()
.stackNames("ExampleStack")
.build())
.build());
}
}
resources:
example:
type: aws:devopsguru:ResourceCollection
properties:
type: AWS_CLOUD_FORMATION
cloudformation:
stackNames:
- ExampleStack

Tags

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.devopsguru.ResourceCollection("example", {
type: "AWS_TAGS",
tags: {
appBoundaryKey: "DevOps-Guru-Example",
tagValues: ["Example-Value"],
},
});
import pulumi
import pulumi_aws as aws
example = aws.devopsguru.ResourceCollection("example",
type="AWS_TAGS",
tags={
"app_boundary_key": "DevOps-Guru-Example",
"tag_values": ["Example-Value"],
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.DevOpsGuru.ResourceCollection("example", new()
{
Type = "AWS_TAGS",
Tags = new Aws.DevOpsGuru.Inputs.ResourceCollectionTagsArgs
{
AppBoundaryKey = "DevOps-Guru-Example",
TagValues = new[]
{
"Example-Value",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/devopsguru"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devopsguru.NewResourceCollection(ctx, "example", &devopsguru.ResourceCollectionArgs{
Type: pulumi.String("AWS_TAGS"),
Tags: &devopsguru.ResourceCollectionTagsArgs{
AppBoundaryKey: pulumi.String("DevOps-Guru-Example"),
TagValues: pulumi.StringArray{
pulumi.String("Example-Value"),
},
},
})
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.devopsguru.ResourceCollection;
import com.pulumi.aws.devopsguru.ResourceCollectionArgs;
import com.pulumi.aws.devopsguru.inputs.ResourceCollectionTagsArgs;
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 ResourceCollection("example", ResourceCollectionArgs.builder()
.type("AWS_TAGS")
.tags(ResourceCollectionTagsArgs.builder()
.appBoundaryKey("DevOps-Guru-Example")
.tagValues("Example-Value")
.build())
.build());
}
}
resources:
example:
type: aws:devopsguru:ResourceCollection
properties:
type: AWS_TAGS
tags:
appBoundaryKey: DevOps-Guru-Example
tagValues:
- Example-Value

Tags All Resources

To analyze all resources with the app_boundary_key regardless of the corresponding tag value, set tag_values to ["*"].

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.devopsguru.ResourceCollection("example", {
type: "AWS_TAGS",
tags: {
appBoundaryKey: "DevOps-Guru-Example",
tagValues: ["*"],
},
});
import pulumi
import pulumi_aws as aws
example = aws.devopsguru.ResourceCollection("example",
type="AWS_TAGS",
tags={
"app_boundary_key": "DevOps-Guru-Example",
"tag_values": ["*"],
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.DevOpsGuru.ResourceCollection("example", new()
{
Type = "AWS_TAGS",
Tags = new Aws.DevOpsGuru.Inputs.ResourceCollectionTagsArgs
{
AppBoundaryKey = "DevOps-Guru-Example",
TagValues = new[]
{
"*",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/devopsguru"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devopsguru.NewResourceCollection(ctx, "example", &devopsguru.ResourceCollectionArgs{
Type: pulumi.String("AWS_TAGS"),
Tags: &devopsguru.ResourceCollectionTagsArgs{
AppBoundaryKey: pulumi.String("DevOps-Guru-Example"),
TagValues: pulumi.StringArray{
pulumi.String("*"),
},
},
})
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.devopsguru.ResourceCollection;
import com.pulumi.aws.devopsguru.ResourceCollectionArgs;
import com.pulumi.aws.devopsguru.inputs.ResourceCollectionTagsArgs;
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 ResourceCollection("example", ResourceCollectionArgs.builder()
.type("AWS_TAGS")
.tags(ResourceCollectionTagsArgs.builder()
.appBoundaryKey("DevOps-Guru-Example")
.tagValues("*")
.build())
.build());
}
}
resources:
example:
type: aws:devopsguru:ResourceCollection
properties:
type: AWS_TAGS
tags:
appBoundaryKey: DevOps-Guru-Example
tagValues:
- '*'

Import

Using pulumi import, import DevOps Guru Resource Collection using the id. For example:

$ pulumi import aws:devopsguru/resourceCollection:ResourceCollection example AWS_CLOUD_FORMATION

Constructors

Link copied to clipboard
constructor(cloudformation: Output<ResourceCollectionCloudformationArgs>? = null, tags: Output<ResourceCollectionTagsArgs>? = null, type: Output<String>? = null)

Properties

Link copied to clipboard

A collection of AWS CloudFormation stacks. See cloudformation below for additional details.

Link copied to clipboard
val tags: Output<ResourceCollectionTagsArgs>? = null

AWS tags used to filter the resources in the resource collection. See tags below for additional details.

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

Type of AWS resource collection to create. Valid values are AWS_CLOUD_FORMATION, AWS_SERVICE, and AWS_TAGS. The following arguments are optional:

Functions

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