github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/s3/bucketAccelerateConfigurationV2.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 "errors" 11 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 12 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 13 ) 14 15 // Provides an S3 bucket accelerate configuration resource. See the [Requirements for using Transfer Acceleration](https://docs.aws.amazon.com/AmazonS3/latest/userguide/transfer-acceleration.html#transfer-acceleration-requirements) for more details. 16 // 17 // > This resource cannot be used with S3 directory buckets. 18 // 19 // ## Example Usage 20 // 21 // <!--Start PulumiCodeChooser --> 22 // ```go 23 // package main 24 // 25 // import ( 26 // 27 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3" 28 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 29 // 30 // ) 31 // 32 // func main() { 33 // pulumi.Run(func(ctx *pulumi.Context) error { 34 // mybucket, err := s3.NewBucketV2(ctx, "mybucket", &s3.BucketV2Args{ 35 // Bucket: pulumi.String("mybucket"), 36 // }) 37 // if err != nil { 38 // return err 39 // } 40 // _, err = s3.NewBucketAccelerateConfigurationV2(ctx, "example", &s3.BucketAccelerateConfigurationV2Args{ 41 // Bucket: mybucket.ID(), 42 // Status: pulumi.String("Enabled"), 43 // }) 44 // if err != nil { 45 // return err 46 // } 47 // return nil 48 // }) 49 // } 50 // 51 // ``` 52 // <!--End PulumiCodeChooser --> 53 // 54 // ## Import 55 // 56 // If the owner (account ID) of the source bucket differs from the account used to configure the AWS Provider, import using the `bucket` and `expected_bucket_owner` separated by a comma (`,`): 57 // 58 // __Using `pulumi import` to import.__ For example: 59 // 60 // If the owner (account ID) of the source bucket is the same account used to configure the AWS Provider, import using the `bucket`: 61 // 62 // ```sh 63 // $ pulumi import aws:s3/bucketAccelerateConfigurationV2:BucketAccelerateConfigurationV2 example bucket-name 64 // ``` 65 // If the owner (account ID) of the source bucket differs from the account used to configure the AWS Provider, import using the `bucket` and `expected_bucket_owner` separated by a comma (`,`): 66 // 67 // ```sh 68 // $ pulumi import aws:s3/bucketAccelerateConfigurationV2:BucketAccelerateConfigurationV2 example bucket-name,123456789012 69 // ``` 70 type BucketAccelerateConfigurationV2 struct { 71 pulumi.CustomResourceState 72 73 // Name of the bucket. 74 Bucket pulumi.StringOutput `pulumi:"bucket"` 75 // Account ID of the expected bucket owner. 76 ExpectedBucketOwner pulumi.StringPtrOutput `pulumi:"expectedBucketOwner"` 77 // Transfer acceleration state of the bucket. Valid values: `Enabled`, `Suspended`. 78 Status pulumi.StringOutput `pulumi:"status"` 79 } 80 81 // NewBucketAccelerateConfigurationV2 registers a new resource with the given unique name, arguments, and options. 82 func NewBucketAccelerateConfigurationV2(ctx *pulumi.Context, 83 name string, args *BucketAccelerateConfigurationV2Args, opts ...pulumi.ResourceOption) (*BucketAccelerateConfigurationV2, error) { 84 if args == nil { 85 return nil, errors.New("missing one or more required arguments") 86 } 87 88 if args.Bucket == nil { 89 return nil, errors.New("invalid value for required argument 'Bucket'") 90 } 91 if args.Status == nil { 92 return nil, errors.New("invalid value for required argument 'Status'") 93 } 94 opts = internal.PkgResourceDefaultOpts(opts) 95 var resource BucketAccelerateConfigurationV2 96 err := ctx.RegisterResource("aws:s3/bucketAccelerateConfigurationV2:BucketAccelerateConfigurationV2", name, args, &resource, opts...) 97 if err != nil { 98 return nil, err 99 } 100 return &resource, nil 101 } 102 103 // GetBucketAccelerateConfigurationV2 gets an existing BucketAccelerateConfigurationV2 resource's state with the given name, ID, and optional 104 // state properties that are used to uniquely qualify the lookup (nil if not required). 105 func GetBucketAccelerateConfigurationV2(ctx *pulumi.Context, 106 name string, id pulumi.IDInput, state *BucketAccelerateConfigurationV2State, opts ...pulumi.ResourceOption) (*BucketAccelerateConfigurationV2, error) { 107 var resource BucketAccelerateConfigurationV2 108 err := ctx.ReadResource("aws:s3/bucketAccelerateConfigurationV2:BucketAccelerateConfigurationV2", name, id, state, &resource, opts...) 109 if err != nil { 110 return nil, err 111 } 112 return &resource, nil 113 } 114 115 // Input properties used for looking up and filtering BucketAccelerateConfigurationV2 resources. 116 type bucketAccelerateConfigurationV2State struct { 117 // Name of the bucket. 118 Bucket *string `pulumi:"bucket"` 119 // Account ID of the expected bucket owner. 120 ExpectedBucketOwner *string `pulumi:"expectedBucketOwner"` 121 // Transfer acceleration state of the bucket. Valid values: `Enabled`, `Suspended`. 122 Status *string `pulumi:"status"` 123 } 124 125 type BucketAccelerateConfigurationV2State struct { 126 // Name of the bucket. 127 Bucket pulumi.StringPtrInput 128 // Account ID of the expected bucket owner. 129 ExpectedBucketOwner pulumi.StringPtrInput 130 // Transfer acceleration state of the bucket. Valid values: `Enabled`, `Suspended`. 131 Status pulumi.StringPtrInput 132 } 133 134 func (BucketAccelerateConfigurationV2State) ElementType() reflect.Type { 135 return reflect.TypeOf((*bucketAccelerateConfigurationV2State)(nil)).Elem() 136 } 137 138 type bucketAccelerateConfigurationV2Args struct { 139 // Name of the bucket. 140 Bucket string `pulumi:"bucket"` 141 // Account ID of the expected bucket owner. 142 ExpectedBucketOwner *string `pulumi:"expectedBucketOwner"` 143 // Transfer acceleration state of the bucket. Valid values: `Enabled`, `Suspended`. 144 Status string `pulumi:"status"` 145 } 146 147 // The set of arguments for constructing a BucketAccelerateConfigurationV2 resource. 148 type BucketAccelerateConfigurationV2Args struct { 149 // Name of the bucket. 150 Bucket pulumi.StringInput 151 // Account ID of the expected bucket owner. 152 ExpectedBucketOwner pulumi.StringPtrInput 153 // Transfer acceleration state of the bucket. Valid values: `Enabled`, `Suspended`. 154 Status pulumi.StringInput 155 } 156 157 func (BucketAccelerateConfigurationV2Args) ElementType() reflect.Type { 158 return reflect.TypeOf((*bucketAccelerateConfigurationV2Args)(nil)).Elem() 159 } 160 161 type BucketAccelerateConfigurationV2Input interface { 162 pulumi.Input 163 164 ToBucketAccelerateConfigurationV2Output() BucketAccelerateConfigurationV2Output 165 ToBucketAccelerateConfigurationV2OutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2Output 166 } 167 168 func (*BucketAccelerateConfigurationV2) ElementType() reflect.Type { 169 return reflect.TypeOf((**BucketAccelerateConfigurationV2)(nil)).Elem() 170 } 171 172 func (i *BucketAccelerateConfigurationV2) ToBucketAccelerateConfigurationV2Output() BucketAccelerateConfigurationV2Output { 173 return i.ToBucketAccelerateConfigurationV2OutputWithContext(context.Background()) 174 } 175 176 func (i *BucketAccelerateConfigurationV2) ToBucketAccelerateConfigurationV2OutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2Output { 177 return pulumi.ToOutputWithContext(ctx, i).(BucketAccelerateConfigurationV2Output) 178 } 179 180 // BucketAccelerateConfigurationV2ArrayInput is an input type that accepts BucketAccelerateConfigurationV2Array and BucketAccelerateConfigurationV2ArrayOutput values. 181 // You can construct a concrete instance of `BucketAccelerateConfigurationV2ArrayInput` via: 182 // 183 // BucketAccelerateConfigurationV2Array{ BucketAccelerateConfigurationV2Args{...} } 184 type BucketAccelerateConfigurationV2ArrayInput interface { 185 pulumi.Input 186 187 ToBucketAccelerateConfigurationV2ArrayOutput() BucketAccelerateConfigurationV2ArrayOutput 188 ToBucketAccelerateConfigurationV2ArrayOutputWithContext(context.Context) BucketAccelerateConfigurationV2ArrayOutput 189 } 190 191 type BucketAccelerateConfigurationV2Array []BucketAccelerateConfigurationV2Input 192 193 func (BucketAccelerateConfigurationV2Array) ElementType() reflect.Type { 194 return reflect.TypeOf((*[]*BucketAccelerateConfigurationV2)(nil)).Elem() 195 } 196 197 func (i BucketAccelerateConfigurationV2Array) ToBucketAccelerateConfigurationV2ArrayOutput() BucketAccelerateConfigurationV2ArrayOutput { 198 return i.ToBucketAccelerateConfigurationV2ArrayOutputWithContext(context.Background()) 199 } 200 201 func (i BucketAccelerateConfigurationV2Array) ToBucketAccelerateConfigurationV2ArrayOutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2ArrayOutput { 202 return pulumi.ToOutputWithContext(ctx, i).(BucketAccelerateConfigurationV2ArrayOutput) 203 } 204 205 // BucketAccelerateConfigurationV2MapInput is an input type that accepts BucketAccelerateConfigurationV2Map and BucketAccelerateConfigurationV2MapOutput values. 206 // You can construct a concrete instance of `BucketAccelerateConfigurationV2MapInput` via: 207 // 208 // BucketAccelerateConfigurationV2Map{ "key": BucketAccelerateConfigurationV2Args{...} } 209 type BucketAccelerateConfigurationV2MapInput interface { 210 pulumi.Input 211 212 ToBucketAccelerateConfigurationV2MapOutput() BucketAccelerateConfigurationV2MapOutput 213 ToBucketAccelerateConfigurationV2MapOutputWithContext(context.Context) BucketAccelerateConfigurationV2MapOutput 214 } 215 216 type BucketAccelerateConfigurationV2Map map[string]BucketAccelerateConfigurationV2Input 217 218 func (BucketAccelerateConfigurationV2Map) ElementType() reflect.Type { 219 return reflect.TypeOf((*map[string]*BucketAccelerateConfigurationV2)(nil)).Elem() 220 } 221 222 func (i BucketAccelerateConfigurationV2Map) ToBucketAccelerateConfigurationV2MapOutput() BucketAccelerateConfigurationV2MapOutput { 223 return i.ToBucketAccelerateConfigurationV2MapOutputWithContext(context.Background()) 224 } 225 226 func (i BucketAccelerateConfigurationV2Map) ToBucketAccelerateConfigurationV2MapOutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2MapOutput { 227 return pulumi.ToOutputWithContext(ctx, i).(BucketAccelerateConfigurationV2MapOutput) 228 } 229 230 type BucketAccelerateConfigurationV2Output struct{ *pulumi.OutputState } 231 232 func (BucketAccelerateConfigurationV2Output) ElementType() reflect.Type { 233 return reflect.TypeOf((**BucketAccelerateConfigurationV2)(nil)).Elem() 234 } 235 236 func (o BucketAccelerateConfigurationV2Output) ToBucketAccelerateConfigurationV2Output() BucketAccelerateConfigurationV2Output { 237 return o 238 } 239 240 func (o BucketAccelerateConfigurationV2Output) ToBucketAccelerateConfigurationV2OutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2Output { 241 return o 242 } 243 244 // Name of the bucket. 245 func (o BucketAccelerateConfigurationV2Output) Bucket() pulumi.StringOutput { 246 return o.ApplyT(func(v *BucketAccelerateConfigurationV2) pulumi.StringOutput { return v.Bucket }).(pulumi.StringOutput) 247 } 248 249 // Account ID of the expected bucket owner. 250 func (o BucketAccelerateConfigurationV2Output) ExpectedBucketOwner() pulumi.StringPtrOutput { 251 return o.ApplyT(func(v *BucketAccelerateConfigurationV2) pulumi.StringPtrOutput { return v.ExpectedBucketOwner }).(pulumi.StringPtrOutput) 252 } 253 254 // Transfer acceleration state of the bucket. Valid values: `Enabled`, `Suspended`. 255 func (o BucketAccelerateConfigurationV2Output) Status() pulumi.StringOutput { 256 return o.ApplyT(func(v *BucketAccelerateConfigurationV2) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) 257 } 258 259 type BucketAccelerateConfigurationV2ArrayOutput struct{ *pulumi.OutputState } 260 261 func (BucketAccelerateConfigurationV2ArrayOutput) ElementType() reflect.Type { 262 return reflect.TypeOf((*[]*BucketAccelerateConfigurationV2)(nil)).Elem() 263 } 264 265 func (o BucketAccelerateConfigurationV2ArrayOutput) ToBucketAccelerateConfigurationV2ArrayOutput() BucketAccelerateConfigurationV2ArrayOutput { 266 return o 267 } 268 269 func (o BucketAccelerateConfigurationV2ArrayOutput) ToBucketAccelerateConfigurationV2ArrayOutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2ArrayOutput { 270 return o 271 } 272 273 func (o BucketAccelerateConfigurationV2ArrayOutput) Index(i pulumi.IntInput) BucketAccelerateConfigurationV2Output { 274 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *BucketAccelerateConfigurationV2 { 275 return vs[0].([]*BucketAccelerateConfigurationV2)[vs[1].(int)] 276 }).(BucketAccelerateConfigurationV2Output) 277 } 278 279 type BucketAccelerateConfigurationV2MapOutput struct{ *pulumi.OutputState } 280 281 func (BucketAccelerateConfigurationV2MapOutput) ElementType() reflect.Type { 282 return reflect.TypeOf((*map[string]*BucketAccelerateConfigurationV2)(nil)).Elem() 283 } 284 285 func (o BucketAccelerateConfigurationV2MapOutput) ToBucketAccelerateConfigurationV2MapOutput() BucketAccelerateConfigurationV2MapOutput { 286 return o 287 } 288 289 func (o BucketAccelerateConfigurationV2MapOutput) ToBucketAccelerateConfigurationV2MapOutputWithContext(ctx context.Context) BucketAccelerateConfigurationV2MapOutput { 290 return o 291 } 292 293 func (o BucketAccelerateConfigurationV2MapOutput) MapIndex(k pulumi.StringInput) BucketAccelerateConfigurationV2Output { 294 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *BucketAccelerateConfigurationV2 { 295 return vs[0].(map[string]*BucketAccelerateConfigurationV2)[vs[1].(string)] 296 }).(BucketAccelerateConfigurationV2Output) 297 } 298 299 func init() { 300 pulumi.RegisterInputType(reflect.TypeOf((*BucketAccelerateConfigurationV2Input)(nil)).Elem(), &BucketAccelerateConfigurationV2{}) 301 pulumi.RegisterInputType(reflect.TypeOf((*BucketAccelerateConfigurationV2ArrayInput)(nil)).Elem(), BucketAccelerateConfigurationV2Array{}) 302 pulumi.RegisterInputType(reflect.TypeOf((*BucketAccelerateConfigurationV2MapInput)(nil)).Elem(), BucketAccelerateConfigurationV2Map{}) 303 pulumi.RegisterOutputType(BucketAccelerateConfigurationV2Output{}) 304 pulumi.RegisterOutputType(BucketAccelerateConfigurationV2ArrayOutput{}) 305 pulumi.RegisterOutputType(BucketAccelerateConfigurationV2MapOutput{}) 306 }