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