github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/s3/getBucketObjects.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package s3 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 11 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 12 ) 13 14 // > **NOTE:** The `s3.getBucketObjects` data source is DEPRECATED and will be removed in a future version! Use `s3.getObjects` instead, where new features and fixes will be added. 15 // 16 // > **NOTE on `maxKeys`:** Retrieving very large numbers of keys can adversely affect this provider's performance. 17 // 18 // The objects data source returns keys (i.e., file names) and other metadata about objects in an S3 bucket. 19 func GetBucketObjects(ctx *pulumi.Context, args *GetBucketObjectsArgs, opts ...pulumi.InvokeOption) (*GetBucketObjectsResult, error) { 20 opts = internal.PkgInvokeDefaultOpts(opts) 21 var rv GetBucketObjectsResult 22 err := ctx.Invoke("aws:s3/getBucketObjects:getBucketObjects", args, &rv, opts...) 23 if err != nil { 24 return nil, err 25 } 26 return &rv, nil 27 } 28 29 // A collection of arguments for invoking getBucketObjects. 30 type GetBucketObjectsArgs struct { 31 // Lists object keys in this S3 bucket. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified 32 // 33 // Deprecated: Use the s3.getObjects data source instead 34 Bucket string `pulumi:"bucket"` 35 // Character used to group keys (Default: none) 36 Delimiter *string `pulumi:"delimiter"` 37 // Encodes keys using this method (Default: none; besides none, only "url" can be used) 38 EncodingType *string `pulumi:"encodingType"` 39 // Boolean specifying whether to populate the owner list (Default: false) 40 FetchOwner *bool `pulumi:"fetchOwner"` 41 // Maximum object keys to return (Default: 1000) 42 MaxKeys *int `pulumi:"maxKeys"` 43 // Limits results to object keys with this prefix (Default: none) 44 Prefix *string `pulumi:"prefix"` 45 // 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) 46 StartAfter *string `pulumi:"startAfter"` 47 } 48 49 // A collection of values returned by getBucketObjects. 50 type GetBucketObjectsResult struct { 51 // Deprecated: Use the s3.getObjects data source instead 52 Bucket string `pulumi:"bucket"` 53 // List of any keys between `prefix` and the next occurrence of `delimiter` (i.e., similar to subdirectories of the `prefix` "directory"); the list is only returned when you specify `delimiter` 54 CommonPrefixes []string `pulumi:"commonPrefixes"` 55 Delimiter *string `pulumi:"delimiter"` 56 EncodingType *string `pulumi:"encodingType"` 57 FetchOwner *bool `pulumi:"fetchOwner"` 58 // The provider-assigned unique ID for this managed resource. 59 Id string `pulumi:"id"` 60 // List of strings representing object keys 61 Keys []string `pulumi:"keys"` 62 MaxKeys *int `pulumi:"maxKeys"` 63 // List of strings representing object owner IDs (see `fetchOwner` above) 64 Owners []string `pulumi:"owners"` 65 Prefix *string `pulumi:"prefix"` 66 StartAfter *string `pulumi:"startAfter"` 67 } 68 69 func GetBucketObjectsOutput(ctx *pulumi.Context, args GetBucketObjectsOutputArgs, opts ...pulumi.InvokeOption) GetBucketObjectsResultOutput { 70 return pulumi.ToOutputWithContext(context.Background(), args). 71 ApplyT(func(v interface{}) (GetBucketObjectsResult, error) { 72 args := v.(GetBucketObjectsArgs) 73 r, err := GetBucketObjects(ctx, &args, opts...) 74 var s GetBucketObjectsResult 75 if r != nil { 76 s = *r 77 } 78 return s, err 79 }).(GetBucketObjectsResultOutput) 80 } 81 82 // A collection of arguments for invoking getBucketObjects. 83 type GetBucketObjectsOutputArgs struct { 84 // Lists object keys in this S3 bucket. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified 85 // 86 // Deprecated: Use the s3.getObjects data source instead 87 Bucket pulumi.StringInput `pulumi:"bucket"` 88 // Character used to group keys (Default: none) 89 Delimiter pulumi.StringPtrInput `pulumi:"delimiter"` 90 // Encodes keys using this method (Default: none; besides none, only "url" can be used) 91 EncodingType pulumi.StringPtrInput `pulumi:"encodingType"` 92 // Boolean specifying whether to populate the owner list (Default: false) 93 FetchOwner pulumi.BoolPtrInput `pulumi:"fetchOwner"` 94 // Maximum object keys to return (Default: 1000) 95 MaxKeys pulumi.IntPtrInput `pulumi:"maxKeys"` 96 // Limits results to object keys with this prefix (Default: none) 97 Prefix pulumi.StringPtrInput `pulumi:"prefix"` 98 // 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) 99 StartAfter pulumi.StringPtrInput `pulumi:"startAfter"` 100 } 101 102 func (GetBucketObjectsOutputArgs) ElementType() reflect.Type { 103 return reflect.TypeOf((*GetBucketObjectsArgs)(nil)).Elem() 104 } 105 106 // A collection of values returned by getBucketObjects. 107 type GetBucketObjectsResultOutput struct{ *pulumi.OutputState } 108 109 func (GetBucketObjectsResultOutput) ElementType() reflect.Type { 110 return reflect.TypeOf((*GetBucketObjectsResult)(nil)).Elem() 111 } 112 113 func (o GetBucketObjectsResultOutput) ToGetBucketObjectsResultOutput() GetBucketObjectsResultOutput { 114 return o 115 } 116 117 func (o GetBucketObjectsResultOutput) ToGetBucketObjectsResultOutputWithContext(ctx context.Context) GetBucketObjectsResultOutput { 118 return o 119 } 120 121 // Deprecated: Use the s3.getObjects data source instead 122 func (o GetBucketObjectsResultOutput) Bucket() pulumi.StringOutput { 123 return o.ApplyT(func(v GetBucketObjectsResult) string { return v.Bucket }).(pulumi.StringOutput) 124 } 125 126 // List of any keys between `prefix` and the next occurrence of `delimiter` (i.e., similar to subdirectories of the `prefix` "directory"); the list is only returned when you specify `delimiter` 127 func (o GetBucketObjectsResultOutput) CommonPrefixes() pulumi.StringArrayOutput { 128 return o.ApplyT(func(v GetBucketObjectsResult) []string { return v.CommonPrefixes }).(pulumi.StringArrayOutput) 129 } 130 131 func (o GetBucketObjectsResultOutput) Delimiter() pulumi.StringPtrOutput { 132 return o.ApplyT(func(v GetBucketObjectsResult) *string { return v.Delimiter }).(pulumi.StringPtrOutput) 133 } 134 135 func (o GetBucketObjectsResultOutput) EncodingType() pulumi.StringPtrOutput { 136 return o.ApplyT(func(v GetBucketObjectsResult) *string { return v.EncodingType }).(pulumi.StringPtrOutput) 137 } 138 139 func (o GetBucketObjectsResultOutput) FetchOwner() pulumi.BoolPtrOutput { 140 return o.ApplyT(func(v GetBucketObjectsResult) *bool { return v.FetchOwner }).(pulumi.BoolPtrOutput) 141 } 142 143 // The provider-assigned unique ID for this managed resource. 144 func (o GetBucketObjectsResultOutput) Id() pulumi.StringOutput { 145 return o.ApplyT(func(v GetBucketObjectsResult) string { return v.Id }).(pulumi.StringOutput) 146 } 147 148 // List of strings representing object keys 149 func (o GetBucketObjectsResultOutput) Keys() pulumi.StringArrayOutput { 150 return o.ApplyT(func(v GetBucketObjectsResult) []string { return v.Keys }).(pulumi.StringArrayOutput) 151 } 152 153 func (o GetBucketObjectsResultOutput) MaxKeys() pulumi.IntPtrOutput { 154 return o.ApplyT(func(v GetBucketObjectsResult) *int { return v.MaxKeys }).(pulumi.IntPtrOutput) 155 } 156 157 // List of strings representing object owner IDs (see `fetchOwner` above) 158 func (o GetBucketObjectsResultOutput) Owners() pulumi.StringArrayOutput { 159 return o.ApplyT(func(v GetBucketObjectsResult) []string { return v.Owners }).(pulumi.StringArrayOutput) 160 } 161 162 func (o GetBucketObjectsResultOutput) Prefix() pulumi.StringPtrOutput { 163 return o.ApplyT(func(v GetBucketObjectsResult) *string { return v.Prefix }).(pulumi.StringPtrOutput) 164 } 165 166 func (o GetBucketObjectsResultOutput) StartAfter() pulumi.StringPtrOutput { 167 return o.ApplyT(func(v GetBucketObjectsResult) *string { return v.StartAfter }).(pulumi.StringPtrOutput) 168 } 169 170 func init() { 171 pulumi.RegisterOutputType(GetBucketObjectsResultOutput{}) 172 }