» Data Source: aws_s3_bucket_objects
NOTE on max_keys
: Retrieving very large numbers of keys can adversely affect Terraform's performance.
The bucket-objects data source returns keys (i.e., file names) and other metadata about objects in an S3 bucket.
» Example Usage
The following example retrieves a list of all object keys in an S3 bucket and creates corresponding Terraform object data sources:
data "aws_s3_bucket_objects" "my_objects" {
bucket = "ourcorp"
}
data "aws_s3_bucket_object" "object_info" {
count = "${length(data.aws_s3_bucket_objects.my_objects.keys)}"
key = "${element(data.aws_s3_bucket_objects.my_objects.keys, count.index)}"
bucket = "${data.aws_s3_bucket_objects.my_objects.bucket}"
}
» Argument Reference
The following arguments are supported:
bucket
- (Required) Lists object keys in this S3 bucketprefix
- (Optional) Limits results to object keys with this prefix (Default: none)delimiter
- (Optional) A character used to group keys (Default: none)encoding_type
- (Optional) Encodes keys using this method (Default: none; besides none, only "url" can be used)max_keys
- (Optional) Maximum object keys to return (Default: 1000)start_after
- (Optional) Returns key names lexicographically after a specific object key in your bucket (Default: none; S3 lists object keys in UTF-8 character encoding in lexicographical order)fetch_owner
- (Optional) Boolean specifying whether to populate the owner list (Default: false)
» Attributes Reference
In addition to all arguments above, the following attributes are exported:
keys
- List of strings representing object keyscommon_prefixes
- List of any keys betweenprefix
and the next occurrence ofdelimiter
(i.e., similar to subdirectories of theprefix
"directory"); the list is only returned when you specifydelimiter
owners
- List of strings representing object owner IDs (seefetch_owner
above)