Fork me on GitHub

Module s3

@pulumi/aws > s3

Index

s3/bucket.ts s3/bucketMetric.ts s3/bucketNotification.ts s3/bucketObject.ts s3/bucketPolicy.ts s3/getBucket.ts s3/getBucketObject.ts s3/inventory.ts

class Bucket

Provides a S3 bucket resource.

constructor

new Bucket(name: string, args?: BucketArgs, opts?: pulumi.CustomResourceOptions)

Create a Bucket 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?: BucketState): Bucket

Get an existing Bucket 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

static isInstance(obj: any): boolean

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

property accelerationStatus

public accelerationStatus: pulumi.Output<string>;

Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended.

property acl

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

The canned ACL to apply. Defaults to “private”.

property arn

public arn: pulumi.Output<string>;

The ARN of the bucket. Will be of format arn:aws:s3:::bucketname.

property bucket

public bucket: pulumi.Output<string>;

The ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.

property bucketDomainName

public bucketDomainName: pulumi.Output<string>;

The bucket domain name. Will be of format bucketname.s3.amazonaws.com.

property bucketPrefix

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

Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket.

property bucketRegionalDomainName

public bucketRegionalDomainName: pulumi.Output<string>;

The bucket region-specific domain name. The bucket domain name including the region name, please refer here for format. Note: The AWS CloudFront allows specifying S3 region-specific endpoint when creating S3 origin, it will prevent redirect issues from CloudFront to S3 Origin URL.

property corsRules

public corsRules: pulumi.Output<{ ... }[] | undefined>;

A rule of Cross-Origin Resource Sharing (documented below).

property forceDestroy

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

A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable.

property hostedZoneId

public hostedZoneId: pulumi.Output<string>;

The Route 53 Hosted Zone ID for this bucket’s region.

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 lifecycleRules

public lifecycleRules: pulumi.Output<{ ... }[] | undefined>;

A configuration of object lifecycle management (documented below).

property loggings

public loggings: pulumi.Output<{ ... }[] | undefined>;

A settings of bucket logging (documented below).

property policy

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

A valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), Terraform may view the policy as constantly changing in a terraform plan. In this case, please make sure you use the verbose/specific version of the policy.

property region

public region: pulumi.Output<string>;

If specified, the AWS region this bucket should reside in. Otherwise, the region used by the callee.

property replicationConfiguration

public replicationConfiguration: pulumi.Output<{ ... } | undefined>;

A configuration of replication configuration (documented below).

property requestPayer

public requestPayer: pulumi.Output<string>;

Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information.

property serverSideEncryptionConfiguration

public serverSideEncryptionConfiguration: pulumi.Output<{ ... } | undefined>;

A configuration of server-side encryption configuration (documented below)

property tags

public tags: pulumi.Output<Tags | undefined>;

Specifies object tags key and value.

property urn

urn: Output<URN>;

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

property versioning

public versioning: pulumi.Output<{ ... }>;

A state of versioning (documented below)

property website

public website: pulumi.Output<{ ... } | undefined>;

A website object (documented below).

property websiteDomain

public websiteDomain: pulumi.Output<string>;

The domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records.

property websiteEndpoint

public websiteEndpoint: pulumi.Output<string>;

The website endpoint, if the bucket is configured with a website. If not, this will be an empty string.

class BucketMetric

Provides a S3 bucket metrics configuration resource.

constructor

new BucketMetric(name: string, args: BucketMetricArgs, opts?: pulumi.CustomResourceOptions)

Create a BucketMetric 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?: BucketMetricState): BucketMetric

Get an existing BucketMetric 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

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. 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>;

The name of the bucket to put metric configuration.

property filter

public filter: pulumi.Output<{ ... } | undefined>;

Object filtering that accepts a prefix, tags, or a logical AND of prefix and tags (documented below).

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>;

Unique identifier of the metrics configuration for the bucket.

property urn

urn: Output<URN>;

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

class BucketNotification

