github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/fsx/ontapStorageVirtualMachine.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 fsx 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 a FSx Storage Virtual Machine. 16 // See the [FSx ONTAP User Guide](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/managing-svms.html) for more information. 17 // 18 // ## Example Usage 19 // 20 // ### Basic Usage 21 // 22 // <!--Start PulumiCodeChooser --> 23 // ```go 24 // package main 25 // 26 // import ( 27 // 28 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx" 29 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 30 // 31 // ) 32 // 33 // func main() { 34 // pulumi.Run(func(ctx *pulumi.Context) error { 35 // _, err := fsx.NewOntapStorageVirtualMachine(ctx, "test", &fsx.OntapStorageVirtualMachineArgs{ 36 // FileSystemId: pulumi.Any(testAwsFsxOntapFileSystem.Id), 37 // Name: pulumi.String("test"), 38 // }) 39 // if err != nil { 40 // return err 41 // } 42 // return nil 43 // }) 44 // } 45 // 46 // ``` 47 // <!--End PulumiCodeChooser --> 48 // 49 // ### Using a Self-Managed Microsoft Active Directory 50 // 51 // Additional information for using AWS Directory Service with ONTAP File Systems can be found in the [FSx ONTAP Guide](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/self-managed-AD.html). 52 // 53 // <!--Start PulumiCodeChooser --> 54 // ```go 55 // package main 56 // 57 // import ( 58 // 59 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx" 60 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 61 // 62 // ) 63 // 64 // func main() { 65 // pulumi.Run(func(ctx *pulumi.Context) error { 66 // _, err := fsx.NewOntapStorageVirtualMachine(ctx, "test", &fsx.OntapStorageVirtualMachineArgs{ 67 // FileSystemId: pulumi.Any(testAwsFsxOntapFileSystem.Id), 68 // Name: pulumi.String("mysvm"), 69 // ActiveDirectoryConfiguration: &fsx.OntapStorageVirtualMachineActiveDirectoryConfigurationArgs{ 70 // NetbiosName: pulumi.String("mysvm"), 71 // SelfManagedActiveDirectoryConfiguration: &fsx.OntapStorageVirtualMachineActiveDirectoryConfigurationSelfManagedActiveDirectoryConfigurationArgs{ 72 // DnsIps: pulumi.StringArray{ 73 // pulumi.String("10.0.0.111"), 74 // pulumi.String("10.0.0.222"), 75 // }, 76 // DomainName: pulumi.String("corp.example.com"), 77 // Password: pulumi.String("avoid-plaintext-passwords"), 78 // Username: pulumi.String("Admin"), 79 // }, 80 // }, 81 // }) 82 // if err != nil { 83 // return err 84 // } 85 // return nil 86 // }) 87 // } 88 // 89 // ``` 90 // <!--End PulumiCodeChooser --> 91 // 92 // ## Import 93 // 94 // Using `pulumi import`, import FSx Storage Virtual Machine using the `id`. For example: 95 // 96 // ```sh 97 // $ pulumi import aws:fsx/ontapStorageVirtualMachine:OntapStorageVirtualMachine example svm-12345678abcdef123 98 // ``` 99 // Certain resource arguments, like `svm_admin_password` and the `self_managed_active_directory` configuation block `password`, do not have a FSx API method for reading the information after creation. If these arguments are set in the Pulumi program on an imported resource, Pulumi will always show a difference. To workaround this behavior, either omit the argument from the Pulumi program or use `ignore_changes` to hide the difference. For example: 100 type OntapStorageVirtualMachine struct { 101 pulumi.CustomResourceState 102 103 // Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below. 104 ActiveDirectoryConfiguration OntapStorageVirtualMachineActiveDirectoryConfigurationPtrOutput `pulumi:"activeDirectoryConfiguration"` 105 // Amazon Resource Name of the storage virtual machine. 106 Arn pulumi.StringOutput `pulumi:"arn"` 107 // The endpoints that are used to access data or to manage the storage virtual machine using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 108 Endpoints OntapStorageVirtualMachineEndpointArrayOutput `pulumi:"endpoints"` 109 // The ID of the Amazon FSx ONTAP File System that this SVM will be created on. 110 FileSystemId pulumi.StringOutput `pulumi:"fileSystemId"` 111 // The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character. 112 Name pulumi.StringOutput `pulumi:"name"` 113 // Specifies the root volume security style, Valid values are `UNIX`, `NTFS`, and `MIXED`. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is `UNIX`. 114 RootVolumeSecurityStyle pulumi.StringPtrOutput `pulumi:"rootVolumeSecurityStyle"` 115 // Describes the SVM's subtype, e.g. `DEFAULT` 116 Subtype pulumi.StringOutput `pulumi:"subtype"` 117 SvmAdminPassword pulumi.StringPtrOutput `pulumi:"svmAdminPassword"` 118 // A map of tags to assign to the storage virtual machine. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 119 Tags pulumi.StringMapOutput `pulumi:"tags"` 120 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 121 // 122 // Deprecated: Please use `tags` instead. 123 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 124 // The SVM's UUID (universally unique identifier). 125 Uuid pulumi.StringOutput `pulumi:"uuid"` 126 } 127 128 // NewOntapStorageVirtualMachine registers a new resource with the given unique name, arguments, and options. 129 func NewOntapStorageVirtualMachine(ctx *pulumi.Context, 130 name string, args *OntapStorageVirtualMachineArgs, opts ...pulumi.ResourceOption) (*OntapStorageVirtualMachine, error) { 131 if args == nil { 132 return nil, errors.New("missing one or more required arguments") 133 } 134 135 if args.FileSystemId == nil { 136 return nil, errors.New("invalid value for required argument 'FileSystemId'") 137 } 138 if args.SvmAdminPassword != nil { 139 args.SvmAdminPassword = pulumi.ToSecret(args.SvmAdminPassword).(pulumi.StringPtrInput) 140 } 141 secrets := pulumi.AdditionalSecretOutputs([]string{ 142 "svmAdminPassword", 143 }) 144 opts = append(opts, secrets) 145 opts = internal.PkgResourceDefaultOpts(opts) 146 var resource OntapStorageVirtualMachine 147 err := ctx.RegisterResource("aws:fsx/ontapStorageVirtualMachine:OntapStorageVirtualMachine", name, args, &resource, opts...) 148 if err != nil { 149 return nil, err 150 } 151 return &resource, nil 152 } 153 154 // GetOntapStorageVirtualMachine gets an existing OntapStorageVirtualMachine resource's state with the given name, ID, and optional 155 // state properties that are used to uniquely qualify the lookup (nil if not required). 156 func GetOntapStorageVirtualMachine(ctx *pulumi.Context, 157 name string, id pulumi.IDInput, state *OntapStorageVirtualMachineState, opts ...pulumi.ResourceOption) (*OntapStorageVirtualMachine, error) { 158 var resource OntapStorageVirtualMachine 159 err := ctx.ReadResource("aws:fsx/ontapStorageVirtualMachine:OntapStorageVirtualMachine", name, id, state, &resource, opts...) 160 if err != nil { 161 return nil, err 162 } 163 return &resource, nil 164 } 165 166 // Input properties used for looking up and filtering OntapStorageVirtualMachine resources. 167 type ontapStorageVirtualMachineState struct { 168 // Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below. 169 ActiveDirectoryConfiguration *OntapStorageVirtualMachineActiveDirectoryConfiguration `pulumi:"activeDirectoryConfiguration"` 170 // Amazon Resource Name of the storage virtual machine. 171 Arn *string `pulumi:"arn"` 172 // The endpoints that are used to access data or to manage the storage virtual machine using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 173 Endpoints []OntapStorageVirtualMachineEndpoint `pulumi:"endpoints"` 174 // The ID of the Amazon FSx ONTAP File System that this SVM will be created on. 175 FileSystemId *string `pulumi:"fileSystemId"` 176 // The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character. 177 Name *string `pulumi:"name"` 178 // Specifies the root volume security style, Valid values are `UNIX`, `NTFS`, and `MIXED`. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is `UNIX`. 179 RootVolumeSecurityStyle *string `pulumi:"rootVolumeSecurityStyle"` 180 // Describes the SVM's subtype, e.g. `DEFAULT` 181 Subtype *string `pulumi:"subtype"` 182 SvmAdminPassword *string `pulumi:"svmAdminPassword"` 183 // A map of tags to assign to the storage virtual machine. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 184 Tags map[string]string `pulumi:"tags"` 185 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 186 // 187 // Deprecated: Please use `tags` instead. 188 TagsAll map[string]string `pulumi:"tagsAll"` 189 // The SVM's UUID (universally unique identifier). 190 Uuid *string `pulumi:"uuid"` 191 } 192 193 type OntapStorageVirtualMachineState struct { 194 // Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below. 195 ActiveDirectoryConfiguration OntapStorageVirtualMachineActiveDirectoryConfigurationPtrInput 196 // Amazon Resource Name of the storage virtual machine. 197 Arn pulumi.StringPtrInput 198 // The endpoints that are used to access data or to manage the storage virtual machine using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 199 Endpoints OntapStorageVirtualMachineEndpointArrayInput 200 // The ID of the Amazon FSx ONTAP File System that this SVM will be created on. 201 FileSystemId pulumi.StringPtrInput 202 // The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character. 203 Name pulumi.StringPtrInput 204 // Specifies the root volume security style, Valid values are `UNIX`, `NTFS`, and `MIXED`. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is `UNIX`. 205 RootVolumeSecurityStyle pulumi.StringPtrInput 206 // Describes the SVM's subtype, e.g. `DEFAULT` 207 Subtype pulumi.StringPtrInput 208 SvmAdminPassword pulumi.StringPtrInput 209 // A map of tags to assign to the storage virtual machine. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 210 Tags pulumi.StringMapInput 211 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 212 // 213 // Deprecated: Please use `tags` instead. 214 TagsAll pulumi.StringMapInput 215 // The SVM's UUID (universally unique identifier). 216 Uuid pulumi.StringPtrInput 217 } 218 219 func (OntapStorageVirtualMachineState) ElementType() reflect.Type { 220 return reflect.TypeOf((*ontapStorageVirtualMachineState)(nil)).Elem() 221 } 222 223 type ontapStorageVirtualMachineArgs struct { 224 // Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below. 225 ActiveDirectoryConfiguration *OntapStorageVirtualMachineActiveDirectoryConfiguration `pulumi:"activeDirectoryConfiguration"` 226 // The ID of the Amazon FSx ONTAP File System that this SVM will be created on. 227 FileSystemId string `pulumi:"fileSystemId"` 228 // The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character. 229 Name *string `pulumi:"name"` 230 // Specifies the root volume security style, Valid values are `UNIX`, `NTFS`, and `MIXED`. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is `UNIX`. 231 RootVolumeSecurityStyle *string `pulumi:"rootVolumeSecurityStyle"` 232 SvmAdminPassword *string `pulumi:"svmAdminPassword"` 233 // A map of tags to assign to the storage virtual machine. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 234 Tags map[string]string `pulumi:"tags"` 235 } 236 237 // The set of arguments for constructing a OntapStorageVirtualMachine resource. 238 type OntapStorageVirtualMachineArgs struct { 239 // Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below. 240 ActiveDirectoryConfiguration OntapStorageVirtualMachineActiveDirectoryConfigurationPtrInput 241 // The ID of the Amazon FSx ONTAP File System that this SVM will be created on. 242 FileSystemId pulumi.StringInput 243 // The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character. 244 Name pulumi.StringPtrInput 245 // Specifies the root volume security style, Valid values are `UNIX`, `NTFS`, and `MIXED`. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is `UNIX`. 246 RootVolumeSecurityStyle pulumi.StringPtrInput 247 SvmAdminPassword pulumi.StringPtrInput 248 // A map of tags to assign to the storage virtual machine. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 249 Tags pulumi.StringMapInput 250 } 251 252 func (OntapStorageVirtualMachineArgs) ElementType() reflect.Type { 253 return reflect.TypeOf((*ontapStorageVirtualMachineArgs)(nil)).Elem() 254 } 255 256 type OntapStorageVirtualMachineInput interface { 257 pulumi.Input 258 259 ToOntapStorageVirtualMachineOutput() OntapStorageVirtualMachineOutput 260 ToOntapStorageVirtualMachineOutputWithContext(ctx context.Context) OntapStorageVirtualMachineOutput 261 } 262 263 func (*OntapStorageVirtualMachine) ElementType() reflect.Type { 264 return reflect.TypeOf((**OntapStorageVirtualMachine)(nil)).Elem() 265 } 266 267 func (i *OntapStorageVirtualMachine) ToOntapStorageVirtualMachineOutput() OntapStorageVirtualMachineOutput { 268 return i.ToOntapStorageVirtualMachineOutputWithContext(context.Background()) 269 } 270 271 func (i *OntapStorageVirtualMachine) ToOntapStorageVirtualMachineOutputWithContext(ctx context.Context) OntapStorageVirtualMachineOutput { 272 return pulumi.ToOutputWithContext(ctx, i).(OntapStorageVirtualMachineOutput) 273 } 274 275 // OntapStorageVirtualMachineArrayInput is an input type that accepts OntapStorageVirtualMachineArray and OntapStorageVirtualMachineArrayOutput values. 276 // You can construct a concrete instance of `OntapStorageVirtualMachineArrayInput` via: 277 // 278 // OntapStorageVirtualMachineArray{ OntapStorageVirtualMachineArgs{...} } 279 type OntapStorageVirtualMachineArrayInput interface { 280 pulumi.Input 281 282 ToOntapStorageVirtualMachineArrayOutput() OntapStorageVirtualMachineArrayOutput 283 ToOntapStorageVirtualMachineArrayOutputWithContext(context.Context) OntapStorageVirtualMachineArrayOutput 284 } 285 286 type OntapStorageVirtualMachineArray []OntapStorageVirtualMachineInput 287 288 func (OntapStorageVirtualMachineArray) ElementType() reflect.Type { 289 return reflect.TypeOf((*[]*OntapStorageVirtualMachine)(nil)).Elem() 290 } 291 292 func (i OntapStorageVirtualMachineArray) ToOntapStorageVirtualMachineArrayOutput() OntapStorageVirtualMachineArrayOutput { 293 return i.ToOntapStorageVirtualMachineArrayOutputWithContext(context.Background()) 294 } 295 296 func (i OntapStorageVirtualMachineArray) ToOntapStorageVirtualMachineArrayOutputWithContext(ctx context.Context) OntapStorageVirtualMachineArrayOutput { 297 return pulumi.ToOutputWithContext(ctx, i).(OntapStorageVirtualMachineArrayOutput) 298 } 299 300 // OntapStorageVirtualMachineMapInput is an input type that accepts OntapStorageVirtualMachineMap and OntapStorageVirtualMachineMapOutput values. 301 // You can construct a concrete instance of `OntapStorageVirtualMachineMapInput` via: 302 // 303 // OntapStorageVirtualMachineMap{ "key": OntapStorageVirtualMachineArgs{...} } 304 type OntapStorageVirtualMachineMapInput interface { 305 pulumi.Input 306 307 ToOntapStorageVirtualMachineMapOutput() OntapStorageVirtualMachineMapOutput 308 ToOntapStorageVirtualMachineMapOutputWithContext(context.Context) OntapStorageVirtualMachineMapOutput 309 } 310 311 type OntapStorageVirtualMachineMap map[string]OntapStorageVirtualMachineInput 312 313 func (OntapStorageVirtualMachineMap) ElementType() reflect.Type { 314 return reflect.TypeOf((*map[string]*OntapStorageVirtualMachine)(nil)).Elem() 315 } 316 317 func (i OntapStorageVirtualMachineMap) ToOntapStorageVirtualMachineMapOutput() OntapStorageVirtualMachineMapOutput { 318 return i.ToOntapStorageVirtualMachineMapOutputWithContext(context.Background()) 319 } 320 321 func (i OntapStorageVirtualMachineMap) ToOntapStorageVirtualMachineMapOutputWithContext(ctx context.Context) OntapStorageVirtualMachineMapOutput { 322 return pulumi.ToOutputWithContext(ctx, i).(OntapStorageVirtualMachineMapOutput) 323 } 324 325 type OntapStorageVirtualMachineOutput struct{ *pulumi.OutputState } 326 327 func (OntapStorageVirtualMachineOutput) ElementType() reflect.Type { 328 return reflect.TypeOf((**OntapStorageVirtualMachine)(nil)).Elem() 329 } 330 331 func (o OntapStorageVirtualMachineOutput) ToOntapStorageVirtualMachineOutput() OntapStorageVirtualMachineOutput { 332 return o 333 } 334 335 func (o OntapStorageVirtualMachineOutput) ToOntapStorageVirtualMachineOutputWithContext(ctx context.Context) OntapStorageVirtualMachineOutput { 336 return o 337 } 338 339 // Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below. 340 func (o OntapStorageVirtualMachineOutput) ActiveDirectoryConfiguration() OntapStorageVirtualMachineActiveDirectoryConfigurationPtrOutput { 341 return o.ApplyT(func(v *OntapStorageVirtualMachine) OntapStorageVirtualMachineActiveDirectoryConfigurationPtrOutput { 342 return v.ActiveDirectoryConfiguration 343 }).(OntapStorageVirtualMachineActiveDirectoryConfigurationPtrOutput) 344 } 345 346 // Amazon Resource Name of the storage virtual machine. 347 func (o OntapStorageVirtualMachineOutput) Arn() pulumi.StringOutput { 348 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 349 } 350 351 // The endpoints that are used to access data or to manage the storage virtual machine using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 352 func (o OntapStorageVirtualMachineOutput) Endpoints() OntapStorageVirtualMachineEndpointArrayOutput { 353 return o.ApplyT(func(v *OntapStorageVirtualMachine) OntapStorageVirtualMachineEndpointArrayOutput { return v.Endpoints }).(OntapStorageVirtualMachineEndpointArrayOutput) 354 } 355 356 // The ID of the Amazon FSx ONTAP File System that this SVM will be created on. 357 func (o OntapStorageVirtualMachineOutput) FileSystemId() pulumi.StringOutput { 358 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringOutput { return v.FileSystemId }).(pulumi.StringOutput) 359 } 360 361 // The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character. 362 func (o OntapStorageVirtualMachineOutput) Name() pulumi.StringOutput { 363 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 364 } 365 366 // Specifies the root volume security style, Valid values are `UNIX`, `NTFS`, and `MIXED`. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is `UNIX`. 367 func (o OntapStorageVirtualMachineOutput) RootVolumeSecurityStyle() pulumi.StringPtrOutput { 368 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringPtrOutput { return v.RootVolumeSecurityStyle }).(pulumi.StringPtrOutput) 369 } 370 371 // Describes the SVM's subtype, e.g. `DEFAULT` 372 func (o OntapStorageVirtualMachineOutput) Subtype() pulumi.StringOutput { 373 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringOutput { return v.Subtype }).(pulumi.StringOutput) 374 } 375 376 func (o OntapStorageVirtualMachineOutput) SvmAdminPassword() pulumi.StringPtrOutput { 377 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringPtrOutput { return v.SvmAdminPassword }).(pulumi.StringPtrOutput) 378 } 379 380 // A map of tags to assign to the storage virtual machine. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 381 func (o OntapStorageVirtualMachineOutput) Tags() pulumi.StringMapOutput { 382 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 383 } 384 385 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 386 // 387 // Deprecated: Please use `tags` instead. 388 func (o OntapStorageVirtualMachineOutput) TagsAll() pulumi.StringMapOutput { 389 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 390 } 391 392 // The SVM's UUID (universally unique identifier). 393 func (o OntapStorageVirtualMachineOutput) Uuid() pulumi.StringOutput { 394 return o.ApplyT(func(v *OntapStorageVirtualMachine) pulumi.StringOutput { return v.Uuid }).(pulumi.StringOutput) 395 } 396 397 type OntapStorageVirtualMachineArrayOutput struct{ *pulumi.OutputState } 398 399 func (OntapStorageVirtualMachineArrayOutput) ElementType() reflect.Type { 400 return reflect.TypeOf((*[]*OntapStorageVirtualMachine)(nil)).Elem() 401 } 402 403 func (o OntapStorageVirtualMachineArrayOutput) ToOntapStorageVirtualMachineArrayOutput() OntapStorageVirtualMachineArrayOutput { 404 return o 405 } 406 407 func (o OntapStorageVirtualMachineArrayOutput) ToOntapStorageVirtualMachineArrayOutputWithContext(ctx context.Context) OntapStorageVirtualMachineArrayOutput { 408 return o 409 } 410 411 func (o OntapStorageVirtualMachineArrayOutput) Index(i pulumi.IntInput) OntapStorageVirtualMachineOutput { 412 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *OntapStorageVirtualMachine { 413 return vs[0].([]*OntapStorageVirtualMachine)[vs[1].(int)] 414 }).(OntapStorageVirtualMachineOutput) 415 } 416 417 type OntapStorageVirtualMachineMapOutput struct{ *pulumi.OutputState } 418 419 func (OntapStorageVirtualMachineMapOutput) ElementType() reflect.Type { 420 return reflect.TypeOf((*map[string]*OntapStorageVirtualMachine)(nil)).Elem() 421 } 422 423 func (o OntapStorageVirtualMachineMapOutput) ToOntapStorageVirtualMachineMapOutput() OntapStorageVirtualMachineMapOutput { 424 return o 425 } 426 427 func (o OntapStorageVirtualMachineMapOutput) ToOntapStorageVirtualMachineMapOutputWithContext(ctx context.Context) OntapStorageVirtualMachineMapOutput { 428 return o 429 } 430 431 func (o OntapStorageVirtualMachineMapOutput) MapIndex(k pulumi.StringInput) OntapStorageVirtualMachineOutput { 432 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *OntapStorageVirtualMachine { 433 return vs[0].(map[string]*OntapStorageVirtualMachine)[vs[1].(string)] 434 }).(OntapStorageVirtualMachineOutput) 435 } 436 437 func init() { 438 pulumi.RegisterInputType(reflect.TypeOf((*OntapStorageVirtualMachineInput)(nil)).Elem(), &OntapStorageVirtualMachine{}) 439 pulumi.RegisterInputType(reflect.TypeOf((*OntapStorageVirtualMachineArrayInput)(nil)).Elem(), OntapStorageVirtualMachineArray{}) 440 pulumi.RegisterInputType(reflect.TypeOf((*OntapStorageVirtualMachineMapInput)(nil)).Elem(), OntapStorageVirtualMachineMap{}) 441 pulumi.RegisterOutputType(OntapStorageVirtualMachineOutput{}) 442 pulumi.RegisterOutputType(OntapStorageVirtualMachineArrayOutput{}) 443 pulumi.RegisterOutputType(OntapStorageVirtualMachineMapOutput{}) 444 }