Module athena

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.

Resources

Others

Resources

Resource Database

class Database extends CustomResource

Provides an Athena database.

Example Usage

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

const hogeBucket = new aws.s3.Bucket("hoge", {});
const hogeDatabase = new aws.athena.Database("hoge", {
    bucket: hogeBucket.bucket,
    name: "databaseName",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/athena_database.html.markdown.

constructor

new Database(name: string, args: DatabaseArgs, opts?: pulumi.CustomResourceOptions)

Create a Database resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DatabaseState, opts?: pulumi.CustomResourceOptions): Database

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Database. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property bucket

public bucket: pulumi.Output<string>;

Name of s3 bucket to save the results of the query execution.

property encryptionConfiguration

public encryptionConfiguration: pulumi.Output<outputs.athena.DatabaseEncryptionConfiguration | undefined>;

The encryption key block AWS Athena uses to decrypt the data in S3, such as an AWS Key Management Service (AWS KMS) key. An encryptionConfiguration block is documented below.

property forceDestroy

public forceDestroy: pulumi.Output<boolean | undefined>;

A boolean that indicates all tables should be deleted from the database so that the database can be destroyed without error. The tables are not recoverable.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

Name of the database to create.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource NamedQuery

class NamedQuery extends CustomResource

Provides an Athena Named Query resource.

Example Usage

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

const testKey = new aws.kms.Key("test", {
    deletionWindowInDays: 7,
    description: "Athena KMS Key",
});
const hogeBucket = new aws.s3.Bucket("hoge", {});
const hogeDatabase = new aws.athena.Database("hoge", {
    bucket: hogeBucket.id,
    name: "users",
});
const testWorkgroup = new aws.athena.Workgroup("test", {
    configuration: {
        resultConfiguration: {
            encryptionConfiguration: {
                encryptionOption: "SSE_KMS",
                kmsKeyArn: testKey.arn,
            },
        },
    },
});
const foo = new aws.athena.NamedQuery("foo", {
    database: hogeDatabase.name,
    query: pulumi.interpolate`SELECT * FROM ${hogeDatabase.name} limit 10;`,
    workgroup: testWorkgroup.id,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/athena_named_query.html.markdown.

constructor

new NamedQuery(name: string, args: NamedQueryArgs, opts?: pulumi.CustomResourceOptions)

Create a NamedQuery resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NamedQueryState, opts?: pulumi.CustomResourceOptions): NamedQuery

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NamedQuery. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property database

public database: pulumi.Output<string>;

The database to which the query belongs.

property description

public description: pulumi.Output<string | undefined>;

A brief explanation of the query. Maximum length of 1024.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The plain language name for the query. Maximum length of 128.

property query

public query: pulumi.Output<string>;

The text of the query itself. In other words, all query statements. Maximum length of 262144.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property workgroup

public workgroup: pulumi.Output<string | undefined>;

The workgroup to which the query belongs. Defaults to primary

Resource Workgroup

class Workgroup extends CustomResource

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", {
    configuration: {
        enforceWorkgroupConfiguration: true,
        publishCloudwatchMetricsEnabled: true,
        resultConfiguration: {
            encryptionConfiguration: {
                encryptionOption: "SSE_KMS",
                kmsKeyArn: aws_kms_key_example.arn,
            },
            outputLocation: "s3://{aws_s3_bucket.example.bucket}/output/",
        },
    },
});

This content is derived from https://github.com/terraform-providers/terraform-provider-aws/blob/master/website/docs/r/athena_workgroup.html.markdown.

constructor

new Workgroup(name: string, args?: WorkgroupArgs, opts?: pulumi.CustomResourceOptions)

Create a Workgroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: WorkgroupState, opts?: pulumi.CustomResourceOptions): Workgroup

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Workgroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property arn

public arn: pulumi.Output<string>;

Amazon Resource Name (ARN) of the workgroup

property configuration

public configuration: pulumi.Output<outputs.athena.WorkgroupConfiguration | undefined>;

Configuration block with various settings for the workgroup. Documented below.

property description

public description: pulumi.Output<string | undefined>;

Description of the workgroup.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

Name of the workgroup.

