@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)
123 lines (122 loc) • 5.19 kB
TypeScript
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::DataSync::LocationS3
*
* ## Example Usage
* ### Example
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws_native from "@pulumi/aws-native";
*
* const locationS3 = new aws_native.datasync.LocationS3("locationS3", {
* s3BucketArn: "arn:aws:s3:::MyBucket",
* s3Config: {
* bucketAccessRoleArn: "arn:aws:iam::111222333444:role/MyBucketAccessRole",
* },
* s3StorageClass: aws_native.datasync.LocationS3S3StorageClass.Standard,
* subdirectory: "/MyFolder",
* });
*
* ```
* ### Example
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws_native from "@pulumi/aws-native";
*
* const locationS3 = new aws_native.datasync.LocationS3("locationS3", {
* s3BucketArn: "arn:aws:s3:::MyBucket",
* s3Config: {
* bucketAccessRoleArn: "arn:aws:iam::111222333444:role/MyBucketAccessRole",
* },
* s3StorageClass: aws_native.datasync.LocationS3S3StorageClass.Standard,
* subdirectory: "/MyFolder",
* });
*
* ```
*/
export declare class LocationS3 extends pulumi.CustomResource {
/**
* Get an existing LocationS3 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): LocationS3;
/**
* Returns true if the given object is an instance of LocationS3. 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 LocationS3;
/**
* The Amazon Resource Name (ARN) of the Amazon S3 bucket location.
*/
readonly locationArn: pulumi.Output<string>;
/**
* The URL of the S3 location that was described.
*/
readonly locationUri: pulumi.Output<string>;
/**
* The Amazon Resource Name (ARN) of the Amazon S3 bucket.
*/
readonly s3BucketArn: pulumi.Output<string | undefined>;
/**
* The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that is used to access an Amazon S3 bucket.
*
* For detailed information about using such a role, see [Creating a Location for Amazon S3](https://docs.aws.amazon.com/datasync/latest/userguide/working-with-locations.html#create-s3-location) in the *AWS DataSync User Guide* .
*/
readonly s3Config: pulumi.Output<outputs.datasync.LocationS3s3Config>;
/**
* The Amazon S3 storage class you want to store your files in when this location is used as a task destination.
*/
readonly s3StorageClass: pulumi.Output<enums.datasync.LocationS3S3StorageClass | undefined>;
/**
* A subdirectory in the Amazon S3 bucket. This subdirectory in Amazon S3 is used to read data from the S3 source location or write data to the S3 destination.
*/
readonly subdirectory: pulumi.Output<string | undefined>;
/**
* An array of key-value pairs to apply to this resource.
*/
readonly tags: pulumi.Output<outputs.Tag[] | undefined>;
/**
* Create a LocationS3 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: LocationS3Args, opts?: pulumi.CustomResourceOptions);
}
/**
* The set of arguments for constructing a LocationS3 resource.
*/
export interface LocationS3Args {
/**
* The Amazon Resource Name (ARN) of the Amazon S3 bucket.
*/
s3BucketArn?: pulumi.Input<string>;
/**
* The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that is used to access an Amazon S3 bucket.
*
* For detailed information about using such a role, see [Creating a Location for Amazon S3](https://docs.aws.amazon.com/datasync/latest/userguide/working-with-locations.html#create-s3-location) in the *AWS DataSync User Guide* .
*/
s3Config: pulumi.Input<inputs.datasync.LocationS3s3ConfigArgs>;
/**
* The Amazon S3 storage class you want to store your files in when this location is used as a task destination.
*/
s3StorageClass?: pulumi.Input<enums.datasync.LocationS3S3StorageClass>;
/**
* A subdirectory in the Amazon S3 bucket. This subdirectory in Amazon S3 is used to read data from the S3 source location or write data to the S3 destination.
*/
subdirectory?: pulumi.Input<string>;
/**
* An array of key-value pairs to apply to this resource.
*/
tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>;
}