github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/opsworks/stack.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 stack 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.NewStack(ctx, "main", &opsworks.StackArgs{ 33 // Name: pulumi.String("awesome-stack"), 34 // Region: pulumi.String("us-west-1"), 35 // ServiceRoleArn: pulumi.Any(opsworksAwsIamRole.Arn), 36 // DefaultInstanceProfileArn: pulumi.Any(opsworks.Arn), 37 // Tags: pulumi.StringMap{ 38 // "Name": pulumi.String("foobar-stack"), 39 // }, 40 // CustomJson: pulumi.String("{\n \"foobar\": {\n \"version\": \"1.0.0\"\n }\n}\n"), 41 // }) 42 // if err != nil { 43 // return err 44 // } 45 // return nil 46 // }) 47 // } 48 // 49 // ``` 50 // <!--End PulumiCodeChooser --> 51 // 52 // ## Import 53 // 54 // Using `pulumi import`, import OpsWorks stacks using the `id`. For example: 55 // 56 // ```sh 57 // $ pulumi import aws:opsworks/stack:Stack bar 00000000-0000-0000-0000-000000000000 58 // ``` 59 type Stack struct { 60 pulumi.CustomResourceState 61 62 // If set to `"LATEST"`, OpsWorks will automatically install the latest version. 63 AgentVersion pulumi.StringOutput `pulumi:"agentVersion"` 64 Arn pulumi.StringOutput `pulumi:"arn"` 65 // If `manageBerkshelf` is enabled, the version of Berkshelf to use. 66 BerkshelfVersion pulumi.StringPtrOutput `pulumi:"berkshelfVersion"` 67 // Color to paint next to the stack's resources in the OpsWorks console. 68 Color pulumi.StringPtrOutput `pulumi:"color"` 69 // Name of the configuration manager to use. Defaults to "Chef". 70 ConfigurationManagerName pulumi.StringPtrOutput `pulumi:"configurationManagerName"` 71 // Version of the configuration manager to use. Defaults to "11.4". 72 ConfigurationManagerVersion pulumi.StringPtrOutput `pulumi:"configurationManagerVersion"` 73 // When `useCustomCookbooks` is set, provide this sub-object as described below. 74 CustomCookbooksSources StackCustomCookbooksSourceArrayOutput `pulumi:"customCookbooksSources"` 75 // Custom JSON attributes to apply to the entire stack. 76 CustomJson pulumi.StringPtrOutput `pulumi:"customJson"` 77 // Name of the availability zone where instances will be created by default. 78 // Cannot be set when `vpcId` is set. 79 DefaultAvailabilityZone pulumi.StringOutput `pulumi:"defaultAvailabilityZone"` 80 // The ARN of an IAM Instance Profile that created instances will have by default. 81 DefaultInstanceProfileArn pulumi.StringOutput `pulumi:"defaultInstanceProfileArn"` 82 // Name of OS that will be installed on instances by default. 83 DefaultOs pulumi.StringPtrOutput `pulumi:"defaultOs"` 84 // Name of the type of root device instances will have by default. 85 DefaultRootDeviceType pulumi.StringPtrOutput `pulumi:"defaultRootDeviceType"` 86 // Name of the SSH keypair that instances will have by default. 87 DefaultSshKeyName pulumi.StringPtrOutput `pulumi:"defaultSshKeyName"` 88 // ID of the subnet in which instances will be created by default. 89 // Required if `vpcId` is set to a VPC other than the default VPC, and forbidden if it isn't. 90 DefaultSubnetId pulumi.StringOutput `pulumi:"defaultSubnetId"` 91 // Keyword representing the naming scheme that will be used for instance hostnames within this stack. 92 HostnameTheme pulumi.StringPtrOutput `pulumi:"hostnameTheme"` 93 // Boolean value controlling whether Opsworks will run Berkshelf for this stack. 94 ManageBerkshelf pulumi.BoolPtrOutput `pulumi:"manageBerkshelf"` 95 // The name of the stack. 96 Name pulumi.StringOutput `pulumi:"name"` 97 // The name of the region where the stack will exist. 98 Region pulumi.StringOutput `pulumi:"region"` 99 // The ARN of an IAM role that the OpsWorks service will act as. 100 ServiceRoleArn pulumi.StringOutput `pulumi:"serviceRoleArn"` 101 StackEndpoint pulumi.StringOutput `pulumi:"stackEndpoint"` 102 // A map of tags to assign to the resource. 103 // If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 104 Tags pulumi.StringMapOutput `pulumi:"tags"` 105 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 106 // 107 // Deprecated: Please use `tags` instead. 108 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 109 // Boolean value controlling whether the custom cookbook settings are enabled. 110 UseCustomCookbooks pulumi.BoolPtrOutput `pulumi:"useCustomCookbooks"` 111 // Boolean value controlling whether the standard OpsWorks security groups apply to created instances. 112 UseOpsworksSecurityGroups pulumi.BoolPtrOutput `pulumi:"useOpsworksSecurityGroups"` 113 // ID of the VPC that this stack belongs to. 114 // Defaults to the region's default VPC. 115 VpcId pulumi.StringOutput `pulumi:"vpcId"` 116 } 117 118 // NewStack registers a new resource with the given unique name, arguments, and options. 119 func NewStack(ctx *pulumi.Context, 120 name string, args *StackArgs, opts ...pulumi.ResourceOption) (*Stack, error) { 121 if args == nil { 122 return nil, errors.New("missing one or more required arguments") 123 } 124 125 if args.DefaultInstanceProfileArn == nil { 126 return nil, errors.New("invalid value for required argument 'DefaultInstanceProfileArn'") 127 } 128 if args.Region == nil { 129 return nil, errors.New("invalid value for required argument 'Region'") 130 } 131 if args.ServiceRoleArn == nil { 132 return nil, errors.New("invalid value for required argument 'ServiceRoleArn'") 133 } 134 opts = internal.PkgResourceDefaultOpts(opts) 135 var resource Stack 136 err := ctx.RegisterResource("aws:opsworks/stack:Stack", name, args, &resource, opts...) 137 if err != nil { 138 return nil, err 139 } 140 return &resource, nil 141 } 142 143 // GetStack gets an existing Stack resource's state with the given name, ID, and optional 144 // state properties that are used to uniquely qualify the lookup (nil if not required). 145 func GetStack(ctx *pulumi.Context, 146 name string, id pulumi.IDInput, state *StackState, opts ...pulumi.ResourceOption) (*Stack, error) { 147 var resource Stack 148 err := ctx.ReadResource("aws:opsworks/stack:Stack", name, id, state, &resource, opts...) 149 if err != nil { 150 return nil, err 151 } 152 return &resource, nil 153 } 154 155 // Input properties used for looking up and filtering Stack resources. 156 type stackState struct { 157 // If set to `"LATEST"`, OpsWorks will automatically install the latest version. 158 AgentVersion *string `pulumi:"agentVersion"` 159 Arn *string `pulumi:"arn"` 160 // If `manageBerkshelf` is enabled, the version of Berkshelf to use. 161 BerkshelfVersion *string `pulumi:"berkshelfVersion"` 162 // Color to paint next to the stack's resources in the OpsWorks console. 163 Color *string `pulumi:"color"` 164 // Name of the configuration manager to use. Defaults to "Chef". 165 ConfigurationManagerName *string `pulumi:"configurationManagerName"` 166 // Version of the configuration manager to use. Defaults to "11.4". 167 ConfigurationManagerVersion *string `pulumi:"configurationManagerVersion"` 168 // When `useCustomCookbooks` is set, provide this sub-object as described below. 169 CustomCookbooksSources []StackCustomCookbooksSource `pulumi:"customCookbooksSources"` 170 // Custom JSON attributes to apply to the entire stack. 171 CustomJson *string `pulumi:"customJson"` 172 // Name of the availability zone where instances will be created by default. 173 // Cannot be set when `vpcId` is set. 174 DefaultAvailabilityZone *string `pulumi:"defaultAvailabilityZone"` 175 // The ARN of an IAM Instance Profile that created instances will have by default. 176 DefaultInstanceProfileArn *string `pulumi:"defaultInstanceProfileArn"` 177 // Name of OS that will be installed on instances by default. 178 DefaultOs *string `pulumi:"defaultOs"` 179 // Name of the type of root device instances will have by default. 180 DefaultRootDeviceType *string `pulumi:"defaultRootDeviceType"` 181 // Name of the SSH keypair that instances will have by default. 182 DefaultSshKeyName *string `pulumi:"defaultSshKeyName"` 183 // ID of the subnet in which instances will be created by default. 184 // Required if `vpcId` is set to a VPC other than the default VPC, and forbidden if it isn't. 185 DefaultSubnetId *string `pulumi:"defaultSubnetId"` 186 // Keyword representing the naming scheme that will be used for instance hostnames within this stack. 187 HostnameTheme *string `pulumi:"hostnameTheme"` 188 // Boolean value controlling whether Opsworks will run Berkshelf for this stack. 189 ManageBerkshelf *bool `pulumi:"manageBerkshelf"` 190 // The name of the stack. 191 Name *string `pulumi:"name"` 192 // The name of the region where the stack will exist. 193 Region *string `pulumi:"region"` 194 // The ARN of an IAM role that the OpsWorks service will act as. 195 ServiceRoleArn *string `pulumi:"serviceRoleArn"` 196 StackEndpoint *string `pulumi:"stackEndpoint"` 197 // A map of tags to assign to the resource. 198 // If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 199 Tags map[string]string `pulumi:"tags"` 200 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 201 // 202 // Deprecated: Please use `tags` instead. 203 TagsAll map[string]string `pulumi:"tagsAll"` 204 // Boolean value controlling whether the custom cookbook settings are enabled. 205 UseCustomCookbooks *bool `pulumi:"useCustomCookbooks"` 206 // Boolean value controlling whether the standard OpsWorks security groups apply to created instances. 207 UseOpsworksSecurityGroups *bool `pulumi:"useOpsworksSecurityGroups"` 208 // ID of the VPC that this stack belongs to. 209 // Defaults to the region's default VPC. 210 VpcId *string `pulumi:"vpcId"` 211 } 212 213 type StackState struct { 214 // If set to `"LATEST"`, OpsWorks will automatically install the latest version. 215 AgentVersion pulumi.StringPtrInput 216 Arn pulumi.StringPtrInput 217 // If `manageBerkshelf` is enabled, the version of Berkshelf to use. 218 BerkshelfVersion pulumi.StringPtrInput 219 // Color to paint next to the stack's resources in the OpsWorks console. 220 Color pulumi.StringPtrInput 221 // Name of the configuration manager to use. Defaults to "Chef". 222 ConfigurationManagerName pulumi.StringPtrInput 223 // Version of the configuration manager to use. Defaults to "11.4". 224 ConfigurationManagerVersion pulumi.StringPtrInput 225 // When `useCustomCookbooks` is set, provide this sub-object as described below. 226 CustomCookbooksSources StackCustomCookbooksSourceArrayInput 227 // Custom JSON attributes to apply to the entire stack. 228 CustomJson pulumi.StringPtrInput 229 // Name of the availability zone where instances will be created by default. 230 // Cannot be set when `vpcId` is set. 231 DefaultAvailabilityZone pulumi.StringPtrInput 232 // The ARN of an IAM Instance Profile that created instances will have by default. 233 DefaultInstanceProfileArn pulumi.StringPtrInput 234 // Name of OS that will be installed on instances by default. 235 DefaultOs pulumi.StringPtrInput 236 // Name of the type of root device instances will have by default. 237 DefaultRootDeviceType pulumi.StringPtrInput 238 // Name of the SSH keypair that instances will have by default. 239 DefaultSshKeyName pulumi.StringPtrInput 240 // ID of the subnet in which instances will be created by default. 241 // Required if `vpcId` is set to a VPC other than the default VPC, and forbidden if it isn't. 242 DefaultSubnetId pulumi.StringPtrInput 243 // Keyword representing the naming scheme that will be used for instance hostnames within this stack. 244 HostnameTheme pulumi.StringPtrInput 245 // Boolean value controlling whether Opsworks will run Berkshelf for this stack. 246 ManageBerkshelf pulumi.BoolPtrInput 247 // The name of the stack. 248 Name pulumi.StringPtrInput 249 // The name of the region where the stack will exist. 250 Region pulumi.StringPtrInput 251 // The ARN of an IAM role that the OpsWorks service will act as. 252 ServiceRoleArn pulumi.StringPtrInput 253 StackEndpoint pulumi.StringPtrInput 254 // A map of tags to assign to the resource. 255 // If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 256 Tags pulumi.StringMapInput 257 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 258 // 259 // Deprecated: Please use `tags` instead. 260 TagsAll pulumi.StringMapInput 261 // Boolean value controlling whether the custom cookbook settings are enabled. 262 UseCustomCookbooks pulumi.BoolPtrInput 263 // Boolean value controlling whether the standard OpsWorks security groups apply to created instances. 264 UseOpsworksSecurityGroups pulumi.BoolPtrInput 265 // ID of the VPC that this stack belongs to. 266 // Defaults to the region's default VPC. 267 VpcId pulumi.StringPtrInput 268 } 269 270 func (StackState) ElementType() reflect.Type { 271 return reflect.TypeOf((*stackState)(nil)).Elem() 272 } 273 274 type stackArgs struct { 275 // If set to `"LATEST"`, OpsWorks will automatically install the latest version. 276 AgentVersion *string `pulumi:"agentVersion"` 277 // If `manageBerkshelf` is enabled, the version of Berkshelf to use. 278 BerkshelfVersion *string `pulumi:"berkshelfVersion"` 279 // Color to paint next to the stack's resources in the OpsWorks console. 280 Color *string `pulumi:"color"` 281 // Name of the configuration manager to use. Defaults to "Chef". 282 ConfigurationManagerName *string `pulumi:"configurationManagerName"` 283 // Version of the configuration manager to use. Defaults to "11.4". 284 ConfigurationManagerVersion *string `pulumi:"configurationManagerVersion"` 285 // When `useCustomCookbooks` is set, provide this sub-object as described below. 286 CustomCookbooksSources []StackCustomCookbooksSource `pulumi:"customCookbooksSources"` 287 // Custom JSON attributes to apply to the entire stack. 288 CustomJson *string `pulumi:"customJson"` 289 // Name of the availability zone where instances will be created by default. 290 // Cannot be set when `vpcId` is set. 291 DefaultAvailabilityZone *string `pulumi:"defaultAvailabilityZone"` 292 // The ARN of an IAM Instance Profile that created instances will have by default. 293 DefaultInstanceProfileArn string `pulumi:"defaultInstanceProfileArn"` 294 // Name of OS that will be installed on instances by default. 295 DefaultOs *string `pulumi:"defaultOs"` 296 // Name of the type of root device instances will have by default. 297 DefaultRootDeviceType *string `pulumi:"defaultRootDeviceType"` 298 // Name of the SSH keypair that instances will have by default. 299 DefaultSshKeyName *string `pulumi:"defaultSshKeyName"` 300 // ID of the subnet in which instances will be created by default. 301 // Required if `vpcId` is set to a VPC other than the default VPC, and forbidden if it isn't. 302 DefaultSubnetId *string `pulumi:"defaultSubnetId"` 303 // Keyword representing the naming scheme that will be used for instance hostnames within this stack. 304 HostnameTheme *string `pulumi:"hostnameTheme"` 305 // Boolean value controlling whether Opsworks will run Berkshelf for this stack. 306 ManageBerkshelf *bool `pulumi:"manageBerkshelf"` 307 // The name of the stack. 308 Name *string `pulumi:"name"` 309 // The name of the region where the stack will exist. 310 Region string `pulumi:"region"` 311 // The ARN of an IAM role that the OpsWorks service will act as. 312 ServiceRoleArn string `pulumi:"serviceRoleArn"` 313 // A map of tags to assign to the resource. 314 // If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 315 Tags map[string]string `pulumi:"tags"` 316 // Boolean value controlling whether the custom cookbook settings are enabled. 317 UseCustomCookbooks *bool `pulumi:"useCustomCookbooks"` 318 // Boolean value controlling whether the standard OpsWorks security groups apply to created instances. 319 UseOpsworksSecurityGroups *bool `pulumi:"useOpsworksSecurityGroups"` 320 // ID of the VPC that this stack belongs to. 321 // Defaults to the region's default VPC. 322 VpcId *string `pulumi:"vpcId"` 323 } 324 325 // The set of arguments for constructing a Stack resource. 326 type StackArgs struct { 327 // If set to `"LATEST"`, OpsWorks will automatically install the latest version. 328 AgentVersion pulumi.StringPtrInput 329 // If `manageBerkshelf` is enabled, the version of Berkshelf to use. 330 BerkshelfVersion pulumi.StringPtrInput 331 // Color to paint next to the stack's resources in the OpsWorks console. 332 Color pulumi.StringPtrInput 333 // Name of the configuration manager to use. Defaults to "Chef". 334 ConfigurationManagerName pulumi.StringPtrInput 335 // Version of the configuration manager to use. Defaults to "11.4". 336 ConfigurationManagerVersion pulumi.StringPtrInput 337 // When `useCustomCookbooks` is set, provide this sub-object as described below. 338 CustomCookbooksSources StackCustomCookbooksSourceArrayInput 339 // Custom JSON attributes to apply to the entire stack. 340 CustomJson pulumi.StringPtrInput 341 // Name of the availability zone where instances will be created by default. 342 // Cannot be set when `vpcId` is set. 343 DefaultAvailabilityZone pulumi.StringPtrInput 344 // The ARN of an IAM Instance Profile that created instances will have by default. 345 DefaultInstanceProfileArn pulumi.StringInput 346 // Name of OS that will be installed on instances by default. 347 DefaultOs pulumi.StringPtrInput 348 // Name of the type of root device instances will have by default. 349 DefaultRootDeviceType pulumi.StringPtrInput 350 // Name of the SSH keypair that instances will have by default. 351 DefaultSshKeyName pulumi.StringPtrInput 352 // ID of the subnet in which instances will be created by default. 353 // Required if `vpcId` is set to a VPC other than the default VPC, and forbidden if it isn't. 354 DefaultSubnetId pulumi.StringPtrInput 355 // Keyword representing the naming scheme that will be used for instance hostnames within this stack. 356 HostnameTheme pulumi.StringPtrInput 357 // Boolean value controlling whether Opsworks will run Berkshelf for this stack. 358 ManageBerkshelf pulumi.BoolPtrInput 359 // The name of the stack. 360 Name pulumi.StringPtrInput 361 // The name of the region where the stack will exist. 362 Region pulumi.StringInput 363 // The ARN of an IAM role that the OpsWorks service will act as. 364 ServiceRoleArn pulumi.StringInput 365 // A map of tags to assign to the resource. 366 // If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 367 Tags pulumi.StringMapInput 368 // Boolean value controlling whether the custom cookbook settings are enabled. 369 UseCustomCookbooks pulumi.BoolPtrInput 370 // Boolean value controlling whether the standard OpsWorks security groups apply to created instances. 371 UseOpsworksSecurityGroups pulumi.BoolPtrInput 372 // ID of the VPC that this stack belongs to. 373 // Defaults to the region's default VPC. 374 VpcId pulumi.StringPtrInput 375 } 376 377 func (StackArgs) ElementType() reflect.Type { 378 return reflect.TypeOf((*stackArgs)(nil)).Elem() 379 } 380 381 type StackInput interface { 382 pulumi.Input 383 384 ToStackOutput() StackOutput 385 ToStackOutputWithContext(ctx context.Context) StackOutput 386 } 387 388 func (*Stack) ElementType() reflect.Type { 389 return reflect.TypeOf((**Stack)(nil)).Elem() 390 } 391 392 func (i *Stack) ToStackOutput() StackOutput { 393 return i.ToStackOutputWithContext(context.Background()) 394 } 395 396 func (i *Stack) ToStackOutputWithContext(ctx context.Context) StackOutput { 397 return pulumi.ToOutputWithContext(ctx, i).(StackOutput) 398 } 399 400 // StackArrayInput is an input type that accepts StackArray and StackArrayOutput values. 401 // You can construct a concrete instance of `StackArrayInput` via: 402 // 403 // StackArray{ StackArgs{...} } 404 type StackArrayInput interface { 405 pulumi.Input 406 407 ToStackArrayOutput() StackArrayOutput 408 ToStackArrayOutputWithContext(context.Context) StackArrayOutput 409 } 410 411 type StackArray []StackInput 412 413 func (StackArray) ElementType() reflect.Type { 414 return reflect.TypeOf((*[]*Stack)(nil)).Elem() 415 } 416 417 func (i StackArray) ToStackArrayOutput() StackArrayOutput { 418 return i.ToStackArrayOutputWithContext(context.Background()) 419 } 420 421 func (i StackArray) ToStackArrayOutputWithContext(ctx context.Context) StackArrayOutput { 422 return pulumi.ToOutputWithContext(ctx, i).(StackArrayOutput) 423 } 424 425 // StackMapInput is an input type that accepts StackMap and StackMapOutput values. 426 // You can construct a concrete instance of `StackMapInput` via: 427 // 428 // StackMap{ "key": StackArgs{...} } 429 type StackMapInput interface { 430 pulumi.Input 431 432 ToStackMapOutput() StackMapOutput 433 ToStackMapOutputWithContext(context.Context) StackMapOutput 434 } 435 436 type StackMap map[string]StackInput 437 438 func (StackMap) ElementType() reflect.Type { 439 return reflect.TypeOf((*map[string]*Stack)(nil)).Elem() 440 } 441 442 func (i StackMap) ToStackMapOutput() StackMapOutput { 443 return i.ToStackMapOutputWithContext(context.Background()) 444 } 445 446 func (i StackMap) ToStackMapOutputWithContext(ctx context.Context) StackMapOutput { 447 return pulumi.ToOutputWithContext(ctx, i).(StackMapOutput) 448 } 449 450 type StackOutput struct{ *pulumi.OutputState } 451 452 func (StackOutput) ElementType() reflect.Type { 453 return reflect.TypeOf((**Stack)(nil)).Elem() 454 } 455 456 func (o StackOutput) ToStackOutput() StackOutput { 457 return o 458 } 459 460 func (o StackOutput) ToStackOutputWithContext(ctx context.Context) StackOutput { 461 return o 462 } 463 464 // If set to `"LATEST"`, OpsWorks will automatically install the latest version. 465 func (o StackOutput) AgentVersion() pulumi.StringOutput { 466 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.AgentVersion }).(pulumi.StringOutput) 467 } 468 469 func (o StackOutput) Arn() pulumi.StringOutput { 470 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 471 } 472 473 // If `manageBerkshelf` is enabled, the version of Berkshelf to use. 474 func (o StackOutput) BerkshelfVersion() pulumi.StringPtrOutput { 475 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.BerkshelfVersion }).(pulumi.StringPtrOutput) 476 } 477 478 // Color to paint next to the stack's resources in the OpsWorks console. 479 func (o StackOutput) Color() pulumi.StringPtrOutput { 480 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.Color }).(pulumi.StringPtrOutput) 481 } 482 483 // Name of the configuration manager to use. Defaults to "Chef". 484 func (o StackOutput) ConfigurationManagerName() pulumi.StringPtrOutput { 485 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.ConfigurationManagerName }).(pulumi.StringPtrOutput) 486 } 487 488 // Version of the configuration manager to use. Defaults to "11.4". 489 func (o StackOutput) ConfigurationManagerVersion() pulumi.StringPtrOutput { 490 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.ConfigurationManagerVersion }).(pulumi.StringPtrOutput) 491 } 492 493 // When `useCustomCookbooks` is set, provide this sub-object as described below. 494 func (o StackOutput) CustomCookbooksSources() StackCustomCookbooksSourceArrayOutput { 495 return o.ApplyT(func(v *Stack) StackCustomCookbooksSourceArrayOutput { return v.CustomCookbooksSources }).(StackCustomCookbooksSourceArrayOutput) 496 } 497 498 // Custom JSON attributes to apply to the entire stack. 499 func (o StackOutput) CustomJson() pulumi.StringPtrOutput { 500 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.CustomJson }).(pulumi.StringPtrOutput) 501 } 502 503 // Name of the availability zone where instances will be created by default. 504 // Cannot be set when `vpcId` is set. 505 func (o StackOutput) DefaultAvailabilityZone() pulumi.StringOutput { 506 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.DefaultAvailabilityZone }).(pulumi.StringOutput) 507 } 508 509 // The ARN of an IAM Instance Profile that created instances will have by default. 510 func (o StackOutput) DefaultInstanceProfileArn() pulumi.StringOutput { 511 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.DefaultInstanceProfileArn }).(pulumi.StringOutput) 512 } 513 514 // Name of OS that will be installed on instances by default. 515 func (o StackOutput) DefaultOs() pulumi.StringPtrOutput { 516 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.DefaultOs }).(pulumi.StringPtrOutput) 517 } 518 519 // Name of the type of root device instances will have by default. 520 func (o StackOutput) DefaultRootDeviceType() pulumi.StringPtrOutput { 521 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.DefaultRootDeviceType }).(pulumi.StringPtrOutput) 522 } 523 524 // Name of the SSH keypair that instances will have by default. 525 func (o StackOutput) DefaultSshKeyName() pulumi.StringPtrOutput { 526 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.DefaultSshKeyName }).(pulumi.StringPtrOutput) 527 } 528 529 // ID of the subnet in which instances will be created by default. 530 // Required if `vpcId` is set to a VPC other than the default VPC, and forbidden if it isn't. 531 func (o StackOutput) DefaultSubnetId() pulumi.StringOutput { 532 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.DefaultSubnetId }).(pulumi.StringOutput) 533 } 534 535 // Keyword representing the naming scheme that will be used for instance hostnames within this stack. 536 func (o StackOutput) HostnameTheme() pulumi.StringPtrOutput { 537 return o.ApplyT(func(v *Stack) pulumi.StringPtrOutput { return v.HostnameTheme }).(pulumi.StringPtrOutput) 538 } 539 540 // Boolean value controlling whether Opsworks will run Berkshelf for this stack. 541 func (o StackOutput) ManageBerkshelf() pulumi.BoolPtrOutput { 542 return o.ApplyT(func(v *Stack) pulumi.BoolPtrOutput { return v.ManageBerkshelf }).(pulumi.BoolPtrOutput) 543 } 544 545 // The name of the stack. 546 func (o StackOutput) Name() pulumi.StringOutput { 547 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 548 } 549 550 // The name of the region where the stack will exist. 551 func (o StackOutput) Region() pulumi.StringOutput { 552 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.Region }).(pulumi.StringOutput) 553 } 554 555 // The ARN of an IAM role that the OpsWorks service will act as. 556 func (o StackOutput) ServiceRoleArn() pulumi.StringOutput { 557 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.ServiceRoleArn }).(pulumi.StringOutput) 558 } 559 560 func (o StackOutput) StackEndpoint() pulumi.StringOutput { 561 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.StackEndpoint }).(pulumi.StringOutput) 562 } 563 564 // A map of tags to assign to the resource. 565 // If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 566 func (o StackOutput) Tags() pulumi.StringMapOutput { 567 return o.ApplyT(func(v *Stack) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 568 } 569 570 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 571 // 572 // Deprecated: Please use `tags` instead. 573 func (o StackOutput) TagsAll() pulumi.StringMapOutput { 574 return o.ApplyT(func(v *Stack) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 575 } 576 577 // Boolean value controlling whether the custom cookbook settings are enabled. 578 func (o StackOutput) UseCustomCookbooks() pulumi.BoolPtrOutput { 579 return o.ApplyT(func(v *Stack) pulumi.BoolPtrOutput { return v.UseCustomCookbooks }).(pulumi.BoolPtrOutput) 580 } 581 582 // Boolean value controlling whether the standard OpsWorks security groups apply to created instances. 583 func (o StackOutput) UseOpsworksSecurityGroups() pulumi.BoolPtrOutput { 584 return o.ApplyT(func(v *Stack) pulumi.BoolPtrOutput { return v.UseOpsworksSecurityGroups }).(pulumi.BoolPtrOutput) 585 } 586 587 // ID of the VPC that this stack belongs to. 588 // Defaults to the region's default VPC. 589 func (o StackOutput) VpcId() pulumi.StringOutput { 590 return o.ApplyT(func(v *Stack) pulumi.StringOutput { return v.VpcId }).(pulumi.StringOutput) 591 } 592 593 type StackArrayOutput struct{ *pulumi.OutputState } 594 595 func (StackArrayOutput) ElementType() reflect.Type { 596 return reflect.TypeOf((*[]*Stack)(nil)).Elem() 597 } 598 599 func (o StackArrayOutput) ToStackArrayOutput() StackArrayOutput { 600 return o 601 } 602 603 func (o StackArrayOutput) ToStackArrayOutputWithContext(ctx context.Context) StackArrayOutput { 604 return o 605 } 606 607 func (o StackArrayOutput) Index(i pulumi.IntInput) StackOutput { 608 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Stack { 609 return vs[0].([]*Stack)[vs[1].(int)] 610 }).(StackOutput) 611 } 612 613 type StackMapOutput struct{ *pulumi.OutputState } 614 615 func (StackMapOutput) ElementType() reflect.Type { 616 return reflect.TypeOf((*map[string]*Stack)(nil)).Elem() 617 } 618 619 func (o StackMapOutput) ToStackMapOutput() StackMapOutput { 620 return o 621 } 622 623 func (o StackMapOutput) ToStackMapOutputWithContext(ctx context.Context) StackMapOutput { 624 return o 625 } 626 627 func (o StackMapOutput) MapIndex(k pulumi.StringInput) StackOutput { 628 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Stack { 629 return vs[0].(map[string]*Stack)[vs[1].(string)] 630 }).(StackOutput) 631 } 632 633 func init() { 634 pulumi.RegisterInputType(reflect.TypeOf((*StackInput)(nil)).Elem(), &Stack{}) 635 pulumi.RegisterInputType(reflect.TypeOf((*StackArrayInput)(nil)).Elem(), StackArray{}) 636 pulumi.RegisterInputType(reflect.TypeOf((*StackMapInput)(nil)).Elem(), StackMap{}) 637 pulumi.RegisterOutputType(StackOutput{}) 638 pulumi.RegisterOutputType(StackArrayOutput{}) 639 pulumi.RegisterOutputType(StackMapOutput{}) 640 }