github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/fsx/getOntapFileSystem.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  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    11  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    12  )
    13  
    14  // Retrieve information on FSx ONTAP File System.
    15  //
    16  // ## Example Usage
    17  //
    18  // ### Basic 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.LookupOntapFileSystem(ctx, &fsx.LookupOntapFileSystemArgs{
    34  //				Id: "fs-12345678",
    35  //			}, nil)
    36  //			if err != nil {
    37  //				return err
    38  //			}
    39  //			return nil
    40  //		})
    41  //	}
    42  //
    43  // ```
    44  // <!--End PulumiCodeChooser -->
    45  func LookupOntapFileSystem(ctx *pulumi.Context, args *LookupOntapFileSystemArgs, opts ...pulumi.InvokeOption) (*LookupOntapFileSystemResult, error) {
    46  	opts = internal.PkgInvokeDefaultOpts(opts)
    47  	var rv LookupOntapFileSystemResult
    48  	err := ctx.Invoke("aws:fsx/getOntapFileSystem:getOntapFileSystem", args, &rv, opts...)
    49  	if err != nil {
    50  		return nil, err
    51  	}
    52  	return &rv, nil
    53  }
    54  
    55  // A collection of arguments for invoking getOntapFileSystem.
    56  type LookupOntapFileSystemArgs struct {
    57  	// Identifier of the file system (e.g. `fs-12345678`).
    58  	Id string `pulumi:"id"`
    59  	// The tags associated with the file system.
    60  	Tags map[string]string `pulumi:"tags"`
    61  }
    62  
    63  // A collection of values returned by getOntapFileSystem.
    64  type LookupOntapFileSystemResult struct {
    65  	// Amazon Resource Name of the file system.
    66  	Arn string `pulumi:"arn"`
    67  	// The number of days to retain automatic backups.
    68  	AutomaticBackupRetentionDays int `pulumi:"automaticBackupRetentionDays"`
    69  	// The preferred time (in `HH:MM` format) to take daily automatic backups, in the UTC time zone.
    70  	DailyAutomaticBackupStartTime string `pulumi:"dailyAutomaticBackupStartTime"`
    71  	// The file system deployment type.
    72  	DeploymentType string `pulumi:"deploymentType"`
    73  	// The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system, specifying the number of provisioned IOPS and the provision mode. See Disk IOPS Below.
    74  	DiskIopsConfigurations []GetOntapFileSystemDiskIopsConfiguration `pulumi:"diskIopsConfigurations"`
    75  	// DNS name for the file system (e.g. `fs-12345678.corp.example.com`).
    76  	DnsName string `pulumi:"dnsName"`
    77  	// (Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system exist.
    78  	EndpointIpAddressRange string `pulumi:"endpointIpAddressRange"`
    79  	// The Management and Intercluster FileSystemEndpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See FileSystemEndpoints below.
    80  	Endpoints []GetOntapFileSystemEndpoint `pulumi:"endpoints"`
    81  	// The number of HA pairs for the file system.
    82  	HaPairs int `pulumi:"haPairs"`
    83  	// Identifier of the file system (e.g. `fs-12345678`).
    84  	Id string `pulumi:"id"`
    85  	// ARN for the KMS Key to encrypt the file system at rest.
    86  	KmsKeyId string `pulumi:"kmsKeyId"`
    87  	// The IDs of the elastic network interfaces from which a specific file system is accessible.
    88  	NetworkInterfaceIds []string `pulumi:"networkInterfaceIds"`
    89  	// AWS account identifier that created the file system.
    90  	OwnerId string `pulumi:"ownerId"`
    91  	// Specifies the subnet in which you want the preferred file server to be located.
    92  	PreferredSubnetId string `pulumi:"preferredSubnetId"`
    93  	// (Multi-AZ only) The VPC route tables in which your file system's endpoints exist.
    94  	RouteTableIds []string `pulumi:"routeTableIds"`
    95  	// The storage capacity of the file system in gibibytes (GiB).
    96  	StorageCapacity int `pulumi:"storageCapacity"`
    97  	// The type of storage the file system is using. If set to `SSD`, the file system uses solid state drive storage. If set to `HDD`, the file system uses hard disk drive storage.
    98  	StorageType string `pulumi:"storageType"`
    99  	// Specifies the IDs of the subnets that the file system is accessible from. For the MULTI_AZ_1 file system deployment type, there are two subnet IDs, one for the preferred file server and one for the standby file server. The preferred file server subnet identified in the `preferredSubnetId` property.
   100  	SubnetIds []string `pulumi:"subnetIds"`
   101  	// The tags associated with the file system.
   102  	Tags map[string]string `pulumi:"tags"`
   103  	// The sustained throughput of an Amazon FSx file system in Megabytes per second (MBps). If the file system uses multiple HA pairs this will equal throuthputCapacityPerHaPair x ha_pairs
   104  	ThroughputCapacity int `pulumi:"throughputCapacity"`
   105  	// The sustained throughput of each HA pair for an Amazon FSx file system in Megabytes per second (MBps).
   106  	ThroughputCapacityPerHaPair int `pulumi:"throughputCapacityPerHaPair"`
   107  	// The ID of the primary virtual private cloud (VPC) for the file system.
   108  	VpcId string `pulumi:"vpcId"`
   109  	// The preferred start time (in `D:HH:MM` format) to perform weekly maintenance, in the UTC time zone.
   110  	WeeklyMaintenanceStartTime string `pulumi:"weeklyMaintenanceStartTime"`
   111  }
   112  
   113  func LookupOntapFileSystemOutput(ctx *pulumi.Context, args LookupOntapFileSystemOutputArgs, opts ...pulumi.InvokeOption) LookupOntapFileSystemResultOutput {
   114  	return pulumi.ToOutputWithContext(context.Background(), args).
   115  		ApplyT(func(v interface{}) (LookupOntapFileSystemResult, error) {
   116  			args := v.(LookupOntapFileSystemArgs)
   117  			r, err := LookupOntapFileSystem(ctx, &args, opts...)
   118  			var s LookupOntapFileSystemResult
   119  			if r != nil {
   120  				s = *r
   121  			}
   122  			return s, err
   123  		}).(LookupOntapFileSystemResultOutput)
   124  }
   125  
   126  // A collection of arguments for invoking getOntapFileSystem.
   127  type LookupOntapFileSystemOutputArgs struct {
   128  	// Identifier of the file system (e.g. `fs-12345678`).
   129  	Id pulumi.StringInput `pulumi:"id"`
   130  	// The tags associated with the file system.
   131  	Tags pulumi.StringMapInput `pulumi:"tags"`
   132  }
   133  
   134  func (LookupOntapFileSystemOutputArgs) ElementType() reflect.Type {
   135  	return reflect.TypeOf((*LookupOntapFileSystemArgs)(nil)).Elem()
   136  }
   137  
   138  // A collection of values returned by getOntapFileSystem.
   139  type LookupOntapFileSystemResultOutput struct{ *pulumi.OutputState }
   140  
   141  func (LookupOntapFileSystemResultOutput) ElementType() reflect.Type {
   142  	return reflect.TypeOf((*LookupOntapFileSystemResult)(nil)).Elem()
   143  }
   144  
   145  func (o LookupOntapFileSystemResultOutput) ToLookupOntapFileSystemResultOutput() LookupOntapFileSystemResultOutput {
   146  	return o
   147  }
   148  
   149  func (o LookupOntapFileSystemResultOutput) ToLookupOntapFileSystemResultOutputWithContext(ctx context.Context) LookupOntapFileSystemResultOutput {
   150  	return o
   151  }
   152  
   153  // Amazon Resource Name of the file system.
   154  func (o LookupOntapFileSystemResultOutput) Arn() pulumi.StringOutput {
   155  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.Arn }).(pulumi.StringOutput)
   156  }
   157  
   158  // The number of days to retain automatic backups.
   159  func (o LookupOntapFileSystemResultOutput) AutomaticBackupRetentionDays() pulumi.IntOutput {
   160  	return o.ApplyT(func(v LookupOntapFileSystemResult) int { return v.AutomaticBackupRetentionDays }).(pulumi.IntOutput)
   161  }
   162  
   163  // The preferred time (in `HH:MM` format) to take daily automatic backups, in the UTC time zone.
   164  func (o LookupOntapFileSystemResultOutput) DailyAutomaticBackupStartTime() pulumi.StringOutput {
   165  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.DailyAutomaticBackupStartTime }).(pulumi.StringOutput)
   166  }
   167  
   168  // The file system deployment type.
   169  func (o LookupOntapFileSystemResultOutput) DeploymentType() pulumi.StringOutput {
   170  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.DeploymentType }).(pulumi.StringOutput)
   171  }
   172  
   173  // The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system, specifying the number of provisioned IOPS and the provision mode. See Disk IOPS Below.
   174  func (o LookupOntapFileSystemResultOutput) DiskIopsConfigurations() GetOntapFileSystemDiskIopsConfigurationArrayOutput {
   175  	return o.ApplyT(func(v LookupOntapFileSystemResult) []GetOntapFileSystemDiskIopsConfiguration {
   176  		return v.DiskIopsConfigurations
   177  	}).(GetOntapFileSystemDiskIopsConfigurationArrayOutput)
   178  }
   179  
   180  // DNS name for the file system (e.g. `fs-12345678.corp.example.com`).
   181  func (o LookupOntapFileSystemResultOutput) DnsName() pulumi.StringOutput {
   182  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.DnsName }).(pulumi.StringOutput)
   183  }
   184  
   185  // (Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system exist.
   186  func (o LookupOntapFileSystemResultOutput) EndpointIpAddressRange() pulumi.StringOutput {
   187  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.EndpointIpAddressRange }).(pulumi.StringOutput)
   188  }
   189  
   190  // The Management and Intercluster FileSystemEndpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See FileSystemEndpoints below.
   191  func (o LookupOntapFileSystemResultOutput) Endpoints() GetOntapFileSystemEndpointArrayOutput {
   192  	return o.ApplyT(func(v LookupOntapFileSystemResult) []GetOntapFileSystemEndpoint { return v.Endpoints }).(GetOntapFileSystemEndpointArrayOutput)
   193  }
   194  
   195  // The number of HA pairs for the file system.
   196  func (o LookupOntapFileSystemResultOutput) HaPairs() pulumi.IntOutput {
   197  	return o.ApplyT(func(v LookupOntapFileSystemResult) int { return v.HaPairs }).(pulumi.IntOutput)
   198  }
   199  
   200  // Identifier of the file system (e.g. `fs-12345678`).
   201  func (o LookupOntapFileSystemResultOutput) Id() pulumi.StringOutput {
   202  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.Id }).(pulumi.StringOutput)
   203  }
   204  
   205  // ARN for the KMS Key to encrypt the file system at rest.
   206  func (o LookupOntapFileSystemResultOutput) KmsKeyId() pulumi.StringOutput {
   207  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.KmsKeyId }).(pulumi.StringOutput)
   208  }
   209  
   210  // The IDs of the elastic network interfaces from which a specific file system is accessible.
   211  func (o LookupOntapFileSystemResultOutput) NetworkInterfaceIds() pulumi.StringArrayOutput {
   212  	return o.ApplyT(func(v LookupOntapFileSystemResult) []string { return v.NetworkInterfaceIds }).(pulumi.StringArrayOutput)
   213  }
   214  
   215  // AWS account identifier that created the file system.
   216  func (o LookupOntapFileSystemResultOutput) OwnerId() pulumi.StringOutput {
   217  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.OwnerId }).(pulumi.StringOutput)
   218  }
   219  
   220  // Specifies the subnet in which you want the preferred file server to be located.
   221  func (o LookupOntapFileSystemResultOutput) PreferredSubnetId() pulumi.StringOutput {
   222  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.PreferredSubnetId }).(pulumi.StringOutput)
   223  }
   224  
   225  // (Multi-AZ only) The VPC route tables in which your file system's endpoints exist.
   226  func (o LookupOntapFileSystemResultOutput) RouteTableIds() pulumi.StringArrayOutput {
   227  	return o.ApplyT(func(v LookupOntapFileSystemResult) []string { return v.RouteTableIds }).(pulumi.StringArrayOutput)
   228  }
   229  
   230  // The storage capacity of the file system in gibibytes (GiB).
   231  func (o LookupOntapFileSystemResultOutput) StorageCapacity() pulumi.IntOutput {
   232  	return o.ApplyT(func(v LookupOntapFileSystemResult) int { return v.StorageCapacity }).(pulumi.IntOutput)
   233  }
   234  
   235  // The type of storage the file system is using. If set to `SSD`, the file system uses solid state drive storage. If set to `HDD`, the file system uses hard disk drive storage.
   236  func (o LookupOntapFileSystemResultOutput) StorageType() pulumi.StringOutput {
   237  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.StorageType }).(pulumi.StringOutput)
   238  }
   239  
   240  // Specifies the IDs of the subnets that the file system is accessible from. For the MULTI_AZ_1 file system deployment type, there are two subnet IDs, one for the preferred file server and one for the standby file server. The preferred file server subnet identified in the `preferredSubnetId` property.
   241  func (o LookupOntapFileSystemResultOutput) SubnetIds() pulumi.StringArrayOutput {
   242  	return o.ApplyT(func(v LookupOntapFileSystemResult) []string { return v.SubnetIds }).(pulumi.StringArrayOutput)
   243  }
   244  
   245  // The tags associated with the file system.
   246  func (o LookupOntapFileSystemResultOutput) Tags() pulumi.StringMapOutput {
   247  	return o.ApplyT(func(v LookupOntapFileSystemResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput)
   248  }
   249  
   250  // The sustained throughput of an Amazon FSx file system in Megabytes per second (MBps). If the file system uses multiple HA pairs this will equal throuthputCapacityPerHaPair x ha_pairs
   251  func (o LookupOntapFileSystemResultOutput) ThroughputCapacity() pulumi.IntOutput {
   252  	return o.ApplyT(func(v LookupOntapFileSystemResult) int { return v.ThroughputCapacity }).(pulumi.IntOutput)
   253  }
   254  
   255  // The sustained throughput of each HA pair for an Amazon FSx file system in Megabytes per second (MBps).
   256  func (o LookupOntapFileSystemResultOutput) ThroughputCapacityPerHaPair() pulumi.IntOutput {
   257  	return o.ApplyT(func(v LookupOntapFileSystemResult) int { return v.ThroughputCapacityPerHaPair }).(pulumi.IntOutput)
   258  }
   259  
   260  // The ID of the primary virtual private cloud (VPC) for the file system.
   261  func (o LookupOntapFileSystemResultOutput) VpcId() pulumi.StringOutput {
   262  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.VpcId }).(pulumi.StringOutput)
   263  }
   264  
   265  // The preferred start time (in `D:HH:MM` format) to perform weekly maintenance, in the UTC time zone.
   266  func (o LookupOntapFileSystemResultOutput) WeeklyMaintenanceStartTime() pulumi.StringOutput {
   267  	return o.ApplyT(func(v LookupOntapFileSystemResult) string { return v.WeeklyMaintenanceStartTime }).(pulumi.StringOutput)
   268  }
   269  
   270  func init() {
   271  	pulumi.RegisterOutputType(LookupOntapFileSystemResultOutput{})
   272  }