1. Packages
  2. AWS
  3. API Docs
  4. athena
  5. Workgroup
AWS v6.76.0 published on Tuesday, Apr 8, 2025 by Pulumi

aws.athena.Workgroup

Explore with Pulumi AI

Provides an Athena Workgroup.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.athena.Workgroup("example", {
    name: "example",
    configuration: {
        enforceWorkgroupConfiguration: true,
        publishCloudwatchMetricsEnabled: true,
        resultConfiguration: {
            outputLocation: `s3://${exampleAwsS3Bucket.bucket}/output/`,
            encryptionConfiguration: {
                encryptionOption: "SSE_KMS",
                kmsKeyArn: exampleAwsKmsKey.arn,
            },
        },
    },
});
Copy
import pulumi
import pulumi_aws as aws

example = aws.athena.Workgroup("example",
    name="example",
    configuration={
        "enforce_workgroup_configuration": True,
        "publish_cloudwatch_metrics_enabled": True,
        "result_configuration": {
            "output_location": f"s3://{example_aws_s3_bucket['bucket']}/output/",
            "encryption_configuration": {
                "encryption_option": "SSE_KMS",
                "kms_key_arn": example_aws_kms_key["arn"],
            },
        },
    })
Copy
package main

import (
	"fmt"

	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/athena"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := athena.NewWorkgroup(ctx, "example", &athena.WorkgroupArgs{
			Name: pulumi.String("example"),
			Configuration: &athena.WorkgroupConfigurationArgs{
				EnforceWorkgroupConfiguration:   pulumi.Bool(true),
				PublishCloudwatchMetricsEnabled: pulumi.Bool(true),
				ResultConfiguration: &athena.WorkgroupConfigurationResultConfigurationArgs{
					OutputLocation: pulumi.Sprintf("s3://%v/output/", exampleAwsS3Bucket.Bucket),
					EncryptionConfiguration: &athena.WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs{
						EncryptionOption: pulumi.String("SSE_KMS"),
						KmsKeyArn:        pulumi.Any(exampleAwsKmsKey.Arn),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var example = new Aws.Athena.Workgroup("example", new()
    {
        Name = "example",
        Configuration = new Aws.Athena.Inputs.WorkgroupConfigurationArgs
        {
            EnforceWorkgroupConfiguration = true,
            PublishCloudwatchMetricsEnabled = true,
            ResultConfiguration = new Aws.Athena.Inputs.WorkgroupConfigurationResultConfigurationArgs
            {
                OutputLocation = $"s3://{exampleAwsS3Bucket.Bucket}/output/",
                EncryptionConfiguration = new Aws.Athena.Inputs.WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs
                {
                    EncryptionOption = "SSE_KMS",
                    KmsKeyArn = exampleAwsKmsKey.Arn,
                },
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.athena.Workgroup;
import com.pulumi.aws.athena.WorkgroupArgs;
import com.pulumi.aws.athena.inputs.WorkgroupConfigurationArgs;
import com.pulumi.aws.athena.inputs.WorkgroupConfigurationResultConfigurationArgs;
import com.pulumi.aws.athena.inputs.WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs;
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 Workgroup("example", WorkgroupArgs.builder()
            .name("example")
            .configuration(WorkgroupConfigurationArgs.builder()
                .enforceWorkgroupConfiguration(true)
                .publishCloudwatchMetricsEnabled(true)
                .resultConfiguration(WorkgroupConfigurationResultConfigurationArgs.builder()
                    .outputLocation(String.format("s3://%s/output/", exampleAwsS3Bucket.bucket()))
                    .encryptionConfiguration(WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs.builder()
                        .encryptionOption("SSE_KMS")
                        .kmsKeyArn(exampleAwsKmsKey.arn())
                        .build())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  example:
    type: aws:athena:Workgroup
    properties:
      name: example
      configuration:
        enforceWorkgroupConfiguration: true
        publishCloudwatchMetricsEnabled: true
        resultConfiguration:
          outputLocation: s3://${exampleAwsS3Bucket.bucket}/output/
          encryptionConfiguration:
            encryptionOption: SSE_KMS
            kmsKeyArn: ${exampleAwsKmsKey.arn}
Copy

Create Workgroup Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Workgroup(name: string, args?: WorkgroupArgs, opts?: CustomResourceOptions);
@overload
def Workgroup(resource_name: str,
              args: Optional[WorkgroupArgs] = None,
              opts: Optional[ResourceOptions] = None)

@overload
def Workgroup(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              configuration: Optional[WorkgroupConfigurationArgs] = None,
              description: Optional[str] = None,
              force_destroy: Optional[bool] = None,
              name: Optional[str] = None,
              state: Optional[str] = None,
              tags: Optional[Mapping[str, str]] = None)
func NewWorkgroup(ctx *Context, name string, args *WorkgroupArgs, opts ...ResourceOption) (*Workgroup, error)
public Workgroup(string name, WorkgroupArgs? args = null, CustomResourceOptions? opts = null)
public Workgroup(String name, WorkgroupArgs args)
public Workgroup(String name, WorkgroupArgs args, CustomResourceOptions options)
type: aws:athena:Workgroup
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args WorkgroupArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args WorkgroupArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args WorkgroupArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args WorkgroupArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. WorkgroupArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var workgroupResource = new Aws.Athena.Workgroup("workgroupResource", new()
{
    Configuration = new Aws.Athena.Inputs.WorkgroupConfigurationArgs
    {
        BytesScannedCutoffPerQuery = 0,
        EnforceWorkgroupConfiguration = false,
        EngineVersion = new Aws.Athena.Inputs.WorkgroupConfigurationEngineVersionArgs
        {
            EffectiveEngineVersion = "string",
            SelectedEngineVersion = "string",
        },
        ExecutionRole = "string",
        PublishCloudwatchMetricsEnabled = false,
        RequesterPaysEnabled = false,
        ResultConfiguration = new Aws.Athena.Inputs.WorkgroupConfigurationResultConfigurationArgs
        {
            AclConfiguration = new Aws.Athena.Inputs.WorkgroupConfigurationResultConfigurationAclConfigurationArgs
            {
                S3AclOption = "string",
            },
            EncryptionConfiguration = new Aws.Athena.Inputs.WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs
            {
                EncryptionOption = "string",
                KmsKeyArn = "string",
            },
            ExpectedBucketOwner = "string",
            OutputLocation = "string",
        },
    },
    Description = "string",
    ForceDestroy = false,
    Name = "string",
    State = "string",
    Tags = 
    {
        { "string", "string" },
    },
});
Copy
example, err := athena.NewWorkgroup(ctx, "workgroupResource", &athena.WorkgroupArgs{
	Configuration: &athena.WorkgroupConfigurationArgs{
		BytesScannedCutoffPerQuery:    pulumi.Int(0),
		EnforceWorkgroupConfiguration: pulumi.Bool(false),
		EngineVersion: &athena.WorkgroupConfigurationEngineVersionArgs{
			EffectiveEngineVersion: pulumi.String("string"),
			SelectedEngineVersion:  pulumi.String("string"),
		},
		ExecutionRole:                   pulumi.String("string"),
		PublishCloudwatchMetricsEnabled: pulumi.Bool(false),
		RequesterPaysEnabled:            pulumi.Bool(false),
		ResultConfiguration: &athena.WorkgroupConfigurationResultConfigurationArgs{
			AclConfiguration: &athena.WorkgroupConfigurationResultConfigurationAclConfigurationArgs{
				S3AclOption: pulumi.String("string"),
			},
			EncryptionConfiguration: &athena.WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs{
				EncryptionOption: pulumi.String("string"),
				KmsKeyArn:        pulumi.String("string"),
			},
			ExpectedBucketOwner: pulumi.String("string"),
			OutputLocation:      pulumi.String("string"),
		},
	},
	Description:  pulumi.String("string"),
	ForceDestroy: pulumi.Bool(false),
	Name:         pulumi.String("string"),
	State:        pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
Copy
var workgroupResource = new Workgroup("workgroupResource", WorkgroupArgs.builder()
    .configuration(WorkgroupConfigurationArgs.builder()
        .bytesScannedCutoffPerQuery(0)
        .enforceWorkgroupConfiguration(false)
        .engineVersion(WorkgroupConfigurationEngineVersionArgs.builder()
            .effectiveEngineVersion("string")
            .selectedEngineVersion("string")
            .build())
        .executionRole("string")
        .publishCloudwatchMetricsEnabled(false)
        .requesterPaysEnabled(false)
        .resultConfiguration(WorkgroupConfigurationResultConfigurationArgs.builder()
            .aclConfiguration(WorkgroupConfigurationResultConfigurationAclConfigurationArgs.builder()
                .s3AclOption("string")
                .build())
            .encryptionConfiguration(WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs.builder()
                .encryptionOption("string")
                .kmsKeyArn("string")
                .build())
            .expectedBucketOwner("string")
            .outputLocation("string")
            .build())
        .build())
    .description("string")
    .forceDestroy(false)
    .name("string")
    .state("string")
    .tags(Map.of("string", "string"))
    .build());
Copy
workgroup_resource = aws.athena.Workgroup("workgroupResource",
    configuration={
        "bytes_scanned_cutoff_per_query": 0,
        "enforce_workgroup_configuration": False,
        "engine_version": {
            "effective_engine_version": "string",
            "selected_engine_version": "string",
        },
        "execution_role": "string",
        "publish_cloudwatch_metrics_enabled": False,
        "requester_pays_enabled": False,
        "result_configuration": {
            "acl_configuration": {
                "s3_acl_option": "string",
            },
            "encryption_configuration": {
                "encryption_option": "string",
                "kms_key_arn": "string",
            },
            "expected_bucket_owner": "string",
            "output_location": "string",
        },
    },
    description="string",
    force_destroy=False,
    name="string",
    state="string",
    tags={
        "string": "string",
    })
Copy
const workgroupResource = new aws.athena.Workgroup("workgroupResource", {
    configuration: {
        bytesScannedCutoffPerQuery: 0,
        enforceWorkgroupConfiguration: false,
        engineVersion: {
            effectiveEngineVersion: "string",
            selectedEngineVersion: "string",
        },
        executionRole: "string",
        publishCloudwatchMetricsEnabled: false,
        requesterPaysEnabled: false,
        resultConfiguration: {
            aclConfiguration: {
                s3AclOption: "string",
            },
            encryptionConfiguration: {
                encryptionOption: "string",
                kmsKeyArn: "string",
            },
            expectedBucketOwner: "string",
            outputLocation: "string",
        },
    },
    description: "string",
    forceDestroy: false,
    name: "string",
    state: "string",
    tags: {
        string: "string",
    },
});
Copy
type: aws:athena:Workgroup
properties:
    configuration:
        bytesScannedCutoffPerQuery: 0
        enforceWorkgroupConfiguration: false
        engineVersion:
            effectiveEngineVersion: string
            selectedEngineVersion: string
        executionRole: string
        publishCloudwatchMetricsEnabled: false
        requesterPaysEnabled: false
        resultConfiguration:
            aclConfiguration:
                s3AclOption: string
            encryptionConfiguration:
                encryptionOption: string
                kmsKeyArn: string
            expectedBucketOwner: string
            outputLocation: string
    description: string
    forceDestroy: false
    name: string
    state: string
    tags:
        string: string
Copy

Workgroup Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Workgroup resource accepts the following input properties:

Configuration WorkgroupConfiguration
Configuration block with various settings for the workgroup. Documented below.
Description string
Description of the workgroup.
ForceDestroy bool
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
Name Changes to this property will trigger replacement. string
Name of the workgroup.
State string
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
Tags Dictionary<string, string>
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
Configuration WorkgroupConfigurationArgs
Configuration block with various settings for the workgroup. Documented below.
Description string
Description of the workgroup.
ForceDestroy bool
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
Name Changes to this property will trigger replacement. string
Name of the workgroup.
State string
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
Tags map[string]string
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
configuration WorkgroupConfiguration
Configuration block with various settings for the workgroup. Documented below.
description String
Description of the workgroup.
forceDestroy Boolean
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. String
Name of the workgroup.
state String
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags Map<String,String>
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
configuration WorkgroupConfiguration
Configuration block with various settings for the workgroup. Documented below.
description string
Description of the workgroup.
forceDestroy boolean
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. string
Name of the workgroup.
state string
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags {[key: string]: string}
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
configuration WorkgroupConfigurationArgs
Configuration block with various settings for the workgroup. Documented below.
description str
Description of the workgroup.
force_destroy bool
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. str
Name of the workgroup.
state str
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags Mapping[str, str]
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
configuration Property Map
Configuration block with various settings for the workgroup. Documented below.
description String
Description of the workgroup.
forceDestroy Boolean
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. String
Name of the workgroup.
state String
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags Map<String>
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Outputs

All input properties are implicitly available as output properties. Additionally, the Workgroup resource produces the following output properties:

Arn string
ARN of the workgroup
Id string
The provider-assigned unique ID for this managed resource.
TagsAll Dictionary<string, string>
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Arn string
ARN of the workgroup
Id string
The provider-assigned unique ID for this managed resource.
TagsAll map[string]string
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn String
ARN of the workgroup
id String
The provider-assigned unique ID for this managed resource.
tagsAll Map<String,String>
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn string
ARN of the workgroup
id string
The provider-assigned unique ID for this managed resource.
tagsAll {[key: string]: string}
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn str
ARN of the workgroup
id str
The provider-assigned unique ID for this managed resource.
tags_all Mapping[str, str]
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn String
ARN of the workgroup
id String
The provider-assigned unique ID for this managed resource.
tagsAll Map<String>
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Look up Existing Workgroup Resource

Get an existing Workgroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: WorkgroupState, opts?: CustomResourceOptions): Workgroup
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        arn: Optional[str] = None,
        configuration: Optional[WorkgroupConfigurationArgs] = None,
        description: Optional[str] = None,
        force_destroy: Optional[bool] = None,
        name: Optional[str] = None,
        state: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None) -> Workgroup
func GetWorkgroup(ctx *Context, name string, id IDInput, state *WorkgroupState, opts ...ResourceOption) (*Workgroup, error)
public static Workgroup Get(string name, Input<string> id, WorkgroupState? state, CustomResourceOptions? opts = null)
public static Workgroup get(String name, Output<String> id, WorkgroupState state, CustomResourceOptions options)
resources:  _:    type: aws:athena:Workgroup    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
Arn string
ARN of the workgroup
Configuration WorkgroupConfiguration
Configuration block with various settings for the workgroup. Documented below.
Description string
Description of the workgroup.
ForceDestroy bool
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
Name Changes to this property will trigger replacement. string
Name of the workgroup.
State string
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
Tags Dictionary<string, string>
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll Dictionary<string, string>
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Arn string
ARN of the workgroup
Configuration WorkgroupConfigurationArgs
Configuration block with various settings for the workgroup. Documented below.
Description string
Description of the workgroup.
ForceDestroy bool
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
Name Changes to this property will trigger replacement. string
Name of the workgroup.
State string
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
Tags map[string]string
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
TagsAll map[string]string
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn String
ARN of the workgroup
configuration WorkgroupConfiguration
Configuration block with various settings for the workgroup. Documented below.
description String
Description of the workgroup.
forceDestroy Boolean
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. String
Name of the workgroup.
state String
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags Map<String,String>
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll Map<String,String>
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn string
ARN of the workgroup
configuration WorkgroupConfiguration
Configuration block with various settings for the workgroup. Documented below.
description string
Description of the workgroup.
forceDestroy boolean
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. string
Name of the workgroup.
state string
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags {[key: string]: string}
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll {[key: string]: string}
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn str
ARN of the workgroup
configuration WorkgroupConfigurationArgs
Configuration block with various settings for the workgroup. Documented below.
description str
Description of the workgroup.
force_destroy bool
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. str
Name of the workgroup.
state str
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags Mapping[str, str]
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tags_all Mapping[str, str]
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

arn String
ARN of the workgroup
configuration Property Map
Configuration block with various settings for the workgroup. Documented below.
description String
Description of the workgroup.
forceDestroy Boolean
Option to delete the workgroup and its contents even if the workgroup contains any named queries.
name Changes to this property will trigger replacement. String
Name of the workgroup.
state String
State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.
tags Map<String>
Key-value map of resource tags for the workgroup. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
tagsAll Map<String>
Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Deprecated: Please use tags instead.

Supporting Types

WorkgroupConfiguration
, WorkgroupConfigurationArgs

BytesScannedCutoffPerQuery int
Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least 10485760.
EnforceWorkgroupConfiguration bool
Boolean whether the settings for the workgroup override client-side settings. For more information, see Workgroup Settings Override Client-Side Settings. Defaults to true.
EngineVersion WorkgroupConfigurationEngineVersion
Configuration block for the Athena Engine Versioning. For more information, see Athena Engine Versioning. See Engine Version below.
ExecutionRole string
Role used in a notebook session for accessing the user's resources.
PublishCloudwatchMetricsEnabled bool
Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to true.
RequesterPaysEnabled bool
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide.
ResultConfiguration WorkgroupConfigurationResultConfiguration
Configuration block with result settings. See Result Configuration below.
BytesScannedCutoffPerQuery int
Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least 10485760.
EnforceWorkgroupConfiguration bool
Boolean whether the settings for the workgroup override client-side settings. For more information, see Workgroup Settings Override Client-Side Settings. Defaults to true.
EngineVersion WorkgroupConfigurationEngineVersion
Configuration block for the Athena Engine Versioning. For more information, see Athena Engine Versioning. See Engine Version below.
ExecutionRole string
Role used in a notebook session for accessing the user's resources.
PublishCloudwatchMetricsEnabled bool
Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to true.
RequesterPaysEnabled bool
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide.
ResultConfiguration WorkgroupConfigurationResultConfiguration
Configuration block with result settings. See Result Configuration below.
bytesScannedCutoffPerQuery Integer
Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least 10485760.
enforceWorkgroupConfiguration Boolean
Boolean whether the settings for the workgroup override client-side settings. For more information, see Workgroup Settings Override Client-Side Settings. Defaults to true.
engineVersion WorkgroupConfigurationEngineVersion
Configuration block for the Athena Engine Versioning. For more information, see Athena Engine Versioning. See Engine Version below.
executionRole String
Role used in a notebook session for accessing the user's resources.
publishCloudwatchMetricsEnabled Boolean
Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to true.
requesterPaysEnabled Boolean
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide.
resultConfiguration WorkgroupConfigurationResultConfiguration
Configuration block with result settings. See Result Configuration below.
bytesScannedCutoffPerQuery number
Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least 10485760.
enforceWorkgroupConfiguration boolean
Boolean whether the settings for the workgroup override client-side settings. For more information, see Workgroup Settings Override Client-Side Settings. Defaults to true.
engineVersion WorkgroupConfigurationEngineVersion
Configuration block for the Athena Engine Versioning. For more information, see Athena Engine Versioning. See Engine Version below.
executionRole string
Role used in a notebook session for accessing the user's resources.
publishCloudwatchMetricsEnabled boolean
Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to true.
requesterPaysEnabled boolean
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide.
resultConfiguration WorkgroupConfigurationResultConfiguration
Configuration block with result settings. See Result Configuration below.
bytes_scanned_cutoff_per_query int
Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least 10485760.
enforce_workgroup_configuration bool
Boolean whether the settings for the workgroup override client-side settings. For more information, see Workgroup Settings Override Client-Side Settings. Defaults to true.
engine_version WorkgroupConfigurationEngineVersion
Configuration block for the Athena Engine Versioning. For more information, see Athena Engine Versioning. See Engine Version below.
execution_role str
Role used in a notebook session for accessing the user's resources.
publish_cloudwatch_metrics_enabled bool
Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to true.
requester_pays_enabled bool
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide.
result_configuration WorkgroupConfigurationResultConfiguration
Configuration block with result settings. See Result Configuration below.
bytesScannedCutoffPerQuery Number
Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least 10485760.
enforceWorkgroupConfiguration Boolean
Boolean whether the settings for the workgroup override client-side settings. For more information, see Workgroup Settings Override Client-Side Settings. Defaults to true.
engineVersion Property Map
Configuration block for the Athena Engine Versioning. For more information, see Athena Engine Versioning. See Engine Version below.
executionRole String
Role used in a notebook session for accessing the user's resources.
publishCloudwatchMetricsEnabled Boolean
Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to true.
requesterPaysEnabled Boolean
If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see Requester Pays Buckets in the Amazon Simple Storage Service Developer Guide.
resultConfiguration Property Map
Configuration block with result settings. See Result Configuration below.

WorkgroupConfigurationEngineVersion
, WorkgroupConfigurationEngineVersionArgs

EffectiveEngineVersion string
The engine version on which the query runs. If selected_engine_version is set to AUTO, the effective engine version is chosen by Athena.
SelectedEngineVersion string
Requested engine version. Defaults to AUTO.
EffectiveEngineVersion string
The engine version on which the query runs. If selected_engine_version is set to AUTO, the effective engine version is chosen by Athena.
SelectedEngineVersion string
Requested engine version. Defaults to AUTO.
effectiveEngineVersion String
The engine version on which the query runs. If selected_engine_version is set to AUTO, the effective engine version is chosen by Athena.
selectedEngineVersion String
Requested engine version. Defaults to AUTO.
effectiveEngineVersion string
The engine version on which the query runs. If selected_engine_version is set to AUTO, the effective engine version is chosen by Athena.
selectedEngineVersion string
Requested engine version. Defaults to AUTO.
effective_engine_version str
The engine version on which the query runs. If selected_engine_version is set to AUTO, the effective engine version is chosen by Athena.
selected_engine_version str
Requested engine version. Defaults to AUTO.
effectiveEngineVersion String
The engine version on which the query runs. If selected_engine_version is set to AUTO, the effective engine version is chosen by Athena.
selectedEngineVersion String
Requested engine version. Defaults to AUTO.

WorkgroupConfigurationResultConfiguration
, WorkgroupConfigurationResultConfigurationArgs

AclConfiguration WorkgroupConfigurationResultConfigurationAclConfiguration
That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.
EncryptionConfiguration WorkgroupConfigurationResultConfigurationEncryptionConfiguration
Configuration block with encryption settings. See Encryption Configuration below.
ExpectedBucketOwner string
AWS account ID that you expect to be the owner of the Amazon S3 bucket.
OutputLocation string
Location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. For more information, see Queries and Query Result Files.
AclConfiguration WorkgroupConfigurationResultConfigurationAclConfiguration
That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.
EncryptionConfiguration WorkgroupConfigurationResultConfigurationEncryptionConfiguration
Configuration block with encryption settings. See Encryption Configuration below.
ExpectedBucketOwner string
AWS account ID that you expect to be the owner of the Amazon S3 bucket.
OutputLocation string
Location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. For more information, see Queries and Query Result Files.
aclConfiguration WorkgroupConfigurationResultConfigurationAclConfiguration
That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.
encryptionConfiguration WorkgroupConfigurationResultConfigurationEncryptionConfiguration
Configuration block with encryption settings. See Encryption Configuration below.
expectedBucketOwner String
AWS account ID that you expect to be the owner of the Amazon S3 bucket.
outputLocation String
Location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. For more information, see Queries and Query Result Files.
aclConfiguration WorkgroupConfigurationResultConfigurationAclConfiguration
That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.
encryptionConfiguration WorkgroupConfigurationResultConfigurationEncryptionConfiguration
Configuration block with encryption settings. See Encryption Configuration below.
expectedBucketOwner string
AWS account ID that you expect to be the owner of the Amazon S3 bucket.
outputLocation string
Location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. For more information, see Queries and Query Result Files.
acl_configuration WorkgroupConfigurationResultConfigurationAclConfiguration
That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.
encryption_configuration WorkgroupConfigurationResultConfigurationEncryptionConfiguration
Configuration block with encryption settings. See Encryption Configuration below.
expected_bucket_owner str
AWS account ID that you expect to be the owner of the Amazon S3 bucket.
output_location str
Location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. For more information, see Queries and Query Result Files.
aclConfiguration Property Map
That an Amazon S3 canned ACL should be set to control ownership of stored query results. See ACL Configuration below.
encryptionConfiguration Property Map
Configuration block with encryption settings. See Encryption Configuration below.
expectedBucketOwner String
AWS account ID that you expect to be the owner of the Amazon S3 bucket.
outputLocation String
Location in Amazon S3 where your query results are stored, such as s3://path/to/query/bucket/. For more information, see Queries and Query Result Files.

WorkgroupConfigurationResultConfigurationAclConfiguration
, WorkgroupConfigurationResultConfigurationAclConfigurationArgs

S3AclOption This property is required. string
Amazon S3 canned ACL that Athena should specify when storing query results. Valid value is BUCKET_OWNER_FULL_CONTROL.
S3AclOption This property is required. string
Amazon S3 canned ACL that Athena should specify when storing query results. Valid value is BUCKET_OWNER_FULL_CONTROL.
s3AclOption This property is required. String
Amazon S3 canned ACL that Athena should specify when storing query results. Valid value is BUCKET_OWNER_FULL_CONTROL.
s3AclOption This property is required. string
Amazon S3 canned ACL that Athena should specify when storing query results. Valid value is BUCKET_OWNER_FULL_CONTROL.
s3_acl_option This property is required. str
Amazon S3 canned ACL that Athena should specify when storing query results. Valid value is BUCKET_OWNER_FULL_CONTROL.
s3AclOption This property is required. String
Amazon S3 canned ACL that Athena should specify when storing query results. Valid value is BUCKET_OWNER_FULL_CONTROL.

WorkgroupConfigurationResultConfigurationEncryptionConfiguration
, WorkgroupConfigurationResultConfigurationEncryptionConfigurationArgs

EncryptionOption string
Whether Amazon S3 server-side encryption with Amazon S3-managed keys (SSE_S3), server-side encryption with KMS-managed keys (SSE_KMS), or client-side encryption with KMS-managed keys (CSE_KMS) is used. If a query runs in a workgroup and the workgroup overrides client-side settings, then the workgroup's setting for encryption is used. It specifies whether query results must be encrypted, for all queries that run in this workgroup.
KmsKeyArn string
For SSE_KMS and CSE_KMS, this is the KMS key ARN.
EncryptionOption string
Whether Amazon S3 server-side encryption with Amazon S3-managed keys (SSE_S3), server-side encryption with KMS-managed keys (SSE_KMS), or client-side encryption with KMS-managed keys (CSE_KMS) is used. If a query runs in a workgroup and the workgroup overrides client-side settings, then the workgroup's setting for encryption is used. It specifies whether query results must be encrypted, for all queries that run in this workgroup.
KmsKeyArn string
For SSE_KMS and CSE_KMS, this is the KMS key ARN.
encryptionOption String
Whether Amazon S3 server-side encryption with Amazon S3-managed keys (SSE_S3), server-side encryption with KMS-managed keys (SSE_KMS), or client-side encryption with KMS-managed keys (CSE_KMS) is used. If a query runs in a workgroup and the workgroup overrides client-side settings, then the workgroup's setting for encryption is used. It specifies whether query results must be encrypted, for all queries that run in this workgroup.
kmsKeyArn String
For SSE_KMS and CSE_KMS, this is the KMS key ARN.
encryptionOption string
Whether Amazon S3 server-side encryption with Amazon S3-managed keys (SSE_S3), server-side encryption with KMS-managed keys (SSE_KMS), or client-side encryption with KMS-managed keys (CSE_KMS) is used. If a query runs in a workgroup and the workgroup overrides client-side settings, then the workgroup's setting for encryption is used. It specifies whether query results must be encrypted, for all queries that run in this workgroup.
kmsKeyArn string
For SSE_KMS and CSE_KMS, this is the KMS key ARN.
encryption_option str
Whether Amazon S3 server-side encryption with Amazon S3-managed keys (SSE_S3), server-side encryption with KMS-managed keys (SSE_KMS), or client-side encryption with KMS-managed keys (CSE_KMS) is used. If a query runs in a workgroup and the workgroup overrides client-side settings, then the workgroup's setting for encryption is used. It specifies whether query results must be encrypted, for all queries that run in this workgroup.
kms_key_arn str
For SSE_KMS and CSE_KMS, this is the KMS key ARN.
encryptionOption String
Whether Amazon S3 server-side encryption with Amazon S3-managed keys (SSE_S3), server-side encryption with KMS-managed keys (SSE_KMS), or client-side encryption with KMS-managed keys (CSE_KMS) is used. If a query runs in a workgroup and the workgroup overrides client-side settings, then the workgroup's setting for encryption is used. It specifies whether query results must be encrypted, for all queries that run in this workgroup.
kmsKeyArn String
For SSE_KMS and CSE_KMS, this is the KMS key ARN.

Import

Using pulumi import, import Athena Workgroups using their name. For example:

$ pulumi import aws:athena/workgroup:Workgroup example example
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.