Provides a S3 bucket notification resource.

constructor

new BucketNotification(name: string, args: BucketNotificationArgs, opts?: pulumi.CustomResourceOptions)

Create a BucketNotification 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?: BucketNotificationState): BucketNotification

Get an existing BucketNotification 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

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. 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>;

The name of the bucket to put notification configuration.

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 lambdaFunctions

public lambdaFunctions: pulumi.Output<{ ... }[] | undefined>;

Used to configure notifications to a Lambda Function (documented below).

property queues

public queues: pulumi.Output<{ ... }[] | undefined>;

The notification configuration to SQS Queue (documented below).

property topics

public topics: pulumi.Output<{ ... }[] | undefined>;

The notification configuration to SNS Topic (documented below).

property urn

urn: Output<URN>;

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

class BucketObject

Provides a S3 bucket object resource.

constructor

new BucketObject(name: string, args: BucketObjectArgs, opts?: pulumi.CustomResourceOptions)

Create a BucketObject 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?: BucketObjectState): BucketObject

Get an existing BucketObject 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

static isInstance(obj: any): boolean

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

property acl

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

The canned ACL to apply. Defaults to “private”.

property bucket

public bucket: pulumi.Output<string>;

The name of the bucket to put the file in.

property cacheControl

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

Specifies caching behavior along the request/reply chain Read w3c cache_control for further details.

property content

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

Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.

property contentBase64

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

Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the gzipbase64 function with small text strings. For larger objects, use source to stream the content from a disk file.

property contentDisposition

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

Specifies presentational information for the object. Read w3c content_disposition for further information.

property contentEncoding

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

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.

property contentLanguage

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

The language the content is in e.g. en-US or en-GB.

property contentType

public contentType: pulumi.Output<string>;

A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.

property etag

public etag: pulumi.Output<string>;

Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. This attribute is not compatible with KMS encryption, kms_key_id or server_side_encryption = "aws:kms".

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 key

public key: pulumi.Output<string>;

The name of the object once it is in the bucket.

property kmsKeyId

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

Specifies the AWS KMS Key ARN to use for object encryption. This value is a fully qualified ARN of the KMS Key. If using aws_kms_key, use the exported arn attribute: kms_key_id = "${aws_kms_key.foo.arn}"

property serverSideEncryption

public serverSideEncryption: pulumi.Output<string>;

Specifies server-side encryption of the object in S3. Valid values are “AES256” and “aws:kms”.

property source

public source: pulumi.Output<pulumi.asset.Asset | undefined>;

The path to a file that will be read and uploaded as raw bytes for the object content.

property storageClass

public storageClass: pulumi.Output<string>;

Specifies the desired Storage Class for the object. Can be either “STANDARD”, “REDUCED_REDUNDANCY”, “ONEZONE_IA”, or “STANDARD_IA”. Defaults to “STANDARD”.

property tags

public tags: pulumi.Output<Tags | undefined>;

A mapping of tags to assign to the object.

property urn

urn: Output<URN>;

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

property versionId

public versionId: pulumi.Output<string>;

A unique version ID value for the object, if bucket versioning is enabled.

property websiteRedirect

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

Specifies a target URL for website redirect.

class BucketPolicy

Attaches a policy to an S3 bucket resource.

constructor

new BucketPolicy(name: string, args: BucketPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a BucketPolicy 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?: BucketPolicyState): BucketPolicy

Get an existing BucketPolicy 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

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. 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>;

The name of the bucket to which to apply the policy.

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 policy

public policy: pulumi.Output<string>;

The text of the policy.

property urn

urn: Output<URN>;

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

class Inventory

Provides a S3 bucket inventory configuration resource.

constructor

new Inventory(name: string, args: InventoryArgs, opts?: pulumi.CustomResourceOptions)

Create a Inventory 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?: InventoryState): Inventory

Get an existing Inventory 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

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. 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>;

The S3 bucket configuration where inventory results are published (documented below).

property destination

public destination: pulumi.Output<{ ... }>;