property state

public state: pulumi.Output<string | undefined>;

State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.

property tags

public tags: pulumi.Output<{[key: string]: any} | undefined>;

Key-value mapping of resource tags for the workgroup.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Others

interface DatabaseArgs

interface DatabaseArgs

The set of arguments for constructing a Database resource.

property bucket

bucket: pulumi.Input<string>;

Name of s3 bucket to save the results of the query execution.

property encryptionConfiguration

encryptionConfiguration?: pulumi.Input<inputs.athena.DatabaseEncryptionConfiguration>;

The encryption key block AWS Athena uses to decrypt the data in S3, such as an AWS Key Management Service (AWS KMS) key. An encryptionConfiguration block is documented below.

property forceDestroy

forceDestroy?: pulumi.Input<boolean>;

A boolean that indicates all tables should be deleted from the database so that the database can be destroyed without error. The tables are not recoverable.

property name

name?: pulumi.Input<string>;

Name of the database to create.

interface DatabaseState

interface DatabaseState

Input properties used for looking up and filtering Database resources.

property bucket

bucket?: pulumi.Input<string>;

Name of s3 bucket to save the results of the query execution.

property encryptionConfiguration

encryptionConfiguration?: pulumi.Input<inputs.athena.DatabaseEncryptionConfiguration>;

The encryption key block AWS Athena uses to decrypt the data in S3, such as an AWS Key Management Service (AWS KMS) key. An encryptionConfiguration block is documented below.

property forceDestroy

forceDestroy?: pulumi.Input<boolean>;

A boolean that indicates all tables should be deleted from the database so that the database can be destroyed without error. The tables are not recoverable.

property name

name?: pulumi.Input<string>;

Name of the database to create.

interface NamedQueryArgs

interface NamedQueryArgs

The set of arguments for constructing a NamedQuery resource.

property database

database: pulumi.Input<string>;

The database to which the query belongs.

property description

description?: pulumi.Input<string>;

A brief explanation of the query. Maximum length of 1024.

property name

name?: pulumi.Input<string>;

The plain language name for the query. Maximum length of 128.

property query

query: pulumi.Input<string>;

The text of the query itself. In other words, all query statements. Maximum length of 262144.

property workgroup

workgroup?: pulumi.Input<string>;

The workgroup to which the query belongs. Defaults to primary

interface NamedQueryState

interface NamedQueryState

Input properties used for looking up and filtering NamedQuery resources.

property database

database?: pulumi.Input<string>;

The database to which the query belongs.

property description

description?: pulumi.Input<string>;

A brief explanation of the query. Maximum length of 1024.

property name

name?: pulumi.Input<string>;

The plain language name for the query. Maximum length of 128.

property query

query?: pulumi.Input<string>;

The text of the query itself. In other words, all query statements. Maximum length of 262144.

property workgroup

workgroup?: pulumi.Input<string>;

The workgroup to which the query belongs. Defaults to primary

interface WorkgroupArgs

interface WorkgroupArgs

The set of arguments for constructing a Workgroup resource.

property configuration

configuration?: pulumi.Input<inputs.athena.WorkgroupConfiguration>;

Configuration block with various settings for the workgroup. Documented below.

property description

description?: pulumi.Input<string>;

Description of the workgroup.

property name

name?: pulumi.Input<string>;

Name of the workgroup.

property state

state?: pulumi.Input<string>;

State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

Key-value mapping of resource tags for the workgroup.

interface WorkgroupState

interface WorkgroupState

Input properties used for looking up and filtering Workgroup resources.

property arn

arn?: pulumi.Input<string>;

Amazon Resource Name (ARN) of the workgroup

property configuration

configuration?: pulumi.Input<inputs.athena.WorkgroupConfiguration>;

Configuration block with various settings for the workgroup. Documented below.

property description

description?: pulumi.Input<string>;

Description of the workgroup.

property name

name?: pulumi.Input<string>;

Name of the workgroup.

property state

state?: pulumi.Input<string>;

State of the workgroup. Valid values are DISABLED or ENABLED. Defaults to ENABLED.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

Key-value mapping of resource tags for the workgroup.