github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/appstream/imageBuilder.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 appstream 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 AppStream image builder. 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/appstream" 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 := appstream.NewImageBuilder(ctx, "test_fleet", &appstream.ImageBuilderArgs{ 33 // Name: pulumi.String("Name"), 34 // Description: pulumi.String("Description of a ImageBuilder"), 35 // DisplayName: pulumi.String("Display name of a ImageBuilder"), 36 // EnableDefaultInternetAccess: pulumi.Bool(false), 37 // ImageName: pulumi.String("AppStream-WinServer2019-10-05-2022"), 38 // InstanceType: pulumi.String("stream.standard.large"), 39 // VpcConfig: &appstream.ImageBuilderVpcConfigArgs{ 40 // SubnetIds: pulumi.StringArray{ 41 // example.Id, 42 // }, 43 // }, 44 // Tags: pulumi.StringMap{ 45 // "Name": pulumi.String("Example Image Builder"), 46 // }, 47 // }) 48 // if err != nil { 49 // return err 50 // } 51 // return nil 52 // }) 53 // } 54 // 55 // ``` 56 // <!--End PulumiCodeChooser --> 57 // 58 // ## Import 59 // 60 // Using `pulumi import`, import `aws_appstream_image_builder` using the `name`. For example: 61 // 62 // ```sh 63 // $ pulumi import aws:appstream/imageBuilder:ImageBuilder example imageBuilderExample 64 // ``` 65 type ImageBuilder struct { 66 pulumi.CustomResourceState 67 68 // Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below. 69 AccessEndpoints ImageBuilderAccessEndpointArrayOutput `pulumi:"accessEndpoints"` 70 // Version of the AppStream 2.0 agent to use for this image builder. 71 AppstreamAgentVersion pulumi.StringOutput `pulumi:"appstreamAgentVersion"` 72 // ARN of the appstream image builder. 73 Arn pulumi.StringOutput `pulumi:"arn"` 74 // Date and time, in UTC and extended RFC 3339 format, when the image builder was created. 75 CreatedTime pulumi.StringOutput `pulumi:"createdTime"` 76 // Description to display. 77 Description pulumi.StringOutput `pulumi:"description"` 78 // Human-readable friendly name for the AppStream image builder. 79 DisplayName pulumi.StringOutput `pulumi:"displayName"` 80 // Configuration block for the name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain. See below. 81 DomainJoinInfo ImageBuilderDomainJoinInfoOutput `pulumi:"domainJoinInfo"` 82 // Enables or disables default internet access for the image builder. 83 EnableDefaultInternetAccess pulumi.BoolOutput `pulumi:"enableDefaultInternetAccess"` 84 // ARN of the IAM role to apply to the image builder. 85 IamRoleArn pulumi.StringOutput `pulumi:"iamRoleArn"` 86 // ARN of the public, private, or shared image to use. 87 ImageArn pulumi.StringOutput `pulumi:"imageArn"` 88 // Name of the image used to create the image builder. 89 ImageName pulumi.StringOutput `pulumi:"imageName"` 90 // Instance type to use when launching the image builder. 91 InstanceType pulumi.StringOutput `pulumi:"instanceType"` 92 // Unique name for the image builder. 93 // 94 // The following arguments are optional: 95 Name pulumi.StringOutput `pulumi:"name"` 96 // State of the image builder. For valid values, refer to the [AWS documentation](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ImageBuilder.html#AppStream2-Type-ImageBuilder-State). 97 State pulumi.StringOutput `pulumi:"state"` 98 // Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 99 Tags pulumi.StringMapOutput `pulumi:"tags"` 100 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 101 // 102 // Deprecated: Please use `tags` instead. 103 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 104 // Configuration block for the VPC configuration for the image builder. See below. 105 VpcConfig ImageBuilderVpcConfigOutput `pulumi:"vpcConfig"` 106 } 107 108 // NewImageBuilder registers a new resource with the given unique name, arguments, and options. 109 func NewImageBuilder(ctx *pulumi.Context, 110 name string, args *ImageBuilderArgs, opts ...pulumi.ResourceOption) (*ImageBuilder, error) { 111 if args == nil { 112 return nil, errors.New("missing one or more required arguments") 113 } 114 115 if args.InstanceType == nil { 116 return nil, errors.New("invalid value for required argument 'InstanceType'") 117 } 118 opts = internal.PkgResourceDefaultOpts(opts) 119 var resource ImageBuilder 120 err := ctx.RegisterResource("aws:appstream/imageBuilder:ImageBuilder", name, args, &resource, opts...) 121 if err != nil { 122 return nil, err 123 } 124 return &resource, nil 125 } 126 127 // GetImageBuilder gets an existing ImageBuilder 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 GetImageBuilder(ctx *pulumi.Context, 130 name string, id pulumi.IDInput, state *ImageBuilderState, opts ...pulumi.ResourceOption) (*ImageBuilder, error) { 131 var resource ImageBuilder 132 err := ctx.ReadResource("aws:appstream/imageBuilder:ImageBuilder", 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 ImageBuilder resources. 140 type imageBuilderState struct { 141 // Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below. 142 AccessEndpoints []ImageBuilderAccessEndpoint `pulumi:"accessEndpoints"` 143 // Version of the AppStream 2.0 agent to use for this image builder. 144 AppstreamAgentVersion *string `pulumi:"appstreamAgentVersion"` 145 // ARN of the appstream image builder. 146 Arn *string `pulumi:"arn"` 147 // Date and time, in UTC and extended RFC 3339 format, when the image builder was created. 148 CreatedTime *string `pulumi:"createdTime"` 149 // Description to display. 150 Description *string `pulumi:"description"` 151 // Human-readable friendly name for the AppStream image builder. 152 DisplayName *string `pulumi:"displayName"` 153 // Configuration block for the name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain. See below. 154 DomainJoinInfo *ImageBuilderDomainJoinInfo `pulumi:"domainJoinInfo"` 155 // Enables or disables default internet access for the image builder. 156 EnableDefaultInternetAccess *bool `pulumi:"enableDefaultInternetAccess"` 157 // ARN of the IAM role to apply to the image builder. 158 IamRoleArn *string `pulumi:"iamRoleArn"` 159 // ARN of the public, private, or shared image to use. 160 ImageArn *string `pulumi:"imageArn"` 161 // Name of the image used to create the image builder. 162 ImageName *string `pulumi:"imageName"` 163 // Instance type to use when launching the image builder. 164 InstanceType *string `pulumi:"instanceType"` 165 // Unique name for the image builder. 166 // 167 // The following arguments are optional: 168 Name *string `pulumi:"name"` 169 // State of the image builder. For valid values, refer to the [AWS documentation](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ImageBuilder.html#AppStream2-Type-ImageBuilder-State). 170 State *string `pulumi:"state"` 171 // Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 172 Tags map[string]string `pulumi:"tags"` 173 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 174 // 175 // Deprecated: Please use `tags` instead. 176 TagsAll map[string]string `pulumi:"tagsAll"` 177 // Configuration block for the VPC configuration for the image builder. See below. 178 VpcConfig *ImageBuilderVpcConfig `pulumi:"vpcConfig"` 179 } 180 181 type ImageBuilderState struct { 182 // Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below. 183 AccessEndpoints ImageBuilderAccessEndpointArrayInput 184 // Version of the AppStream 2.0 agent to use for this image builder. 185 AppstreamAgentVersion pulumi.StringPtrInput 186 // ARN of the appstream image builder. 187 Arn pulumi.StringPtrInput 188 // Date and time, in UTC and extended RFC 3339 format, when the image builder was created. 189 CreatedTime pulumi.StringPtrInput 190 // Description to display. 191 Description pulumi.StringPtrInput 192 // Human-readable friendly name for the AppStream image builder. 193 DisplayName pulumi.StringPtrInput 194 // Configuration block for the name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain. See below. 195 DomainJoinInfo ImageBuilderDomainJoinInfoPtrInput 196 // Enables or disables default internet access for the image builder. 197 EnableDefaultInternetAccess pulumi.BoolPtrInput 198 // ARN of the IAM role to apply to the image builder. 199 IamRoleArn pulumi.StringPtrInput 200 // ARN of the public, private, or shared image to use. 201 ImageArn pulumi.StringPtrInput 202 // Name of the image used to create the image builder. 203 ImageName pulumi.StringPtrInput 204 // Instance type to use when launching the image builder. 205 InstanceType pulumi.StringPtrInput 206 // Unique name for the image builder. 207 // 208 // The following arguments are optional: 209 Name pulumi.StringPtrInput 210 // State of the image builder. For valid values, refer to the [AWS documentation](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ImageBuilder.html#AppStream2-Type-ImageBuilder-State). 211 State pulumi.StringPtrInput 212 // Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 213 Tags pulumi.StringMapInput 214 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 215 // 216 // Deprecated: Please use `tags` instead. 217 TagsAll pulumi.StringMapInput 218 // Configuration block for the VPC configuration for the image builder. See below. 219 VpcConfig ImageBuilderVpcConfigPtrInput 220 } 221 222 func (ImageBuilderState) ElementType() reflect.Type { 223 return reflect.TypeOf((*imageBuilderState)(nil)).Elem() 224 } 225 226 type imageBuilderArgs struct { 227 // Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below. 228 AccessEndpoints []ImageBuilderAccessEndpoint `pulumi:"accessEndpoints"` 229 // Version of the AppStream 2.0 agent to use for this image builder. 230 AppstreamAgentVersion *string `pulumi:"appstreamAgentVersion"` 231 // Description to display. 232 Description *string `pulumi:"description"` 233 // Human-readable friendly name for the AppStream image builder. 234 DisplayName *string `pulumi:"displayName"` 235 // Configuration block for the name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain. See below. 236 DomainJoinInfo *ImageBuilderDomainJoinInfo `pulumi:"domainJoinInfo"` 237 // Enables or disables default internet access for the image builder. 238 EnableDefaultInternetAccess *bool `pulumi:"enableDefaultInternetAccess"` 239 // ARN of the IAM role to apply to the image builder. 240 IamRoleArn *string `pulumi:"iamRoleArn"` 241 // ARN of the public, private, or shared image to use. 242 ImageArn *string `pulumi:"imageArn"` 243 // Name of the image used to create the image builder. 244 ImageName *string `pulumi:"imageName"` 245 // Instance type to use when launching the image builder. 246 InstanceType string `pulumi:"instanceType"` 247 // Unique name for the image builder. 248 // 249 // The following arguments are optional: 250 Name *string `pulumi:"name"` 251 // Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 252 Tags map[string]string `pulumi:"tags"` 253 // Configuration block for the VPC configuration for the image builder. See below. 254 VpcConfig *ImageBuilderVpcConfig `pulumi:"vpcConfig"` 255 } 256 257 // The set of arguments for constructing a ImageBuilder resource. 258 type ImageBuilderArgs struct { 259 // Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below. 260 AccessEndpoints ImageBuilderAccessEndpointArrayInput 261 // Version of the AppStream 2.0 agent to use for this image builder. 262 AppstreamAgentVersion pulumi.StringPtrInput 263 // Description to display. 264 Description pulumi.StringPtrInput 265 // Human-readable friendly name for the AppStream image builder. 266 DisplayName pulumi.StringPtrInput 267 // Configuration block for the name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain. See below. 268 DomainJoinInfo ImageBuilderDomainJoinInfoPtrInput 269 // Enables or disables default internet access for the image builder. 270 EnableDefaultInternetAccess pulumi.BoolPtrInput 271 // ARN of the IAM role to apply to the image builder. 272 IamRoleArn pulumi.StringPtrInput 273 // ARN of the public, private, or shared image to use. 274 ImageArn pulumi.StringPtrInput 275 // Name of the image used to create the image builder. 276 ImageName pulumi.StringPtrInput 277 // Instance type to use when launching the image builder. 278 InstanceType pulumi.StringInput 279 // Unique name for the image builder. 280 // 281 // The following arguments are optional: 282 Name pulumi.StringPtrInput 283 // Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 284 Tags pulumi.StringMapInput 285 // Configuration block for the VPC configuration for the image builder. See below. 286 VpcConfig ImageBuilderVpcConfigPtrInput 287 } 288 289 func (ImageBuilderArgs) ElementType() reflect.Type { 290 return reflect.TypeOf((*imageBuilderArgs)(nil)).Elem() 291 } 292 293 type ImageBuilderInput interface { 294 pulumi.Input 295 296 ToImageBuilderOutput() ImageBuilderOutput 297 ToImageBuilderOutputWithContext(ctx context.Context) ImageBuilderOutput 298 } 299 300 func (*ImageBuilder) ElementType() reflect.Type { 301 return reflect.TypeOf((**ImageBuilder)(nil)).Elem() 302 } 303 304 func (i *ImageBuilder) ToImageBuilderOutput() ImageBuilderOutput { 305 return i.ToImageBuilderOutputWithContext(context.Background()) 306 } 307 308 func (i *ImageBuilder) ToImageBuilderOutputWithContext(ctx context.Context) ImageBuilderOutput { 309 return pulumi.ToOutputWithContext(ctx, i).(ImageBuilderOutput) 310 } 311 312 // ImageBuilderArrayInput is an input type that accepts ImageBuilderArray and ImageBuilderArrayOutput values. 313 // You can construct a concrete instance of `ImageBuilderArrayInput` via: 314 // 315 // ImageBuilderArray{ ImageBuilderArgs{...} } 316 type ImageBuilderArrayInput interface { 317 pulumi.Input 318 319 ToImageBuilderArrayOutput() ImageBuilderArrayOutput 320 ToImageBuilderArrayOutputWithContext(context.Context) ImageBuilderArrayOutput 321 } 322 323 type ImageBuilderArray []ImageBuilderInput 324 325 func (ImageBuilderArray) ElementType() reflect.Type { 326 return reflect.TypeOf((*[]*ImageBuilder)(nil)).Elem() 327 } 328 329 func (i ImageBuilderArray) ToImageBuilderArrayOutput() ImageBuilderArrayOutput { 330 return i.ToImageBuilderArrayOutputWithContext(context.Background()) 331 } 332 333 func (i ImageBuilderArray) ToImageBuilderArrayOutputWithContext(ctx context.Context) ImageBuilderArrayOutput { 334 return pulumi.ToOutputWithContext(ctx, i).(ImageBuilderArrayOutput) 335 } 336 337 // ImageBuilderMapInput is an input type that accepts ImageBuilderMap and ImageBuilderMapOutput values. 338 // You can construct a concrete instance of `ImageBuilderMapInput` via: 339 // 340 // ImageBuilderMap{ "key": ImageBuilderArgs{...} } 341 type ImageBuilderMapInput interface { 342 pulumi.Input 343 344 ToImageBuilderMapOutput() ImageBuilderMapOutput 345 ToImageBuilderMapOutputWithContext(context.Context) ImageBuilderMapOutput 346 } 347 348 type ImageBuilderMap map[string]ImageBuilderInput 349 350 func (ImageBuilderMap) ElementType() reflect.Type { 351 return reflect.TypeOf((*map[string]*ImageBuilder)(nil)).Elem() 352 } 353 354 func (i ImageBuilderMap) ToImageBuilderMapOutput() ImageBuilderMapOutput { 355 return i.ToImageBuilderMapOutputWithContext(context.Background()) 356 } 357 358 func (i ImageBuilderMap) ToImageBuilderMapOutputWithContext(ctx context.Context) ImageBuilderMapOutput { 359 return pulumi.ToOutputWithContext(ctx, i).(ImageBuilderMapOutput) 360 } 361 362 type ImageBuilderOutput struct{ *pulumi.OutputState } 363 364 func (ImageBuilderOutput) ElementType() reflect.Type { 365 return reflect.TypeOf((**ImageBuilder)(nil)).Elem() 366 } 367 368 func (o ImageBuilderOutput) ToImageBuilderOutput() ImageBuilderOutput { 369 return o 370 } 371 372 func (o ImageBuilderOutput) ToImageBuilderOutputWithContext(ctx context.Context) ImageBuilderOutput { 373 return o 374 } 375 376 // Set of interface VPC endpoint (interface endpoint) objects. Maximum of 4. See below. 377 func (o ImageBuilderOutput) AccessEndpoints() ImageBuilderAccessEndpointArrayOutput { 378 return o.ApplyT(func(v *ImageBuilder) ImageBuilderAccessEndpointArrayOutput { return v.AccessEndpoints }).(ImageBuilderAccessEndpointArrayOutput) 379 } 380 381 // Version of the AppStream 2.0 agent to use for this image builder. 382 func (o ImageBuilderOutput) AppstreamAgentVersion() pulumi.StringOutput { 383 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.AppstreamAgentVersion }).(pulumi.StringOutput) 384 } 385 386 // ARN of the appstream image builder. 387 func (o ImageBuilderOutput) Arn() pulumi.StringOutput { 388 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 389 } 390 391 // Date and time, in UTC and extended RFC 3339 format, when the image builder was created. 392 func (o ImageBuilderOutput) CreatedTime() pulumi.StringOutput { 393 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.CreatedTime }).(pulumi.StringOutput) 394 } 395 396 // Description to display. 397 func (o ImageBuilderOutput) Description() pulumi.StringOutput { 398 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) 399 } 400 401 // Human-readable friendly name for the AppStream image builder. 402 func (o ImageBuilderOutput) DisplayName() pulumi.StringOutput { 403 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput) 404 } 405 406 // Configuration block for the name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain. See below. 407 func (o ImageBuilderOutput) DomainJoinInfo() ImageBuilderDomainJoinInfoOutput { 408 return o.ApplyT(func(v *ImageBuilder) ImageBuilderDomainJoinInfoOutput { return v.DomainJoinInfo }).(ImageBuilderDomainJoinInfoOutput) 409 } 410 411 // Enables or disables default internet access for the image builder. 412 func (o ImageBuilderOutput) EnableDefaultInternetAccess() pulumi.BoolOutput { 413 return o.ApplyT(func(v *ImageBuilder) pulumi.BoolOutput { return v.EnableDefaultInternetAccess }).(pulumi.BoolOutput) 414 } 415 416 // ARN of the IAM role to apply to the image builder. 417 func (o ImageBuilderOutput) IamRoleArn() pulumi.StringOutput { 418 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.IamRoleArn }).(pulumi.StringOutput) 419 } 420 421 // ARN of the public, private, or shared image to use. 422 func (o ImageBuilderOutput) ImageArn() pulumi.StringOutput { 423 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.ImageArn }).(pulumi.StringOutput) 424 } 425 426 // Name of the image used to create the image builder. 427 func (o ImageBuilderOutput) ImageName() pulumi.StringOutput { 428 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.ImageName }).(pulumi.StringOutput) 429 } 430 431 // Instance type to use when launching the image builder. 432 func (o ImageBuilderOutput) InstanceType() pulumi.StringOutput { 433 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.InstanceType }).(pulumi.StringOutput) 434 } 435 436 // Unique name for the image builder. 437 // 438 // The following arguments are optional: 439 func (o ImageBuilderOutput) Name() pulumi.StringOutput { 440 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 441 } 442 443 // State of the image builder. For valid values, refer to the [AWS documentation](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ImageBuilder.html#AppStream2-Type-ImageBuilder-State). 444 func (o ImageBuilderOutput) State() pulumi.StringOutput { 445 return o.ApplyT(func(v *ImageBuilder) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) 446 } 447 448 // Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 449 func (o ImageBuilderOutput) Tags() pulumi.StringMapOutput { 450 return o.ApplyT(func(v *ImageBuilder) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 451 } 452 453 // Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 454 // 455 // Deprecated: Please use `tags` instead. 456 func (o ImageBuilderOutput) TagsAll() pulumi.StringMapOutput { 457 return o.ApplyT(func(v *ImageBuilder) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 458 } 459 460 // Configuration block for the VPC configuration for the image builder. See below. 461 func (o ImageBuilderOutput) VpcConfig() ImageBuilderVpcConfigOutput { 462 return o.ApplyT(func(v *ImageBuilder) ImageBuilderVpcConfigOutput { return v.VpcConfig }).(ImageBuilderVpcConfigOutput) 463 } 464 465 type ImageBuilderArrayOutput struct{ *pulumi.OutputState } 466 467 func (ImageBuilderArrayOutput) ElementType() reflect.Type { 468 return reflect.TypeOf((*[]*ImageBuilder)(nil)).Elem() 469 } 470 471 func (o ImageBuilderArrayOutput) ToImageBuilderArrayOutput() ImageBuilderArrayOutput { 472 return o 473 } 474 475 func (o ImageBuilderArrayOutput) ToImageBuilderArrayOutputWithContext(ctx context.Context) ImageBuilderArrayOutput { 476 return o 477 } 478 479 func (o ImageBuilderArrayOutput) Index(i pulumi.IntInput) ImageBuilderOutput { 480 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ImageBuilder { 481 return vs[0].([]*ImageBuilder)[vs[1].(int)] 482 }).(ImageBuilderOutput) 483 } 484 485 type ImageBuilderMapOutput struct{ *pulumi.OutputState } 486 487 func (ImageBuilderMapOutput) ElementType() reflect.Type { 488 return reflect.TypeOf((*map[string]*ImageBuilder)(nil)).Elem() 489 } 490 491 func (o ImageBuilderMapOutput) ToImageBuilderMapOutput() ImageBuilderMapOutput { 492 return o 493 } 494 495 func (o ImageBuilderMapOutput) ToImageBuilderMapOutputWithContext(ctx context.Context) ImageBuilderMapOutput { 496 return o 497 } 498 499 func (o ImageBuilderMapOutput) MapIndex(k pulumi.StringInput) ImageBuilderOutput { 500 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ImageBuilder { 501 return vs[0].(map[string]*ImageBuilder)[vs[1].(string)] 502 }).(ImageBuilderOutput) 503 } 504 505 func init() { 506 pulumi.RegisterInputType(reflect.TypeOf((*ImageBuilderInput)(nil)).Elem(), &ImageBuilder{}) 507 pulumi.RegisterInputType(reflect.TypeOf((*ImageBuilderArrayInput)(nil)).Elem(), ImageBuilderArray{}) 508 pulumi.RegisterInputType(reflect.TypeOf((*ImageBuilderMapInput)(nil)).Elem(), ImageBuilderMap{}) 509 pulumi.RegisterOutputType(ImageBuilderOutput{}) 510 pulumi.RegisterOutputType(ImageBuilderArrayOutput{}) 511 pulumi.RegisterOutputType(ImageBuilderMapOutput{}) 512 }