Destination bucket where inventory list files are written (documented below).

property enabled

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

Specifies whether the inventory is enabled or disabled.

property filter

public filter: pulumi.Output<{ ... } | undefined>;

Object filtering that accepts a prefix (documented below).

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 includedObjectVersions

public includedObjectVersions: pulumi.Output<string>;

Object filtering that accepts a prefix (documented below). Can be All or Current.

property name

public name: pulumi.Output<string>;

Unique identifier of the inventory configuration for the bucket.

property optionalFields

public optionalFields: pulumi.Output<string[] | undefined>;

Contains the optional fields that are included in the inventory results.

property schedule

public schedule: pulumi.Output<{ ... }>;

Contains the frequency for generating inventory results (documented below).

property urn

urn: Output<URN>;

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

function getBucket

getBucket(args: GetBucketArgs, opts?: pulumi.InvokeOptions): Promise<GetBucketResult>

Provides details about a specific S3 bucket.

This resource may prove useful when setting up a Route53 record, or an origin for a CloudFront Distribution.

function getBucketObject

getBucketObject(args: GetBucketObjectArgs, opts?: pulumi.InvokeOptions): Promise<GetBucketObjectResult>

The S3 object data source allows access to the metadata and optionally (see below) content of an object stored inside S3 bucket.

