github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/fsx/ontapFileSystem.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 an Amazon FSx for NetApp ONTAP file system. 16 // See the [FSx ONTAP User Guide](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/what-is-fsx-ontap.html) for more information. 17 // 18 // ## Example Usage 19 // 20 // <!--Start PulumiCodeChooser --> 21 // ```go 22 // package main 23 // 24 // import ( 25 // 26 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/fsx" 27 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 28 // 29 // ) 30 // 31 // func main() { 32 // pulumi.Run(func(ctx *pulumi.Context) error { 33 // _, err := fsx.NewOntapFileSystem(ctx, "test", &fsx.OntapFileSystemArgs{ 34 // StorageCapacity: pulumi.Int(1024), 35 // SubnetIds: pulumi.StringArray{ 36 // test1.Id, 37 // test2.Id, 38 // }, 39 // DeploymentType: pulumi.String("MULTI_AZ_1"), 40 // ThroughputCapacity: pulumi.Int(512), 41 // PreferredSubnetId: pulumi.Any(test1.Id), 42 // }) 43 // if err != nil { 44 // return err 45 // } 46 // return nil 47 // }) 48 // } 49 // 50 // ``` 51 // <!--End PulumiCodeChooser --> 52 // 53 // ## Import 54 // 55 // Using `pulumi import`, import FSx File Systems using the `id`. For example: 56 // 57 // ```sh 58 // $ pulumi import aws:fsx/ontapFileSystem:OntapFileSystem example fs-543ab12b1ca672f33 59 // ``` 60 // Certain resource arguments, like `security_group_ids`, do not have a FSx API method for reading the information after creation. If the argument is 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: 61 type OntapFileSystem struct { 62 pulumi.CustomResourceState 63 64 // Amazon Resource Name of the file system. 65 Arn pulumi.StringOutput `pulumi:"arn"` 66 // The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. 67 AutomaticBackupRetentionDays pulumi.IntPtrOutput `pulumi:"automaticBackupRetentionDays"` 68 // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires `automaticBackupRetentionDays` to be set. 69 DailyAutomaticBackupStartTime pulumi.StringOutput `pulumi:"dailyAutomaticBackupStartTime"` 70 // The filesystem deployment type. Supports `MULTI_AZ_1` and `SINGLE_AZ_1`. 71 DeploymentType pulumi.StringOutput `pulumi:"deploymentType"` 72 // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below. 73 DiskIopsConfiguration OntapFileSystemDiskIopsConfigurationOutput `pulumi:"diskIopsConfiguration"` 74 // The Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name. 75 DnsName pulumi.StringOutput `pulumi:"dnsName"` 76 // Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range. 77 EndpointIpAddressRange pulumi.StringOutput `pulumi:"endpointIpAddressRange"` 78 // The endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 79 Endpoints OntapFileSystemEndpointArrayOutput `pulumi:"endpoints"` 80 // The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. 81 FsxAdminPassword pulumi.StringPtrOutput `pulumi:"fsxAdminPassword"` 82 // The number of haPairs to deploy for the file system. Valid values are 1 through 6. Recommend only using this parameter for 2 or more ha pairs. 83 HaPairs pulumi.IntOutput `pulumi:"haPairs"` 84 // ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. 85 KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"` 86 // Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface. 87 NetworkInterfaceIds pulumi.StringArrayOutput `pulumi:"networkInterfaceIds"` 88 // AWS account identifier that created the file system. 89 OwnerId pulumi.StringOutput `pulumi:"ownerId"` 90 // The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). 91 PreferredSubnetId pulumi.StringOutput `pulumi:"preferredSubnetId"` 92 // Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table. 93 RouteTableIds pulumi.StringArrayOutput `pulumi:"routeTableIds"` 94 // A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces. 95 SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` 96 // The storage capacity (GiB) of the file system. Valid values between `1024` and `196608`. 97 StorageCapacity pulumi.IntPtrOutput `pulumi:"storageCapacity"` 98 // The filesystem storage type. defaults to `SSD`. 99 StorageType pulumi.StringPtrOutput `pulumi:"storageType"` 100 // A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. 101 SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` 102 // A map of tags to assign to the file system. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 103 Tags pulumi.StringMapOutput `pulumi:"tags"` 104 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 105 // 106 // Deprecated: Please use `tags` instead. 107 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 108 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter should only be used when specifying not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 109 ThroughputCapacity pulumi.IntPtrOutput `pulumi:"throughputCapacity"` 110 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `3072`,`6144`. This parameter should only be used when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 111 ThroughputCapacityPerHaPair pulumi.IntPtrOutput `pulumi:"throughputCapacityPerHaPair"` 112 // Identifier of the Virtual Private Cloud for the file system. 113 VpcId pulumi.StringOutput `pulumi:"vpcId"` 114 // The preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. 115 WeeklyMaintenanceStartTime pulumi.StringOutput `pulumi:"weeklyMaintenanceStartTime"` 116 } 117 118 // NewOntapFileSystem registers a new resource with the given unique name, arguments, and options. 119 func NewOntapFileSystem(ctx *pulumi.Context, 120 name string, args *OntapFileSystemArgs, opts ...pulumi.ResourceOption) (*OntapFileSystem, error) { 121 if args == nil { 122 return nil, errors.New("missing one or more required arguments") 123 } 124 125 if args.DeploymentType == nil { 126 return nil, errors.New("invalid value for required argument 'DeploymentType'") 127 } 128 if args.PreferredSubnetId == nil { 129 return nil, errors.New("invalid value for required argument 'PreferredSubnetId'") 130 } 131 if args.SubnetIds == nil { 132 return nil, errors.New("invalid value for required argument 'SubnetIds'") 133 } 134 if args.FsxAdminPassword != nil { 135 args.FsxAdminPassword = pulumi.ToSecret(args.FsxAdminPassword).(pulumi.StringPtrInput) 136 } 137 secrets := pulumi.AdditionalSecretOutputs([]string{ 138 "fsxAdminPassword", 139 }) 140 opts = append(opts, secrets) 141 opts = internal.PkgResourceDefaultOpts(opts) 142 var resource OntapFileSystem 143 err := ctx.RegisterResource("aws:fsx/ontapFileSystem:OntapFileSystem", name, args, &resource, opts...) 144 if err != nil { 145 return nil, err 146 } 147 return &resource, nil 148 } 149 150 // GetOntapFileSystem gets an existing OntapFileSystem resource's state with the given name, ID, and optional 151 // state properties that are used to uniquely qualify the lookup (nil if not required). 152 func GetOntapFileSystem(ctx *pulumi.Context, 153 name string, id pulumi.IDInput, state *OntapFileSystemState, opts ...pulumi.ResourceOption) (*OntapFileSystem, error) { 154 var resource OntapFileSystem 155 err := ctx.ReadResource("aws:fsx/ontapFileSystem:OntapFileSystem", name, id, state, &resource, opts...) 156 if err != nil { 157 return nil, err 158 } 159 return &resource, nil 160 } 161 162 // Input properties used for looking up and filtering OntapFileSystem resources. 163 type ontapFileSystemState struct { 164 // Amazon Resource Name of the file system. 165 Arn *string `pulumi:"arn"` 166 // The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. 167 AutomaticBackupRetentionDays *int `pulumi:"automaticBackupRetentionDays"` 168 // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires `automaticBackupRetentionDays` to be set. 169 DailyAutomaticBackupStartTime *string `pulumi:"dailyAutomaticBackupStartTime"` 170 // The filesystem deployment type. Supports `MULTI_AZ_1` and `SINGLE_AZ_1`. 171 DeploymentType *string `pulumi:"deploymentType"` 172 // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below. 173 DiskIopsConfiguration *OntapFileSystemDiskIopsConfiguration `pulumi:"diskIopsConfiguration"` 174 // The Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name. 175 DnsName *string `pulumi:"dnsName"` 176 // Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range. 177 EndpointIpAddressRange *string `pulumi:"endpointIpAddressRange"` 178 // The endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 179 Endpoints []OntapFileSystemEndpoint `pulumi:"endpoints"` 180 // The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. 181 FsxAdminPassword *string `pulumi:"fsxAdminPassword"` 182 // The number of haPairs to deploy for the file system. Valid values are 1 through 6. Recommend only using this parameter for 2 or more ha pairs. 183 HaPairs *int `pulumi:"haPairs"` 184 // ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. 185 KmsKeyId *string `pulumi:"kmsKeyId"` 186 // Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface. 187 NetworkInterfaceIds []string `pulumi:"networkInterfaceIds"` 188 // AWS account identifier that created the file system. 189 OwnerId *string `pulumi:"ownerId"` 190 // The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). 191 PreferredSubnetId *string `pulumi:"preferredSubnetId"` 192 // Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table. 193 RouteTableIds []string `pulumi:"routeTableIds"` 194 // A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces. 195 SecurityGroupIds []string `pulumi:"securityGroupIds"` 196 // The storage capacity (GiB) of the file system. Valid values between `1024` and `196608`. 197 StorageCapacity *int `pulumi:"storageCapacity"` 198 // The filesystem storage type. defaults to `SSD`. 199 StorageType *string `pulumi:"storageType"` 200 // A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. 201 SubnetIds []string `pulumi:"subnetIds"` 202 // A map of tags to assign to the file system. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 203 Tags map[string]string `pulumi:"tags"` 204 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 205 // 206 // Deprecated: Please use `tags` instead. 207 TagsAll map[string]string `pulumi:"tagsAll"` 208 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter should only be used when specifying not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 209 ThroughputCapacity *int `pulumi:"throughputCapacity"` 210 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `3072`,`6144`. This parameter should only be used when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 211 ThroughputCapacityPerHaPair *int `pulumi:"throughputCapacityPerHaPair"` 212 // Identifier of the Virtual Private Cloud for the file system. 213 VpcId *string `pulumi:"vpcId"` 214 // The preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. 215 WeeklyMaintenanceStartTime *string `pulumi:"weeklyMaintenanceStartTime"` 216 } 217 218 type OntapFileSystemState struct { 219 // Amazon Resource Name of the file system. 220 Arn pulumi.StringPtrInput 221 // The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. 222 AutomaticBackupRetentionDays pulumi.IntPtrInput 223 // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires `automaticBackupRetentionDays` to be set. 224 DailyAutomaticBackupStartTime pulumi.StringPtrInput 225 // The filesystem deployment type. Supports `MULTI_AZ_1` and `SINGLE_AZ_1`. 226 DeploymentType pulumi.StringPtrInput 227 // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below. 228 DiskIopsConfiguration OntapFileSystemDiskIopsConfigurationPtrInput 229 // The Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name. 230 DnsName pulumi.StringPtrInput 231 // Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range. 232 EndpointIpAddressRange pulumi.StringPtrInput 233 // The endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 234 Endpoints OntapFileSystemEndpointArrayInput 235 // The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. 236 FsxAdminPassword pulumi.StringPtrInput 237 // The number of haPairs to deploy for the file system. Valid values are 1 through 6. Recommend only using this parameter for 2 or more ha pairs. 238 HaPairs pulumi.IntPtrInput 239 // ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. 240 KmsKeyId pulumi.StringPtrInput 241 // Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface. 242 NetworkInterfaceIds pulumi.StringArrayInput 243 // AWS account identifier that created the file system. 244 OwnerId pulumi.StringPtrInput 245 // The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). 246 PreferredSubnetId pulumi.StringPtrInput 247 // Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table. 248 RouteTableIds pulumi.StringArrayInput 249 // A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces. 250 SecurityGroupIds pulumi.StringArrayInput 251 // The storage capacity (GiB) of the file system. Valid values between `1024` and `196608`. 252 StorageCapacity pulumi.IntPtrInput 253 // The filesystem storage type. defaults to `SSD`. 254 StorageType pulumi.StringPtrInput 255 // A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. 256 SubnetIds pulumi.StringArrayInput 257 // A map of tags to assign to the file system. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 258 Tags pulumi.StringMapInput 259 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 260 // 261 // Deprecated: Please use `tags` instead. 262 TagsAll pulumi.StringMapInput 263 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter should only be used when specifying not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 264 ThroughputCapacity pulumi.IntPtrInput 265 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `3072`,`6144`. This parameter should only be used when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 266 ThroughputCapacityPerHaPair pulumi.IntPtrInput 267 // Identifier of the Virtual Private Cloud for the file system. 268 VpcId pulumi.StringPtrInput 269 // The preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. 270 WeeklyMaintenanceStartTime pulumi.StringPtrInput 271 } 272 273 func (OntapFileSystemState) ElementType() reflect.Type { 274 return reflect.TypeOf((*ontapFileSystemState)(nil)).Elem() 275 } 276 277 type ontapFileSystemArgs struct { 278 // The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. 279 AutomaticBackupRetentionDays *int `pulumi:"automaticBackupRetentionDays"` 280 // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires `automaticBackupRetentionDays` to be set. 281 DailyAutomaticBackupStartTime *string `pulumi:"dailyAutomaticBackupStartTime"` 282 // The filesystem deployment type. Supports `MULTI_AZ_1` and `SINGLE_AZ_1`. 283 DeploymentType string `pulumi:"deploymentType"` 284 // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below. 285 DiskIopsConfiguration *OntapFileSystemDiskIopsConfiguration `pulumi:"diskIopsConfiguration"` 286 // Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range. 287 EndpointIpAddressRange *string `pulumi:"endpointIpAddressRange"` 288 // The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. 289 FsxAdminPassword *string `pulumi:"fsxAdminPassword"` 290 // The number of haPairs to deploy for the file system. Valid values are 1 through 6. Recommend only using this parameter for 2 or more ha pairs. 291 HaPairs *int `pulumi:"haPairs"` 292 // ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. 293 KmsKeyId *string `pulumi:"kmsKeyId"` 294 // The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). 295 PreferredSubnetId string `pulumi:"preferredSubnetId"` 296 // Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table. 297 RouteTableIds []string `pulumi:"routeTableIds"` 298 // A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces. 299 SecurityGroupIds []string `pulumi:"securityGroupIds"` 300 // The storage capacity (GiB) of the file system. Valid values between `1024` and `196608`. 301 StorageCapacity *int `pulumi:"storageCapacity"` 302 // The filesystem storage type. defaults to `SSD`. 303 StorageType *string `pulumi:"storageType"` 304 // A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. 305 SubnetIds []string `pulumi:"subnetIds"` 306 // A map of tags to assign to the file system. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 307 Tags map[string]string `pulumi:"tags"` 308 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter should only be used when specifying not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 309 ThroughputCapacity *int `pulumi:"throughputCapacity"` 310 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `3072`,`6144`. This parameter should only be used when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 311 ThroughputCapacityPerHaPair *int `pulumi:"throughputCapacityPerHaPair"` 312 // The preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. 313 WeeklyMaintenanceStartTime *string `pulumi:"weeklyMaintenanceStartTime"` 314 } 315 316 // The set of arguments for constructing a OntapFileSystem resource. 317 type OntapFileSystemArgs struct { 318 // The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. 319 AutomaticBackupRetentionDays pulumi.IntPtrInput 320 // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires `automaticBackupRetentionDays` to be set. 321 DailyAutomaticBackupStartTime pulumi.StringPtrInput 322 // The filesystem deployment type. Supports `MULTI_AZ_1` and `SINGLE_AZ_1`. 323 DeploymentType pulumi.StringInput 324 // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below. 325 DiskIopsConfiguration OntapFileSystemDiskIopsConfigurationPtrInput 326 // Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range. 327 EndpointIpAddressRange pulumi.StringPtrInput 328 // The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. 329 FsxAdminPassword pulumi.StringPtrInput 330 // The number of haPairs to deploy for the file system. Valid values are 1 through 6. Recommend only using this parameter for 2 or more ha pairs. 331 HaPairs pulumi.IntPtrInput 332 // ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. 333 KmsKeyId pulumi.StringPtrInput 334 // The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). 335 PreferredSubnetId pulumi.StringInput 336 // Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table. 337 RouteTableIds pulumi.StringArrayInput 338 // A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces. 339 SecurityGroupIds pulumi.StringArrayInput 340 // The storage capacity (GiB) of the file system. Valid values between `1024` and `196608`. 341 StorageCapacity pulumi.IntPtrInput 342 // The filesystem storage type. defaults to `SSD`. 343 StorageType pulumi.StringPtrInput 344 // A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. 345 SubnetIds pulumi.StringArrayInput 346 // A map of tags to assign to the file system. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 347 Tags pulumi.StringMapInput 348 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter should only be used when specifying not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 349 ThroughputCapacity pulumi.IntPtrInput 350 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `3072`,`6144`. This parameter should only be used when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 351 ThroughputCapacityPerHaPair pulumi.IntPtrInput 352 // The preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. 353 WeeklyMaintenanceStartTime pulumi.StringPtrInput 354 } 355 356 func (OntapFileSystemArgs) ElementType() reflect.Type { 357 return reflect.TypeOf((*ontapFileSystemArgs)(nil)).Elem() 358 } 359 360 type OntapFileSystemInput interface { 361 pulumi.Input 362 363 ToOntapFileSystemOutput() OntapFileSystemOutput 364 ToOntapFileSystemOutputWithContext(ctx context.Context) OntapFileSystemOutput 365 } 366 367 func (*OntapFileSystem) ElementType() reflect.Type { 368 return reflect.TypeOf((**OntapFileSystem)(nil)).Elem() 369 } 370 371 func (i *OntapFileSystem) ToOntapFileSystemOutput() OntapFileSystemOutput { 372 return i.ToOntapFileSystemOutputWithContext(context.Background()) 373 } 374 375 func (i *OntapFileSystem) ToOntapFileSystemOutputWithContext(ctx context.Context) OntapFileSystemOutput { 376 return pulumi.ToOutputWithContext(ctx, i).(OntapFileSystemOutput) 377 } 378 379 // OntapFileSystemArrayInput is an input type that accepts OntapFileSystemArray and OntapFileSystemArrayOutput values. 380 // You can construct a concrete instance of `OntapFileSystemArrayInput` via: 381 // 382 // OntapFileSystemArray{ OntapFileSystemArgs{...} } 383 type OntapFileSystemArrayInput interface { 384 pulumi.Input 385 386 ToOntapFileSystemArrayOutput() OntapFileSystemArrayOutput 387 ToOntapFileSystemArrayOutputWithContext(context.Context) OntapFileSystemArrayOutput 388 } 389 390 type OntapFileSystemArray []OntapFileSystemInput 391 392 func (OntapFileSystemArray) ElementType() reflect.Type { 393 return reflect.TypeOf((*[]*OntapFileSystem)(nil)).Elem() 394 } 395 396 func (i OntapFileSystemArray) ToOntapFileSystemArrayOutput() OntapFileSystemArrayOutput { 397 return i.ToOntapFileSystemArrayOutputWithContext(context.Background()) 398 } 399 400 func (i OntapFileSystemArray) ToOntapFileSystemArrayOutputWithContext(ctx context.Context) OntapFileSystemArrayOutput { 401 return pulumi.ToOutputWithContext(ctx, i).(OntapFileSystemArrayOutput) 402 } 403 404 // OntapFileSystemMapInput is an input type that accepts OntapFileSystemMap and OntapFileSystemMapOutput values. 405 // You can construct a concrete instance of `OntapFileSystemMapInput` via: 406 // 407 // OntapFileSystemMap{ "key": OntapFileSystemArgs{...} } 408 type OntapFileSystemMapInput interface { 409 pulumi.Input 410 411 ToOntapFileSystemMapOutput() OntapFileSystemMapOutput 412 ToOntapFileSystemMapOutputWithContext(context.Context) OntapFileSystemMapOutput 413 } 414 415 type OntapFileSystemMap map[string]OntapFileSystemInput 416 417 func (OntapFileSystemMap) ElementType() reflect.Type { 418 return reflect.TypeOf((*map[string]*OntapFileSystem)(nil)).Elem() 419 } 420 421 func (i OntapFileSystemMap) ToOntapFileSystemMapOutput() OntapFileSystemMapOutput { 422 return i.ToOntapFileSystemMapOutputWithContext(context.Background()) 423 } 424 425 func (i OntapFileSystemMap) ToOntapFileSystemMapOutputWithContext(ctx context.Context) OntapFileSystemMapOutput { 426 return pulumi.ToOutputWithContext(ctx, i).(OntapFileSystemMapOutput) 427 } 428 429 type OntapFileSystemOutput struct{ *pulumi.OutputState } 430 431 func (OntapFileSystemOutput) ElementType() reflect.Type { 432 return reflect.TypeOf((**OntapFileSystem)(nil)).Elem() 433 } 434 435 func (o OntapFileSystemOutput) ToOntapFileSystemOutput() OntapFileSystemOutput { 436 return o 437 } 438 439 func (o OntapFileSystemOutput) ToOntapFileSystemOutputWithContext(ctx context.Context) OntapFileSystemOutput { 440 return o 441 } 442 443 // Amazon Resource Name of the file system. 444 func (o OntapFileSystemOutput) Arn() pulumi.StringOutput { 445 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 446 } 447 448 // The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. 449 func (o OntapFileSystemOutput) AutomaticBackupRetentionDays() pulumi.IntPtrOutput { 450 return o.ApplyT(func(v *OntapFileSystem) pulumi.IntPtrOutput { return v.AutomaticBackupRetentionDays }).(pulumi.IntPtrOutput) 451 } 452 453 // A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires `automaticBackupRetentionDays` to be set. 454 func (o OntapFileSystemOutput) DailyAutomaticBackupStartTime() pulumi.StringOutput { 455 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.DailyAutomaticBackupStartTime }).(pulumi.StringOutput) 456 } 457 458 // The filesystem deployment type. Supports `MULTI_AZ_1` and `SINGLE_AZ_1`. 459 func (o OntapFileSystemOutput) DeploymentType() pulumi.StringOutput { 460 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.DeploymentType }).(pulumi.StringOutput) 461 } 462 463 // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below. 464 func (o OntapFileSystemOutput) DiskIopsConfiguration() OntapFileSystemDiskIopsConfigurationOutput { 465 return o.ApplyT(func(v *OntapFileSystem) OntapFileSystemDiskIopsConfigurationOutput { return v.DiskIopsConfiguration }).(OntapFileSystemDiskIopsConfigurationOutput) 466 } 467 468 // The Domain Name Service (DNS) name for the file system. You can mount your file system using its DNS name. 469 func (o OntapFileSystemOutput) DnsName() pulumi.StringOutput { 470 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.DnsName }).(pulumi.StringOutput) 471 } 472 473 // Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range. 474 func (o OntapFileSystemOutput) EndpointIpAddressRange() pulumi.StringOutput { 475 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.EndpointIpAddressRange }).(pulumi.StringOutput) 476 } 477 478 // The endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below. 479 func (o OntapFileSystemOutput) Endpoints() OntapFileSystemEndpointArrayOutput { 480 return o.ApplyT(func(v *OntapFileSystem) OntapFileSystemEndpointArrayOutput { return v.Endpoints }).(OntapFileSystemEndpointArrayOutput) 481 } 482 483 // The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API. 484 func (o OntapFileSystemOutput) FsxAdminPassword() pulumi.StringPtrOutput { 485 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringPtrOutput { return v.FsxAdminPassword }).(pulumi.StringPtrOutput) 486 } 487 488 // The number of haPairs to deploy for the file system. Valid values are 1 through 6. Recommend only using this parameter for 2 or more ha pairs. 489 func (o OntapFileSystemOutput) HaPairs() pulumi.IntOutput { 490 return o.ApplyT(func(v *OntapFileSystem) pulumi.IntOutput { return v.HaPairs }).(pulumi.IntOutput) 491 } 492 493 // ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key. 494 func (o OntapFileSystemOutput) KmsKeyId() pulumi.StringOutput { 495 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.KmsKeyId }).(pulumi.StringOutput) 496 } 497 498 // Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface. 499 func (o OntapFileSystemOutput) NetworkInterfaceIds() pulumi.StringArrayOutput { 500 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringArrayOutput { return v.NetworkInterfaceIds }).(pulumi.StringArrayOutput) 501 } 502 503 // AWS account identifier that created the file system. 504 func (o OntapFileSystemOutput) OwnerId() pulumi.StringOutput { 505 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.OwnerId }).(pulumi.StringOutput) 506 } 507 508 // The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC). 509 func (o OntapFileSystemOutput) PreferredSubnetId() pulumi.StringOutput { 510 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.PreferredSubnetId }).(pulumi.StringOutput) 511 } 512 513 // Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table. 514 func (o OntapFileSystemOutput) RouteTableIds() pulumi.StringArrayOutput { 515 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringArrayOutput { return v.RouteTableIds }).(pulumi.StringArrayOutput) 516 } 517 518 // A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces. 519 func (o OntapFileSystemOutput) SecurityGroupIds() pulumi.StringArrayOutput { 520 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringArrayOutput { return v.SecurityGroupIds }).(pulumi.StringArrayOutput) 521 } 522 523 // The storage capacity (GiB) of the file system. Valid values between `1024` and `196608`. 524 func (o OntapFileSystemOutput) StorageCapacity() pulumi.IntPtrOutput { 525 return o.ApplyT(func(v *OntapFileSystem) pulumi.IntPtrOutput { return v.StorageCapacity }).(pulumi.IntPtrOutput) 526 } 527 528 // The filesystem storage type. defaults to `SSD`. 529 func (o OntapFileSystemOutput) StorageType() pulumi.StringPtrOutput { 530 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringPtrOutput { return v.StorageType }).(pulumi.StringPtrOutput) 531 } 532 533 // A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided. 534 func (o OntapFileSystemOutput) SubnetIds() pulumi.StringArrayOutput { 535 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringArrayOutput { return v.SubnetIds }).(pulumi.StringArrayOutput) 536 } 537 538 // A map of tags to assign to the file system. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 539 func (o OntapFileSystemOutput) Tags() pulumi.StringMapOutput { 540 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 541 } 542 543 // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. 544 // 545 // Deprecated: Please use `tags` instead. 546 func (o OntapFileSystemOutput) TagsAll() pulumi.StringMapOutput { 547 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 548 } 549 550 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `128`, `256`, `512`, `1024`, `2048`, and `4096`. This parameter should only be used when specifying not using the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 551 func (o OntapFileSystemOutput) ThroughputCapacity() pulumi.IntPtrOutput { 552 return o.ApplyT(func(v *OntapFileSystem) pulumi.IntPtrOutput { return v.ThroughputCapacity }).(pulumi.IntPtrOutput) 553 } 554 555 // Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are `3072`,`6144`. This parameter should only be used when specifying the haPairs parameter. Either throughputCapacity or throughputCapacityPerHaPair must be specified. 556 func (o OntapFileSystemOutput) ThroughputCapacityPerHaPair() pulumi.IntPtrOutput { 557 return o.ApplyT(func(v *OntapFileSystem) pulumi.IntPtrOutput { return v.ThroughputCapacityPerHaPair }).(pulumi.IntPtrOutput) 558 } 559 560 // Identifier of the Virtual Private Cloud for the file system. 561 func (o OntapFileSystemOutput) VpcId() pulumi.StringOutput { 562 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.VpcId }).(pulumi.StringOutput) 563 } 564 565 // The preferred start time (in `d:HH:MM` format) to perform weekly maintenance, in the UTC time zone. 566 func (o OntapFileSystemOutput) WeeklyMaintenanceStartTime() pulumi.StringOutput { 567 return o.ApplyT(func(v *OntapFileSystem) pulumi.StringOutput { return v.WeeklyMaintenanceStartTime }).(pulumi.StringOutput) 568 } 569 570 type OntapFileSystemArrayOutput struct{ *pulumi.OutputState } 571 572 func (OntapFileSystemArrayOutput) ElementType() reflect.Type { 573 return reflect.TypeOf((*[]*OntapFileSystem)(nil)).Elem() 574 } 575 576 func (o OntapFileSystemArrayOutput) ToOntapFileSystemArrayOutput() OntapFileSystemArrayOutput { 577 return o 578 } 579 580 func (o OntapFileSystemArrayOutput) ToOntapFileSystemArrayOutputWithContext(ctx context.Context) OntapFileSystemArrayOutput { 581 return o 582 } 583 584 func (o OntapFileSystemArrayOutput) Index(i pulumi.IntInput) OntapFileSystemOutput { 585 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *OntapFileSystem { 586 return vs[0].([]*OntapFileSystem)[vs[1].(int)] 587 }).(OntapFileSystemOutput) 588 } 589 590 type OntapFileSystemMapOutput struct{ *pulumi.OutputState } 591 592 func (OntapFileSystemMapOutput) ElementType() reflect.Type { 593 return reflect.TypeOf((*map[string]*OntapFileSystem)(nil)).Elem() 594 } 595 596 func (o OntapFileSystemMapOutput) ToOntapFileSystemMapOutput() OntapFileSystemMapOutput { 597 return o 598 } 599 600 func (o OntapFileSystemMapOutput) ToOntapFileSystemMapOutputWithContext(ctx context.Context) OntapFileSystemMapOutput { 601 return o 602 } 603 604 func (o OntapFileSystemMapOutput) MapIndex(k pulumi.StringInput) OntapFileSystemOutput { 605 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *OntapFileSystem { 606 return vs[0].(map[string]*OntapFileSystem)[vs[1].(string)] 607 }).(OntapFileSystemOutput) 608 } 609 610 func init() { 611 pulumi.RegisterInputType(reflect.TypeOf((*OntapFileSystemInput)(nil)).Elem(), &OntapFileSystem{}) 612 pulumi.RegisterInputType(reflect.TypeOf((*OntapFileSystemArrayInput)(nil)).Elem(), OntapFileSystemArray{}) 613 pulumi.RegisterInputType(reflect.TypeOf((*OntapFileSystemMapInput)(nil)).Elem(), OntapFileSystemMap{}) 614 pulumi.RegisterOutputType(OntapFileSystemOutput{}) 615 pulumi.RegisterOutputType(OntapFileSystemArrayOutput{}) 616 pulumi.RegisterOutputType(OntapFileSystemMapOutput{}) 617 }