UNPKG

@pulumi/aws-native

Version:

The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)

159 lines (158 loc) 6.48 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; import * as enums from "../types/enums"; /** * Resource schema for AWS::Athena::DataCatalog * * ## Example Usage * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const myAthenaDataCatalog = new aws_native.athena.DataCatalog("myAthenaDataCatalog", { * name: "MyCustomDataCatalog", * type: aws_native.athena.DataCatalogType.Hive, * description: "Custom Hive Catalog Description", * tags: [ * { * key: "key1", * value: "value1", * }, * { * key: "key2", * value: "value2", * }, * ], * parameters: { * "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:lambdaname", * }, * }); * * ``` * ### Example * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws_native from "@pulumi/aws-native"; * * const myAthenaDataCatalog = new aws_native.athena.DataCatalog("myAthenaDataCatalog", { * name: "MyCustomDataCatalog", * type: aws_native.athena.DataCatalogType.Hive, * description: "Custom Hive Catalog Description", * tags: [ * { * key: "key1", * value: "value1", * }, * { * key: "key2", * value: "value2", * }, * ], * parameters: { * "metadata-function": "arn:aws:lambda:us-west-2:111122223333:function:lambdaname", * }, * }); * * ``` */ export declare class DataCatalog extends pulumi.CustomResource { /** * Get an existing DataCatalog resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): DataCatalog; /** * Returns true if the given object is an instance of DataCatalog. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is DataCatalog; /** * The type of connection for a FEDERATED data catalog */ readonly connectionType: pulumi.Output<string | undefined>; /** * A description of the data catalog to be created. */ readonly description: pulumi.Output<string | undefined>; /** * Text of the error that occurred during data catalog creation or deletion. */ readonly error: pulumi.Output<string | undefined>; /** * The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters. */ readonly name: pulumi.Output<string>; /** * Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type. */ readonly parameters: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The status of the creation or deletion of the data catalog. LAMBDA, GLUE, and HIVE data catalog types are created synchronously. Their status is either CREATE_COMPLETE or CREATE_FAILED. The FEDERATED data catalog type is created asynchronously. */ readonly status: pulumi.Output<enums.athena.DataCatalogStatus | undefined>; /** * A list of comma separated tags to add to the data catalog that is created. */ readonly tags: pulumi.Output<outputs.Tag[] | undefined>; /** * The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore. FEDERATED is a federated catalog for which Athena creates the connection and the Lambda function for you based on the parameters that you pass. */ readonly type: pulumi.Output<enums.athena.DataCatalogType>; /** * Create a DataCatalog resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: DataCatalogArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a DataCatalog resource. */ export interface DataCatalogArgs { /** * The type of connection for a FEDERATED data catalog */ connectionType?: pulumi.Input<string>; /** * A description of the data catalog to be created. */ description?: pulumi.Input<string>; /** * Text of the error that occurred during data catalog creation or deletion. */ error?: pulumi.Input<string>; /** * The name of the data catalog to create. The catalog name must be unique for the AWS account and can use a maximum of 128 alphanumeric, underscore, at sign, or hyphen characters. */ name?: pulumi.Input<string>; /** * Specifies the Lambda function or functions to use for creating the data catalog. This is a mapping whose values depend on the catalog type. */ parameters?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The status of the creation or deletion of the data catalog. LAMBDA, GLUE, and HIVE data catalog types are created synchronously. Their status is either CREATE_COMPLETE or CREATE_FAILED. The FEDERATED data catalog type is created asynchronously. */ status?: pulumi.Input<enums.athena.DataCatalogStatus>; /** * A list of comma separated tags to add to the data catalog that is created. */ tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>; /** * The type of data catalog to create: LAMBDA for a federated catalog, GLUE for AWS Glue Catalog, or HIVE for an external hive metastore. FEDERATED is a federated catalog for which Athena creates the connection and the Lambda function for you based on the parameters that you pass. */ type: pulumi.Input<enums.athena.DataCatalogType>; }