Skip to content

Group ​

The Group resource lets you manage AWS ResourceGroups Groups which help you organize AWS resources in a logical manner.

Minimal Example ​

Create a basic resource group with a name and an optional description.

ts
import AWS from "alchemy/aws/control";

const myResourceGroup = await AWS.ResourceGroups.Group("myResourceGroup", {
  Name: "MyResourceGroup",
  Description: "This is a resource group for my application resources."
});

Advanced Configuration ​

Configure a resource group with a resource query to include specific resources based on tags.

ts
const taggedResourceGroup = await AWS.ResourceGroups.Group("taggedResourceGroup", {
  Name: "TaggedResourcesGroup",
  Description: "This resource group contains resources tagged with 'App:MyApp'.",
  ResourceQuery: {
    Type: "TAG_FILTERS_1_0",
    Query: {
      ResourceTypeFilters: ["AWS::EC2::Instance"],
      TagFilters: [
        {
          Key: "App",
          Values: ["MyApp"]
        }
      ]
    }
  }
});

Adopting Existing Resources ​

Create a resource group that adopts existing resources instead of failing if they already exist.

ts
const adoptExistingResourcesGroup = await AWS.ResourceGroups.Group("adoptExistingResourcesGroup", {
  Name: "AdoptExistingResourcesGroup",
  Description: "This group will adopt existing resources.",
  Resources: ["arn:aws:ec2:us-east-1:123456789012:instance/i-0abcd1234efgh5678"],
  adopt: true
});

Adding Tags ​

Create a resource group with tags for better organization and management.

ts
const taggedGroup = await AWS.ResourceGroups.Group("taggedGroup", {
  Name: "MyTaggedGroup",
  Description: "Resource group with tags.",
  Tags: [
    {
      Key: "Environment",
      Value: "Production"
    },
    {
      Key: "Owner",
      Value: "DevTeam"
    }
  ]
});

Configuring Group Resources ​

Create a resource group specifying a list of resources to include.

ts
const specificResourcesGroup = await AWS.ResourceGroups.Group("specificResourcesGroup", {
  Name: "SpecificResourcesGroup",
  Resources: [
    "arn:aws:s3:::my-bucket",
    "arn:aws:ec2:us-west-2:123456789012:instance/i-0abcd1234efgh5678"
  ]
});