~> Note: The content of an object (body field) is available only for objects which have a human-readable Content-Type (text/* and application/json). This is to prevent printing unsafe characters and potentially downloading large amount of data which would be thrown away in favour of metadata.

interface BucketArgs

The set of arguments for constructing a Bucket resource.

property accelerationStatus

accelerationStatus?: pulumi.Input<string>;

Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended.

property acl

acl?: pulumi.Input<string>;

The canned ACL to apply. Defaults to “private”.

property arn

arn?: pulumi.Input<string>;

The ARN of the bucket. Will be of format arn:aws:s3:::bucketname.

property bucket

bucket?: pulumi.Input<string>;

The ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.

property bucketPrefix

bucketPrefix?: pulumi.Input<string>;

Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket.

property corsRules

corsRules?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A rule of Cross-Origin Resource Sharing (documented below).

property forceDestroy

forceDestroy?: pulumi.Input<boolean>;

A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable.

property hostedZoneId

hostedZoneId?: pulumi.Input<string>;

The Route 53 Hosted Zone ID for this bucket’s region.

property lifecycleRules

lifecycleRules?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A configuration of object lifecycle management (documented below).

property loggings

loggings?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A settings of bucket logging (documented below).

property policy

policy?: pulumi.Input<string>;

A valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), Terraform may view the policy as constantly changing in a terraform plan. In this case, please make sure you use the verbose/specific version of the policy.

property region

region?: pulumi.Input<string>;

If specified, the AWS region this bucket should reside in. Otherwise, the region used by the callee.

property replicationConfiguration

replicationConfiguration?: pulumi.Input<{ ... }>;

A configuration of replication configuration (documented below).

property requestPayer

requestPayer?: pulumi.Input<string>;

Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information.

property serverSideEncryptionConfiguration

serverSideEncryptionConfiguration?: pulumi.Input<{ ... }>;

A configuration of server-side encryption configuration (documented below)

property tags

tags?: pulumi.Input<Tags>;

Specifies object tags key and value.

property versioning

versioning?: pulumi.Input<{ ... }>;

A state of versioning (documented below)

property website

website?: pulumi.Input<{ ... }>;

A website object (documented below).

property websiteDomain

websiteDomain?: pulumi.Input<string>;

The domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records.

property websiteEndpoint

websiteEndpoint?: pulumi.Input<string>;

The website endpoint, if the bucket is configured with a website. If not, this will be an empty string.

interface BucketMetricArgs

The set of arguments for constructing a BucketMetric resource.

property bucket

bucket: pulumi.Input<string>;

The name of the bucket to put metric configuration.

property filter

filter?: pulumi.Input<{ ... }>;

Object filtering that accepts a prefix, tags, or a logical AND of prefix and tags (documented below).

property name

name?: pulumi.Input<string>;

Unique identifier of the metrics configuration for the bucket.

interface BucketMetricState

Input properties used for looking up and filtering BucketMetric resources.

property bucket

bucket?: pulumi.Input<string>;

The name of the bucket to put metric configuration.

property filter

filter?: pulumi.Input<{ ... }>;

Object filtering that accepts a prefix, tags, or a logical AND of prefix and tags (documented below).

property name

name?: pulumi.Input<string>;

Unique identifier of the metrics configuration for the bucket.

interface BucketNotificationArgs

The set of arguments for constructing a BucketNotification resource.

property bucket

bucket: pulumi.Input<string>;

The name of the bucket to put notification configuration.

property lambdaFunctions

lambdaFunctions?: pulumi.Input<pulumi.Input<{ ... }>[]>;

Used to configure notifications to a Lambda Function (documented below).

property queues

queues?: pulumi.Input<pulumi.Input<{ ... }>[]>;

The notification configuration to SQS Queue (documented below).

property topics

topics?: pulumi.Input<pulumi.Input<{ ... }>[]>;

The notification configuration to SNS Topic (documented below).

interface BucketNotificationState

Input properties used for looking up and filtering BucketNotification resources.

property bucket

bucket?: pulumi.Input<string>;

The name of the bucket to put notification configuration.

property lambdaFunctions

lambdaFunctions?: pulumi.Input<pulumi.Input<{ ... }>[]>;

Used to configure notifications to a Lambda Function (documented below).

property queues

queues?: pulumi.Input<pulumi.Input<{ ... }>[]>;

The notification configuration to SQS Queue (documented below).

property topics

topics?: pulumi.Input<pulumi.Input<{ ... }>[]>;

The notification configuration to SNS Topic (documented below).

interface BucketObjectArgs

The set of arguments for constructing a BucketObject resource.

property acl

acl?: pulumi.Input<string>;

The canned ACL to apply. Defaults to “private”.

property bucket

bucket: pulumi.Input<string | Bucket>;

The name of the bucket to put the file in.

property cacheControl

cacheControl?: pulumi.Input<string>;

Specifies caching behavior along the request/reply chain Read w3c cache_control for further details.

property content

content?: pulumi.Input<string>;

Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.

property contentBase64

contentBase64?: pulumi.Input<string>;

Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the gzipbase64 function with small text strings. For larger objects, use source to stream the content from a disk file.

property contentDisposition

contentDisposition?: pulumi.Input<string>;

Specifies presentational information for the object. Read w3c content_disposition for further information.

property contentEncoding

contentEncoding?: pulumi.Input<string>;

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.

property contentLanguage

contentLanguage?: pulumi.Input<string>;

The language the content is in e.g. en-US or en-GB.

property contentType

contentType?: pulumi.Input<string>;

A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.

property etag

etag?: pulumi.Input<string>;

Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. This attribute is not compatible with KMS encryption, kms_key_id or server_side_encryption = "aws:kms".

property key

key?: pulumi.Input<string>;

The name of the object once it is in the bucket.

property kmsKeyId

kmsKeyId?: pulumi.Input<string>;

Specifies the AWS KMS Key ARN to use for object encryption. This value is a fully qualified ARN of the KMS Key. If using aws_kms_key, use the exported arn attribute: kms_key_id = "${aws_kms_key.foo.arn}"

property serverSideEncryption

serverSideEncryption?: pulumi.Input<string>;

Specifies server-side encryption of the object in S3. Valid values are “AES256” and “aws:kms”.

property source

source?: pulumi.Input<pulumi.asset.Asset>;

The path to a file that will be read and uploaded as raw bytes for the object content.

property storageClass

storageClass?: pulumi.Input<string>;

Specifies the desired Storage Class for the object. Can be either “STANDARD”, “REDUCED_REDUNDANCY”, “ONEZONE_IA”, or “STANDARD_IA”. Defaults to “STANDARD”.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the object.

property websiteRedirect

websiteRedirect?: pulumi.Input<string>;

Specifies a target URL for website redirect.

interface BucketObjectState

Input properties used for looking up and filtering BucketObject resources.

property acl

acl?: pulumi.Input<string>;

The canned ACL to apply. Defaults to “private”.

property bucket

bucket?: pulumi.Input<string | Bucket>;

The name of the bucket to put the file in.

property cacheControl

cacheControl?: pulumi.Input<string>;

Specifies caching behavior along the request/reply chain Read w3c cache_control for further details.

property content

content?: pulumi.Input<string>;

Literal string value to use as the object content, which will be uploaded as UTF-8-encoded text.

property contentBase64

contentBase64?: pulumi.Input<string>;

Base64-encoded data that will be decoded and uploaded as raw bytes for the object content. This allows safely uploading non-UTF8 binary data, but is recommended only for small content such as the result of the gzipbase64 function with small text strings. For larger objects, use source to stream the content from a disk file.

property contentDisposition

contentDisposition?: pulumi.Input<string>;

Specifies presentational information for the object. Read w3c content_disposition for further information.

property contentEncoding

contentEncoding?: pulumi.Input<string>;

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. Read w3c content encoding for further information.

property contentLanguage

contentLanguage?: pulumi.Input<string>;

The language the content is in e.g. en-US or en-GB.

property contentType

contentType?: pulumi.Input<string>;

A standard MIME type describing the format of the object data, e.g. application/octet-stream. All Valid MIME Types are valid for this input.

property etag

etag?: pulumi.Input<string>;

Used to trigger updates. The only meaningful value is ${md5(file("path/to/file"))}. This attribute is not compatible with KMS encryption, kms_key_id or server_side_encryption = "aws:kms".

property key

key?: pulumi.Input<string>;

The name of the object once it is in the bucket.

property kmsKeyId

kmsKeyId?: pulumi.Input<string>;

Specifies the AWS KMS Key ARN to use for object encryption. This value is a fully qualified ARN of the KMS Key. If using aws_kms_key, use the exported arn attribute: kms_key_id = "${aws_kms_key.foo.arn}"

property serverSideEncryption

serverSideEncryption?: pulumi.Input<string>;

Specifies server-side encryption of the object in S3. Valid values are “AES256” and “aws:kms”.

property source

source?: pulumi.Input<pulumi.asset.Asset>;

The path to a file that will be read and uploaded as raw bytes for the object content.

property storageClass

storageClass?: pulumi.Input<string>;

Specifies the desired Storage Class for the object. Can be either “STANDARD”, “REDUCED_REDUNDANCY”, “ONEZONE_IA”, or “STANDARD_IA”. Defaults to “STANDARD”.

property tags

tags?: pulumi.Input<Tags>;

A mapping of tags to assign to the object.

property versionId

versionId?: pulumi.Input<string>;

A unique version ID value for the object, if bucket versioning is enabled.

property websiteRedirect

websiteRedirect?: pulumi.Input<string>;

Specifies a target URL for website redirect.

interface BucketPolicyArgs

The set of arguments for constructing a BucketPolicy resource.

property bucket

bucket: pulumi.Input<string>;

The name of the bucket to which to apply the policy.

property policy

policy: pulumi.Input<string>;

The text of the policy.

interface BucketPolicyState

Input properties used for looking up and filtering BucketPolicy resources.

property bucket

bucket?: pulumi.Input<string>;

The name of the bucket to which to apply the policy.

property policy

policy?: pulumi.Input<string>;

The text of the policy.

interface BucketState

Input properties used for looking up and filtering Bucket resources.

property accelerationStatus

accelerationStatus?: pulumi.Input<string>;

Sets the accelerate configuration of an existing bucket. Can be Enabled or Suspended.

property acl

acl?: pulumi.Input<string>;

The canned ACL to apply. Defaults to “private”.

property arn

arn?: pulumi.Input<string>;

The ARN of the bucket. Will be of format arn:aws:s3:::bucketname.

property bucket

bucket?: pulumi.Input<string>;

The ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.

property bucketDomainName

bucketDomainName?: pulumi.Input<string>;

The bucket domain name. Will be of format bucketname.s3.amazonaws.com.

property bucketPrefix

bucketPrefix?: pulumi.Input<string>;

Creates a unique bucket name beginning with the specified prefix. Conflicts with bucket.

property bucketRegionalDomainName

bucketRegionalDomainName?: pulumi.Input<string>;

The bucket region-specific domain name. The bucket domain name including the region name, please refer here for format. Note: The AWS CloudFront allows specifying S3 region-specific endpoint when creating S3 origin, it will prevent redirect issues from CloudFront to S3 Origin URL.

property corsRules

corsRules?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A rule of Cross-Origin Resource Sharing (documented below).

property forceDestroy

forceDestroy?: pulumi.Input<boolean>;

A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable.

property hostedZoneId

hostedZoneId?: pulumi.Input<string>;

The Route 53 Hosted Zone ID for this bucket’s region.

property lifecycleRules

lifecycleRules?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A configuration of object lifecycle management (documented below).

property loggings

loggings?: pulumi.Input<pulumi.Input<{ ... }>[]>;

A settings of bucket logging (documented below).

property policy

policy?: pulumi.Input<string>;

A valid bucket policy JSON document. Note that if the policy document is not specific enough (but still valid), Terraform may view the policy as constantly changing in a terraform plan. In this case, please make sure you use the verbose/specific version of the policy.

property region

region?: pulumi.Input<string>;

If specified, the AWS region this bucket should reside in. Otherwise, the region used by the callee.

property replicationConfiguration

replicationConfiguration?: pulumi.Input<{ ... }>;

A configuration of replication configuration (documented below).

property requestPayer

requestPayer?: pulumi.Input<string>;

Specifies who should bear the cost of Amazon S3 data transfer. Can be either BucketOwner or Requester. By default, the owner of the S3 bucket would incur the costs of any data transfer. See Requester Pays Buckets developer guide for more information.

property serverSideEncryptionConfiguration

serverSideEncryptionConfiguration?: pulumi.Input<{ ... }>;

A configuration of server-side encryption configuration (documented below)

property tags

tags?: pulumi.Input<Tags>;

Specifies object tags key and value.

property versioning

versioning?: pulumi.Input<{ ... }>;

A state of versioning (documented below)

property website

website?: pulumi.Input<{ ... }>;

A website object (documented below).

property websiteDomain

websiteDomain?: pulumi.Input<string>;

The domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records.

property websiteEndpoint

websiteEndpoint?: pulumi.Input<string>;

The website endpoint, if the bucket is configured with a website. If not, this will be an empty string.

interface GetBucketArgs

A collection of arguments for invoking getBucket.

property bucket

bucket: string;

The name of the bucket

interface GetBucketObjectArgs

A collection of arguments for invoking getBucketObject.

property bucket

bucket: string;

The name of the bucket to read the object from

property key

key: string;

The full path to the object inside the bucket

property range

range?: string;

property tags

tags?: { ... };

property versionId

versionId?: string;

Specific version ID of the object returned (defaults to latest version)

interface GetBucketObjectResult

A collection of values returned by getBucketObject.

property body

body: string;

Object data (see limitations above to understand cases in which this field is actually available)

property cacheControl

cacheControl: string;

Specifies caching behavior along the request/reply chain.

property contentDisposition

contentDisposition: string;

Specifies presentational information for the object.

property contentEncoding

contentEncoding: string;

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

property contentLanguage

contentLanguage: string;

The language the content is in.

property contentLength

contentLength: number;

Size of the body in bytes.

property contentType

contentType: string;

A standard MIME type describing the format of the object data.

property etag

etag: string;

ETag generated for the object (an MD5 sum of the object content in case it’s not encrypted)

property expiration

expiration: string;

If the object expiration is configured (see object lifecycle management), the field includes this header. It includes the expiry-date and rule-id key value pairs providing object expiration information. The value of the rule-id is URL encoded.

property expires

expires: string;

The date and time at which the object is no longer cacheable.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property lastModified

lastModified: string;

Last modified date of the object in RFC1123 format (e.g. Mon, 02 Jan 2006 15:04:05 MST)

property metadata

metadata: { ... };

A map of metadata stored with the object in S3

property serverSideEncryption

serverSideEncryption: string;

If the object is stored using server-side encryption (KMS or Amazon S3-managed encryption key), this field includes the chosen encryption and algorithm used.

property sseKmsKeyId

sseKmsKeyId: string;

If present, specifies the ID of the Key Management Service (KMS) master encryption key that was used for the object.

property storageClass

storageClass: string;

Storage class information of the object. Available for all objects except for Standard storage class objects.

property tags

tags: { ... };

A mapping of tags assigned to the object.

property versionId

versionId: string;

The latest version ID of the object returned.

property websiteRedirectLocation

websiteRedirectLocation: string;

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

interface GetBucketResult

A collection of values returned by getBucket.

property arn

arn: string;

The ARN of the bucket. Will be of format arn:aws:s3:::bucketname.

property bucketDomainName

bucketDomainName: string;

The bucket domain name. Will be of format bucketname.s3.amazonaws.com.

property hostedZoneId

hostedZoneId: string;

The Route 53 Hosted Zone ID for this bucket’s region.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property region

region: string;

The AWS region this bucket resides in.

property websiteDomain

websiteDomain: string;

The domain of the website endpoint, if the bucket is configured with a website. If not, this will be an empty string. This is used to create Route 53 alias records.

property websiteEndpoint

websiteEndpoint: string;

The website endpoint, if the bucket is configured with a website. If not, this will be an empty string.

interface InventoryArgs

The set of arguments for constructing a Inventory resource.

property bucket

bucket: pulumi.Input<string>;

The S3 bucket configuration where inventory results are published (documented below).

property destination

destination: pulumi.Input<{ ... }>;

Destination bucket where inventory list files are written (documented below).

property enabled

enabled?: pulumi.Input<boolean>;

Specifies whether the inventory is enabled or disabled.

property filter

filter?: pulumi.Input<{ ... }>;

Object filtering that accepts a prefix (documented below).

property includedObjectVersions

includedObjectVersions: pulumi.Input<string>;

Object filtering that accepts a prefix (documented below). Can be All or Current.

property name

name?: pulumi.Input<string>;

Unique identifier of the inventory configuration for the bucket.

property optionalFields

optionalFields?: pulumi.Input<pulumi.Input<string>[]>;

Contains the optional fields that are included in the inventory results.

property schedule

schedule: pulumi.Input<{ ... }>;

Contains the frequency for generating inventory results (documented below).

interface InventoryState

Input properties used for looking up and filtering Inventory resources.

property bucket

bucket?: pulumi.Input<string>;

The S3 bucket configuration where inventory results are published (documented below).

property destination

destination?: pulumi.Input<{ ... }>;

Destination bucket where inventory list files are written (documented below).

property enabled

enabled?: pulumi.Input<boolean>;

Specifies whether the inventory is enabled or disabled.

property filter

filter?: pulumi.Input<{ ... }>;

Object filtering that accepts a prefix (documented below).

property includedObjectVersions

includedObjectVersions?: pulumi.Input<string>;

Object filtering that accepts a prefix (documented below). Can be All or Current.

property name

name?: pulumi.Input<string>;

Unique identifier of the inventory configuration for the bucket.

property optionalFields

optionalFields?: pulumi.Input<pulumi.Input<string>[]>;

Contains the optional fields that are included in the inventory results.

property schedule

schedule?: pulumi.Input<{ ... }>;

Contains the frequency for generating inventory results (documented below).