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