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  }