github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ec2transitgateway/vpcAttachment.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 ec2transitgateway 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 // Manages an EC2 Transit Gateway VPC Attachment. For examples of custom route table association and propagation, see the EC2 Transit Gateway Networking Examples Guide. 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/ec2transitgateway" 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 := ec2transitgateway.NewVpcAttachment(ctx, "example", &ec2transitgateway.VpcAttachmentArgs{ 33 // SubnetIds: pulumi.StringArray{ 34 // exampleAwsSubnet.Id, 35 // }, 36 // TransitGatewayId: pulumi.Any(exampleAwsEc2TransitGateway.Id), 37 // VpcId: pulumi.Any(exampleAwsVpc.Id), 38 // }) 39 // if err != nil { 40 // return err 41 // } 42 // return nil 43 // }) 44 // } 45 // 46 // ``` 47 // <!--End PulumiCodeChooser --> 48 // 49 // ## Import 50 // 51 // Using `pulumi import`, import `aws_ec2_transit_gateway_vpc_attachment` using the EC2 Transit Gateway Attachment identifier. For example: 52 // 53 // ```sh 54 // $ pulumi import aws:ec2transitgateway/vpcAttachment:VpcAttachment example tgw-attach-12345678 55 // ``` 56 type VpcAttachment struct { 57 pulumi.CustomResourceState 58 59 // Whether Appliance Mode support is enabled. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable`, `enable`. Default value: `disable`. 60 ApplianceModeSupport pulumi.StringPtrOutput `pulumi:"applianceModeSupport"` 61 // Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. 62 DnsSupport pulumi.StringPtrOutput `pulumi:"dnsSupport"` 63 // Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`. 64 Ipv6Support pulumi.StringPtrOutput `pulumi:"ipv6Support"` 65 // Identifiers of EC2 Subnets. 66 SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` 67 // Key-value tags for the EC2 Transit Gateway VPC Attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 68 Tags pulumi.StringMapOutput `pulumi:"tags"` 69 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 70 // 71 // Deprecated: Please use `tags` instead. 72 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 73 // Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 74 TransitGatewayDefaultRouteTableAssociation pulumi.BoolOutput `pulumi:"transitGatewayDefaultRouteTableAssociation"` 75 // Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 76 TransitGatewayDefaultRouteTablePropagation pulumi.BoolOutput `pulumi:"transitGatewayDefaultRouteTablePropagation"` 77 // Identifier of EC2 Transit Gateway. 78 TransitGatewayId pulumi.StringOutput `pulumi:"transitGatewayId"` 79 // Identifier of EC2 VPC. 80 VpcId pulumi.StringOutput `pulumi:"vpcId"` 81 // Identifier of the AWS account that owns the EC2 VPC. 82 VpcOwnerId pulumi.StringOutput `pulumi:"vpcOwnerId"` 83 } 84 85 // NewVpcAttachment registers a new resource with the given unique name, arguments, and options. 86 func NewVpcAttachment(ctx *pulumi.Context, 87 name string, args *VpcAttachmentArgs, opts ...pulumi.ResourceOption) (*VpcAttachment, error) { 88 if args == nil { 89 return nil, errors.New("missing one or more required arguments") 90 } 91 92 if args.SubnetIds == nil { 93 return nil, errors.New("invalid value for required argument 'SubnetIds'") 94 } 95 if args.TransitGatewayId == nil { 96 return nil, errors.New("invalid value for required argument 'TransitGatewayId'") 97 } 98 if args.VpcId == nil { 99 return nil, errors.New("invalid value for required argument 'VpcId'") 100 } 101 opts = internal.PkgResourceDefaultOpts(opts) 102 var resource VpcAttachment 103 err := ctx.RegisterResource("aws:ec2transitgateway/vpcAttachment:VpcAttachment", name, args, &resource, opts...) 104 if err != nil { 105 return nil, err 106 } 107 return &resource, nil 108 } 109 110 // GetVpcAttachment gets an existing VpcAttachment resource's state with the given name, ID, and optional 111 // state properties that are used to uniquely qualify the lookup (nil if not required). 112 func GetVpcAttachment(ctx *pulumi.Context, 113 name string, id pulumi.IDInput, state *VpcAttachmentState, opts ...pulumi.ResourceOption) (*VpcAttachment, error) { 114 var resource VpcAttachment 115 err := ctx.ReadResource("aws:ec2transitgateway/vpcAttachment:VpcAttachment", name, id, state, &resource, opts...) 116 if err != nil { 117 return nil, err 118 } 119 return &resource, nil 120 } 121 122 // Input properties used for looking up and filtering VpcAttachment resources. 123 type vpcAttachmentState struct { 124 // Whether Appliance Mode support is enabled. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable`, `enable`. Default value: `disable`. 125 ApplianceModeSupport *string `pulumi:"applianceModeSupport"` 126 // Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. 127 DnsSupport *string `pulumi:"dnsSupport"` 128 // Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`. 129 Ipv6Support *string `pulumi:"ipv6Support"` 130 // Identifiers of EC2 Subnets. 131 SubnetIds []string `pulumi:"subnetIds"` 132 // Key-value tags for the EC2 Transit Gateway VPC Attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 133 Tags map[string]string `pulumi:"tags"` 134 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 135 // 136 // Deprecated: Please use `tags` instead. 137 TagsAll map[string]string `pulumi:"tagsAll"` 138 // Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 139 TransitGatewayDefaultRouteTableAssociation *bool `pulumi:"transitGatewayDefaultRouteTableAssociation"` 140 // Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 141 TransitGatewayDefaultRouteTablePropagation *bool `pulumi:"transitGatewayDefaultRouteTablePropagation"` 142 // Identifier of EC2 Transit Gateway. 143 TransitGatewayId *string `pulumi:"transitGatewayId"` 144 // Identifier of EC2 VPC. 145 VpcId *string `pulumi:"vpcId"` 146 // Identifier of the AWS account that owns the EC2 VPC. 147 VpcOwnerId *string `pulumi:"vpcOwnerId"` 148 } 149 150 type VpcAttachmentState struct { 151 // Whether Appliance Mode support is enabled. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable`, `enable`. Default value: `disable`. 152 ApplianceModeSupport pulumi.StringPtrInput 153 // Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. 154 DnsSupport pulumi.StringPtrInput 155 // Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`. 156 Ipv6Support pulumi.StringPtrInput 157 // Identifiers of EC2 Subnets. 158 SubnetIds pulumi.StringArrayInput 159 // Key-value tags for the EC2 Transit Gateway VPC Attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 160 Tags pulumi.StringMapInput 161 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 162 // 163 // Deprecated: Please use `tags` instead. 164 TagsAll pulumi.StringMapInput 165 // Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 166 TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrInput 167 // Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 168 TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrInput 169 // Identifier of EC2 Transit Gateway. 170 TransitGatewayId pulumi.StringPtrInput 171 // Identifier of EC2 VPC. 172 VpcId pulumi.StringPtrInput 173 // Identifier of the AWS account that owns the EC2 VPC. 174 VpcOwnerId pulumi.StringPtrInput 175 } 176 177 func (VpcAttachmentState) ElementType() reflect.Type { 178 return reflect.TypeOf((*vpcAttachmentState)(nil)).Elem() 179 } 180 181 type vpcAttachmentArgs struct { 182 // Whether Appliance Mode support is enabled. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable`, `enable`. Default value: `disable`. 183 ApplianceModeSupport *string `pulumi:"applianceModeSupport"` 184 // Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. 185 DnsSupport *string `pulumi:"dnsSupport"` 186 // Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`. 187 Ipv6Support *string `pulumi:"ipv6Support"` 188 // Identifiers of EC2 Subnets. 189 SubnetIds []string `pulumi:"subnetIds"` 190 // Key-value tags for the EC2 Transit Gateway VPC Attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 191 Tags map[string]string `pulumi:"tags"` 192 // Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 193 TransitGatewayDefaultRouteTableAssociation *bool `pulumi:"transitGatewayDefaultRouteTableAssociation"` 194 // Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 195 TransitGatewayDefaultRouteTablePropagation *bool `pulumi:"transitGatewayDefaultRouteTablePropagation"` 196 // Identifier of EC2 Transit Gateway. 197 TransitGatewayId string `pulumi:"transitGatewayId"` 198 // Identifier of EC2 VPC. 199 VpcId string `pulumi:"vpcId"` 200 } 201 202 // The set of arguments for constructing a VpcAttachment resource. 203 type VpcAttachmentArgs struct { 204 // Whether Appliance Mode support is enabled. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable`, `enable`. Default value: `disable`. 205 ApplianceModeSupport pulumi.StringPtrInput 206 // Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. 207 DnsSupport pulumi.StringPtrInput 208 // Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`. 209 Ipv6Support pulumi.StringPtrInput 210 // Identifiers of EC2 Subnets. 211 SubnetIds pulumi.StringArrayInput 212 // Key-value tags for the EC2 Transit Gateway VPC Attachment. 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 // Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 215 TransitGatewayDefaultRouteTableAssociation pulumi.BoolPtrInput 216 // Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 217 TransitGatewayDefaultRouteTablePropagation pulumi.BoolPtrInput 218 // Identifier of EC2 Transit Gateway. 219 TransitGatewayId pulumi.StringInput 220 // Identifier of EC2 VPC. 221 VpcId pulumi.StringInput 222 } 223 224 func (VpcAttachmentArgs) ElementType() reflect.Type { 225 return reflect.TypeOf((*vpcAttachmentArgs)(nil)).Elem() 226 } 227 228 type VpcAttachmentInput interface { 229 pulumi.Input 230 231 ToVpcAttachmentOutput() VpcAttachmentOutput 232 ToVpcAttachmentOutputWithContext(ctx context.Context) VpcAttachmentOutput 233 } 234 235 func (*VpcAttachment) ElementType() reflect.Type { 236 return reflect.TypeOf((**VpcAttachment)(nil)).Elem() 237 } 238 239 func (i *VpcAttachment) ToVpcAttachmentOutput() VpcAttachmentOutput { 240 return i.ToVpcAttachmentOutputWithContext(context.Background()) 241 } 242 243 func (i *VpcAttachment) ToVpcAttachmentOutputWithContext(ctx context.Context) VpcAttachmentOutput { 244 return pulumi.ToOutputWithContext(ctx, i).(VpcAttachmentOutput) 245 } 246 247 // VpcAttachmentArrayInput is an input type that accepts VpcAttachmentArray and VpcAttachmentArrayOutput values. 248 // You can construct a concrete instance of `VpcAttachmentArrayInput` via: 249 // 250 // VpcAttachmentArray{ VpcAttachmentArgs{...} } 251 type VpcAttachmentArrayInput interface { 252 pulumi.Input 253 254 ToVpcAttachmentArrayOutput() VpcAttachmentArrayOutput 255 ToVpcAttachmentArrayOutputWithContext(context.Context) VpcAttachmentArrayOutput 256 } 257 258 type VpcAttachmentArray []VpcAttachmentInput 259 260 func (VpcAttachmentArray) ElementType() reflect.Type { 261 return reflect.TypeOf((*[]*VpcAttachment)(nil)).Elem() 262 } 263 264 func (i VpcAttachmentArray) ToVpcAttachmentArrayOutput() VpcAttachmentArrayOutput { 265 return i.ToVpcAttachmentArrayOutputWithContext(context.Background()) 266 } 267 268 func (i VpcAttachmentArray) ToVpcAttachmentArrayOutputWithContext(ctx context.Context) VpcAttachmentArrayOutput { 269 return pulumi.ToOutputWithContext(ctx, i).(VpcAttachmentArrayOutput) 270 } 271 272 // VpcAttachmentMapInput is an input type that accepts VpcAttachmentMap and VpcAttachmentMapOutput values. 273 // You can construct a concrete instance of `VpcAttachmentMapInput` via: 274 // 275 // VpcAttachmentMap{ "key": VpcAttachmentArgs{...} } 276 type VpcAttachmentMapInput interface { 277 pulumi.Input 278 279 ToVpcAttachmentMapOutput() VpcAttachmentMapOutput 280 ToVpcAttachmentMapOutputWithContext(context.Context) VpcAttachmentMapOutput 281 } 282 283 type VpcAttachmentMap map[string]VpcAttachmentInput 284 285 func (VpcAttachmentMap) ElementType() reflect.Type { 286 return reflect.TypeOf((*map[string]*VpcAttachment)(nil)).Elem() 287 } 288 289 func (i VpcAttachmentMap) ToVpcAttachmentMapOutput() VpcAttachmentMapOutput { 290 return i.ToVpcAttachmentMapOutputWithContext(context.Background()) 291 } 292 293 func (i VpcAttachmentMap) ToVpcAttachmentMapOutputWithContext(ctx context.Context) VpcAttachmentMapOutput { 294 return pulumi.ToOutputWithContext(ctx, i).(VpcAttachmentMapOutput) 295 } 296 297 type VpcAttachmentOutput struct{ *pulumi.OutputState } 298 299 func (VpcAttachmentOutput) ElementType() reflect.Type { 300 return reflect.TypeOf((**VpcAttachment)(nil)).Elem() 301 } 302 303 func (o VpcAttachmentOutput) ToVpcAttachmentOutput() VpcAttachmentOutput { 304 return o 305 } 306 307 func (o VpcAttachmentOutput) ToVpcAttachmentOutputWithContext(ctx context.Context) VpcAttachmentOutput { 308 return o 309 } 310 311 // Whether Appliance Mode support is enabled. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. Valid values: `disable`, `enable`. Default value: `disable`. 312 func (o VpcAttachmentOutput) ApplianceModeSupport() pulumi.StringPtrOutput { 313 return o.ApplyT(func(v *VpcAttachment) pulumi.StringPtrOutput { return v.ApplianceModeSupport }).(pulumi.StringPtrOutput) 314 } 315 316 // Whether DNS support is enabled. Valid values: `disable`, `enable`. Default value: `enable`. 317 func (o VpcAttachmentOutput) DnsSupport() pulumi.StringPtrOutput { 318 return o.ApplyT(func(v *VpcAttachment) pulumi.StringPtrOutput { return v.DnsSupport }).(pulumi.StringPtrOutput) 319 } 320 321 // Whether IPv6 support is enabled. Valid values: `disable`, `enable`. Default value: `disable`. 322 func (o VpcAttachmentOutput) Ipv6Support() pulumi.StringPtrOutput { 323 return o.ApplyT(func(v *VpcAttachment) pulumi.StringPtrOutput { return v.Ipv6Support }).(pulumi.StringPtrOutput) 324 } 325 326 // Identifiers of EC2 Subnets. 327 func (o VpcAttachmentOutput) SubnetIds() pulumi.StringArrayOutput { 328 return o.ApplyT(func(v *VpcAttachment) pulumi.StringArrayOutput { return v.SubnetIds }).(pulumi.StringArrayOutput) 329 } 330 331 // Key-value tags for the EC2 Transit Gateway VPC Attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 332 func (o VpcAttachmentOutput) Tags() pulumi.StringMapOutput { 333 return o.ApplyT(func(v *VpcAttachment) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 334 } 335 336 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 337 // 338 // Deprecated: Please use `tags` instead. 339 func (o VpcAttachmentOutput) TagsAll() pulumi.StringMapOutput { 340 return o.ApplyT(func(v *VpcAttachment) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 341 } 342 343 // Boolean whether the VPC Attachment should be associated with the EC2 Transit Gateway association default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 344 func (o VpcAttachmentOutput) TransitGatewayDefaultRouteTableAssociation() pulumi.BoolOutput { 345 return o.ApplyT(func(v *VpcAttachment) pulumi.BoolOutput { return v.TransitGatewayDefaultRouteTableAssociation }).(pulumi.BoolOutput) 346 } 347 348 // Boolean whether the VPC Attachment should propagate routes with the EC2 Transit Gateway propagation default route table. This cannot be configured or perform drift detection with Resource Access Manager shared EC2 Transit Gateways. Default value: `true`. 349 func (o VpcAttachmentOutput) TransitGatewayDefaultRouteTablePropagation() pulumi.BoolOutput { 350 return o.ApplyT(func(v *VpcAttachment) pulumi.BoolOutput { return v.TransitGatewayDefaultRouteTablePropagation }).(pulumi.BoolOutput) 351 } 352 353 // Identifier of EC2 Transit Gateway. 354 func (o VpcAttachmentOutput) TransitGatewayId() pulumi.StringOutput { 355 return o.ApplyT(func(v *VpcAttachment) pulumi.StringOutput { return v.TransitGatewayId }).(pulumi.StringOutput) 356 } 357 358 // Identifier of EC2 VPC. 359 func (o VpcAttachmentOutput) VpcId() pulumi.StringOutput { 360 return o.ApplyT(func(v *VpcAttachment) pulumi.StringOutput { return v.VpcId }).(pulumi.StringOutput) 361 } 362 363 // Identifier of the AWS account that owns the EC2 VPC. 364 func (o VpcAttachmentOutput) VpcOwnerId() pulumi.StringOutput { 365 return o.ApplyT(func(v *VpcAttachment) pulumi.StringOutput { return v.VpcOwnerId }).(pulumi.StringOutput) 366 } 367 368 type VpcAttachmentArrayOutput struct{ *pulumi.OutputState } 369 370 func (VpcAttachmentArrayOutput) ElementType() reflect.Type { 371 return reflect.TypeOf((*[]*VpcAttachment)(nil)).Elem() 372 } 373 374 func (o VpcAttachmentArrayOutput) ToVpcAttachmentArrayOutput() VpcAttachmentArrayOutput { 375 return o 376 } 377 378 func (o VpcAttachmentArrayOutput) ToVpcAttachmentArrayOutputWithContext(ctx context.Context) VpcAttachmentArrayOutput { 379 return o 380 } 381 382 func (o VpcAttachmentArrayOutput) Index(i pulumi.IntInput) VpcAttachmentOutput { 383 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *VpcAttachment { 384 return vs[0].([]*VpcAttachment)[vs[1].(int)] 385 }).(VpcAttachmentOutput) 386 } 387 388 type VpcAttachmentMapOutput struct{ *pulumi.OutputState } 389 390 func (VpcAttachmentMapOutput) ElementType() reflect.Type { 391 return reflect.TypeOf((*map[string]*VpcAttachment)(nil)).Elem() 392 } 393 394 func (o VpcAttachmentMapOutput) ToVpcAttachmentMapOutput() VpcAttachmentMapOutput { 395 return o 396 } 397 398 func (o VpcAttachmentMapOutput) ToVpcAttachmentMapOutputWithContext(ctx context.Context) VpcAttachmentMapOutput { 399 return o 400 } 401 402 func (o VpcAttachmentMapOutput) MapIndex(k pulumi.StringInput) VpcAttachmentOutput { 403 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *VpcAttachment { 404 return vs[0].(map[string]*VpcAttachment)[vs[1].(string)] 405 }).(VpcAttachmentOutput) 406 } 407 408 func init() { 409 pulumi.RegisterInputType(reflect.TypeOf((*VpcAttachmentInput)(nil)).Elem(), &VpcAttachment{}) 410 pulumi.RegisterInputType(reflect.TypeOf((*VpcAttachmentArrayInput)(nil)).Elem(), VpcAttachmentArray{}) 411 pulumi.RegisterInputType(reflect.TypeOf((*VpcAttachmentMapInput)(nil)).Elem(), VpcAttachmentMap{}) 412 pulumi.RegisterOutputType(VpcAttachmentOutput{}) 413 pulumi.RegisterOutputType(VpcAttachmentArrayOutput{}) 414 pulumi.RegisterOutputType(VpcAttachmentMapOutput{}) 415 }