github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/opsworks/memcachedLayer.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 opsworks 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 OpsWorks memcached layer resource. 16 // 17 // ## Example Usage 18 // 19 // <!--Start PulumiCodeChooser --> 20 // ```go 21 // package main 22 // 23 // import ( 24 // 25 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/opsworks" 26 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 27 // 28 // ) 29 // 30 // func main() { 31 // pulumi.Run(func(ctx *pulumi.Context) error { 32 // _, err := opsworks.NewMemcachedLayer(ctx, "cache", &opsworks.MemcachedLayerArgs{ 33 // StackId: pulumi.Any(main.Id), 34 // }) 35 // if err != nil { 36 // return err 37 // } 38 // return nil 39 // }) 40 // } 41 // 42 // ``` 43 // <!--End PulumiCodeChooser --> 44 type MemcachedLayer struct { 45 pulumi.CustomResourceState 46 47 // Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB. 48 AllocatedMemory pulumi.IntPtrOutput `pulumi:"allocatedMemory"` 49 // The Amazon Resource Name(ARN) of the layer. 50 Arn pulumi.StringOutput `pulumi:"arn"` 51 // Whether to automatically assign an elastic IP address to the layer's instances. 52 AutoAssignElasticIps pulumi.BoolPtrOutput `pulumi:"autoAssignElasticIps"` 53 // For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances. 54 AutoAssignPublicIps pulumi.BoolPtrOutput `pulumi:"autoAssignPublicIps"` 55 // Whether to enable auto-healing for the layer. 56 AutoHealing pulumi.BoolPtrOutput `pulumi:"autoHealing"` 57 CloudwatchConfiguration MemcachedLayerCloudwatchConfigurationPtrOutput `pulumi:"cloudwatchConfiguration"` 58 CustomConfigureRecipes pulumi.StringArrayOutput `pulumi:"customConfigureRecipes"` 59 CustomDeployRecipes pulumi.StringArrayOutput `pulumi:"customDeployRecipes"` 60 // The ARN of an IAM profile that will be used for the layer's instances. 61 CustomInstanceProfileArn pulumi.StringPtrOutput `pulumi:"customInstanceProfileArn"` 62 // Custom JSON attributes to apply to the layer. 63 CustomJson pulumi.StringPtrOutput `pulumi:"customJson"` 64 // Ids for a set of security groups to apply to the layer's instances. 65 CustomSecurityGroupIds pulumi.StringArrayOutput `pulumi:"customSecurityGroupIds"` 66 CustomSetupRecipes pulumi.StringArrayOutput `pulumi:"customSetupRecipes"` 67 CustomShutdownRecipes pulumi.StringArrayOutput `pulumi:"customShutdownRecipes"` 68 CustomUndeployRecipes pulumi.StringArrayOutput `pulumi:"customUndeployRecipes"` 69 // Whether to enable Elastic Load Balancing connection draining. 70 DrainElbOnShutdown pulumi.BoolPtrOutput `pulumi:"drainElbOnShutdown"` 71 // `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances. 72 EbsVolumes MemcachedLayerEbsVolumeArrayOutput `pulumi:"ebsVolumes"` 73 // Name of an Elastic Load Balancer to attach to this layer 74 ElasticLoadBalancer pulumi.StringPtrOutput `pulumi:"elasticLoadBalancer"` 75 // Whether to install OS and package updates on each instance when it boots. 76 InstallUpdatesOnBoot pulumi.BoolPtrOutput `pulumi:"installUpdatesOnBoot"` 77 // The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event. 78 InstanceShutdownTimeout pulumi.IntPtrOutput `pulumi:"instanceShutdownTimeout"` 79 LoadBasedAutoScaling MemcachedLayerLoadBasedAutoScalingOutput `pulumi:"loadBasedAutoScaling"` 80 // A human-readable name for the layer. 81 Name pulumi.StringOutput `pulumi:"name"` 82 // ID of the stack the layer will belong to. 83 StackId pulumi.StringOutput `pulumi:"stackId"` 84 // Names of a set of system packages to install on the layer's instances. 85 SystemPackages pulumi.StringArrayOutput `pulumi:"systemPackages"` 86 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 87 // 88 // The following extra optional arguments, all lists of Chef recipe names, allow 89 // custom Chef recipes to be applied to layer instances at the five different 90 // lifecycle events, if custom cookbooks are enabled on the layer's stack: 91 Tags pulumi.StringMapOutput `pulumi:"tags"` 92 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 93 // 94 // Deprecated: Please use `tags` instead. 95 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 96 // Whether to use EBS-optimized instances. 97 UseEbsOptimizedInstances pulumi.BoolPtrOutput `pulumi:"useEbsOptimizedInstances"` 98 } 99 100 // NewMemcachedLayer registers a new resource with the given unique name, arguments, and options. 101 func NewMemcachedLayer(ctx *pulumi.Context, 102 name string, args *MemcachedLayerArgs, opts ...pulumi.ResourceOption) (*MemcachedLayer, error) { 103 if args == nil { 104 return nil, errors.New("missing one or more required arguments") 105 } 106 107 if args.StackId == nil { 108 return nil, errors.New("invalid value for required argument 'StackId'") 109 } 110 opts = internal.PkgResourceDefaultOpts(opts) 111 var resource MemcachedLayer 112 err := ctx.RegisterResource("aws:opsworks/memcachedLayer:MemcachedLayer", name, args, &resource, opts...) 113 if err != nil { 114 return nil, err 115 } 116 return &resource, nil 117 } 118 119 // GetMemcachedLayer gets an existing MemcachedLayer resource's state with the given name, ID, and optional 120 // state properties that are used to uniquely qualify the lookup (nil if not required). 121 func GetMemcachedLayer(ctx *pulumi.Context, 122 name string, id pulumi.IDInput, state *MemcachedLayerState, opts ...pulumi.ResourceOption) (*MemcachedLayer, error) { 123 var resource MemcachedLayer 124 err := ctx.ReadResource("aws:opsworks/memcachedLayer:MemcachedLayer", name, id, state, &resource, opts...) 125 if err != nil { 126 return nil, err 127 } 128 return &resource, nil 129 } 130 131 // Input properties used for looking up and filtering MemcachedLayer resources. 132 type memcachedLayerState struct { 133 // Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB. 134 AllocatedMemory *int `pulumi:"allocatedMemory"` 135 // The Amazon Resource Name(ARN) of the layer. 136 Arn *string `pulumi:"arn"` 137 // Whether to automatically assign an elastic IP address to the layer's instances. 138 AutoAssignElasticIps *bool `pulumi:"autoAssignElasticIps"` 139 // For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances. 140 AutoAssignPublicIps *bool `pulumi:"autoAssignPublicIps"` 141 // Whether to enable auto-healing for the layer. 142 AutoHealing *bool `pulumi:"autoHealing"` 143 CloudwatchConfiguration *MemcachedLayerCloudwatchConfiguration `pulumi:"cloudwatchConfiguration"` 144 CustomConfigureRecipes []string `pulumi:"customConfigureRecipes"` 145 CustomDeployRecipes []string `pulumi:"customDeployRecipes"` 146 // The ARN of an IAM profile that will be used for the layer's instances. 147 CustomInstanceProfileArn *string `pulumi:"customInstanceProfileArn"` 148 // Custom JSON attributes to apply to the layer. 149 CustomJson *string `pulumi:"customJson"` 150 // Ids for a set of security groups to apply to the layer's instances. 151 CustomSecurityGroupIds []string `pulumi:"customSecurityGroupIds"` 152 CustomSetupRecipes []string `pulumi:"customSetupRecipes"` 153 CustomShutdownRecipes []string `pulumi:"customShutdownRecipes"` 154 CustomUndeployRecipes []string `pulumi:"customUndeployRecipes"` 155 // Whether to enable Elastic Load Balancing connection draining. 156 DrainElbOnShutdown *bool `pulumi:"drainElbOnShutdown"` 157 // `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances. 158 EbsVolumes []MemcachedLayerEbsVolume `pulumi:"ebsVolumes"` 159 // Name of an Elastic Load Balancer to attach to this layer 160 ElasticLoadBalancer *string `pulumi:"elasticLoadBalancer"` 161 // Whether to install OS and package updates on each instance when it boots. 162 InstallUpdatesOnBoot *bool `pulumi:"installUpdatesOnBoot"` 163 // The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event. 164 InstanceShutdownTimeout *int `pulumi:"instanceShutdownTimeout"` 165 LoadBasedAutoScaling *MemcachedLayerLoadBasedAutoScaling `pulumi:"loadBasedAutoScaling"` 166 // A human-readable name for the layer. 167 Name *string `pulumi:"name"` 168 // ID of the stack the layer will belong to. 169 StackId *string `pulumi:"stackId"` 170 // Names of a set of system packages to install on the layer's instances. 171 SystemPackages []string `pulumi:"systemPackages"` 172 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 173 // 174 // The following extra optional arguments, all lists of Chef recipe names, allow 175 // custom Chef recipes to be applied to layer instances at the five different 176 // lifecycle events, if custom cookbooks are enabled on the layer's stack: 177 Tags map[string]string `pulumi:"tags"` 178 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 179 // 180 // Deprecated: Please use `tags` instead. 181 TagsAll map[string]string `pulumi:"tagsAll"` 182 // Whether to use EBS-optimized instances. 183 UseEbsOptimizedInstances *bool `pulumi:"useEbsOptimizedInstances"` 184 } 185 186 type MemcachedLayerState struct { 187 // Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB. 188 AllocatedMemory pulumi.IntPtrInput 189 // The Amazon Resource Name(ARN) of the layer. 190 Arn pulumi.StringPtrInput 191 // Whether to automatically assign an elastic IP address to the layer's instances. 192 AutoAssignElasticIps pulumi.BoolPtrInput 193 // For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances. 194 AutoAssignPublicIps pulumi.BoolPtrInput 195 // Whether to enable auto-healing for the layer. 196 AutoHealing pulumi.BoolPtrInput 197 CloudwatchConfiguration MemcachedLayerCloudwatchConfigurationPtrInput 198 CustomConfigureRecipes pulumi.StringArrayInput 199 CustomDeployRecipes pulumi.StringArrayInput 200 // The ARN of an IAM profile that will be used for the layer's instances. 201 CustomInstanceProfileArn pulumi.StringPtrInput 202 // Custom JSON attributes to apply to the layer. 203 CustomJson pulumi.StringPtrInput 204 // Ids for a set of security groups to apply to the layer's instances. 205 CustomSecurityGroupIds pulumi.StringArrayInput 206 CustomSetupRecipes pulumi.StringArrayInput 207 CustomShutdownRecipes pulumi.StringArrayInput 208 CustomUndeployRecipes pulumi.StringArrayInput 209 // Whether to enable Elastic Load Balancing connection draining. 210 DrainElbOnShutdown pulumi.BoolPtrInput 211 // `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances. 212 EbsVolumes MemcachedLayerEbsVolumeArrayInput 213 // Name of an Elastic Load Balancer to attach to this layer 214 ElasticLoadBalancer pulumi.StringPtrInput 215 // Whether to install OS and package updates on each instance when it boots. 216 InstallUpdatesOnBoot pulumi.BoolPtrInput 217 // The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event. 218 InstanceShutdownTimeout pulumi.IntPtrInput 219 LoadBasedAutoScaling MemcachedLayerLoadBasedAutoScalingPtrInput 220 // A human-readable name for the layer. 221 Name pulumi.StringPtrInput 222 // ID of the stack the layer will belong to. 223 StackId pulumi.StringPtrInput 224 // Names of a set of system packages to install on the layer's instances. 225 SystemPackages pulumi.StringArrayInput 226 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 227 // 228 // The following extra optional arguments, all lists of Chef recipe names, allow 229 // custom Chef recipes to be applied to layer instances at the five different 230 // lifecycle events, if custom cookbooks are enabled on the layer's stack: 231 Tags pulumi.StringMapInput 232 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 233 // 234 // Deprecated: Please use `tags` instead. 235 TagsAll pulumi.StringMapInput 236 // Whether to use EBS-optimized instances. 237 UseEbsOptimizedInstances pulumi.BoolPtrInput 238 } 239 240 func (MemcachedLayerState) ElementType() reflect.Type { 241 return reflect.TypeOf((*memcachedLayerState)(nil)).Elem() 242 } 243 244 type memcachedLayerArgs struct { 245 // Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB. 246 AllocatedMemory *int `pulumi:"allocatedMemory"` 247 // Whether to automatically assign an elastic IP address to the layer's instances. 248 AutoAssignElasticIps *bool `pulumi:"autoAssignElasticIps"` 249 // For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances. 250 AutoAssignPublicIps *bool `pulumi:"autoAssignPublicIps"` 251 // Whether to enable auto-healing for the layer. 252 AutoHealing *bool `pulumi:"autoHealing"` 253 CloudwatchConfiguration *MemcachedLayerCloudwatchConfiguration `pulumi:"cloudwatchConfiguration"` 254 CustomConfigureRecipes []string `pulumi:"customConfigureRecipes"` 255 CustomDeployRecipes []string `pulumi:"customDeployRecipes"` 256 // The ARN of an IAM profile that will be used for the layer's instances. 257 CustomInstanceProfileArn *string `pulumi:"customInstanceProfileArn"` 258 // Custom JSON attributes to apply to the layer. 259 CustomJson *string `pulumi:"customJson"` 260 // Ids for a set of security groups to apply to the layer's instances. 261 CustomSecurityGroupIds []string `pulumi:"customSecurityGroupIds"` 262 CustomSetupRecipes []string `pulumi:"customSetupRecipes"` 263 CustomShutdownRecipes []string `pulumi:"customShutdownRecipes"` 264 CustomUndeployRecipes []string `pulumi:"customUndeployRecipes"` 265 // Whether to enable Elastic Load Balancing connection draining. 266 DrainElbOnShutdown *bool `pulumi:"drainElbOnShutdown"` 267 // `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances. 268 EbsVolumes []MemcachedLayerEbsVolume `pulumi:"ebsVolumes"` 269 // Name of an Elastic Load Balancer to attach to this layer 270 ElasticLoadBalancer *string `pulumi:"elasticLoadBalancer"` 271 // Whether to install OS and package updates on each instance when it boots. 272 InstallUpdatesOnBoot *bool `pulumi:"installUpdatesOnBoot"` 273 // The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event. 274 InstanceShutdownTimeout *int `pulumi:"instanceShutdownTimeout"` 275 LoadBasedAutoScaling *MemcachedLayerLoadBasedAutoScaling `pulumi:"loadBasedAutoScaling"` 276 // A human-readable name for the layer. 277 Name *string `pulumi:"name"` 278 // ID of the stack the layer will belong to. 279 StackId string `pulumi:"stackId"` 280 // Names of a set of system packages to install on the layer's instances. 281 SystemPackages []string `pulumi:"systemPackages"` 282 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 283 // 284 // The following extra optional arguments, all lists of Chef recipe names, allow 285 // custom Chef recipes to be applied to layer instances at the five different 286 // lifecycle events, if custom cookbooks are enabled on the layer's stack: 287 Tags map[string]string `pulumi:"tags"` 288 // Whether to use EBS-optimized instances. 289 UseEbsOptimizedInstances *bool `pulumi:"useEbsOptimizedInstances"` 290 } 291 292 // The set of arguments for constructing a MemcachedLayer resource. 293 type MemcachedLayerArgs struct { 294 // Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB. 295 AllocatedMemory pulumi.IntPtrInput 296 // Whether to automatically assign an elastic IP address to the layer's instances. 297 AutoAssignElasticIps pulumi.BoolPtrInput 298 // For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances. 299 AutoAssignPublicIps pulumi.BoolPtrInput 300 // Whether to enable auto-healing for the layer. 301 AutoHealing pulumi.BoolPtrInput 302 CloudwatchConfiguration MemcachedLayerCloudwatchConfigurationPtrInput 303 CustomConfigureRecipes pulumi.StringArrayInput 304 CustomDeployRecipes pulumi.StringArrayInput 305 // The ARN of an IAM profile that will be used for the layer's instances. 306 CustomInstanceProfileArn pulumi.StringPtrInput 307 // Custom JSON attributes to apply to the layer. 308 CustomJson pulumi.StringPtrInput 309 // Ids for a set of security groups to apply to the layer's instances. 310 CustomSecurityGroupIds pulumi.StringArrayInput 311 CustomSetupRecipes pulumi.StringArrayInput 312 CustomShutdownRecipes pulumi.StringArrayInput 313 CustomUndeployRecipes pulumi.StringArrayInput 314 // Whether to enable Elastic Load Balancing connection draining. 315 DrainElbOnShutdown pulumi.BoolPtrInput 316 // `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances. 317 EbsVolumes MemcachedLayerEbsVolumeArrayInput 318 // Name of an Elastic Load Balancer to attach to this layer 319 ElasticLoadBalancer pulumi.StringPtrInput 320 // Whether to install OS and package updates on each instance when it boots. 321 InstallUpdatesOnBoot pulumi.BoolPtrInput 322 // The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event. 323 InstanceShutdownTimeout pulumi.IntPtrInput 324 LoadBasedAutoScaling MemcachedLayerLoadBasedAutoScalingPtrInput 325 // A human-readable name for the layer. 326 Name pulumi.StringPtrInput 327 // ID of the stack the layer will belong to. 328 StackId pulumi.StringInput 329 // Names of a set of system packages to install on the layer's instances. 330 SystemPackages pulumi.StringArrayInput 331 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 332 // 333 // The following extra optional arguments, all lists of Chef recipe names, allow 334 // custom Chef recipes to be applied to layer instances at the five different 335 // lifecycle events, if custom cookbooks are enabled on the layer's stack: 336 Tags pulumi.StringMapInput 337 // Whether to use EBS-optimized instances. 338 UseEbsOptimizedInstances pulumi.BoolPtrInput 339 } 340 341 func (MemcachedLayerArgs) ElementType() reflect.Type { 342 return reflect.TypeOf((*memcachedLayerArgs)(nil)).Elem() 343 } 344 345 type MemcachedLayerInput interface { 346 pulumi.Input 347 348 ToMemcachedLayerOutput() MemcachedLayerOutput 349 ToMemcachedLayerOutputWithContext(ctx context.Context) MemcachedLayerOutput 350 } 351 352 func (*MemcachedLayer) ElementType() reflect.Type { 353 return reflect.TypeOf((**MemcachedLayer)(nil)).Elem() 354 } 355 356 func (i *MemcachedLayer) ToMemcachedLayerOutput() MemcachedLayerOutput { 357 return i.ToMemcachedLayerOutputWithContext(context.Background()) 358 } 359 360 func (i *MemcachedLayer) ToMemcachedLayerOutputWithContext(ctx context.Context) MemcachedLayerOutput { 361 return pulumi.ToOutputWithContext(ctx, i).(MemcachedLayerOutput) 362 } 363 364 // MemcachedLayerArrayInput is an input type that accepts MemcachedLayerArray and MemcachedLayerArrayOutput values. 365 // You can construct a concrete instance of `MemcachedLayerArrayInput` via: 366 // 367 // MemcachedLayerArray{ MemcachedLayerArgs{...} } 368 type MemcachedLayerArrayInput interface { 369 pulumi.Input 370 371 ToMemcachedLayerArrayOutput() MemcachedLayerArrayOutput 372 ToMemcachedLayerArrayOutputWithContext(context.Context) MemcachedLayerArrayOutput 373 } 374 375 type MemcachedLayerArray []MemcachedLayerInput 376 377 func (MemcachedLayerArray) ElementType() reflect.Type { 378 return reflect.TypeOf((*[]*MemcachedLayer)(nil)).Elem() 379 } 380 381 func (i MemcachedLayerArray) ToMemcachedLayerArrayOutput() MemcachedLayerArrayOutput { 382 return i.ToMemcachedLayerArrayOutputWithContext(context.Background()) 383 } 384 385 func (i MemcachedLayerArray) ToMemcachedLayerArrayOutputWithContext(ctx context.Context) MemcachedLayerArrayOutput { 386 return pulumi.ToOutputWithContext(ctx, i).(MemcachedLayerArrayOutput) 387 } 388 389 // MemcachedLayerMapInput is an input type that accepts MemcachedLayerMap and MemcachedLayerMapOutput values. 390 // You can construct a concrete instance of `MemcachedLayerMapInput` via: 391 // 392 // MemcachedLayerMap{ "key": MemcachedLayerArgs{...} } 393 type MemcachedLayerMapInput interface { 394 pulumi.Input 395 396 ToMemcachedLayerMapOutput() MemcachedLayerMapOutput 397 ToMemcachedLayerMapOutputWithContext(context.Context) MemcachedLayerMapOutput 398 } 399 400 type MemcachedLayerMap map[string]MemcachedLayerInput 401 402 func (MemcachedLayerMap) ElementType() reflect.Type { 403 return reflect.TypeOf((*map[string]*MemcachedLayer)(nil)).Elem() 404 } 405 406 func (i MemcachedLayerMap) ToMemcachedLayerMapOutput() MemcachedLayerMapOutput { 407 return i.ToMemcachedLayerMapOutputWithContext(context.Background()) 408 } 409 410 func (i MemcachedLayerMap) ToMemcachedLayerMapOutputWithContext(ctx context.Context) MemcachedLayerMapOutput { 411 return pulumi.ToOutputWithContext(ctx, i).(MemcachedLayerMapOutput) 412 } 413 414 type MemcachedLayerOutput struct{ *pulumi.OutputState } 415 416 func (MemcachedLayerOutput) ElementType() reflect.Type { 417 return reflect.TypeOf((**MemcachedLayer)(nil)).Elem() 418 } 419 420 func (o MemcachedLayerOutput) ToMemcachedLayerOutput() MemcachedLayerOutput { 421 return o 422 } 423 424 func (o MemcachedLayerOutput) ToMemcachedLayerOutputWithContext(ctx context.Context) MemcachedLayerOutput { 425 return o 426 } 427 428 // Amount of memory to allocate for the cache on each instance, in megabytes. Defaults to 512MB. 429 func (o MemcachedLayerOutput) AllocatedMemory() pulumi.IntPtrOutput { 430 return o.ApplyT(func(v *MemcachedLayer) pulumi.IntPtrOutput { return v.AllocatedMemory }).(pulumi.IntPtrOutput) 431 } 432 433 // The Amazon Resource Name(ARN) of the layer. 434 func (o MemcachedLayerOutput) Arn() pulumi.StringOutput { 435 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 436 } 437 438 // Whether to automatically assign an elastic IP address to the layer's instances. 439 func (o MemcachedLayerOutput) AutoAssignElasticIps() pulumi.BoolPtrOutput { 440 return o.ApplyT(func(v *MemcachedLayer) pulumi.BoolPtrOutput { return v.AutoAssignElasticIps }).(pulumi.BoolPtrOutput) 441 } 442 443 // For stacks belonging to a VPC, whether to automatically assign a public IP address to each of the layer's instances. 444 func (o MemcachedLayerOutput) AutoAssignPublicIps() pulumi.BoolPtrOutput { 445 return o.ApplyT(func(v *MemcachedLayer) pulumi.BoolPtrOutput { return v.AutoAssignPublicIps }).(pulumi.BoolPtrOutput) 446 } 447 448 // Whether to enable auto-healing for the layer. 449 func (o MemcachedLayerOutput) AutoHealing() pulumi.BoolPtrOutput { 450 return o.ApplyT(func(v *MemcachedLayer) pulumi.BoolPtrOutput { return v.AutoHealing }).(pulumi.BoolPtrOutput) 451 } 452 453 func (o MemcachedLayerOutput) CloudwatchConfiguration() MemcachedLayerCloudwatchConfigurationPtrOutput { 454 return o.ApplyT(func(v *MemcachedLayer) MemcachedLayerCloudwatchConfigurationPtrOutput { 455 return v.CloudwatchConfiguration 456 }).(MemcachedLayerCloudwatchConfigurationPtrOutput) 457 } 458 459 func (o MemcachedLayerOutput) CustomConfigureRecipes() pulumi.StringArrayOutput { 460 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.CustomConfigureRecipes }).(pulumi.StringArrayOutput) 461 } 462 463 func (o MemcachedLayerOutput) CustomDeployRecipes() pulumi.StringArrayOutput { 464 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.CustomDeployRecipes }).(pulumi.StringArrayOutput) 465 } 466 467 // The ARN of an IAM profile that will be used for the layer's instances. 468 func (o MemcachedLayerOutput) CustomInstanceProfileArn() pulumi.StringPtrOutput { 469 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringPtrOutput { return v.CustomInstanceProfileArn }).(pulumi.StringPtrOutput) 470 } 471 472 // Custom JSON attributes to apply to the layer. 473 func (o MemcachedLayerOutput) CustomJson() pulumi.StringPtrOutput { 474 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringPtrOutput { return v.CustomJson }).(pulumi.StringPtrOutput) 475 } 476 477 // Ids for a set of security groups to apply to the layer's instances. 478 func (o MemcachedLayerOutput) CustomSecurityGroupIds() pulumi.StringArrayOutput { 479 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.CustomSecurityGroupIds }).(pulumi.StringArrayOutput) 480 } 481 482 func (o MemcachedLayerOutput) CustomSetupRecipes() pulumi.StringArrayOutput { 483 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.CustomSetupRecipes }).(pulumi.StringArrayOutput) 484 } 485 486 func (o MemcachedLayerOutput) CustomShutdownRecipes() pulumi.StringArrayOutput { 487 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.CustomShutdownRecipes }).(pulumi.StringArrayOutput) 488 } 489 490 func (o MemcachedLayerOutput) CustomUndeployRecipes() pulumi.StringArrayOutput { 491 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.CustomUndeployRecipes }).(pulumi.StringArrayOutput) 492 } 493 494 // Whether to enable Elastic Load Balancing connection draining. 495 func (o MemcachedLayerOutput) DrainElbOnShutdown() pulumi.BoolPtrOutput { 496 return o.ApplyT(func(v *MemcachedLayer) pulumi.BoolPtrOutput { return v.DrainElbOnShutdown }).(pulumi.BoolPtrOutput) 497 } 498 499 // `ebsVolume` blocks, as described below, will each create an EBS volume and connect it to the layer's instances. 500 func (o MemcachedLayerOutput) EbsVolumes() MemcachedLayerEbsVolumeArrayOutput { 501 return o.ApplyT(func(v *MemcachedLayer) MemcachedLayerEbsVolumeArrayOutput { return v.EbsVolumes }).(MemcachedLayerEbsVolumeArrayOutput) 502 } 503 504 // Name of an Elastic Load Balancer to attach to this layer 505 func (o MemcachedLayerOutput) ElasticLoadBalancer() pulumi.StringPtrOutput { 506 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringPtrOutput { return v.ElasticLoadBalancer }).(pulumi.StringPtrOutput) 507 } 508 509 // Whether to install OS and package updates on each instance when it boots. 510 func (o MemcachedLayerOutput) InstallUpdatesOnBoot() pulumi.BoolPtrOutput { 511 return o.ApplyT(func(v *MemcachedLayer) pulumi.BoolPtrOutput { return v.InstallUpdatesOnBoot }).(pulumi.BoolPtrOutput) 512 } 513 514 // The time, in seconds, that OpsWorks will wait for Chef to complete after triggering the Shutdown event. 515 func (o MemcachedLayerOutput) InstanceShutdownTimeout() pulumi.IntPtrOutput { 516 return o.ApplyT(func(v *MemcachedLayer) pulumi.IntPtrOutput { return v.InstanceShutdownTimeout }).(pulumi.IntPtrOutput) 517 } 518 519 func (o MemcachedLayerOutput) LoadBasedAutoScaling() MemcachedLayerLoadBasedAutoScalingOutput { 520 return o.ApplyT(func(v *MemcachedLayer) MemcachedLayerLoadBasedAutoScalingOutput { return v.LoadBasedAutoScaling }).(MemcachedLayerLoadBasedAutoScalingOutput) 521 } 522 523 // A human-readable name for the layer. 524 func (o MemcachedLayerOutput) Name() pulumi.StringOutput { 525 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 526 } 527 528 // ID of the stack the layer will belong to. 529 func (o MemcachedLayerOutput) StackId() pulumi.StringOutput { 530 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringOutput { return v.StackId }).(pulumi.StringOutput) 531 } 532 533 // Names of a set of system packages to install on the layer's instances. 534 func (o MemcachedLayerOutput) SystemPackages() pulumi.StringArrayOutput { 535 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringArrayOutput { return v.SystemPackages }).(pulumi.StringArrayOutput) 536 } 537 538 // A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 539 // 540 // The following extra optional arguments, all lists of Chef recipe names, allow 541 // custom Chef recipes to be applied to layer instances at the five different 542 // lifecycle events, if custom cookbooks are enabled on the layer's stack: 543 func (o MemcachedLayerOutput) Tags() pulumi.StringMapOutput { 544 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 545 } 546 547 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 548 // 549 // Deprecated: Please use `tags` instead. 550 func (o MemcachedLayerOutput) TagsAll() pulumi.StringMapOutput { 551 return o.ApplyT(func(v *MemcachedLayer) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 552 } 553 554 // Whether to use EBS-optimized instances. 555 func (o MemcachedLayerOutput) UseEbsOptimizedInstances() pulumi.BoolPtrOutput { 556 return o.ApplyT(func(v *MemcachedLayer) pulumi.BoolPtrOutput { return v.UseEbsOptimizedInstances }).(pulumi.BoolPtrOutput) 557 } 558 559 type MemcachedLayerArrayOutput struct{ *pulumi.OutputState } 560 561 func (MemcachedLayerArrayOutput) ElementType() reflect.Type { 562 return reflect.TypeOf((*[]*MemcachedLayer)(nil)).Elem() 563 } 564 565 func (o MemcachedLayerArrayOutput) ToMemcachedLayerArrayOutput() MemcachedLayerArrayOutput { 566 return o 567 } 568 569 func (o MemcachedLayerArrayOutput) ToMemcachedLayerArrayOutputWithContext(ctx context.Context) MemcachedLayerArrayOutput { 570 return o 571 } 572 573 func (o MemcachedLayerArrayOutput) Index(i pulumi.IntInput) MemcachedLayerOutput { 574 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *MemcachedLayer { 575 return vs[0].([]*MemcachedLayer)[vs[1].(int)] 576 }).(MemcachedLayerOutput) 577 } 578 579 type MemcachedLayerMapOutput struct{ *pulumi.OutputState } 580 581 func (MemcachedLayerMapOutput) ElementType() reflect.Type { 582 return reflect.TypeOf((*map[string]*MemcachedLayer)(nil)).Elem() 583 } 584 585 func (o MemcachedLayerMapOutput) ToMemcachedLayerMapOutput() MemcachedLayerMapOutput { 586 return o 587 } 588 589 func (o MemcachedLayerMapOutput) ToMemcachedLayerMapOutputWithContext(ctx context.Context) MemcachedLayerMapOutput { 590 return o 591 } 592 593 func (o MemcachedLayerMapOutput) MapIndex(k pulumi.StringInput) MemcachedLayerOutput { 594 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *MemcachedLayer { 595 return vs[0].(map[string]*MemcachedLayer)[vs[1].(string)] 596 }).(MemcachedLayerOutput) 597 } 598 599 func init() { 600 pulumi.RegisterInputType(reflect.TypeOf((*MemcachedLayerInput)(nil)).Elem(), &MemcachedLayer{}) 601 pulumi.RegisterInputType(reflect.TypeOf((*MemcachedLayerArrayInput)(nil)).Elem(), MemcachedLayerArray{}) 602 pulumi.RegisterInputType(reflect.TypeOf((*MemcachedLayerMapInput)(nil)).Elem(), MemcachedLayerMap{}) 603 pulumi.RegisterOutputType(MemcachedLayerOutput{}) 604 pulumi.RegisterOutputType(MemcachedLayerArrayOutput{}) 605 pulumi.RegisterOutputType(MemcachedLayerMapOutput{}) 606 }