storagegateway

package
v3.38.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cache

type Cache struct {
	pulumi.CustomResourceState

	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
}

Manages an AWS Storage Gateway cache.

> **NOTE:** The Storage Gateway API provides no method to remove a cache disk. Destroying this resource does not perform any Storage Gateway actions.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewCache(ctx, "example", &storagegateway.CacheArgs{
			DiskId:     pulumi.Any(data.Aws_storagegateway_local_disk.Example.Id),
			GatewayArn: pulumi.Any(aws_storagegateway_gateway.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_cache` can be imported by using the gateway Amazon Resource Name (ARN) and local disk identifier separated with a colon (`:`), e.g.

```sh

$ pulumi import aws:storagegateway/cache:Cache example arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678:pci-0000:03:00.0-scsi-0:0:0:0

```

func GetCache

func GetCache(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CacheState, opts ...pulumi.ResourceOption) (*Cache, error)

GetCache gets an existing Cache resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCache

func NewCache(ctx *pulumi.Context,
	name string, args *CacheArgs, opts ...pulumi.ResourceOption) (*Cache, error)

NewCache registers a new resource with the given unique name, arguments, and options.

func (*Cache) ElementType added in v3.13.0

func (*Cache) ElementType() reflect.Type

func (*Cache) ToCacheOutput added in v3.13.0

func (i *Cache) ToCacheOutput() CacheOutput

func (*Cache) ToCacheOutputWithContext added in v3.13.0

func (i *Cache) ToCacheOutputWithContext(ctx context.Context) CacheOutput

func (*Cache) ToCachePtrOutput added in v3.25.0

func (i *Cache) ToCachePtrOutput() CachePtrOutput

func (*Cache) ToCachePtrOutputWithContext added in v3.25.0

func (i *Cache) ToCachePtrOutputWithContext(ctx context.Context) CachePtrOutput

type CacheArgs

type CacheArgs struct {
	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringInput
}

The set of arguments for constructing a Cache resource.

func (CacheArgs) ElementType

func (CacheArgs) ElementType() reflect.Type

type CacheArray added in v3.25.0

type CacheArray []CacheInput

func (CacheArray) ElementType added in v3.25.0

func (CacheArray) ElementType() reflect.Type

func (CacheArray) ToCacheArrayOutput added in v3.25.0

func (i CacheArray) ToCacheArrayOutput() CacheArrayOutput

func (CacheArray) ToCacheArrayOutputWithContext added in v3.25.0

func (i CacheArray) ToCacheArrayOutputWithContext(ctx context.Context) CacheArrayOutput

type CacheArrayInput added in v3.25.0

type CacheArrayInput interface {
	pulumi.Input

	ToCacheArrayOutput() CacheArrayOutput
	ToCacheArrayOutputWithContext(context.Context) CacheArrayOutput
}

CacheArrayInput is an input type that accepts CacheArray and CacheArrayOutput values. You can construct a concrete instance of `CacheArrayInput` via:

CacheArray{ CacheArgs{...} }

type CacheArrayOutput added in v3.25.0

type CacheArrayOutput struct{ *pulumi.OutputState }

func (CacheArrayOutput) ElementType added in v3.25.0

func (CacheArrayOutput) ElementType() reflect.Type

func (CacheArrayOutput) Index added in v3.25.0

func (CacheArrayOutput) ToCacheArrayOutput added in v3.25.0

func (o CacheArrayOutput) ToCacheArrayOutput() CacheArrayOutput

func (CacheArrayOutput) ToCacheArrayOutputWithContext added in v3.25.0

func (o CacheArrayOutput) ToCacheArrayOutputWithContext(ctx context.Context) CacheArrayOutput

type CacheInput added in v3.13.0

type CacheInput interface {
	pulumi.Input

	ToCacheOutput() CacheOutput
	ToCacheOutputWithContext(ctx context.Context) CacheOutput
}

type CacheMap added in v3.25.0

type CacheMap map[string]CacheInput

func (CacheMap) ElementType added in v3.25.0

func (CacheMap) ElementType() reflect.Type

func (CacheMap) ToCacheMapOutput added in v3.25.0

func (i CacheMap) ToCacheMapOutput() CacheMapOutput

func (CacheMap) ToCacheMapOutputWithContext added in v3.25.0

func (i CacheMap) ToCacheMapOutputWithContext(ctx context.Context) CacheMapOutput

type CacheMapInput added in v3.25.0

type CacheMapInput interface {
	pulumi.Input

	ToCacheMapOutput() CacheMapOutput
	ToCacheMapOutputWithContext(context.Context) CacheMapOutput
}

CacheMapInput is an input type that accepts CacheMap and CacheMapOutput values. You can construct a concrete instance of `CacheMapInput` via:

CacheMap{ "key": CacheArgs{...} }

type CacheMapOutput added in v3.25.0

type CacheMapOutput struct{ *pulumi.OutputState }

func (CacheMapOutput) ElementType added in v3.25.0

func (CacheMapOutput) ElementType() reflect.Type

func (CacheMapOutput) MapIndex added in v3.25.0

func (CacheMapOutput) ToCacheMapOutput added in v3.25.0

func (o CacheMapOutput) ToCacheMapOutput() CacheMapOutput

func (CacheMapOutput) ToCacheMapOutputWithContext added in v3.25.0

func (o CacheMapOutput) ToCacheMapOutputWithContext(ctx context.Context) CacheMapOutput

type CacheOutput added in v3.13.0

type CacheOutput struct {
	*pulumi.OutputState
}

func (CacheOutput) ElementType added in v3.13.0

func (CacheOutput) ElementType() reflect.Type

func (CacheOutput) ToCacheOutput added in v3.13.0

func (o CacheOutput) ToCacheOutput() CacheOutput

func (CacheOutput) ToCacheOutputWithContext added in v3.13.0

func (o CacheOutput) ToCacheOutputWithContext(ctx context.Context) CacheOutput

func (CacheOutput) ToCachePtrOutput added in v3.25.0

func (o CacheOutput) ToCachePtrOutput() CachePtrOutput

func (CacheOutput) ToCachePtrOutputWithContext added in v3.25.0

func (o CacheOutput) ToCachePtrOutputWithContext(ctx context.Context) CachePtrOutput

type CachePtrInput added in v3.25.0

type CachePtrInput interface {
	pulumi.Input

	ToCachePtrOutput() CachePtrOutput
	ToCachePtrOutputWithContext(ctx context.Context) CachePtrOutput
}

type CachePtrOutput added in v3.25.0

type CachePtrOutput struct {
	*pulumi.OutputState
}

func (CachePtrOutput) ElementType added in v3.25.0

func (CachePtrOutput) ElementType() reflect.Type

func (CachePtrOutput) ToCachePtrOutput added in v3.25.0

func (o CachePtrOutput) ToCachePtrOutput() CachePtrOutput

func (CachePtrOutput) ToCachePtrOutputWithContext added in v3.25.0

func (o CachePtrOutput) ToCachePtrOutputWithContext(ctx context.Context) CachePtrOutput

type CacheState

type CacheState struct {
	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringPtrInput
}

func (CacheState) ElementType

func (CacheState) ElementType() reflect.Type

type CachesIscsiVolume

type CachesIscsiVolume struct {
	pulumi.CustomResourceState

	// Volume Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678`.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether mutual CHAP is enabled for the iSCSI target.
	ChapEnabled pulumi.BoolOutput `pulumi:"chapEnabled"`
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
	// Set to `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3.
	KmsEncrypted pulumi.BoolPtrOutput `pulumi:"kmsEncrypted"`
	// The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. Is required when `kmsEncrypted` is set.
	KmsKey pulumi.StringPtrOutput `pulumi:"kmsKey"`
	// Logical disk number.
	LunNumber pulumi.IntOutput `pulumi:"lunNumber"`
	// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The port used to communicate with iSCSI targets.
	NetworkInterfacePort pulumi.IntOutput `pulumi:"networkInterfacePort"`
	// The snapshot ID of the snapshot to restore as the new cached volume. e.g. `snap-1122aabb`.
	SnapshotId pulumi.StringPtrOutput `pulumi:"snapshotId"`
	// The ARN for an existing volume. Specifying this ARN makes the new volume into an exact copy of the specified existing volume's latest recovery point. The `volumeSizeInBytes` value for this new volume must be equal to or larger than the size of the existing volume, in bytes.
	SourceVolumeArn pulumi.StringPtrOutput `pulumi:"sourceVolumeArn"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Target Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/target/iqn.1997-05.com.amazon:TargetName`.
	TargetArn pulumi.StringOutput `pulumi:"targetArn"`
	// The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. The target name must be unique across all volumes of a gateway.
	TargetName pulumi.StringOutput `pulumi:"targetName"`
	// Volume Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678`.
	VolumeArn pulumi.StringOutput `pulumi:"volumeArn"`
	// Volume ID, e.g. `vol-12345678`.
	VolumeId pulumi.StringOutput `pulumi:"volumeId"`
	// The size of the volume in bytes.
	VolumeSizeInBytes pulumi.IntOutput `pulumi:"volumeSizeInBytes"`
}

Manages an AWS Storage Gateway cached iSCSI volume.

> **NOTE:** The gateway must have cache added (e.g. via the `storagegateway.Cache` resource) before creating volumes otherwise the Storage Gateway API will return an error.

> **NOTE:** The gateway must have an upload buffer added (e.g. via the `storagegateway.UploadBuffer` resource) before the volume is operational to clients, however the Storage Gateway API will allow volume creation without error in that case and return volume status as `UPLOAD BUFFER NOT CONFIGURED`.

## Example Usage

> **NOTE:** These examples are referencing the `storagegateway.Cache` resource `gatewayArn` attribute to ensure this provider properly adds cache before creating the volume. If you are not using this method, you may need to declare an expicit dependency (e.g. via `dependsOn = [aws_storagegateway_cache.example]`) to ensure proper ordering. ### Create Empty Cached iSCSI Volume

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewCachesIscsiVolume(ctx, "example", &storagegateway.CachesIscsiVolumeArgs{
			GatewayArn:         pulumi.Any(aws_storagegateway_cache.Example.Gateway_arn),
			NetworkInterfaceId: pulumi.Any(aws_instance.Example.Private_ip),
			TargetName:         pulumi.String("example"),
			VolumeSizeInBytes:  pulumi.Int(5368709120),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create Cached iSCSI Volume From Snapshot

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewCachesIscsiVolume(ctx, "example", &storagegateway.CachesIscsiVolumeArgs{
			GatewayArn:         pulumi.Any(aws_storagegateway_cache.Example.Gateway_arn),
			NetworkInterfaceId: pulumi.Any(aws_instance.Example.Private_ip),
			SnapshotId:         pulumi.Any(aws_ebs_snapshot.Example.Id),
			TargetName:         pulumi.String("example"),
			VolumeSizeInBytes:  pulumi.Int(aws_ebs_snapshot.Example.Volume_size * 1024 * 1024 * 1024),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create Cached iSCSI Volume From Source Volume

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewCachesIscsiVolume(ctx, "example", &storagegateway.CachesIscsiVolumeArgs{
			GatewayArn:         pulumi.Any(aws_storagegateway_cache.Example.Gateway_arn),
			NetworkInterfaceId: pulumi.Any(aws_instance.Example.Private_ip),
			SourceVolumeArn:    pulumi.Any(aws_storagegateway_cached_iscsi_volume.Existing.Arn),
			TargetName:         pulumi.String("example"),
			VolumeSizeInBytes:  pulumi.Any(aws_storagegateway_cached_iscsi_volume.Existing.Volume_size_in_bytes),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_cached_iscsi_volume` can be imported by using the volume Amazon Resource Name (ARN), e.g.

```sh

$ pulumi import aws:storagegateway/cachesIscsiVolume:CachesIscsiVolume example arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678

```

func GetCachesIscsiVolume

func GetCachesIscsiVolume(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CachesIscsiVolumeState, opts ...pulumi.ResourceOption) (*CachesIscsiVolume, error)

GetCachesIscsiVolume gets an existing CachesIscsiVolume resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCachesIscsiVolume

func NewCachesIscsiVolume(ctx *pulumi.Context,
	name string, args *CachesIscsiVolumeArgs, opts ...pulumi.ResourceOption) (*CachesIscsiVolume, error)

NewCachesIscsiVolume registers a new resource with the given unique name, arguments, and options.

func (*CachesIscsiVolume) ElementType added in v3.13.0

func (*CachesIscsiVolume) ElementType() reflect.Type

func (*CachesIscsiVolume) ToCachesIscsiVolumeOutput added in v3.13.0

func (i *CachesIscsiVolume) ToCachesIscsiVolumeOutput() CachesIscsiVolumeOutput

func (*CachesIscsiVolume) ToCachesIscsiVolumeOutputWithContext added in v3.13.0

func (i *CachesIscsiVolume) ToCachesIscsiVolumeOutputWithContext(ctx context.Context) CachesIscsiVolumeOutput

func (*CachesIscsiVolume) ToCachesIscsiVolumePtrOutput added in v3.25.0

func (i *CachesIscsiVolume) ToCachesIscsiVolumePtrOutput() CachesIscsiVolumePtrOutput

func (*CachesIscsiVolume) ToCachesIscsiVolumePtrOutputWithContext added in v3.25.0

func (i *CachesIscsiVolume) ToCachesIscsiVolumePtrOutputWithContext(ctx context.Context) CachesIscsiVolumePtrOutput

type CachesIscsiVolumeArgs

type CachesIscsiVolumeArgs struct {
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringInput
	// Set to `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3.
	KmsEncrypted pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. Is required when `kmsEncrypted` is set.
	KmsKey pulumi.StringPtrInput
	// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted.
	NetworkInterfaceId pulumi.StringInput
	// The snapshot ID of the snapshot to restore as the new cached volume. e.g. `snap-1122aabb`.
	SnapshotId pulumi.StringPtrInput
	// The ARN for an existing volume. Specifying this ARN makes the new volume into an exact copy of the specified existing volume's latest recovery point. The `volumeSizeInBytes` value for this new volume must be equal to or larger than the size of the existing volume, in bytes.
	SourceVolumeArn pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. The target name must be unique across all volumes of a gateway.
	TargetName pulumi.StringInput
	// The size of the volume in bytes.
	VolumeSizeInBytes pulumi.IntInput
}

The set of arguments for constructing a CachesIscsiVolume resource.

func (CachesIscsiVolumeArgs) ElementType

func (CachesIscsiVolumeArgs) ElementType() reflect.Type

type CachesIscsiVolumeArray added in v3.25.0

type CachesIscsiVolumeArray []CachesIscsiVolumeInput

func (CachesIscsiVolumeArray) ElementType added in v3.25.0

func (CachesIscsiVolumeArray) ElementType() reflect.Type

func (CachesIscsiVolumeArray) ToCachesIscsiVolumeArrayOutput added in v3.25.0

func (i CachesIscsiVolumeArray) ToCachesIscsiVolumeArrayOutput() CachesIscsiVolumeArrayOutput

func (CachesIscsiVolumeArray) ToCachesIscsiVolumeArrayOutputWithContext added in v3.25.0

func (i CachesIscsiVolumeArray) ToCachesIscsiVolumeArrayOutputWithContext(ctx context.Context) CachesIscsiVolumeArrayOutput

type CachesIscsiVolumeArrayInput added in v3.25.0

type CachesIscsiVolumeArrayInput interface {
	pulumi.Input

	ToCachesIscsiVolumeArrayOutput() CachesIscsiVolumeArrayOutput
	ToCachesIscsiVolumeArrayOutputWithContext(context.Context) CachesIscsiVolumeArrayOutput
}

CachesIscsiVolumeArrayInput is an input type that accepts CachesIscsiVolumeArray and CachesIscsiVolumeArrayOutput values. You can construct a concrete instance of `CachesIscsiVolumeArrayInput` via:

CachesIscsiVolumeArray{ CachesIscsiVolumeArgs{...} }

type CachesIscsiVolumeArrayOutput added in v3.25.0

type CachesIscsiVolumeArrayOutput struct{ *pulumi.OutputState }

func (CachesIscsiVolumeArrayOutput) ElementType added in v3.25.0

func (CachesIscsiVolumeArrayOutput) Index added in v3.25.0

func (CachesIscsiVolumeArrayOutput) ToCachesIscsiVolumeArrayOutput added in v3.25.0

func (o CachesIscsiVolumeArrayOutput) ToCachesIscsiVolumeArrayOutput() CachesIscsiVolumeArrayOutput

func (CachesIscsiVolumeArrayOutput) ToCachesIscsiVolumeArrayOutputWithContext added in v3.25.0

func (o CachesIscsiVolumeArrayOutput) ToCachesIscsiVolumeArrayOutputWithContext(ctx context.Context) CachesIscsiVolumeArrayOutput

type CachesIscsiVolumeInput added in v3.13.0

type CachesIscsiVolumeInput interface {
	pulumi.Input

	ToCachesIscsiVolumeOutput() CachesIscsiVolumeOutput
	ToCachesIscsiVolumeOutputWithContext(ctx context.Context) CachesIscsiVolumeOutput
}

type CachesIscsiVolumeMap added in v3.25.0

type CachesIscsiVolumeMap map[string]CachesIscsiVolumeInput

func (CachesIscsiVolumeMap) ElementType added in v3.25.0

func (CachesIscsiVolumeMap) ElementType() reflect.Type

func (CachesIscsiVolumeMap) ToCachesIscsiVolumeMapOutput added in v3.25.0

func (i CachesIscsiVolumeMap) ToCachesIscsiVolumeMapOutput() CachesIscsiVolumeMapOutput

func (CachesIscsiVolumeMap) ToCachesIscsiVolumeMapOutputWithContext added in v3.25.0

func (i CachesIscsiVolumeMap) ToCachesIscsiVolumeMapOutputWithContext(ctx context.Context) CachesIscsiVolumeMapOutput

type CachesIscsiVolumeMapInput added in v3.25.0

type CachesIscsiVolumeMapInput interface {
	pulumi.Input

	ToCachesIscsiVolumeMapOutput() CachesIscsiVolumeMapOutput
	ToCachesIscsiVolumeMapOutputWithContext(context.Context) CachesIscsiVolumeMapOutput
}

CachesIscsiVolumeMapInput is an input type that accepts CachesIscsiVolumeMap and CachesIscsiVolumeMapOutput values. You can construct a concrete instance of `CachesIscsiVolumeMapInput` via:

CachesIscsiVolumeMap{ "key": CachesIscsiVolumeArgs{...} }

type CachesIscsiVolumeMapOutput added in v3.25.0

type CachesIscsiVolumeMapOutput struct{ *pulumi.OutputState }

func (CachesIscsiVolumeMapOutput) ElementType added in v3.25.0

func (CachesIscsiVolumeMapOutput) ElementType() reflect.Type

func (CachesIscsiVolumeMapOutput) MapIndex added in v3.25.0

func (CachesIscsiVolumeMapOutput) ToCachesIscsiVolumeMapOutput added in v3.25.0

func (o CachesIscsiVolumeMapOutput) ToCachesIscsiVolumeMapOutput() CachesIscsiVolumeMapOutput

func (CachesIscsiVolumeMapOutput) ToCachesIscsiVolumeMapOutputWithContext added in v3.25.0

func (o CachesIscsiVolumeMapOutput) ToCachesIscsiVolumeMapOutputWithContext(ctx context.Context) CachesIscsiVolumeMapOutput

type CachesIscsiVolumeOutput added in v3.13.0

type CachesIscsiVolumeOutput struct {
	*pulumi.OutputState
}

func (CachesIscsiVolumeOutput) ElementType added in v3.13.0

func (CachesIscsiVolumeOutput) ElementType() reflect.Type

func (CachesIscsiVolumeOutput) ToCachesIscsiVolumeOutput added in v3.13.0

func (o CachesIscsiVolumeOutput) ToCachesIscsiVolumeOutput() CachesIscsiVolumeOutput

func (CachesIscsiVolumeOutput) ToCachesIscsiVolumeOutputWithContext added in v3.13.0

func (o CachesIscsiVolumeOutput) ToCachesIscsiVolumeOutputWithContext(ctx context.Context) CachesIscsiVolumeOutput

func (CachesIscsiVolumeOutput) ToCachesIscsiVolumePtrOutput added in v3.25.0

func (o CachesIscsiVolumeOutput) ToCachesIscsiVolumePtrOutput() CachesIscsiVolumePtrOutput

func (CachesIscsiVolumeOutput) ToCachesIscsiVolumePtrOutputWithContext added in v3.25.0

func (o CachesIscsiVolumeOutput) ToCachesIscsiVolumePtrOutputWithContext(ctx context.Context) CachesIscsiVolumePtrOutput

type CachesIscsiVolumePtrInput added in v3.25.0

type CachesIscsiVolumePtrInput interface {
	pulumi.Input

	ToCachesIscsiVolumePtrOutput() CachesIscsiVolumePtrOutput
	ToCachesIscsiVolumePtrOutputWithContext(ctx context.Context) CachesIscsiVolumePtrOutput
}

type CachesIscsiVolumePtrOutput added in v3.25.0

type CachesIscsiVolumePtrOutput struct {
	*pulumi.OutputState
}

func (CachesIscsiVolumePtrOutput) ElementType added in v3.25.0

func (CachesIscsiVolumePtrOutput) ElementType() reflect.Type

func (CachesIscsiVolumePtrOutput) ToCachesIscsiVolumePtrOutput added in v3.25.0

func (o CachesIscsiVolumePtrOutput) ToCachesIscsiVolumePtrOutput() CachesIscsiVolumePtrOutput

func (CachesIscsiVolumePtrOutput) ToCachesIscsiVolumePtrOutputWithContext added in v3.25.0

func (o CachesIscsiVolumePtrOutput) ToCachesIscsiVolumePtrOutputWithContext(ctx context.Context) CachesIscsiVolumePtrOutput

type CachesIscsiVolumeState

type CachesIscsiVolumeState struct {
	// Volume Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678`.
	Arn pulumi.StringPtrInput
	// Whether mutual CHAP is enabled for the iSCSI target.
	ChapEnabled pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringPtrInput
	// Set to `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3.
	KmsEncrypted pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. Is required when `kmsEncrypted` is set.
	KmsKey pulumi.StringPtrInput
	// Logical disk number.
	LunNumber pulumi.IntPtrInput
	// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted.
	NetworkInterfaceId pulumi.StringPtrInput
	// The port used to communicate with iSCSI targets.
	NetworkInterfacePort pulumi.IntPtrInput
	// The snapshot ID of the snapshot to restore as the new cached volume. e.g. `snap-1122aabb`.
	SnapshotId pulumi.StringPtrInput
	// The ARN for an existing volume. Specifying this ARN makes the new volume into an exact copy of the specified existing volume's latest recovery point. The `volumeSizeInBytes` value for this new volume must be equal to or larger than the size of the existing volume, in bytes.
	SourceVolumeArn pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// Target Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/target/iqn.1997-05.com.amazon:TargetName`.
	TargetArn pulumi.StringPtrInput
	// The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. The target name must be unique across all volumes of a gateway.
	TargetName pulumi.StringPtrInput
	// Volume Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678`.
	VolumeArn pulumi.StringPtrInput
	// Volume ID, e.g. `vol-12345678`.
	VolumeId pulumi.StringPtrInput
	// The size of the volume in bytes.
	VolumeSizeInBytes pulumi.IntPtrInput
}

func (CachesIscsiVolumeState) ElementType

func (CachesIscsiVolumeState) ElementType() reflect.Type

type Gateway

type Gateway struct {
	pulumi.CustomResourceState

	// Gateway activation key during resource creation. Conflicts with `gatewayIpAddress`. Additional information is available in the [Storage Gateway User Guide](https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html).
	ActivationKey pulumi.StringOutput `pulumi:"activationKey"`
	// Amazon Resource Name (ARN) of the gateway.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The average download bandwidth rate limit in bits per second. This is supported for the `CACHED`, `STORED`, and `VTL` gateway types.
	AverageDownloadRateLimitInBitsPerSec pulumi.IntPtrOutput `pulumi:"averageDownloadRateLimitInBitsPerSec"`
	// The average upload bandwidth rate limit in bits per second. This is supported for the `CACHED`, `STORED`, and `VTL` gateway types.
	AverageUploadRateLimitInBitsPerSec pulumi.IntPtrOutput `pulumi:"averageUploadRateLimitInBitsPerSec"`
	// The Amazon Resource Name (ARN) of the Amazon CloudWatch log group to use to monitor and log events in the gateway.
	CloudwatchLogGroupArn pulumi.StringPtrOutput `pulumi:"cloudwatchLogGroupArn"`
	// The ID of the Amazon EC2 instance that was used to launch the gateway.
	Ec2InstanceId pulumi.StringOutput `pulumi:"ec2InstanceId"`
	// The type of endpoint for your gateway.
	EndpointType pulumi.StringOutput `pulumi:"endpointType"`
	// Identifier of the gateway.
	GatewayId pulumi.StringOutput `pulumi:"gatewayId"`
	// Gateway IP address to retrieve activation key during resource creation. Conflicts with `activationKey`. Gateway must be accessible on port 80 from where this provider is running. Additional information is available in the [Storage Gateway User Guide](https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html).
	GatewayIpAddress pulumi.StringOutput `pulumi:"gatewayIpAddress"`
	// Name of the gateway.
	GatewayName pulumi.StringOutput `pulumi:"gatewayName"`
	// An array that contains descriptions of the gateway network interfaces. See Gateway Network Interface.
	GatewayNetworkInterfaces GatewayGatewayNetworkInterfaceArrayOutput `pulumi:"gatewayNetworkInterfaces"`
	// Time zone for the gateway. The time zone is of the format "GMT", "GMT-hr:mm", or "GMT+hr:mm". For example, `GMT-4:00` indicates the time is 4 hours behind GMT. The time zone is used, for example, for scheduling snapshots and your gateway's maintenance schedule.
	GatewayTimezone pulumi.StringOutput `pulumi:"gatewayTimezone"`
	// Type of the gateway. The default value is `STORED`. Valid values: `CACHED`, `FILE_S3`, `STORED`, `VTL`.
	GatewayType pulumi.StringPtrOutput `pulumi:"gatewayType"`
	// VPC endpoint address to be used when activating your gateway. This should be used when your instance is in a private subnet. Requires HTTP access from client computer running Pulumi. More info on what ports are required by your VPC Endpoint Security group in [Activating a Gateway in a Virtual Private Cloud](https://docs.aws.amazon.com/storagegateway/latest/userguide/gateway-private-link.html).
	GatewayVpcEndpoint pulumi.StringPtrOutput `pulumi:"gatewayVpcEndpoint"`
	// The type of hypervisor environment used by the host.
	HostEnvironment pulumi.StringOutput `pulumi:"hostEnvironment"`
	// Type of medium changer to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `STK-L700`, `AWS-Gateway-VTL`, `IBM-03584L32-0402`.
	MediumChangerType pulumi.StringPtrOutput `pulumi:"mediumChangerType"`
	// Nested argument with Active Directory domain join information for Server Message Block (SMB) file shares. Only valid for `FILE_S3` gateway type. Must be set before creating `ActiveDirectory` authentication SMB file shares. More details below.
	SmbActiveDirectorySettings GatewaySmbActiveDirectorySettingsPtrOutput `pulumi:"smbActiveDirectorySettings"`
	// Specifies whether the shares on this gateway appear when listing shares.
	SmbFileShareVisibility pulumi.BoolPtrOutput `pulumi:"smbFileShareVisibility"`
	// Guest password for Server Message Block (SMB) file shares. Only valid for `FILE_S3` gateway type. Must be set before creating `GuestAccess` authentication SMB file shares. This provider can only detect drift of the existence of a guest password, not its actual value from the gateway. This provider can however update the password with changing the argument.
	SmbGuestPassword pulumi.StringPtrOutput `pulumi:"smbGuestPassword"`
	// Specifies the type of security strategy. Valid values are: `ClientSpecified`, `MandatorySigning`, and `MandatoryEncryption`. See [Setting a Security Level for Your Gateway](https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-gateway-file.html#security-strategy) for more information.
	SmbSecurityStrategy pulumi.StringOutput `pulumi:"smbSecurityStrategy"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Type of tape drive to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `IBM-ULT3580-TD5`.
	TapeDriveType pulumi.StringPtrOutput `pulumi:"tapeDriveType"`
}

Manages an AWS Storage Gateway file, tape, or volume gateway in the provider region.

> NOTE: The Storage Gateway API requires the gateway to be connected to properly return information after activation. If you are receiving `The specified gateway is not connected` errors during resource creation (gateway activation), ensure your gateway instance meets the [Storage Gateway requirements](https://docs.aws.amazon.com/storagegateway/latest/userguide/Requirements.html).

## Example Usage ### File Gateway

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewGateway(ctx, "example", &storagegateway.GatewayArgs{
			GatewayIpAddress: pulumi.String("1.2.3.4"),
			GatewayName:      pulumi.String("example"),
			GatewayTimezone:  pulumi.String("GMT"),
			GatewayType:      pulumi.String("FILE_S3"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Tape Gateway

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewGateway(ctx, "example", &storagegateway.GatewayArgs{
			GatewayIpAddress:  pulumi.String("1.2.3.4"),
			GatewayName:       pulumi.String("example"),
			GatewayTimezone:   pulumi.String("GMT"),
			GatewayType:       pulumi.String("VTL"),
			MediumChangerType: pulumi.String("AWS-Gateway-VTL"),
			TapeDriveType:     pulumi.String("IBM-ULT3580-TD5"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Volume Gateway (Cached)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewGateway(ctx, "example", &storagegateway.GatewayArgs{
			GatewayIpAddress: pulumi.String("1.2.3.4"),
			GatewayName:      pulumi.String("example"),
			GatewayTimezone:  pulumi.String("GMT"),
			GatewayType:      pulumi.String("CACHED"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Volume Gateway (Stored)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewGateway(ctx, "example", &storagegateway.GatewayArgs{
			GatewayIpAddress: pulumi.String("1.2.3.4"),
			GatewayName:      pulumi.String("example"),
			GatewayTimezone:  pulumi.String("GMT"),
			GatewayType:      pulumi.String("STORED"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_gateway` can be imported by using the gateway Amazon Resource Name (ARN), e.g.

```sh

$ pulumi import aws:storagegateway/gateway:Gateway example arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678

```

<<<<<<< HEAD Certain resource arguments, like `gateway_ip_address` do not have a Storage Gateway API method for reading the information after creation, either omit the argument from the provider configuration or use `ignoreChanges` to hide the difference. ======= Certain resource arguments, like `gateway_ip_address` do not have a Storage Gateway API method for reading the information after creation, either omit the argument from the provider configuration or use `ignore_changes` to hide the difference, e.g. terraform resource "aws_storagegateway_gateway" "example" {

... other configuration ...

gateway_ip_address = aws_instance.sgw.private_ip

There is no Storage Gateway API for reading gateway_ip_address

lifecycle {

ignore_changes = ["gateway_ip_address"]

} } >>>>>>> v3.33.0

func GetGateway

func GetGateway(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GatewayState, opts ...pulumi.ResourceOption) (*Gateway, error)

GetGateway gets an existing Gateway resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGateway

func NewGateway(ctx *pulumi.Context,
	name string, args *GatewayArgs, opts ...pulumi.ResourceOption) (*Gateway, error)

NewGateway registers a new resource with the given unique name, arguments, and options.

func (*Gateway) ElementType added in v3.13.0

func (*Gateway) ElementType() reflect.Type

func (*Gateway) ToGatewayOutput added in v3.13.0

func (i *Gateway) ToGatewayOutput() GatewayOutput

func (*Gateway) ToGatewayOutputWithContext added in v3.13.0

func (i *Gateway) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput

func (*Gateway) ToGatewayPtrOutput added in v3.25.0

func (i *Gateway) ToGatewayPtrOutput() GatewayPtrOutput

func (*Gateway) ToGatewayPtrOutputWithContext added in v3.25.0

func (i *Gateway) ToGatewayPtrOutputWithContext(ctx context.Context) GatewayPtrOutput

type GatewayArgs

type GatewayArgs struct {
	// Gateway activation key during resource creation. Conflicts with `gatewayIpAddress`. Additional information is available in the [Storage Gateway User Guide](https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html).
	ActivationKey pulumi.StringPtrInput
	// The average download bandwidth rate limit in bits per second. This is supported for the `CACHED`, `STORED`, and `VTL` gateway types.
	AverageDownloadRateLimitInBitsPerSec pulumi.IntPtrInput
	// The average upload bandwidth rate limit in bits per second. This is supported for the `CACHED`, `STORED`, and `VTL` gateway types.
	AverageUploadRateLimitInBitsPerSec pulumi.IntPtrInput
	// The Amazon Resource Name (ARN) of the Amazon CloudWatch log group to use to monitor and log events in the gateway.
	CloudwatchLogGroupArn pulumi.StringPtrInput
	// Gateway IP address to retrieve activation key during resource creation. Conflicts with `activationKey`. Gateway must be accessible on port 80 from where this provider is running. Additional information is available in the [Storage Gateway User Guide](https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html).
	GatewayIpAddress pulumi.StringPtrInput
	// Name of the gateway.
	GatewayName pulumi.StringInput
	// Time zone for the gateway. The time zone is of the format "GMT", "GMT-hr:mm", or "GMT+hr:mm". For example, `GMT-4:00` indicates the time is 4 hours behind GMT. The time zone is used, for example, for scheduling snapshots and your gateway's maintenance schedule.
	GatewayTimezone pulumi.StringInput
	// Type of the gateway. The default value is `STORED`. Valid values: `CACHED`, `FILE_S3`, `STORED`, `VTL`.
	GatewayType pulumi.StringPtrInput
	// VPC endpoint address to be used when activating your gateway. This should be used when your instance is in a private subnet. Requires HTTP access from client computer running Pulumi. More info on what ports are required by your VPC Endpoint Security group in [Activating a Gateway in a Virtual Private Cloud](https://docs.aws.amazon.com/storagegateway/latest/userguide/gateway-private-link.html).
	GatewayVpcEndpoint pulumi.StringPtrInput
	// Type of medium changer to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `STK-L700`, `AWS-Gateway-VTL`, `IBM-03584L32-0402`.
	MediumChangerType pulumi.StringPtrInput
	// Nested argument with Active Directory domain join information for Server Message Block (SMB) file shares. Only valid for `FILE_S3` gateway type. Must be set before creating `ActiveDirectory` authentication SMB file shares. More details below.
	SmbActiveDirectorySettings GatewaySmbActiveDirectorySettingsPtrInput
	// Specifies whether the shares on this gateway appear when listing shares.
	SmbFileShareVisibility pulumi.BoolPtrInput
	// Guest password for Server Message Block (SMB) file shares. Only valid for `FILE_S3` gateway type. Must be set before creating `GuestAccess` authentication SMB file shares. This provider can only detect drift of the existence of a guest password, not its actual value from the gateway. This provider can however update the password with changing the argument.
	SmbGuestPassword pulumi.StringPtrInput
	// Specifies the type of security strategy. Valid values are: `ClientSpecified`, `MandatorySigning`, and `MandatoryEncryption`. See [Setting a Security Level for Your Gateway](https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-gateway-file.html#security-strategy) for more information.
	SmbSecurityStrategy pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// Type of tape drive to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `IBM-ULT3580-TD5`.
	TapeDriveType pulumi.StringPtrInput
}

The set of arguments for constructing a Gateway resource.

func (GatewayArgs) ElementType

func (GatewayArgs) ElementType() reflect.Type

type GatewayArray added in v3.25.0

type GatewayArray []GatewayInput

func (GatewayArray) ElementType added in v3.25.0

func (GatewayArray) ElementType() reflect.Type

func (GatewayArray) ToGatewayArrayOutput added in v3.25.0

func (i GatewayArray) ToGatewayArrayOutput() GatewayArrayOutput

func (GatewayArray) ToGatewayArrayOutputWithContext added in v3.25.0

func (i GatewayArray) ToGatewayArrayOutputWithContext(ctx context.Context) GatewayArrayOutput

type GatewayArrayInput added in v3.25.0

type GatewayArrayInput interface {
	pulumi.Input

	ToGatewayArrayOutput() GatewayArrayOutput
	ToGatewayArrayOutputWithContext(context.Context) GatewayArrayOutput
}

GatewayArrayInput is an input type that accepts GatewayArray and GatewayArrayOutput values. You can construct a concrete instance of `GatewayArrayInput` via:

GatewayArray{ GatewayArgs{...} }

type GatewayArrayOutput added in v3.25.0

type GatewayArrayOutput struct{ *pulumi.OutputState }

func (GatewayArrayOutput) ElementType added in v3.25.0

func (GatewayArrayOutput) ElementType() reflect.Type

func (GatewayArrayOutput) Index added in v3.25.0

func (GatewayArrayOutput) ToGatewayArrayOutput added in v3.25.0

func (o GatewayArrayOutput) ToGatewayArrayOutput() GatewayArrayOutput

func (GatewayArrayOutput) ToGatewayArrayOutputWithContext added in v3.25.0

func (o GatewayArrayOutput) ToGatewayArrayOutputWithContext(ctx context.Context) GatewayArrayOutput

type GatewayGatewayNetworkInterface added in v3.19.0

type GatewayGatewayNetworkInterface struct {
	// The Internet Protocol version 4 (IPv4) address of the interface.
	Ipv4Address *string `pulumi:"ipv4Address"`
}

type GatewayGatewayNetworkInterfaceArgs added in v3.19.0

type GatewayGatewayNetworkInterfaceArgs struct {
	// The Internet Protocol version 4 (IPv4) address of the interface.
	Ipv4Address pulumi.StringPtrInput `pulumi:"ipv4Address"`
}

func (GatewayGatewayNetworkInterfaceArgs) ElementType added in v3.19.0

func (GatewayGatewayNetworkInterfaceArgs) ToGatewayGatewayNetworkInterfaceOutput added in v3.19.0

func (i GatewayGatewayNetworkInterfaceArgs) ToGatewayGatewayNetworkInterfaceOutput() GatewayGatewayNetworkInterfaceOutput

func (GatewayGatewayNetworkInterfaceArgs) ToGatewayGatewayNetworkInterfaceOutputWithContext added in v3.19.0

func (i GatewayGatewayNetworkInterfaceArgs) ToGatewayGatewayNetworkInterfaceOutputWithContext(ctx context.Context) GatewayGatewayNetworkInterfaceOutput

type GatewayGatewayNetworkInterfaceArray added in v3.19.0

type GatewayGatewayNetworkInterfaceArray []GatewayGatewayNetworkInterfaceInput

func (GatewayGatewayNetworkInterfaceArray) ElementType added in v3.19.0

func (GatewayGatewayNetworkInterfaceArray) ToGatewayGatewayNetworkInterfaceArrayOutput added in v3.19.0

func (i GatewayGatewayNetworkInterfaceArray) ToGatewayGatewayNetworkInterfaceArrayOutput() GatewayGatewayNetworkInterfaceArrayOutput

func (GatewayGatewayNetworkInterfaceArray) ToGatewayGatewayNetworkInterfaceArrayOutputWithContext added in v3.19.0

func (i GatewayGatewayNetworkInterfaceArray) ToGatewayGatewayNetworkInterfaceArrayOutputWithContext(ctx context.Context) GatewayGatewayNetworkInterfaceArrayOutput

type GatewayGatewayNetworkInterfaceArrayInput added in v3.19.0

type GatewayGatewayNetworkInterfaceArrayInput interface {
	pulumi.Input

	ToGatewayGatewayNetworkInterfaceArrayOutput() GatewayGatewayNetworkInterfaceArrayOutput
	ToGatewayGatewayNetworkInterfaceArrayOutputWithContext(context.Context) GatewayGatewayNetworkInterfaceArrayOutput
}

GatewayGatewayNetworkInterfaceArrayInput is an input type that accepts GatewayGatewayNetworkInterfaceArray and GatewayGatewayNetworkInterfaceArrayOutput values. You can construct a concrete instance of `GatewayGatewayNetworkInterfaceArrayInput` via:

GatewayGatewayNetworkInterfaceArray{ GatewayGatewayNetworkInterfaceArgs{...} }

type GatewayGatewayNetworkInterfaceArrayOutput added in v3.19.0

type GatewayGatewayNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }

func (GatewayGatewayNetworkInterfaceArrayOutput) ElementType added in v3.19.0

func (GatewayGatewayNetworkInterfaceArrayOutput) Index added in v3.19.0

func (GatewayGatewayNetworkInterfaceArrayOutput) ToGatewayGatewayNetworkInterfaceArrayOutput added in v3.19.0

func (o GatewayGatewayNetworkInterfaceArrayOutput) ToGatewayGatewayNetworkInterfaceArrayOutput() GatewayGatewayNetworkInterfaceArrayOutput

func (GatewayGatewayNetworkInterfaceArrayOutput) ToGatewayGatewayNetworkInterfaceArrayOutputWithContext added in v3.19.0

func (o GatewayGatewayNetworkInterfaceArrayOutput) ToGatewayGatewayNetworkInterfaceArrayOutputWithContext(ctx context.Context) GatewayGatewayNetworkInterfaceArrayOutput

type GatewayGatewayNetworkInterfaceInput added in v3.19.0

type GatewayGatewayNetworkInterfaceInput interface {
	pulumi.Input

	ToGatewayGatewayNetworkInterfaceOutput() GatewayGatewayNetworkInterfaceOutput
	ToGatewayGatewayNetworkInterfaceOutputWithContext(context.Context) GatewayGatewayNetworkInterfaceOutput
}

GatewayGatewayNetworkInterfaceInput is an input type that accepts GatewayGatewayNetworkInterfaceArgs and GatewayGatewayNetworkInterfaceOutput values. You can construct a concrete instance of `GatewayGatewayNetworkInterfaceInput` via:

GatewayGatewayNetworkInterfaceArgs{...}

type GatewayGatewayNetworkInterfaceOutput added in v3.19.0

type GatewayGatewayNetworkInterfaceOutput struct{ *pulumi.OutputState }

func (GatewayGatewayNetworkInterfaceOutput) ElementType added in v3.19.0

func (GatewayGatewayNetworkInterfaceOutput) Ipv4Address added in v3.19.0

The Internet Protocol version 4 (IPv4) address of the interface.

func (GatewayGatewayNetworkInterfaceOutput) ToGatewayGatewayNetworkInterfaceOutput added in v3.19.0

func (o GatewayGatewayNetworkInterfaceOutput) ToGatewayGatewayNetworkInterfaceOutput() GatewayGatewayNetworkInterfaceOutput

func (GatewayGatewayNetworkInterfaceOutput) ToGatewayGatewayNetworkInterfaceOutputWithContext added in v3.19.0

func (o GatewayGatewayNetworkInterfaceOutput) ToGatewayGatewayNetworkInterfaceOutputWithContext(ctx context.Context) GatewayGatewayNetworkInterfaceOutput

type GatewayInput added in v3.13.0

type GatewayInput interface {
	pulumi.Input

	ToGatewayOutput() GatewayOutput
	ToGatewayOutputWithContext(ctx context.Context) GatewayOutput
}

type GatewayMap added in v3.25.0

type GatewayMap map[string]GatewayInput

func (GatewayMap) ElementType added in v3.25.0

func (GatewayMap) ElementType() reflect.Type

func (GatewayMap) ToGatewayMapOutput added in v3.25.0

func (i GatewayMap) ToGatewayMapOutput() GatewayMapOutput

func (GatewayMap) ToGatewayMapOutputWithContext added in v3.25.0

func (i GatewayMap) ToGatewayMapOutputWithContext(ctx context.Context) GatewayMapOutput

type GatewayMapInput added in v3.25.0

type GatewayMapInput interface {
	pulumi.Input

	ToGatewayMapOutput() GatewayMapOutput
	ToGatewayMapOutputWithContext(context.Context) GatewayMapOutput
}

GatewayMapInput is an input type that accepts GatewayMap and GatewayMapOutput values. You can construct a concrete instance of `GatewayMapInput` via:

GatewayMap{ "key": GatewayArgs{...} }

type GatewayMapOutput added in v3.25.0

type GatewayMapOutput struct{ *pulumi.OutputState }

func (GatewayMapOutput) ElementType added in v3.25.0

func (GatewayMapOutput) ElementType() reflect.Type

func (GatewayMapOutput) MapIndex added in v3.25.0

func (GatewayMapOutput) ToGatewayMapOutput added in v3.25.0

func (o GatewayMapOutput) ToGatewayMapOutput() GatewayMapOutput

func (GatewayMapOutput) ToGatewayMapOutputWithContext added in v3.25.0

func (o GatewayMapOutput) ToGatewayMapOutputWithContext(ctx context.Context) GatewayMapOutput

type GatewayOutput added in v3.13.0

type GatewayOutput struct {
	*pulumi.OutputState
}

func (GatewayOutput) ElementType added in v3.13.0

func (GatewayOutput) ElementType() reflect.Type

func (GatewayOutput) ToGatewayOutput added in v3.13.0

func (o GatewayOutput) ToGatewayOutput() GatewayOutput

func (GatewayOutput) ToGatewayOutputWithContext added in v3.13.0

func (o GatewayOutput) ToGatewayOutputWithContext(ctx context.Context) GatewayOutput

func (GatewayOutput) ToGatewayPtrOutput added in v3.25.0

func (o GatewayOutput) ToGatewayPtrOutput() GatewayPtrOutput

func (GatewayOutput) ToGatewayPtrOutputWithContext added in v3.25.0

func (o GatewayOutput) ToGatewayPtrOutputWithContext(ctx context.Context) GatewayPtrOutput

type GatewayPtrInput added in v3.25.0

type GatewayPtrInput interface {
	pulumi.Input

	ToGatewayPtrOutput() GatewayPtrOutput
	ToGatewayPtrOutputWithContext(ctx context.Context) GatewayPtrOutput
}

type GatewayPtrOutput added in v3.25.0

type GatewayPtrOutput struct {
	*pulumi.OutputState
}

func (GatewayPtrOutput) ElementType added in v3.25.0

func (GatewayPtrOutput) ElementType() reflect.Type

func (GatewayPtrOutput) ToGatewayPtrOutput added in v3.25.0

func (o GatewayPtrOutput) ToGatewayPtrOutput() GatewayPtrOutput

func (GatewayPtrOutput) ToGatewayPtrOutputWithContext added in v3.25.0

func (o GatewayPtrOutput) ToGatewayPtrOutputWithContext(ctx context.Context) GatewayPtrOutput

type GatewaySmbActiveDirectorySettings

type GatewaySmbActiveDirectorySettings struct {
	ActiveDirectoryStatus *string `pulumi:"activeDirectoryStatus"`
	// List of IPv4 addresses, NetBIOS names, or host names of your domain server.
	// If you need to specify the port number include it after the colon (“:”). For example, `mydc.mydomain.com:389`.
	DomainControllers []string `pulumi:"domainControllers"`
	// The name of the domain that you want the gateway to join.
	DomainName string `pulumi:"domainName"`
	// The organizational unit (OU) is a container in an Active Directory that can hold users, groups,
	// computers, and other OUs and this parameter specifies the OU that the gateway will join within the AD domain.
	OrganizationalUnit *string `pulumi:"organizationalUnit"`
	// The password of the user who has permission to add the gateway to the Active Directory domain.
	Password string `pulumi:"password"`
	// Specifies the time in seconds, in which the JoinDomain operation must complete. The default is `20` seconds.
	TimeoutInSeconds *int `pulumi:"timeoutInSeconds"`
	// The user name of user who has permission to add the gateway to the Active Directory domain.
	Username string `pulumi:"username"`
}

type GatewaySmbActiveDirectorySettingsArgs

type GatewaySmbActiveDirectorySettingsArgs struct {
	ActiveDirectoryStatus pulumi.StringPtrInput `pulumi:"activeDirectoryStatus"`
	// List of IPv4 addresses, NetBIOS names, or host names of your domain server.
	// If you need to specify the port number include it after the colon (“:”). For example, `mydc.mydomain.com:389`.
	DomainControllers pulumi.StringArrayInput `pulumi:"domainControllers"`
	// The name of the domain that you want the gateway to join.
	DomainName pulumi.StringInput `pulumi:"domainName"`
	// The organizational unit (OU) is a container in an Active Directory that can hold users, groups,
	// computers, and other OUs and this parameter specifies the OU that the gateway will join within the AD domain.
	OrganizationalUnit pulumi.StringPtrInput `pulumi:"organizationalUnit"`
	// The password of the user who has permission to add the gateway to the Active Directory domain.
	Password pulumi.StringInput `pulumi:"password"`
	// Specifies the time in seconds, in which the JoinDomain operation must complete. The default is `20` seconds.
	TimeoutInSeconds pulumi.IntPtrInput `pulumi:"timeoutInSeconds"`
	// The user name of user who has permission to add the gateway to the Active Directory domain.
	Username pulumi.StringInput `pulumi:"username"`
}

func (GatewaySmbActiveDirectorySettingsArgs) ElementType

func (GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsOutput

func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsOutput() GatewaySmbActiveDirectorySettingsOutput

func (GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsOutputWithContext

func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsOutput

func (GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsPtrOutput

func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput

func (GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext

func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput

type GatewaySmbActiveDirectorySettingsInput

type GatewaySmbActiveDirectorySettingsInput interface {
	pulumi.Input

	ToGatewaySmbActiveDirectorySettingsOutput() GatewaySmbActiveDirectorySettingsOutput
	ToGatewaySmbActiveDirectorySettingsOutputWithContext(context.Context) GatewaySmbActiveDirectorySettingsOutput
}

GatewaySmbActiveDirectorySettingsInput is an input type that accepts GatewaySmbActiveDirectorySettingsArgs and GatewaySmbActiveDirectorySettingsOutput values. You can construct a concrete instance of `GatewaySmbActiveDirectorySettingsInput` via:

GatewaySmbActiveDirectorySettingsArgs{...}

type GatewaySmbActiveDirectorySettingsOutput

type GatewaySmbActiveDirectorySettingsOutput struct{ *pulumi.OutputState }

func (GatewaySmbActiveDirectorySettingsOutput) ActiveDirectoryStatus added in v3.19.0

func (GatewaySmbActiveDirectorySettingsOutput) DomainControllers added in v3.19.0

List of IPv4 addresses, NetBIOS names, or host names of your domain server. If you need to specify the port number include it after the colon (“:”). For example, `mydc.mydomain.com:389`.

func (GatewaySmbActiveDirectorySettingsOutput) DomainName

The name of the domain that you want the gateway to join.

func (GatewaySmbActiveDirectorySettingsOutput) ElementType

func (GatewaySmbActiveDirectorySettingsOutput) OrganizationalUnit added in v3.19.0

The organizational unit (OU) is a container in an Active Directory that can hold users, groups, computers, and other OUs and this parameter specifies the OU that the gateway will join within the AD domain.

func (GatewaySmbActiveDirectorySettingsOutput) Password

The password of the user who has permission to add the gateway to the Active Directory domain.

func (GatewaySmbActiveDirectorySettingsOutput) TimeoutInSeconds added in v3.19.0

Specifies the time in seconds, in which the JoinDomain operation must complete. The default is `20` seconds.

func (GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsOutput

func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsOutput() GatewaySmbActiveDirectorySettingsOutput

func (GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsOutputWithContext

func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsOutput

func (GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput

func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput

func (GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext

func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput

func (GatewaySmbActiveDirectorySettingsOutput) Username

The user name of user who has permission to add the gateway to the Active Directory domain.

type GatewaySmbActiveDirectorySettingsPtrInput

type GatewaySmbActiveDirectorySettingsPtrInput interface {
	pulumi.Input

	ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput
	ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(context.Context) GatewaySmbActiveDirectorySettingsPtrOutput
}

GatewaySmbActiveDirectorySettingsPtrInput is an input type that accepts GatewaySmbActiveDirectorySettingsArgs, GatewaySmbActiveDirectorySettingsPtr and GatewaySmbActiveDirectorySettingsPtrOutput values. You can construct a concrete instance of `GatewaySmbActiveDirectorySettingsPtrInput` via:

        GatewaySmbActiveDirectorySettingsArgs{...}

or:

        nil

type GatewaySmbActiveDirectorySettingsPtrOutput

type GatewaySmbActiveDirectorySettingsPtrOutput struct{ *pulumi.OutputState }

func (GatewaySmbActiveDirectorySettingsPtrOutput) ActiveDirectoryStatus added in v3.19.0

func (GatewaySmbActiveDirectorySettingsPtrOutput) DomainControllers added in v3.19.0

List of IPv4 addresses, NetBIOS names, or host names of your domain server. If you need to specify the port number include it after the colon (“:”). For example, `mydc.mydomain.com:389`.

func (GatewaySmbActiveDirectorySettingsPtrOutput) DomainName

The name of the domain that you want the gateway to join.

func (GatewaySmbActiveDirectorySettingsPtrOutput) Elem

func (GatewaySmbActiveDirectorySettingsPtrOutput) ElementType

func (GatewaySmbActiveDirectorySettingsPtrOutput) OrganizationalUnit added in v3.19.0

The organizational unit (OU) is a container in an Active Directory that can hold users, groups, computers, and other OUs and this parameter specifies the OU that the gateway will join within the AD domain.

func (GatewaySmbActiveDirectorySettingsPtrOutput) Password

The password of the user who has permission to add the gateway to the Active Directory domain.

func (GatewaySmbActiveDirectorySettingsPtrOutput) TimeoutInSeconds added in v3.19.0

Specifies the time in seconds, in which the JoinDomain operation must complete. The default is `20` seconds.

func (GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput

func (o GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput

func (GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext

func (o GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput

func (GatewaySmbActiveDirectorySettingsPtrOutput) Username

The user name of user who has permission to add the gateway to the Active Directory domain.

type GatewayState

type GatewayState struct {
	// Gateway activation key during resource creation. Conflicts with `gatewayIpAddress`. Additional information is available in the [Storage Gateway User Guide](https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html).
	ActivationKey pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the gateway.
	Arn pulumi.StringPtrInput
	// The average download bandwidth rate limit in bits per second. This is supported for the `CACHED`, `STORED`, and `VTL` gateway types.
	AverageDownloadRateLimitInBitsPerSec pulumi.IntPtrInput
	// The average upload bandwidth rate limit in bits per second. This is supported for the `CACHED`, `STORED`, and `VTL` gateway types.
	AverageUploadRateLimitInBitsPerSec pulumi.IntPtrInput
	// The Amazon Resource Name (ARN) of the Amazon CloudWatch log group to use to monitor and log events in the gateway.
	CloudwatchLogGroupArn pulumi.StringPtrInput
	// The ID of the Amazon EC2 instance that was used to launch the gateway.
	Ec2InstanceId pulumi.StringPtrInput
	// The type of endpoint for your gateway.
	EndpointType pulumi.StringPtrInput
	// Identifier of the gateway.
	GatewayId pulumi.StringPtrInput
	// Gateway IP address to retrieve activation key during resource creation. Conflicts with `activationKey`. Gateway must be accessible on port 80 from where this provider is running. Additional information is available in the [Storage Gateway User Guide](https://docs.aws.amazon.com/storagegateway/latest/userguide/get-activation-key.html).
	GatewayIpAddress pulumi.StringPtrInput
	// Name of the gateway.
	GatewayName pulumi.StringPtrInput
	// An array that contains descriptions of the gateway network interfaces. See Gateway Network Interface.
	GatewayNetworkInterfaces GatewayGatewayNetworkInterfaceArrayInput
	// Time zone for the gateway. The time zone is of the format "GMT", "GMT-hr:mm", or "GMT+hr:mm". For example, `GMT-4:00` indicates the time is 4 hours behind GMT. The time zone is used, for example, for scheduling snapshots and your gateway's maintenance schedule.
	GatewayTimezone pulumi.StringPtrInput
	// Type of the gateway. The default value is `STORED`. Valid values: `CACHED`, `FILE_S3`, `STORED`, `VTL`.
	GatewayType pulumi.StringPtrInput
	// VPC endpoint address to be used when activating your gateway. This should be used when your instance is in a private subnet. Requires HTTP access from client computer running Pulumi. More info on what ports are required by your VPC Endpoint Security group in [Activating a Gateway in a Virtual Private Cloud](https://docs.aws.amazon.com/storagegateway/latest/userguide/gateway-private-link.html).
	GatewayVpcEndpoint pulumi.StringPtrInput
	// The type of hypervisor environment used by the host.
	HostEnvironment pulumi.StringPtrInput
	// Type of medium changer to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `STK-L700`, `AWS-Gateway-VTL`, `IBM-03584L32-0402`.
	MediumChangerType pulumi.StringPtrInput
	// Nested argument with Active Directory domain join information for Server Message Block (SMB) file shares. Only valid for `FILE_S3` gateway type. Must be set before creating `ActiveDirectory` authentication SMB file shares. More details below.
	SmbActiveDirectorySettings GatewaySmbActiveDirectorySettingsPtrInput
	// Specifies whether the shares on this gateway appear when listing shares.
	SmbFileShareVisibility pulumi.BoolPtrInput
	// Guest password for Server Message Block (SMB) file shares. Only valid for `FILE_S3` gateway type. Must be set before creating `GuestAccess` authentication SMB file shares. This provider can only detect drift of the existence of a guest password, not its actual value from the gateway. This provider can however update the password with changing the argument.
	SmbGuestPassword pulumi.StringPtrInput
	// Specifies the type of security strategy. Valid values are: `ClientSpecified`, `MandatorySigning`, and `MandatoryEncryption`. See [Setting a Security Level for Your Gateway](https://docs.aws.amazon.com/storagegateway/latest/userguide/managing-gateway-file.html#security-strategy) for more information.
	SmbSecurityStrategy pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// Type of tape drive to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `IBM-ULT3580-TD5`.
	TapeDriveType pulumi.StringPtrInput
}

func (GatewayState) ElementType

func (GatewayState) ElementType() reflect.Type

type GetLocalDiskArgs

type GetLocalDiskArgs struct {
	// The device node of the local disk to retrieve. For example, `/dev/sdb`.
	DiskNode *string `pulumi:"diskNode"`
	// The device path of the local disk to retrieve. For example, `/dev/xvdb` or `/dev/nvme1n1`.
	DiskPath *string `pulumi:"diskPath"`
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn string `pulumi:"gatewayArn"`
}

A collection of arguments for invoking getLocalDisk.

type GetLocalDiskResult

type GetLocalDiskResult struct {
	// The disk identifier. e.g. `pci-0000:03:00.0-scsi-0:0:0:0`
	DiskId     string `pulumi:"diskId"`
	DiskNode   string `pulumi:"diskNode"`
	DiskPath   string `pulumi:"diskPath"`
	GatewayArn string `pulumi:"gatewayArn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getLocalDisk.

func GetLocalDisk

func GetLocalDisk(ctx *pulumi.Context, args *GetLocalDiskArgs, opts ...pulumi.InvokeOption) (*GetLocalDiskResult, error)

Retrieve information about a Storage Gateway local disk. The disk identifier is useful for adding the disk as a cache or upload buffer to a gateway.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_volume_attachment.Test.Device_name
		_, err := storagegateway.GetLocalDisk(ctx, &storagegateway.GetLocalDiskArgs{
			DiskPath:   &opt0,
			GatewayArn: aws_storagegateway_gateway.Test.Arn,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type NfsFileShare

type NfsFileShare struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the NFS File Share.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Refresh cache information. see Cache Attributes for more details.
	CacheAttributes NfsFileShareCacheAttributesPtrOutput `pulumi:"cacheAttributes"`
	// The list of clients that are allowed to access the file gateway. The list must contain either valid IP addresses or valid CIDR blocks. Set to `["0.0.0.0/0"]` to not limit access. Minimum 1 item. Maximum 100 items.
	ClientLists pulumi.StringArrayOutput `pulumi:"clientLists"`
	// The default storage class for objects put into an Amazon S3 bucket by the file gateway. Defaults to `S3_STANDARD`. Valid values: `S3_STANDARD`, `S3_STANDARD_IA`, `S3_ONEZONE_IA`.
	DefaultStorageClass pulumi.StringPtrOutput `pulumi:"defaultStorageClass"`
	// The name of the file share. Must be set if an S3 prefix name is set in `locationArn`.
	FileShareName pulumi.StringOutput `pulumi:"fileShareName"`
	// ID of the NFS File Share.
	FileshareId pulumi.StringOutput `pulumi:"fileshareId"`
	// Amazon Resource Name (ARN) of the file gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
	// Boolean value that enables guessing of the MIME type for uploaded objects based on file extensions. Defaults to `true`.
	GuessMimeTypeEnabled pulumi.BoolPtrOutput `pulumi:"guessMimeTypeEnabled"`
	// Boolean value if `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Defaults to `false`.
	KmsEncrypted pulumi.BoolPtrOutput `pulumi:"kmsEncrypted"`
	// Amazon Resource Name (ARN) for KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is true.
	KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"`
	// The ARN of the backed storage used for storing file data.
	LocationArn pulumi.StringOutput `pulumi:"locationArn"`
	// Nested argument with file share default values. More information below. see NFS File Share Defaults for more details.
	NfsFileShareDefaults NfsFileShareNfsFileShareDefaultsPtrOutput `pulumi:"nfsFileShareDefaults"`
	// The notification policy of the file share. For more information see the [AWS Documentation](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CreateNFSFileShare.html#StorageGateway-CreateNFSFileShare-request-NotificationPolicy). Default value is `{}`.
	NotificationPolicy pulumi.StringPtrOutput `pulumi:"notificationPolicy"`
	// Access Control List permission for S3 bucket objects. Defaults to `private`.
	ObjectAcl pulumi.StringPtrOutput `pulumi:"objectAcl"`
	// File share path used by the NFS client to identify the mount point.
	Path pulumi.StringOutput `pulumi:"path"`
	// Boolean to indicate write status of file share. File share does not accept writes if `true`. Defaults to `false`.
	ReadOnly pulumi.BoolPtrOutput `pulumi:"readOnly"`
	// Boolean who pays the cost of the request and the data download from the Amazon S3 bucket. Set this value to `true` if you want the requester to pay instead of the bucket owner. Defaults to `false`.
	RequesterPays pulumi.BoolPtrOutput `pulumi:"requesterPays"`
	// The ARN of the AWS Identity and Access Management (IAM) role that a file gateway assumes when it accesses the underlying storage.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// Maps a user to anonymous user. Defaults to `RootSquash`. Valid values: `RootSquash` (only root is mapped to anonymous user), `NoSquash` (no one is mapped to anonymous user), `AllSquash` (everyone is mapped to anonymous user)
	Squash pulumi.StringPtrOutput `pulumi:"squash"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an AWS Storage Gateway NFS File Share.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewNfsFileShare(ctx, "example", &storagegateway.NfsFileShareArgs{
			ClientLists: pulumi.StringArray{
				pulumi.String("0.0.0.0/0"),
			},
			GatewayArn:  pulumi.Any(aws_storagegateway_gateway.Example.Arn),
			LocationArn: pulumi.Any(aws_s3_bucket.Example.Arn),
			RoleArn:     pulumi.Any(aws_iam_role.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_nfs_file_share` can be imported by using the NFS File Share Amazon Resource Name (ARN), e.g.

```sh

$ pulumi import aws:storagegateway/nfsFileShare:NfsFileShare example arn:aws:storagegateway:us-east-1:123456789012:share/share-12345678

```

func GetNfsFileShare

func GetNfsFileShare(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NfsFileShareState, opts ...pulumi.ResourceOption) (*NfsFileShare, error)

GetNfsFileShare gets an existing NfsFileShare resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNfsFileShare

func NewNfsFileShare(ctx *pulumi.Context,
	name string, args *NfsFileShareArgs, opts ...pulumi.ResourceOption) (*NfsFileShare, error)

NewNfsFileShare registers a new resource with the given unique name, arguments, and options.

func (*NfsFileShare) ElementType added in v3.13.0

func (*NfsFileShare) ElementType() reflect.Type

func (*NfsFileShare) ToNfsFileShareOutput added in v3.13.0

func (i *NfsFileShare) ToNfsFileShareOutput() NfsFileShareOutput

func (*NfsFileShare) ToNfsFileShareOutputWithContext added in v3.13.0

func (i *NfsFileShare) ToNfsFileShareOutputWithContext(ctx context.Context) NfsFileShareOutput

func (*NfsFileShare) ToNfsFileSharePtrOutput added in v3.25.0

func (i *NfsFileShare) ToNfsFileSharePtrOutput() NfsFileSharePtrOutput

func (*NfsFileShare) ToNfsFileSharePtrOutputWithContext added in v3.25.0

func (i *NfsFileShare) ToNfsFileSharePtrOutputWithContext(ctx context.Context) NfsFileSharePtrOutput

type NfsFileShareArgs

type NfsFileShareArgs struct {
	// Refresh cache information. see Cache Attributes for more details.
	CacheAttributes NfsFileShareCacheAttributesPtrInput
	// The list of clients that are allowed to access the file gateway. The list must contain either valid IP addresses or valid CIDR blocks. Set to `["0.0.0.0/0"]` to not limit access. Minimum 1 item. Maximum 100 items.
	ClientLists pulumi.StringArrayInput
	// The default storage class for objects put into an Amazon S3 bucket by the file gateway. Defaults to `S3_STANDARD`. Valid values: `S3_STANDARD`, `S3_STANDARD_IA`, `S3_ONEZONE_IA`.
	DefaultStorageClass pulumi.StringPtrInput
	// The name of the file share. Must be set if an S3 prefix name is set in `locationArn`.
	FileShareName pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the file gateway.
	GatewayArn pulumi.StringInput
	// Boolean value that enables guessing of the MIME type for uploaded objects based on file extensions. Defaults to `true`.
	GuessMimeTypeEnabled pulumi.BoolPtrInput
	// Boolean value if `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Defaults to `false`.
	KmsEncrypted pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) for KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is true.
	KmsKeyArn pulumi.StringPtrInput
	// The ARN of the backed storage used for storing file data.
	LocationArn pulumi.StringInput
	// Nested argument with file share default values. More information below. see NFS File Share Defaults for more details.
	NfsFileShareDefaults NfsFileShareNfsFileShareDefaultsPtrInput
	// The notification policy of the file share. For more information see the [AWS Documentation](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CreateNFSFileShare.html#StorageGateway-CreateNFSFileShare-request-NotificationPolicy). Default value is `{}`.
	NotificationPolicy pulumi.StringPtrInput
	// Access Control List permission for S3 bucket objects. Defaults to `private`.
	ObjectAcl pulumi.StringPtrInput
	// Boolean to indicate write status of file share. File share does not accept writes if `true`. Defaults to `false`.
	ReadOnly pulumi.BoolPtrInput
	// Boolean who pays the cost of the request and the data download from the Amazon S3 bucket. Set this value to `true` if you want the requester to pay instead of the bucket owner. Defaults to `false`.
	RequesterPays pulumi.BoolPtrInput
	// The ARN of the AWS Identity and Access Management (IAM) role that a file gateway assumes when it accesses the underlying storage.
	RoleArn pulumi.StringInput
	// Maps a user to anonymous user. Defaults to `RootSquash`. Valid values: `RootSquash` (only root is mapped to anonymous user), `NoSquash` (no one is mapped to anonymous user), `AllSquash` (everyone is mapped to anonymous user)
	Squash pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a NfsFileShare resource.

func (NfsFileShareArgs) ElementType

func (NfsFileShareArgs) ElementType() reflect.Type

type NfsFileShareArray added in v3.25.0

type NfsFileShareArray []NfsFileShareInput

func (NfsFileShareArray) ElementType added in v3.25.0

func (NfsFileShareArray) ElementType() reflect.Type

func (NfsFileShareArray) ToNfsFileShareArrayOutput added in v3.25.0

func (i NfsFileShareArray) ToNfsFileShareArrayOutput() NfsFileShareArrayOutput

func (NfsFileShareArray) ToNfsFileShareArrayOutputWithContext added in v3.25.0

func (i NfsFileShareArray) ToNfsFileShareArrayOutputWithContext(ctx context.Context) NfsFileShareArrayOutput

type NfsFileShareArrayInput added in v3.25.0

type NfsFileShareArrayInput interface {
	pulumi.Input

	ToNfsFileShareArrayOutput() NfsFileShareArrayOutput
	ToNfsFileShareArrayOutputWithContext(context.Context) NfsFileShareArrayOutput
}

NfsFileShareArrayInput is an input type that accepts NfsFileShareArray and NfsFileShareArrayOutput values. You can construct a concrete instance of `NfsFileShareArrayInput` via:

NfsFileShareArray{ NfsFileShareArgs{...} }

type NfsFileShareArrayOutput added in v3.25.0

type NfsFileShareArrayOutput struct{ *pulumi.OutputState }

func (NfsFileShareArrayOutput) ElementType added in v3.25.0

func (NfsFileShareArrayOutput) ElementType() reflect.Type

func (NfsFileShareArrayOutput) Index added in v3.25.0

func (NfsFileShareArrayOutput) ToNfsFileShareArrayOutput added in v3.25.0

func (o NfsFileShareArrayOutput) ToNfsFileShareArrayOutput() NfsFileShareArrayOutput

func (NfsFileShareArrayOutput) ToNfsFileShareArrayOutputWithContext added in v3.25.0

func (o NfsFileShareArrayOutput) ToNfsFileShareArrayOutputWithContext(ctx context.Context) NfsFileShareArrayOutput

type NfsFileShareCacheAttributes added in v3.3.0

type NfsFileShareCacheAttributes struct {
	// Refreshes a file share's cache by using Time To Live (TTL).
	// TTL is the length of time since the last refresh after which access to the directory would cause the file gateway
	// to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)
	CacheStaleTimeoutInSeconds *int `pulumi:"cacheStaleTimeoutInSeconds"`
}

type NfsFileShareCacheAttributesArgs added in v3.3.0

type NfsFileShareCacheAttributesArgs struct {
	// Refreshes a file share's cache by using Time To Live (TTL).
	// TTL is the length of time since the last refresh after which access to the directory would cause the file gateway
	// to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)
	CacheStaleTimeoutInSeconds pulumi.IntPtrInput `pulumi:"cacheStaleTimeoutInSeconds"`
}

func (NfsFileShareCacheAttributesArgs) ElementType added in v3.3.0

func (NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesOutput added in v3.3.0

func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesOutput() NfsFileShareCacheAttributesOutput

func (NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesOutputWithContext added in v3.3.0

func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesOutput

func (NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesPtrOutput added in v3.3.0

func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput

func (NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesPtrOutputWithContext added in v3.3.0

func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesPtrOutput

type NfsFileShareCacheAttributesInput added in v3.3.0

type NfsFileShareCacheAttributesInput interface {
	pulumi.Input

	ToNfsFileShareCacheAttributesOutput() NfsFileShareCacheAttributesOutput
	ToNfsFileShareCacheAttributesOutputWithContext(context.Context) NfsFileShareCacheAttributesOutput
}

NfsFileShareCacheAttributesInput is an input type that accepts NfsFileShareCacheAttributesArgs and NfsFileShareCacheAttributesOutput values. You can construct a concrete instance of `NfsFileShareCacheAttributesInput` via:

NfsFileShareCacheAttributesArgs{...}

type NfsFileShareCacheAttributesOutput added in v3.3.0

type NfsFileShareCacheAttributesOutput struct{ *pulumi.OutputState }

func (NfsFileShareCacheAttributesOutput) CacheStaleTimeoutInSeconds added in v3.3.0

func (o NfsFileShareCacheAttributesOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput

Refreshes a file share's cache by using Time To Live (TTL). TTL is the length of time since the last refresh after which access to the directory would cause the file gateway to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)

func (NfsFileShareCacheAttributesOutput) ElementType added in v3.3.0

func (NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesOutput added in v3.3.0

func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesOutput() NfsFileShareCacheAttributesOutput

func (NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesOutputWithContext added in v3.3.0

func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesOutput

func (NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesPtrOutput added in v3.3.0

func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput

func (NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesPtrOutputWithContext added in v3.3.0

func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesPtrOutput

type NfsFileShareCacheAttributesPtrInput added in v3.3.0

type NfsFileShareCacheAttributesPtrInput interface {
	pulumi.Input

	ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput
	ToNfsFileShareCacheAttributesPtrOutputWithContext(context.Context) NfsFileShareCacheAttributesPtrOutput
}

NfsFileShareCacheAttributesPtrInput is an input type that accepts NfsFileShareCacheAttributesArgs, NfsFileShareCacheAttributesPtr and NfsFileShareCacheAttributesPtrOutput values. You can construct a concrete instance of `NfsFileShareCacheAttributesPtrInput` via:

        NfsFileShareCacheAttributesArgs{...}

or:

        nil

func NfsFileShareCacheAttributesPtr added in v3.3.0

type NfsFileShareCacheAttributesPtrOutput added in v3.3.0

type NfsFileShareCacheAttributesPtrOutput struct{ *pulumi.OutputState }

func (NfsFileShareCacheAttributesPtrOutput) CacheStaleTimeoutInSeconds added in v3.3.0

func (o NfsFileShareCacheAttributesPtrOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput

Refreshes a file share's cache by using Time To Live (TTL). TTL is the length of time since the last refresh after which access to the directory would cause the file gateway to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)

func (NfsFileShareCacheAttributesPtrOutput) Elem added in v3.3.0

func (NfsFileShareCacheAttributesPtrOutput) ElementType added in v3.3.0

func (NfsFileShareCacheAttributesPtrOutput) ToNfsFileShareCacheAttributesPtrOutput added in v3.3.0

func (o NfsFileShareCacheAttributesPtrOutput) ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput

func (NfsFileShareCacheAttributesPtrOutput) ToNfsFileShareCacheAttributesPtrOutputWithContext added in v3.3.0

func (o NfsFileShareCacheAttributesPtrOutput) ToNfsFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesPtrOutput

type NfsFileShareInput added in v3.13.0

type NfsFileShareInput interface {
	pulumi.Input

	ToNfsFileShareOutput() NfsFileShareOutput
	ToNfsFileShareOutputWithContext(ctx context.Context) NfsFileShareOutput
}

type NfsFileShareMap added in v3.25.0

type NfsFileShareMap map[string]NfsFileShareInput

func (NfsFileShareMap) ElementType added in v3.25.0

func (NfsFileShareMap) ElementType() reflect.Type

func (NfsFileShareMap) ToNfsFileShareMapOutput added in v3.25.0

func (i NfsFileShareMap) ToNfsFileShareMapOutput() NfsFileShareMapOutput

func (NfsFileShareMap) ToNfsFileShareMapOutputWithContext added in v3.25.0

func (i NfsFileShareMap) ToNfsFileShareMapOutputWithContext(ctx context.Context) NfsFileShareMapOutput

type NfsFileShareMapInput added in v3.25.0

type NfsFileShareMapInput interface {
	pulumi.Input

	ToNfsFileShareMapOutput() NfsFileShareMapOutput
	ToNfsFileShareMapOutputWithContext(context.Context) NfsFileShareMapOutput
}

NfsFileShareMapInput is an input type that accepts NfsFileShareMap and NfsFileShareMapOutput values. You can construct a concrete instance of `NfsFileShareMapInput` via:

NfsFileShareMap{ "key": NfsFileShareArgs{...} }

type NfsFileShareMapOutput added in v3.25.0

type NfsFileShareMapOutput struct{ *pulumi.OutputState }

func (NfsFileShareMapOutput) ElementType added in v3.25.0

func (NfsFileShareMapOutput) ElementType() reflect.Type

func (NfsFileShareMapOutput) MapIndex added in v3.25.0

func (NfsFileShareMapOutput) ToNfsFileShareMapOutput added in v3.25.0

func (o NfsFileShareMapOutput) ToNfsFileShareMapOutput() NfsFileShareMapOutput

func (NfsFileShareMapOutput) ToNfsFileShareMapOutputWithContext added in v3.25.0

func (o NfsFileShareMapOutput) ToNfsFileShareMapOutputWithContext(ctx context.Context) NfsFileShareMapOutput

type NfsFileShareNfsFileShareDefaults

type NfsFileShareNfsFileShareDefaults struct {
	// The Unix directory mode in the string form "nnnn". Defaults to `"0777"`.
	DirectoryMode *string `pulumi:"directoryMode"`
	// The Unix file mode in the string form "nnnn". Defaults to `"0666"`.
	FileMode *string `pulumi:"fileMode"`
	// The default group ID for the file share (unless the files have another group ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.
	GroupId *string `pulumi:"groupId"`
	// The default owner ID for the file share (unless the files have another owner ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.
	OwnerId *string `pulumi:"ownerId"`
}

type NfsFileShareNfsFileShareDefaultsArgs

type NfsFileShareNfsFileShareDefaultsArgs struct {
	// The Unix directory mode in the string form "nnnn". Defaults to `"0777"`.
	DirectoryMode pulumi.StringPtrInput `pulumi:"directoryMode"`
	// The Unix file mode in the string form "nnnn". Defaults to `"0666"`.
	FileMode pulumi.StringPtrInput `pulumi:"fileMode"`
	// The default group ID for the file share (unless the files have another group ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.
	GroupId pulumi.StringPtrInput `pulumi:"groupId"`
	// The default owner ID for the file share (unless the files have another owner ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.
	OwnerId pulumi.StringPtrInput `pulumi:"ownerId"`
}

func (NfsFileShareNfsFileShareDefaultsArgs) ElementType

func (NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsOutput

func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsOutput() NfsFileShareNfsFileShareDefaultsOutput

func (NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsOutputWithContext

func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsOutput

func (NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsPtrOutput

func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput

func (NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext

func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput

type NfsFileShareNfsFileShareDefaultsInput

type NfsFileShareNfsFileShareDefaultsInput interface {
	pulumi.Input

	ToNfsFileShareNfsFileShareDefaultsOutput() NfsFileShareNfsFileShareDefaultsOutput
	ToNfsFileShareNfsFileShareDefaultsOutputWithContext(context.Context) NfsFileShareNfsFileShareDefaultsOutput
}

NfsFileShareNfsFileShareDefaultsInput is an input type that accepts NfsFileShareNfsFileShareDefaultsArgs and NfsFileShareNfsFileShareDefaultsOutput values. You can construct a concrete instance of `NfsFileShareNfsFileShareDefaultsInput` via:

NfsFileShareNfsFileShareDefaultsArgs{...}

type NfsFileShareNfsFileShareDefaultsOutput

type NfsFileShareNfsFileShareDefaultsOutput struct{ *pulumi.OutputState }

func (NfsFileShareNfsFileShareDefaultsOutput) DirectoryMode

The Unix directory mode in the string form "nnnn". Defaults to `"0777"`.

func (NfsFileShareNfsFileShareDefaultsOutput) ElementType

func (NfsFileShareNfsFileShareDefaultsOutput) FileMode

The Unix file mode in the string form "nnnn". Defaults to `"0666"`.

func (NfsFileShareNfsFileShareDefaultsOutput) GroupId

The default group ID for the file share (unless the files have another group ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.

func (NfsFileShareNfsFileShareDefaultsOutput) OwnerId

The default owner ID for the file share (unless the files have another owner ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.

func (NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsOutput

func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsOutput() NfsFileShareNfsFileShareDefaultsOutput

func (NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsOutputWithContext

func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsOutput

func (NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutput

func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput

func (NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext

func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput

type NfsFileShareNfsFileShareDefaultsPtrInput

type NfsFileShareNfsFileShareDefaultsPtrInput interface {
	pulumi.Input

	ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput
	ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput
}

NfsFileShareNfsFileShareDefaultsPtrInput is an input type that accepts NfsFileShareNfsFileShareDefaultsArgs, NfsFileShareNfsFileShareDefaultsPtr and NfsFileShareNfsFileShareDefaultsPtrOutput values. You can construct a concrete instance of `NfsFileShareNfsFileShareDefaultsPtrInput` via:

        NfsFileShareNfsFileShareDefaultsArgs{...}

or:

        nil

type NfsFileShareNfsFileShareDefaultsPtrOutput

type NfsFileShareNfsFileShareDefaultsPtrOutput struct{ *pulumi.OutputState }

func (NfsFileShareNfsFileShareDefaultsPtrOutput) DirectoryMode

The Unix directory mode in the string form "nnnn". Defaults to `"0777"`.

func (NfsFileShareNfsFileShareDefaultsPtrOutput) Elem

func (NfsFileShareNfsFileShareDefaultsPtrOutput) ElementType

func (NfsFileShareNfsFileShareDefaultsPtrOutput) FileMode

The Unix file mode in the string form "nnnn". Defaults to `"0666"`.

func (NfsFileShareNfsFileShareDefaultsPtrOutput) GroupId

The default group ID for the file share (unless the files have another group ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.

func (NfsFileShareNfsFileShareDefaultsPtrOutput) OwnerId

The default owner ID for the file share (unless the files have another owner ID specified). Defaults to `65534` (`nfsnobody`). Valid values: `0` through `4294967294`.

func (NfsFileShareNfsFileShareDefaultsPtrOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutput

func (o NfsFileShareNfsFileShareDefaultsPtrOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput

func (NfsFileShareNfsFileShareDefaultsPtrOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext

func (o NfsFileShareNfsFileShareDefaultsPtrOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput

type NfsFileShareOutput added in v3.13.0

type NfsFileShareOutput struct {
	*pulumi.OutputState
}

func (NfsFileShareOutput) ElementType added in v3.13.0

func (NfsFileShareOutput) ElementType() reflect.Type

func (NfsFileShareOutput) ToNfsFileShareOutput added in v3.13.0

func (o NfsFileShareOutput) ToNfsFileShareOutput() NfsFileShareOutput

func (NfsFileShareOutput) ToNfsFileShareOutputWithContext added in v3.13.0

func (o NfsFileShareOutput) ToNfsFileShareOutputWithContext(ctx context.Context) NfsFileShareOutput

func (NfsFileShareOutput) ToNfsFileSharePtrOutput added in v3.25.0

func (o NfsFileShareOutput) ToNfsFileSharePtrOutput() NfsFileSharePtrOutput

func (NfsFileShareOutput) ToNfsFileSharePtrOutputWithContext added in v3.25.0

func (o NfsFileShareOutput) ToNfsFileSharePtrOutputWithContext(ctx context.Context) NfsFileSharePtrOutput

type NfsFileSharePtrInput added in v3.25.0

type NfsFileSharePtrInput interface {
	pulumi.Input

	ToNfsFileSharePtrOutput() NfsFileSharePtrOutput
	ToNfsFileSharePtrOutputWithContext(ctx context.Context) NfsFileSharePtrOutput
}

type NfsFileSharePtrOutput added in v3.25.0

type NfsFileSharePtrOutput struct {
	*pulumi.OutputState
}

func (NfsFileSharePtrOutput) ElementType added in v3.25.0

func (NfsFileSharePtrOutput) ElementType() reflect.Type

func (NfsFileSharePtrOutput) ToNfsFileSharePtrOutput added in v3.25.0

func (o NfsFileSharePtrOutput) ToNfsFileSharePtrOutput() NfsFileSharePtrOutput

func (NfsFileSharePtrOutput) ToNfsFileSharePtrOutputWithContext added in v3.25.0

func (o NfsFileSharePtrOutput) ToNfsFileSharePtrOutputWithContext(ctx context.Context) NfsFileSharePtrOutput

type NfsFileShareState

type NfsFileShareState struct {
	// Amazon Resource Name (ARN) of the NFS File Share.
	Arn pulumi.StringPtrInput
	// Refresh cache information. see Cache Attributes for more details.
	CacheAttributes NfsFileShareCacheAttributesPtrInput
	// The list of clients that are allowed to access the file gateway. The list must contain either valid IP addresses or valid CIDR blocks. Set to `["0.0.0.0/0"]` to not limit access. Minimum 1 item. Maximum 100 items.
	ClientLists pulumi.StringArrayInput
	// The default storage class for objects put into an Amazon S3 bucket by the file gateway. Defaults to `S3_STANDARD`. Valid values: `S3_STANDARD`, `S3_STANDARD_IA`, `S3_ONEZONE_IA`.
	DefaultStorageClass pulumi.StringPtrInput
	// The name of the file share. Must be set if an S3 prefix name is set in `locationArn`.
	FileShareName pulumi.StringPtrInput
	// ID of the NFS File Share.
	FileshareId pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the file gateway.
	GatewayArn pulumi.StringPtrInput
	// Boolean value that enables guessing of the MIME type for uploaded objects based on file extensions. Defaults to `true`.
	GuessMimeTypeEnabled pulumi.BoolPtrInput
	// Boolean value if `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Defaults to `false`.
	KmsEncrypted pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) for KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is true.
	KmsKeyArn pulumi.StringPtrInput
	// The ARN of the backed storage used for storing file data.
	LocationArn pulumi.StringPtrInput
	// Nested argument with file share default values. More information below. see NFS File Share Defaults for more details.
	NfsFileShareDefaults NfsFileShareNfsFileShareDefaultsPtrInput
	// The notification policy of the file share. For more information see the [AWS Documentation](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CreateNFSFileShare.html#StorageGateway-CreateNFSFileShare-request-NotificationPolicy). Default value is `{}`.
	NotificationPolicy pulumi.StringPtrInput
	// Access Control List permission for S3 bucket objects. Defaults to `private`.
	ObjectAcl pulumi.StringPtrInput
	// File share path used by the NFS client to identify the mount point.
	Path pulumi.StringPtrInput
	// Boolean to indicate write status of file share. File share does not accept writes if `true`. Defaults to `false`.
	ReadOnly pulumi.BoolPtrInput
	// Boolean who pays the cost of the request and the data download from the Amazon S3 bucket. Set this value to `true` if you want the requester to pay instead of the bucket owner. Defaults to `false`.
	RequesterPays pulumi.BoolPtrInput
	// The ARN of the AWS Identity and Access Management (IAM) role that a file gateway assumes when it accesses the underlying storage.
	RoleArn pulumi.StringPtrInput
	// Maps a user to anonymous user. Defaults to `RootSquash`. Valid values: `RootSquash` (only root is mapped to anonymous user), `NoSquash` (no one is mapped to anonymous user), `AllSquash` (everyone is mapped to anonymous user)
	Squash pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (NfsFileShareState) ElementType

func (NfsFileShareState) ElementType() reflect.Type

type SmbFileShare

type SmbFileShare struct {
	pulumi.CustomResourceState

	// The files and folders on this share will only be visible to users with read access. Default value is `false`.
	AccessBasedEnumeration pulumi.BoolPtrOutput `pulumi:"accessBasedEnumeration"`
	// A list of users in the Active Directory that have admin access to the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	AdminUserLists pulumi.StringArrayOutput `pulumi:"adminUserLists"`
	// Amazon Resource Name (ARN) of the SMB File Share.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The Amazon Resource Name (ARN) of the CloudWatch Log Group used for the audit logs.
	AuditDestinationArn pulumi.StringPtrOutput `pulumi:"auditDestinationArn"`
	// The authentication method that users use to access the file share. Defaults to `ActiveDirectory`. Valid values: `ActiveDirectory`, `GuestAccess`.
	Authentication pulumi.StringPtrOutput `pulumi:"authentication"`
	// Refresh cache information. see Cache Attributes for more details.
	CacheAttributes SmbFileShareCacheAttributesPtrOutput `pulumi:"cacheAttributes"`
	// The case of an object name in an Amazon S3 bucket. For `ClientSpecified`, the client determines the case sensitivity. For `CaseSensitive`, the gateway determines the case sensitivity. The default value is `ClientSpecified`.
	CaseSensitivity pulumi.StringPtrOutput `pulumi:"caseSensitivity"`
	// The default storage class for objects put into an Amazon S3 bucket by the file gateway. Defaults to `S3_STANDARD`. Valid values: `S3_STANDARD`, `S3_STANDARD_IA`, `S3_ONEZONE_IA`.
	DefaultStorageClass pulumi.StringPtrOutput `pulumi:"defaultStorageClass"`
	// The name of the file share. Must be set if an S3 prefix name is set in `locationArn`.
	FileShareName pulumi.StringOutput `pulumi:"fileShareName"`
	// ID of the SMB File Share.
	FileshareId pulumi.StringOutput `pulumi:"fileshareId"`
	// Amazon Resource Name (ARN) of the file gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
	// Boolean value that enables guessing of the MIME type for uploaded objects based on file extensions. Defaults to `true`.
	GuessMimeTypeEnabled pulumi.BoolPtrOutput `pulumi:"guessMimeTypeEnabled"`
	// A list of users in the Active Directory that are not allowed to access the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	InvalidUserLists pulumi.StringArrayOutput `pulumi:"invalidUserLists"`
	// Boolean value if `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Defaults to `false`.
	KmsEncrypted pulumi.BoolPtrOutput `pulumi:"kmsEncrypted"`
	// Amazon Resource Name (ARN) for KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is true.
	KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"`
	// The ARN of the backed storage used for storing file data.
	LocationArn pulumi.StringOutput `pulumi:"locationArn"`
	// The notification policy of the file share. For more information see the [AWS Documentation](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CreateNFSFileShare.html#StorageGateway-CreateNFSFileShare-request-NotificationPolicy). Default value is `{}`.
	NotificationPolicy pulumi.StringPtrOutput `pulumi:"notificationPolicy"`
	// Access Control List permission for S3 bucket objects. Defaults to `private`.
	ObjectAcl pulumi.StringPtrOutput `pulumi:"objectAcl"`
	// File share path used by the NFS client to identify the mount point.
	Path pulumi.StringOutput `pulumi:"path"`
	// Boolean to indicate write status of file share. File share does not accept writes if `true`. Defaults to `false`.
	ReadOnly pulumi.BoolPtrOutput `pulumi:"readOnly"`
	// Boolean who pays the cost of the request and the data download from the Amazon S3 bucket. Set this value to `true` if you want the requester to pay instead of the bucket owner. Defaults to `false`.
	RequesterPays pulumi.BoolPtrOutput `pulumi:"requesterPays"`
	// The ARN of the AWS Identity and Access Management (IAM) role that a file gateway assumes when it accesses the underlying storage.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// Set this value to `true` to enable ACL (access control list) on the SMB fileshare. Set it to `false` to map file and directory permissions to the POSIX permissions. This setting applies only to `ActiveDirectory` authentication type.
	SmbAclEnabled pulumi.BoolPtrOutput `pulumi:"smbAclEnabled"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A list of users in the Active Directory that are allowed to access the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	ValidUserLists pulumi.StringArrayOutput `pulumi:"validUserLists"`
}

Manages an AWS Storage Gateway SMB File Share.

## Example Usage ### Active Directory Authentication

> **NOTE:** The gateway must have already joined the Active Directory domain prior to SMB file share creation. e.g. via "SMB Settings" in the AWS Storage Gateway console or `smbActiveDirectorySettings` in the `storagegateway.Gateway` resource.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewSmbFileShare(ctx, "example", &storagegateway.SmbFileShareArgs{
			Authentication: pulumi.String("ActiveDirectory"),
			GatewayArn:     pulumi.Any(aws_storagegateway_gateway.Example.Arn),
			LocationArn:    pulumi.Any(aws_s3_bucket.Example.Arn),
			RoleArn:        pulumi.Any(aws_iam_role.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Guest Authentication

> **NOTE:** The gateway must have already had the SMB guest password set prior to SMB file share creation. e.g. via "SMB Settings" in the AWS Storage Gateway console or `smbGuestPassword` in the `storagegateway.Gateway` resource.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewSmbFileShare(ctx, "example", &storagegateway.SmbFileShareArgs{
			Authentication: pulumi.String("GuestAccess"),
			GatewayArn:     pulumi.Any(aws_storagegateway_gateway.Example.Arn),
			LocationArn:    pulumi.Any(aws_s3_bucket.Example.Arn),
			RoleArn:        pulumi.Any(aws_iam_role.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_smb_file_share` can be imported by using the SMB File Share Amazon Resource Name (ARN), e.g.

```sh

$ pulumi import aws:storagegateway/smbFileShare:SmbFileShare example arn:aws:storagegateway:us-east-1:123456789012:share/share-12345678

```

func GetSmbFileShare

func GetSmbFileShare(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SmbFileShareState, opts ...pulumi.ResourceOption) (*SmbFileShare, error)

GetSmbFileShare gets an existing SmbFileShare resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSmbFileShare

func NewSmbFileShare(ctx *pulumi.Context,
	name string, args *SmbFileShareArgs, opts ...pulumi.ResourceOption) (*SmbFileShare, error)

NewSmbFileShare registers a new resource with the given unique name, arguments, and options.

func (*SmbFileShare) ElementType added in v3.13.0

func (*SmbFileShare) ElementType() reflect.Type

func (*SmbFileShare) ToSmbFileShareOutput added in v3.13.0

func (i *SmbFileShare) ToSmbFileShareOutput() SmbFileShareOutput

func (*SmbFileShare) ToSmbFileShareOutputWithContext added in v3.13.0

func (i *SmbFileShare) ToSmbFileShareOutputWithContext(ctx context.Context) SmbFileShareOutput

func (*SmbFileShare) ToSmbFileSharePtrOutput added in v3.25.0

func (i *SmbFileShare) ToSmbFileSharePtrOutput() SmbFileSharePtrOutput

func (*SmbFileShare) ToSmbFileSharePtrOutputWithContext added in v3.25.0

func (i *SmbFileShare) ToSmbFileSharePtrOutputWithContext(ctx context.Context) SmbFileSharePtrOutput

type SmbFileShareArgs

type SmbFileShareArgs struct {
	// The files and folders on this share will only be visible to users with read access. Default value is `false`.
	AccessBasedEnumeration pulumi.BoolPtrInput
	// A list of users in the Active Directory that have admin access to the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	AdminUserLists pulumi.StringArrayInput
	// The Amazon Resource Name (ARN) of the CloudWatch Log Group used for the audit logs.
	AuditDestinationArn pulumi.StringPtrInput
	// The authentication method that users use to access the file share. Defaults to `ActiveDirectory`. Valid values: `ActiveDirectory`, `GuestAccess`.
	Authentication pulumi.StringPtrInput
	// Refresh cache information. see Cache Attributes for more details.
	CacheAttributes SmbFileShareCacheAttributesPtrInput
	// The case of an object name in an Amazon S3 bucket. For `ClientSpecified`, the client determines the case sensitivity. For `CaseSensitive`, the gateway determines the case sensitivity. The default value is `ClientSpecified`.
	CaseSensitivity pulumi.StringPtrInput
	// The default storage class for objects put into an Amazon S3 bucket by the file gateway. Defaults to `S3_STANDARD`. Valid values: `S3_STANDARD`, `S3_STANDARD_IA`, `S3_ONEZONE_IA`.
	DefaultStorageClass pulumi.StringPtrInput
	// The name of the file share. Must be set if an S3 prefix name is set in `locationArn`.
	FileShareName pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the file gateway.
	GatewayArn pulumi.StringInput
	// Boolean value that enables guessing of the MIME type for uploaded objects based on file extensions. Defaults to `true`.
	GuessMimeTypeEnabled pulumi.BoolPtrInput
	// A list of users in the Active Directory that are not allowed to access the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	InvalidUserLists pulumi.StringArrayInput
	// Boolean value if `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Defaults to `false`.
	KmsEncrypted pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) for KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is true.
	KmsKeyArn pulumi.StringPtrInput
	// The ARN of the backed storage used for storing file data.
	LocationArn pulumi.StringInput
	// The notification policy of the file share. For more information see the [AWS Documentation](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CreateNFSFileShare.html#StorageGateway-CreateNFSFileShare-request-NotificationPolicy). Default value is `{}`.
	NotificationPolicy pulumi.StringPtrInput
	// Access Control List permission for S3 bucket objects. Defaults to `private`.
	ObjectAcl pulumi.StringPtrInput
	// Boolean to indicate write status of file share. File share does not accept writes if `true`. Defaults to `false`.
	ReadOnly pulumi.BoolPtrInput
	// Boolean who pays the cost of the request and the data download from the Amazon S3 bucket. Set this value to `true` if you want the requester to pay instead of the bucket owner. Defaults to `false`.
	RequesterPays pulumi.BoolPtrInput
	// The ARN of the AWS Identity and Access Management (IAM) role that a file gateway assumes when it accesses the underlying storage.
	RoleArn pulumi.StringInput
	// Set this value to `true` to enable ACL (access control list) on the SMB fileshare. Set it to `false` to map file and directory permissions to the POSIX permissions. This setting applies only to `ActiveDirectory` authentication type.
	SmbAclEnabled pulumi.BoolPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// A list of users in the Active Directory that are allowed to access the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	ValidUserLists pulumi.StringArrayInput
}

The set of arguments for constructing a SmbFileShare resource.

func (SmbFileShareArgs) ElementType

func (SmbFileShareArgs) ElementType() reflect.Type

type SmbFileShareArray added in v3.25.0

type SmbFileShareArray []SmbFileShareInput

func (SmbFileShareArray) ElementType added in v3.25.0

func (SmbFileShareArray) ElementType() reflect.Type

func (SmbFileShareArray) ToSmbFileShareArrayOutput added in v3.25.0

func (i SmbFileShareArray) ToSmbFileShareArrayOutput() SmbFileShareArrayOutput

func (SmbFileShareArray) ToSmbFileShareArrayOutputWithContext added in v3.25.0

func (i SmbFileShareArray) ToSmbFileShareArrayOutputWithContext(ctx context.Context) SmbFileShareArrayOutput

type SmbFileShareArrayInput added in v3.25.0

type SmbFileShareArrayInput interface {
	pulumi.Input

	ToSmbFileShareArrayOutput() SmbFileShareArrayOutput
	ToSmbFileShareArrayOutputWithContext(context.Context) SmbFileShareArrayOutput
}

SmbFileShareArrayInput is an input type that accepts SmbFileShareArray and SmbFileShareArrayOutput values. You can construct a concrete instance of `SmbFileShareArrayInput` via:

SmbFileShareArray{ SmbFileShareArgs{...} }

type SmbFileShareArrayOutput added in v3.25.0

type SmbFileShareArrayOutput struct{ *pulumi.OutputState }

func (SmbFileShareArrayOutput) ElementType added in v3.25.0

func (SmbFileShareArrayOutput) ElementType() reflect.Type

func (SmbFileShareArrayOutput) Index added in v3.25.0

func (SmbFileShareArrayOutput) ToSmbFileShareArrayOutput added in v3.25.0

func (o SmbFileShareArrayOutput) ToSmbFileShareArrayOutput() SmbFileShareArrayOutput

func (SmbFileShareArrayOutput) ToSmbFileShareArrayOutputWithContext added in v3.25.0

func (o SmbFileShareArrayOutput) ToSmbFileShareArrayOutputWithContext(ctx context.Context) SmbFileShareArrayOutput

type SmbFileShareCacheAttributes added in v3.3.0

type SmbFileShareCacheAttributes struct {
	// Refreshes a file share's cache by using Time To Live (TTL).
	// TTL is the length of time since the last refresh after which access to the directory would cause the file gateway
	// to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)
	CacheStaleTimeoutInSeconds *int `pulumi:"cacheStaleTimeoutInSeconds"`
}

type SmbFileShareCacheAttributesArgs added in v3.3.0

type SmbFileShareCacheAttributesArgs struct {
	// Refreshes a file share's cache by using Time To Live (TTL).
	// TTL is the length of time since the last refresh after which access to the directory would cause the file gateway
	// to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)
	CacheStaleTimeoutInSeconds pulumi.IntPtrInput `pulumi:"cacheStaleTimeoutInSeconds"`
}

func (SmbFileShareCacheAttributesArgs) ElementType added in v3.3.0

func (SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesOutput added in v3.3.0

func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesOutput() SmbFileShareCacheAttributesOutput

func (SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesOutputWithContext added in v3.3.0

func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesOutput

func (SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesPtrOutput added in v3.3.0

func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput

func (SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesPtrOutputWithContext added in v3.3.0

func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesPtrOutput

type SmbFileShareCacheAttributesInput added in v3.3.0

type SmbFileShareCacheAttributesInput interface {
	pulumi.Input

	ToSmbFileShareCacheAttributesOutput() SmbFileShareCacheAttributesOutput
	ToSmbFileShareCacheAttributesOutputWithContext(context.Context) SmbFileShareCacheAttributesOutput
}

SmbFileShareCacheAttributesInput is an input type that accepts SmbFileShareCacheAttributesArgs and SmbFileShareCacheAttributesOutput values. You can construct a concrete instance of `SmbFileShareCacheAttributesInput` via:

SmbFileShareCacheAttributesArgs{...}

type SmbFileShareCacheAttributesOutput added in v3.3.0

type SmbFileShareCacheAttributesOutput struct{ *pulumi.OutputState }

func (SmbFileShareCacheAttributesOutput) CacheStaleTimeoutInSeconds added in v3.3.0

func (o SmbFileShareCacheAttributesOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput

Refreshes a file share's cache by using Time To Live (TTL). TTL is the length of time since the last refresh after which access to the directory would cause the file gateway to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)

func (SmbFileShareCacheAttributesOutput) ElementType added in v3.3.0

func (SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesOutput added in v3.3.0

func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesOutput() SmbFileShareCacheAttributesOutput

func (SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesOutputWithContext added in v3.3.0

func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesOutput

func (SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesPtrOutput added in v3.3.0

func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput

func (SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesPtrOutputWithContext added in v3.3.0

func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesPtrOutput

type SmbFileShareCacheAttributesPtrInput added in v3.3.0

type SmbFileShareCacheAttributesPtrInput interface {
	pulumi.Input

	ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput
	ToSmbFileShareCacheAttributesPtrOutputWithContext(context.Context) SmbFileShareCacheAttributesPtrOutput
}

SmbFileShareCacheAttributesPtrInput is an input type that accepts SmbFileShareCacheAttributesArgs, SmbFileShareCacheAttributesPtr and SmbFileShareCacheAttributesPtrOutput values. You can construct a concrete instance of `SmbFileShareCacheAttributesPtrInput` via:

        SmbFileShareCacheAttributesArgs{...}

or:

        nil

func SmbFileShareCacheAttributesPtr added in v3.3.0

type SmbFileShareCacheAttributesPtrOutput added in v3.3.0

type SmbFileShareCacheAttributesPtrOutput struct{ *pulumi.OutputState }

func (SmbFileShareCacheAttributesPtrOutput) CacheStaleTimeoutInSeconds added in v3.3.0

func (o SmbFileShareCacheAttributesPtrOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput

Refreshes a file share's cache by using Time To Live (TTL). TTL is the length of time since the last refresh after which access to the directory would cause the file gateway to first refresh that directory's contents from the Amazon S3 bucket. Valid Values: 300 to 2,592,000 seconds (5 minutes to 30 days)

func (SmbFileShareCacheAttributesPtrOutput) Elem added in v3.3.0

func (SmbFileShareCacheAttributesPtrOutput) ElementType added in v3.3.0

func (SmbFileShareCacheAttributesPtrOutput) ToSmbFileShareCacheAttributesPtrOutput added in v3.3.0

func (o SmbFileShareCacheAttributesPtrOutput) ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput

func (SmbFileShareCacheAttributesPtrOutput) ToSmbFileShareCacheAttributesPtrOutputWithContext added in v3.3.0

func (o SmbFileShareCacheAttributesPtrOutput) ToSmbFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesPtrOutput

type SmbFileShareInput added in v3.13.0

type SmbFileShareInput interface {
	pulumi.Input

	ToSmbFileShareOutput() SmbFileShareOutput
	ToSmbFileShareOutputWithContext(ctx context.Context) SmbFileShareOutput
}

type SmbFileShareMap added in v3.25.0

type SmbFileShareMap map[string]SmbFileShareInput

func (SmbFileShareMap) ElementType added in v3.25.0

func (SmbFileShareMap) ElementType() reflect.Type

func (SmbFileShareMap) ToSmbFileShareMapOutput added in v3.25.0

func (i SmbFileShareMap) ToSmbFileShareMapOutput() SmbFileShareMapOutput

func (SmbFileShareMap) ToSmbFileShareMapOutputWithContext added in v3.25.0

func (i SmbFileShareMap) ToSmbFileShareMapOutputWithContext(ctx context.Context) SmbFileShareMapOutput

type SmbFileShareMapInput added in v3.25.0

type SmbFileShareMapInput interface {
	pulumi.Input

	ToSmbFileShareMapOutput() SmbFileShareMapOutput
	ToSmbFileShareMapOutputWithContext(context.Context) SmbFileShareMapOutput
}

SmbFileShareMapInput is an input type that accepts SmbFileShareMap and SmbFileShareMapOutput values. You can construct a concrete instance of `SmbFileShareMapInput` via:

SmbFileShareMap{ "key": SmbFileShareArgs{...} }

type SmbFileShareMapOutput added in v3.25.0

type SmbFileShareMapOutput struct{ *pulumi.OutputState }

func (SmbFileShareMapOutput) ElementType added in v3.25.0

func (SmbFileShareMapOutput) ElementType() reflect.Type

func (SmbFileShareMapOutput) MapIndex added in v3.25.0

func (SmbFileShareMapOutput) ToSmbFileShareMapOutput added in v3.25.0

func (o SmbFileShareMapOutput) ToSmbFileShareMapOutput() SmbFileShareMapOutput

func (SmbFileShareMapOutput) ToSmbFileShareMapOutputWithContext added in v3.25.0

func (o SmbFileShareMapOutput) ToSmbFileShareMapOutputWithContext(ctx context.Context) SmbFileShareMapOutput

type SmbFileShareOutput added in v3.13.0

type SmbFileShareOutput struct {
	*pulumi.OutputState
}

func (SmbFileShareOutput) ElementType added in v3.13.0

func (SmbFileShareOutput) ElementType() reflect.Type

func (SmbFileShareOutput) ToSmbFileShareOutput added in v3.13.0

func (o SmbFileShareOutput) ToSmbFileShareOutput() SmbFileShareOutput

func (SmbFileShareOutput) ToSmbFileShareOutputWithContext added in v3.13.0

func (o SmbFileShareOutput) ToSmbFileShareOutputWithContext(ctx context.Context) SmbFileShareOutput

func (SmbFileShareOutput) ToSmbFileSharePtrOutput added in v3.25.0

func (o SmbFileShareOutput) ToSmbFileSharePtrOutput() SmbFileSharePtrOutput

func (SmbFileShareOutput) ToSmbFileSharePtrOutputWithContext added in v3.25.0

func (o SmbFileShareOutput) ToSmbFileSharePtrOutputWithContext(ctx context.Context) SmbFileSharePtrOutput

type SmbFileSharePtrInput added in v3.25.0

type SmbFileSharePtrInput interface {
	pulumi.Input

	ToSmbFileSharePtrOutput() SmbFileSharePtrOutput
	ToSmbFileSharePtrOutputWithContext(ctx context.Context) SmbFileSharePtrOutput
}

type SmbFileSharePtrOutput added in v3.25.0

type SmbFileSharePtrOutput struct {
	*pulumi.OutputState
}

func (SmbFileSharePtrOutput) ElementType added in v3.25.0

func (SmbFileSharePtrOutput) ElementType() reflect.Type

func (SmbFileSharePtrOutput) ToSmbFileSharePtrOutput added in v3.25.0

func (o SmbFileSharePtrOutput) ToSmbFileSharePtrOutput() SmbFileSharePtrOutput

func (SmbFileSharePtrOutput) ToSmbFileSharePtrOutputWithContext added in v3.25.0

func (o SmbFileSharePtrOutput) ToSmbFileSharePtrOutputWithContext(ctx context.Context) SmbFileSharePtrOutput

type SmbFileShareState

type SmbFileShareState struct {
	// The files and folders on this share will only be visible to users with read access. Default value is `false`.
	AccessBasedEnumeration pulumi.BoolPtrInput
	// A list of users in the Active Directory that have admin access to the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	AdminUserLists pulumi.StringArrayInput
	// Amazon Resource Name (ARN) of the SMB File Share.
	Arn pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the CloudWatch Log Group used for the audit logs.
	AuditDestinationArn pulumi.StringPtrInput
	// The authentication method that users use to access the file share. Defaults to `ActiveDirectory`. Valid values: `ActiveDirectory`, `GuestAccess`.
	Authentication pulumi.StringPtrInput
	// Refresh cache information. see Cache Attributes for more details.
	CacheAttributes SmbFileShareCacheAttributesPtrInput
	// The case of an object name in an Amazon S3 bucket. For `ClientSpecified`, the client determines the case sensitivity. For `CaseSensitive`, the gateway determines the case sensitivity. The default value is `ClientSpecified`.
	CaseSensitivity pulumi.StringPtrInput
	// The default storage class for objects put into an Amazon S3 bucket by the file gateway. Defaults to `S3_STANDARD`. Valid values: `S3_STANDARD`, `S3_STANDARD_IA`, `S3_ONEZONE_IA`.
	DefaultStorageClass pulumi.StringPtrInput
	// The name of the file share. Must be set if an S3 prefix name is set in `locationArn`.
	FileShareName pulumi.StringPtrInput
	// ID of the SMB File Share.
	FileshareId pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the file gateway.
	GatewayArn pulumi.StringPtrInput
	// Boolean value that enables guessing of the MIME type for uploaded objects based on file extensions. Defaults to `true`.
	GuessMimeTypeEnabled pulumi.BoolPtrInput
	// A list of users in the Active Directory that are not allowed to access the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	InvalidUserLists pulumi.StringArrayInput
	// Boolean value if `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Defaults to `false`.
	KmsEncrypted pulumi.BoolPtrInput
	// Amazon Resource Name (ARN) for KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is true.
	KmsKeyArn pulumi.StringPtrInput
	// The ARN of the backed storage used for storing file data.
	LocationArn pulumi.StringPtrInput
	// The notification policy of the file share. For more information see the [AWS Documentation](https://docs.aws.amazon.com/storagegateway/latest/APIReference/API_CreateNFSFileShare.html#StorageGateway-CreateNFSFileShare-request-NotificationPolicy). Default value is `{}`.
	NotificationPolicy pulumi.StringPtrInput
	// Access Control List permission for S3 bucket objects. Defaults to `private`.
	ObjectAcl pulumi.StringPtrInput
	// File share path used by the NFS client to identify the mount point.
	Path pulumi.StringPtrInput
	// Boolean to indicate write status of file share. File share does not accept writes if `true`. Defaults to `false`.
	ReadOnly pulumi.BoolPtrInput
	// Boolean who pays the cost of the request and the data download from the Amazon S3 bucket. Set this value to `true` if you want the requester to pay instead of the bucket owner. Defaults to `false`.
	RequesterPays pulumi.BoolPtrInput
	// The ARN of the AWS Identity and Access Management (IAM) role that a file gateway assumes when it accesses the underlying storage.
	RoleArn pulumi.StringPtrInput
	// Set this value to `true` to enable ACL (access control list) on the SMB fileshare. Set it to `false` to map file and directory permissions to the POSIX permissions. This setting applies only to `ActiveDirectory` authentication type.
	SmbAclEnabled pulumi.BoolPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
	// A list of users in the Active Directory that are allowed to access the file share. Only valid if `authentication` is set to `ActiveDirectory`.
	ValidUserLists pulumi.StringArrayInput
}

func (SmbFileShareState) ElementType

func (SmbFileShareState) ElementType() reflect.Type

type StoredIscsiVolume added in v3.10.0

type StoredIscsiVolume struct {
	pulumi.CustomResourceState

	// Volume Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678`.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Whether mutual CHAP is enabled for the iSCSI target.
	ChapEnabled pulumi.BoolOutput `pulumi:"chapEnabled"`
	// The unique identifier for the gateway local disk that is configured as a stored volume.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
	// `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Optional.
	KmsEncrypted pulumi.BoolPtrOutput `pulumi:"kmsEncrypted"`
	// The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is `true`.
	KmsKey pulumi.StringPtrOutput `pulumi:"kmsKey"`
	// Logical disk number.
	LunNumber pulumi.IntOutput `pulumi:"lunNumber"`
	// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted.
	NetworkInterfaceId pulumi.StringOutput `pulumi:"networkInterfaceId"`
	// The port used to communicate with iSCSI targets.
	NetworkInterfacePort pulumi.IntOutput `pulumi:"networkInterfacePort"`
	// Specify this field as `true` if you want to preserve the data on the local disk. Otherwise, specifying this field as false creates an empty volume.
	PreserveExistingData pulumi.BoolOutput `pulumi:"preserveExistingData"`
	// The snapshot ID of the snapshot to restore as the new stored volume. e.g. `snap-1122aabb`.
	SnapshotId pulumi.StringPtrOutput `pulumi:"snapshotId"`
	// Key-value mapping of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Target Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/target/iqn.1997-05.com.amazon:TargetName`.
	TargetArn pulumi.StringOutput `pulumi:"targetArn"`
	// The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. The target name must be unique across all volumes of a gateway.
	TargetName pulumi.StringOutput `pulumi:"targetName"`
	// A value that indicates whether a storage volume is attached to, detached from, or is in the process of detaching from a gateway.
	VolumeAttachmentStatus pulumi.StringOutput `pulumi:"volumeAttachmentStatus"`
	// Volume ID, e.g. `vol-12345678`.
	VolumeId pulumi.StringOutput `pulumi:"volumeId"`
	// The size of the data stored on the volume in bytes.
	VolumeSizeInBytes pulumi.IntOutput `pulumi:"volumeSizeInBytes"`
	// indicates the state of the storage volume.
	VolumeStatus pulumi.StringOutput `pulumi:"volumeStatus"`
	// indicates the type of the volume.
	VolumeType pulumi.StringOutput `pulumi:"volumeType"`
}

Manages an AWS Storage Gateway stored iSCSI volume.

> **NOTE:** The gateway must have a working storage added (e.g. via the `storagegateway.WorkingStorage` resource) before the volume is operational to clients, however the Storage Gateway API will allow volume creation without error in that case and return volume status as `WORKING STORAGE NOT CONFIGURED`.

## Example Usage ### Create Empty Stored iSCSI Volume

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewStoredIscsiVolume(ctx, "example", &storagegateway.StoredIscsiVolumeArgs{
			GatewayArn:           pulumi.Any(aws_storagegateway_cache.Example.Gateway_arn),
			NetworkInterfaceId:   pulumi.Any(aws_instance.Example.Private_ip),
			TargetName:           pulumi.String("example"),
			PreserveExistingData: pulumi.Bool(false),
			DiskId:               pulumi.Any(data.Aws_storagegateway_local_disk.Test.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create Stored iSCSI Volume From Snapshot

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewStoredIscsiVolume(ctx, "example", &storagegateway.StoredIscsiVolumeArgs{
			GatewayArn:           pulumi.Any(aws_storagegateway_cache.Example.Gateway_arn),
			NetworkInterfaceId:   pulumi.Any(aws_instance.Example.Private_ip),
			SnapshotId:           pulumi.Any(aws_ebs_snapshot.Example.Id),
			TargetName:           pulumi.String("example"),
			PreserveExistingData: pulumi.Bool(false),
			DiskId:               pulumi.Any(data.Aws_storagegateway_local_disk.Test.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_stored_iscsi_volume` can be imported by using the volume Amazon Resource Name (ARN), e.g.

```sh

$ pulumi import aws:storagegateway/storedIscsiVolume:StoredIscsiVolume example arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678

```

func GetStoredIscsiVolume added in v3.10.0

func GetStoredIscsiVolume(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *StoredIscsiVolumeState, opts ...pulumi.ResourceOption) (*StoredIscsiVolume, error)

GetStoredIscsiVolume gets an existing StoredIscsiVolume resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewStoredIscsiVolume added in v3.10.0

func NewStoredIscsiVolume(ctx *pulumi.Context,
	name string, args *StoredIscsiVolumeArgs, opts ...pulumi.ResourceOption) (*StoredIscsiVolume, error)

NewStoredIscsiVolume registers a new resource with the given unique name, arguments, and options.

func (*StoredIscsiVolume) ElementType added in v3.13.0

func (*StoredIscsiVolume) ElementType() reflect.Type

func (*StoredIscsiVolume) ToStoredIscsiVolumeOutput added in v3.13.0

func (i *StoredIscsiVolume) ToStoredIscsiVolumeOutput() StoredIscsiVolumeOutput

func (*StoredIscsiVolume) ToStoredIscsiVolumeOutputWithContext added in v3.13.0

func (i *StoredIscsiVolume) ToStoredIscsiVolumeOutputWithContext(ctx context.Context) StoredIscsiVolumeOutput

func (*StoredIscsiVolume) ToStoredIscsiVolumePtrOutput added in v3.25.0

func (i *StoredIscsiVolume) ToStoredIscsiVolumePtrOutput() StoredIscsiVolumePtrOutput

func (*StoredIscsiVolume) ToStoredIscsiVolumePtrOutputWithContext added in v3.25.0

func (i *StoredIscsiVolume) ToStoredIscsiVolumePtrOutputWithContext(ctx context.Context) StoredIscsiVolumePtrOutput

type StoredIscsiVolumeArgs added in v3.10.0

type StoredIscsiVolumeArgs struct {
	// The unique identifier for the gateway local disk that is configured as a stored volume.
	DiskId pulumi.StringInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringInput
	// `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Optional.
	KmsEncrypted pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is `true`.
	KmsKey pulumi.StringPtrInput
	// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted.
	NetworkInterfaceId pulumi.StringInput
	// Specify this field as `true` if you want to preserve the data on the local disk. Otherwise, specifying this field as false creates an empty volume.
	PreserveExistingData pulumi.BoolInput
	// The snapshot ID of the snapshot to restore as the new stored volume. e.g. `snap-1122aabb`.
	SnapshotId pulumi.StringPtrInput
	// Key-value mapping of resource tags
	Tags pulumi.StringMapInput
	// The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. The target name must be unique across all volumes of a gateway.
	TargetName pulumi.StringInput
}

The set of arguments for constructing a StoredIscsiVolume resource.

func (StoredIscsiVolumeArgs) ElementType added in v3.10.0

func (StoredIscsiVolumeArgs) ElementType() reflect.Type

type StoredIscsiVolumeArray added in v3.25.0

type StoredIscsiVolumeArray []StoredIscsiVolumeInput

func (StoredIscsiVolumeArray) ElementType added in v3.25.0

func (StoredIscsiVolumeArray) ElementType() reflect.Type

func (StoredIscsiVolumeArray) ToStoredIscsiVolumeArrayOutput added in v3.25.0

func (i StoredIscsiVolumeArray) ToStoredIscsiVolumeArrayOutput() StoredIscsiVolumeArrayOutput

func (StoredIscsiVolumeArray) ToStoredIscsiVolumeArrayOutputWithContext added in v3.25.0

func (i StoredIscsiVolumeArray) ToStoredIscsiVolumeArrayOutputWithContext(ctx context.Context) StoredIscsiVolumeArrayOutput

type StoredIscsiVolumeArrayInput added in v3.25.0

type StoredIscsiVolumeArrayInput interface {
	pulumi.Input

	ToStoredIscsiVolumeArrayOutput() StoredIscsiVolumeArrayOutput
	ToStoredIscsiVolumeArrayOutputWithContext(context.Context) StoredIscsiVolumeArrayOutput
}

StoredIscsiVolumeArrayInput is an input type that accepts StoredIscsiVolumeArray and StoredIscsiVolumeArrayOutput values. You can construct a concrete instance of `StoredIscsiVolumeArrayInput` via:

StoredIscsiVolumeArray{ StoredIscsiVolumeArgs{...} }

type StoredIscsiVolumeArrayOutput added in v3.25.0

type StoredIscsiVolumeArrayOutput struct{ *pulumi.OutputState }

func (StoredIscsiVolumeArrayOutput) ElementType added in v3.25.0

func (StoredIscsiVolumeArrayOutput) Index added in v3.25.0

func (StoredIscsiVolumeArrayOutput) ToStoredIscsiVolumeArrayOutput added in v3.25.0

func (o StoredIscsiVolumeArrayOutput) ToStoredIscsiVolumeArrayOutput() StoredIscsiVolumeArrayOutput

func (StoredIscsiVolumeArrayOutput) ToStoredIscsiVolumeArrayOutputWithContext added in v3.25.0

func (o StoredIscsiVolumeArrayOutput) ToStoredIscsiVolumeArrayOutputWithContext(ctx context.Context) StoredIscsiVolumeArrayOutput

type StoredIscsiVolumeInput added in v3.13.0

type StoredIscsiVolumeInput interface {
	pulumi.Input

	ToStoredIscsiVolumeOutput() StoredIscsiVolumeOutput
	ToStoredIscsiVolumeOutputWithContext(ctx context.Context) StoredIscsiVolumeOutput
}

type StoredIscsiVolumeMap added in v3.25.0

type StoredIscsiVolumeMap map[string]StoredIscsiVolumeInput

func (StoredIscsiVolumeMap) ElementType added in v3.25.0

func (StoredIscsiVolumeMap) ElementType() reflect.Type

func (StoredIscsiVolumeMap) ToStoredIscsiVolumeMapOutput added in v3.25.0

func (i StoredIscsiVolumeMap) ToStoredIscsiVolumeMapOutput() StoredIscsiVolumeMapOutput

func (StoredIscsiVolumeMap) ToStoredIscsiVolumeMapOutputWithContext added in v3.25.0

func (i StoredIscsiVolumeMap) ToStoredIscsiVolumeMapOutputWithContext(ctx context.Context) StoredIscsiVolumeMapOutput

type StoredIscsiVolumeMapInput added in v3.25.0

type StoredIscsiVolumeMapInput interface {
	pulumi.Input

	ToStoredIscsiVolumeMapOutput() StoredIscsiVolumeMapOutput
	ToStoredIscsiVolumeMapOutputWithContext(context.Context) StoredIscsiVolumeMapOutput
}

StoredIscsiVolumeMapInput is an input type that accepts StoredIscsiVolumeMap and StoredIscsiVolumeMapOutput values. You can construct a concrete instance of `StoredIscsiVolumeMapInput` via:

StoredIscsiVolumeMap{ "key": StoredIscsiVolumeArgs{...} }

type StoredIscsiVolumeMapOutput added in v3.25.0

type StoredIscsiVolumeMapOutput struct{ *pulumi.OutputState }

func (StoredIscsiVolumeMapOutput) ElementType added in v3.25.0

func (StoredIscsiVolumeMapOutput) ElementType() reflect.Type

func (StoredIscsiVolumeMapOutput) MapIndex added in v3.25.0

func (StoredIscsiVolumeMapOutput) ToStoredIscsiVolumeMapOutput added in v3.25.0

func (o StoredIscsiVolumeMapOutput) ToStoredIscsiVolumeMapOutput() StoredIscsiVolumeMapOutput

func (StoredIscsiVolumeMapOutput) ToStoredIscsiVolumeMapOutputWithContext added in v3.25.0

func (o StoredIscsiVolumeMapOutput) ToStoredIscsiVolumeMapOutputWithContext(ctx context.Context) StoredIscsiVolumeMapOutput

type StoredIscsiVolumeOutput added in v3.13.0

type StoredIscsiVolumeOutput struct {
	*pulumi.OutputState
}

func (StoredIscsiVolumeOutput) ElementType added in v3.13.0

func (StoredIscsiVolumeOutput) ElementType() reflect.Type

func (StoredIscsiVolumeOutput) ToStoredIscsiVolumeOutput added in v3.13.0

func (o StoredIscsiVolumeOutput) ToStoredIscsiVolumeOutput() StoredIscsiVolumeOutput

func (StoredIscsiVolumeOutput) ToStoredIscsiVolumeOutputWithContext added in v3.13.0

func (o StoredIscsiVolumeOutput) ToStoredIscsiVolumeOutputWithContext(ctx context.Context) StoredIscsiVolumeOutput

func (StoredIscsiVolumeOutput) ToStoredIscsiVolumePtrOutput added in v3.25.0

func (o StoredIscsiVolumeOutput) ToStoredIscsiVolumePtrOutput() StoredIscsiVolumePtrOutput

func (StoredIscsiVolumeOutput) ToStoredIscsiVolumePtrOutputWithContext added in v3.25.0

func (o StoredIscsiVolumeOutput) ToStoredIscsiVolumePtrOutputWithContext(ctx context.Context) StoredIscsiVolumePtrOutput

type StoredIscsiVolumePtrInput added in v3.25.0

type StoredIscsiVolumePtrInput interface {
	pulumi.Input

	ToStoredIscsiVolumePtrOutput() StoredIscsiVolumePtrOutput
	ToStoredIscsiVolumePtrOutputWithContext(ctx context.Context) StoredIscsiVolumePtrOutput
}

type StoredIscsiVolumePtrOutput added in v3.25.0

type StoredIscsiVolumePtrOutput struct {
	*pulumi.OutputState
}

func (StoredIscsiVolumePtrOutput) ElementType added in v3.25.0

func (StoredIscsiVolumePtrOutput) ElementType() reflect.Type

func (StoredIscsiVolumePtrOutput) ToStoredIscsiVolumePtrOutput added in v3.25.0

func (o StoredIscsiVolumePtrOutput) ToStoredIscsiVolumePtrOutput() StoredIscsiVolumePtrOutput

func (StoredIscsiVolumePtrOutput) ToStoredIscsiVolumePtrOutputWithContext added in v3.25.0

func (o StoredIscsiVolumePtrOutput) ToStoredIscsiVolumePtrOutputWithContext(ctx context.Context) StoredIscsiVolumePtrOutput

type StoredIscsiVolumeState added in v3.10.0

type StoredIscsiVolumeState struct {
	// Volume Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/volume/vol-12345678`.
	Arn pulumi.StringPtrInput
	// Whether mutual CHAP is enabled for the iSCSI target.
	ChapEnabled pulumi.BoolPtrInput
	// The unique identifier for the gateway local disk that is configured as a stored volume.
	DiskId pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringPtrInput
	// `true` to use Amazon S3 server side encryption with your own AWS KMS key, or `false` to use a key managed by Amazon S3. Optional.
	KmsEncrypted pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the AWS KMS key used for Amazon S3 server side encryption. This value can only be set when `kmsEncrypted` is `true`.
	KmsKey pulumi.StringPtrInput
	// Logical disk number.
	LunNumber pulumi.IntPtrInput
	// The network interface of the gateway on which to expose the iSCSI target. Only IPv4 addresses are accepted.
	NetworkInterfaceId pulumi.StringPtrInput
	// The port used to communicate with iSCSI targets.
	NetworkInterfacePort pulumi.IntPtrInput
	// Specify this field as `true` if you want to preserve the data on the local disk. Otherwise, specifying this field as false creates an empty volume.
	PreserveExistingData pulumi.BoolPtrInput
	// The snapshot ID of the snapshot to restore as the new stored volume. e.g. `snap-1122aabb`.
	SnapshotId pulumi.StringPtrInput
	// Key-value mapping of resource tags
	Tags pulumi.StringMapInput
	// Target Amazon Resource Name (ARN), e.g. `arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678/target/iqn.1997-05.com.amazon:TargetName`.
	TargetArn pulumi.StringPtrInput
	// The name of the iSCSI target used by initiators to connect to the target and as a suffix for the target ARN. The target name must be unique across all volumes of a gateway.
	TargetName pulumi.StringPtrInput
	// A value that indicates whether a storage volume is attached to, detached from, or is in the process of detaching from a gateway.
	VolumeAttachmentStatus pulumi.StringPtrInput
	// Volume ID, e.g. `vol-12345678`.
	VolumeId pulumi.StringPtrInput
	// The size of the data stored on the volume in bytes.
	VolumeSizeInBytes pulumi.IntPtrInput
	// indicates the state of the storage volume.
	VolumeStatus pulumi.StringPtrInput
	// indicates the type of the volume.
	VolumeType pulumi.StringPtrInput
}

func (StoredIscsiVolumeState) ElementType added in v3.10.0

func (StoredIscsiVolumeState) ElementType() reflect.Type

type TapePool added in v3.11.0

type TapePool struct {
	pulumi.CustomResourceState

	// Volume Amazon Resource Name (ARN), e.g. `aws_storagegateway_tape_pool.example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678`.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the new custom tape pool.
	PoolName pulumi.StringOutput `pulumi:"poolName"`
	// Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
	RetentionLockTimeInDays pulumi.IntPtrOutput `pulumi:"retentionLockTimeInDays"`
	// Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
	RetentionLockType pulumi.StringPtrOutput `pulumi:"retentionLockType"`
	// The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
	StorageClass pulumi.StringOutput `pulumi:"storageClass"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Manages an AWS Storage Gateway Tape Pool.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewTapePool(ctx, "example", &storagegateway.TapePoolArgs{
			PoolName:     pulumi.String("example"),
			StorageClass: pulumi.String("GLACIER"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_tape_pool` can be imported by using the volume Amazon Resource Name (ARN), e.g.

```sh

$ pulumi import aws:storagegateway/tapePool:TapePool example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678

```

func GetTapePool added in v3.11.0

func GetTapePool(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TapePoolState, opts ...pulumi.ResourceOption) (*TapePool, error)

GetTapePool gets an existing TapePool resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTapePool added in v3.11.0

func NewTapePool(ctx *pulumi.Context,
	name string, args *TapePoolArgs, opts ...pulumi.ResourceOption) (*TapePool, error)

NewTapePool registers a new resource with the given unique name, arguments, and options.

func (*TapePool) ElementType added in v3.13.0

func (*TapePool) ElementType() reflect.Type

func (*TapePool) ToTapePoolOutput added in v3.13.0

func (i *TapePool) ToTapePoolOutput() TapePoolOutput

func (*TapePool) ToTapePoolOutputWithContext added in v3.13.0

func (i *TapePool) ToTapePoolOutputWithContext(ctx context.Context) TapePoolOutput

func (*TapePool) ToTapePoolPtrOutput added in v3.25.0

func (i *TapePool) ToTapePoolPtrOutput() TapePoolPtrOutput

func (*TapePool) ToTapePoolPtrOutputWithContext added in v3.25.0

func (i *TapePool) ToTapePoolPtrOutputWithContext(ctx context.Context) TapePoolPtrOutput

type TapePoolArgs added in v3.11.0

type TapePoolArgs struct {
	// The name of the new custom tape pool.
	PoolName pulumi.StringInput
	// Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
	RetentionLockTimeInDays pulumi.IntPtrInput
	// Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
	RetentionLockType pulumi.StringPtrInput
	// The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
	StorageClass pulumi.StringInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a TapePool resource.

func (TapePoolArgs) ElementType added in v3.11.0

func (TapePoolArgs) ElementType() reflect.Type

type TapePoolArray added in v3.25.0

type TapePoolArray []TapePoolInput

func (TapePoolArray) ElementType added in v3.25.0

func (TapePoolArray) ElementType() reflect.Type

func (TapePoolArray) ToTapePoolArrayOutput added in v3.25.0

func (i TapePoolArray) ToTapePoolArrayOutput() TapePoolArrayOutput

func (TapePoolArray) ToTapePoolArrayOutputWithContext added in v3.25.0

func (i TapePoolArray) ToTapePoolArrayOutputWithContext(ctx context.Context) TapePoolArrayOutput

type TapePoolArrayInput added in v3.25.0

type TapePoolArrayInput interface {
	pulumi.Input

	ToTapePoolArrayOutput() TapePoolArrayOutput
	ToTapePoolArrayOutputWithContext(context.Context) TapePoolArrayOutput
}

TapePoolArrayInput is an input type that accepts TapePoolArray and TapePoolArrayOutput values. You can construct a concrete instance of `TapePoolArrayInput` via:

TapePoolArray{ TapePoolArgs{...} }

type TapePoolArrayOutput added in v3.25.0

type TapePoolArrayOutput struct{ *pulumi.OutputState }

func (TapePoolArrayOutput) ElementType added in v3.25.0

func (TapePoolArrayOutput) ElementType() reflect.Type

func (TapePoolArrayOutput) Index added in v3.25.0

func (TapePoolArrayOutput) ToTapePoolArrayOutput added in v3.25.0

func (o TapePoolArrayOutput) ToTapePoolArrayOutput() TapePoolArrayOutput

func (TapePoolArrayOutput) ToTapePoolArrayOutputWithContext added in v3.25.0

func (o TapePoolArrayOutput) ToTapePoolArrayOutputWithContext(ctx context.Context) TapePoolArrayOutput

type TapePoolInput added in v3.13.0

type TapePoolInput interface {
	pulumi.Input

	ToTapePoolOutput() TapePoolOutput
	ToTapePoolOutputWithContext(ctx context.Context) TapePoolOutput
}

type TapePoolMap added in v3.25.0

type TapePoolMap map[string]TapePoolInput

func (TapePoolMap) ElementType added in v3.25.0

func (TapePoolMap) ElementType() reflect.Type

func (TapePoolMap) ToTapePoolMapOutput added in v3.25.0

func (i TapePoolMap) ToTapePoolMapOutput() TapePoolMapOutput

func (TapePoolMap) ToTapePoolMapOutputWithContext added in v3.25.0

func (i TapePoolMap) ToTapePoolMapOutputWithContext(ctx context.Context) TapePoolMapOutput

type TapePoolMapInput added in v3.25.0

type TapePoolMapInput interface {
	pulumi.Input

	ToTapePoolMapOutput() TapePoolMapOutput
	ToTapePoolMapOutputWithContext(context.Context) TapePoolMapOutput
}

TapePoolMapInput is an input type that accepts TapePoolMap and TapePoolMapOutput values. You can construct a concrete instance of `TapePoolMapInput` via:

TapePoolMap{ "key": TapePoolArgs{...} }

type TapePoolMapOutput added in v3.25.0

type TapePoolMapOutput struct{ *pulumi.OutputState }

func (TapePoolMapOutput) ElementType added in v3.25.0

func (TapePoolMapOutput) ElementType() reflect.Type

func (TapePoolMapOutput) MapIndex added in v3.25.0

func (TapePoolMapOutput) ToTapePoolMapOutput added in v3.25.0

func (o TapePoolMapOutput) ToTapePoolMapOutput() TapePoolMapOutput

func (TapePoolMapOutput) ToTapePoolMapOutputWithContext added in v3.25.0

func (o TapePoolMapOutput) ToTapePoolMapOutputWithContext(ctx context.Context) TapePoolMapOutput

type TapePoolOutput added in v3.13.0

type TapePoolOutput struct {
	*pulumi.OutputState
}

func (TapePoolOutput) ElementType added in v3.13.0

func (TapePoolOutput) ElementType() reflect.Type

func (TapePoolOutput) ToTapePoolOutput added in v3.13.0

func (o TapePoolOutput) ToTapePoolOutput() TapePoolOutput

func (TapePoolOutput) ToTapePoolOutputWithContext added in v3.13.0

func (o TapePoolOutput) ToTapePoolOutputWithContext(ctx context.Context) TapePoolOutput

func (TapePoolOutput) ToTapePoolPtrOutput added in v3.25.0

func (o TapePoolOutput) ToTapePoolPtrOutput() TapePoolPtrOutput

func (TapePoolOutput) ToTapePoolPtrOutputWithContext added in v3.25.0

func (o TapePoolOutput) ToTapePoolPtrOutputWithContext(ctx context.Context) TapePoolPtrOutput

type TapePoolPtrInput added in v3.25.0

type TapePoolPtrInput interface {
	pulumi.Input

	ToTapePoolPtrOutput() TapePoolPtrOutput
	ToTapePoolPtrOutputWithContext(ctx context.Context) TapePoolPtrOutput
}

type TapePoolPtrOutput added in v3.25.0

type TapePoolPtrOutput struct {
	*pulumi.OutputState
}

func (TapePoolPtrOutput) ElementType added in v3.25.0

func (TapePoolPtrOutput) ElementType() reflect.Type

func (TapePoolPtrOutput) ToTapePoolPtrOutput added in v3.25.0

func (o TapePoolPtrOutput) ToTapePoolPtrOutput() TapePoolPtrOutput

func (TapePoolPtrOutput) ToTapePoolPtrOutputWithContext added in v3.25.0

func (o TapePoolPtrOutput) ToTapePoolPtrOutputWithContext(ctx context.Context) TapePoolPtrOutput

type TapePoolState added in v3.11.0

type TapePoolState struct {
	// Volume Amazon Resource Name (ARN), e.g. `aws_storagegateway_tape_pool.example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678`.
	Arn pulumi.StringPtrInput
	// The name of the new custom tape pool.
	PoolName pulumi.StringPtrInput
	// Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
	RetentionLockTimeInDays pulumi.IntPtrInput
	// Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
	RetentionLockType pulumi.StringPtrInput
	// The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
	StorageClass pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (TapePoolState) ElementType added in v3.11.0

func (TapePoolState) ElementType() reflect.Type

type UploadBuffer

type UploadBuffer struct {
	pulumi.CustomResourceState

	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// Local disk path. For example, `/dev/nvme1n1`.
	DiskPath pulumi.StringOutput `pulumi:"diskPath"`
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
}

Manages an AWS Storage Gateway upload buffer.

> **NOTE:** The Storage Gateway API provides no method to remove an upload buffer disk. Destroying this resource does not perform any Storage Gateway actions.

## Example Usage ### Cached and VTL Gateway Type

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_volume_attachment.Test.Device_name
		testLocalDisk, err := storagegateway.GetLocalDisk(ctx, &storagegateway.GetLocalDiskArgs{
			DiskNode:   &opt0,
			GatewayArn: aws_storagegateway_gateway.Test.Arn,
		}, nil)
		if err != nil {
			return err
		}
		_, err = storagegateway.NewUploadBuffer(ctx, "testUploadBuffer", &storagegateway.UploadBufferArgs{
			DiskPath:   pulumi.String(testLocalDisk.DiskPath),
			GatewayArn: pulumi.Any(aws_storagegateway_gateway.Test.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Stored Gateway Type

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := aws_volume_attachment.Test.Device_name
		_, err := storagegateway.GetLocalDisk(ctx, &storagegateway.GetLocalDiskArgs{
			DiskNode:   &opt0,
			GatewayArn: aws_storagegateway_gateway.Test.Arn,
		}, nil)
		if err != nil {
			return err
		}
		_, err = storagegateway.NewUploadBuffer(ctx, "example", &storagegateway.UploadBufferArgs{
			DiskId:     pulumi.Any(data.Aws_storagegateway_local_disk.Example.Id),
			GatewayArn: pulumi.Any(aws_storagegateway_gateway.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_upload_buffer` can be imported by using the gateway Amazon Resource Name (ARN) and local disk identifier separated with a colon (`:`), e.g.

```sh

$ pulumi import aws:storagegateway/uploadBuffer:UploadBuffer example arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678:pci-0000:03:00.0-scsi-0:0:0:0

```

func GetUploadBuffer

func GetUploadBuffer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UploadBufferState, opts ...pulumi.ResourceOption) (*UploadBuffer, error)

GetUploadBuffer gets an existing UploadBuffer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUploadBuffer

func NewUploadBuffer(ctx *pulumi.Context,
	name string, args *UploadBufferArgs, opts ...pulumi.ResourceOption) (*UploadBuffer, error)

NewUploadBuffer registers a new resource with the given unique name, arguments, and options.

func (*UploadBuffer) ElementType added in v3.13.0

func (*UploadBuffer) ElementType() reflect.Type

func (*UploadBuffer) ToUploadBufferOutput added in v3.13.0

func (i *UploadBuffer) ToUploadBufferOutput() UploadBufferOutput

func (*UploadBuffer) ToUploadBufferOutputWithContext added in v3.13.0

func (i *UploadBuffer) ToUploadBufferOutputWithContext(ctx context.Context) UploadBufferOutput

func (*UploadBuffer) ToUploadBufferPtrOutput added in v3.25.0

func (i *UploadBuffer) ToUploadBufferPtrOutput() UploadBufferPtrOutput

func (*UploadBuffer) ToUploadBufferPtrOutputWithContext added in v3.25.0

func (i *UploadBuffer) ToUploadBufferPtrOutputWithContext(ctx context.Context) UploadBufferPtrOutput

type UploadBufferArgs

type UploadBufferArgs struct {
	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringPtrInput
	// Local disk path. For example, `/dev/nvme1n1`.
	DiskPath pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringInput
}

The set of arguments for constructing a UploadBuffer resource.

func (UploadBufferArgs) ElementType

func (UploadBufferArgs) ElementType() reflect.Type

type UploadBufferArray added in v3.25.0

type UploadBufferArray []UploadBufferInput

func (UploadBufferArray) ElementType added in v3.25.0

func (UploadBufferArray) ElementType() reflect.Type

func (UploadBufferArray) ToUploadBufferArrayOutput added in v3.25.0

func (i UploadBufferArray) ToUploadBufferArrayOutput() UploadBufferArrayOutput

func (UploadBufferArray) ToUploadBufferArrayOutputWithContext added in v3.25.0

func (i UploadBufferArray) ToUploadBufferArrayOutputWithContext(ctx context.Context) UploadBufferArrayOutput

type UploadBufferArrayInput added in v3.25.0

type UploadBufferArrayInput interface {
	pulumi.Input

	ToUploadBufferArrayOutput() UploadBufferArrayOutput
	ToUploadBufferArrayOutputWithContext(context.Context) UploadBufferArrayOutput
}

UploadBufferArrayInput is an input type that accepts UploadBufferArray and UploadBufferArrayOutput values. You can construct a concrete instance of `UploadBufferArrayInput` via:

UploadBufferArray{ UploadBufferArgs{...} }

type UploadBufferArrayOutput added in v3.25.0

type UploadBufferArrayOutput struct{ *pulumi.OutputState }

func (UploadBufferArrayOutput) ElementType added in v3.25.0

func (UploadBufferArrayOutput) ElementType() reflect.Type

func (UploadBufferArrayOutput) Index added in v3.25.0

func (UploadBufferArrayOutput) ToUploadBufferArrayOutput added in v3.25.0

func (o UploadBufferArrayOutput) ToUploadBufferArrayOutput() UploadBufferArrayOutput

func (UploadBufferArrayOutput) ToUploadBufferArrayOutputWithContext added in v3.25.0

func (o UploadBufferArrayOutput) ToUploadBufferArrayOutputWithContext(ctx context.Context) UploadBufferArrayOutput

type UploadBufferInput added in v3.13.0

type UploadBufferInput interface {
	pulumi.Input

	ToUploadBufferOutput() UploadBufferOutput
	ToUploadBufferOutputWithContext(ctx context.Context) UploadBufferOutput
}

type UploadBufferMap added in v3.25.0

type UploadBufferMap map[string]UploadBufferInput

func (UploadBufferMap) ElementType added in v3.25.0

func (UploadBufferMap) ElementType() reflect.Type

func (UploadBufferMap) ToUploadBufferMapOutput added in v3.25.0

func (i UploadBufferMap) ToUploadBufferMapOutput() UploadBufferMapOutput

func (UploadBufferMap) ToUploadBufferMapOutputWithContext added in v3.25.0

func (i UploadBufferMap) ToUploadBufferMapOutputWithContext(ctx context.Context) UploadBufferMapOutput

type UploadBufferMapInput added in v3.25.0

type UploadBufferMapInput interface {
	pulumi.Input

	ToUploadBufferMapOutput() UploadBufferMapOutput
	ToUploadBufferMapOutputWithContext(context.Context) UploadBufferMapOutput
}

UploadBufferMapInput is an input type that accepts UploadBufferMap and UploadBufferMapOutput values. You can construct a concrete instance of `UploadBufferMapInput` via:

UploadBufferMap{ "key": UploadBufferArgs{...} }

type UploadBufferMapOutput added in v3.25.0

type UploadBufferMapOutput struct{ *pulumi.OutputState }

func (UploadBufferMapOutput) ElementType added in v3.25.0

func (UploadBufferMapOutput) ElementType() reflect.Type

func (UploadBufferMapOutput) MapIndex added in v3.25.0

func (UploadBufferMapOutput) ToUploadBufferMapOutput added in v3.25.0

func (o UploadBufferMapOutput) ToUploadBufferMapOutput() UploadBufferMapOutput

func (UploadBufferMapOutput) ToUploadBufferMapOutputWithContext added in v3.25.0

func (o UploadBufferMapOutput) ToUploadBufferMapOutputWithContext(ctx context.Context) UploadBufferMapOutput

type UploadBufferOutput added in v3.13.0

type UploadBufferOutput struct {
	*pulumi.OutputState
}

func (UploadBufferOutput) ElementType added in v3.13.0

func (UploadBufferOutput) ElementType() reflect.Type

func (UploadBufferOutput) ToUploadBufferOutput added in v3.13.0

func (o UploadBufferOutput) ToUploadBufferOutput() UploadBufferOutput

func (UploadBufferOutput) ToUploadBufferOutputWithContext added in v3.13.0

func (o UploadBufferOutput) ToUploadBufferOutputWithContext(ctx context.Context) UploadBufferOutput

func (UploadBufferOutput) ToUploadBufferPtrOutput added in v3.25.0

func (o UploadBufferOutput) ToUploadBufferPtrOutput() UploadBufferPtrOutput

func (UploadBufferOutput) ToUploadBufferPtrOutputWithContext added in v3.25.0

func (o UploadBufferOutput) ToUploadBufferPtrOutputWithContext(ctx context.Context) UploadBufferPtrOutput

type UploadBufferPtrInput added in v3.25.0

type UploadBufferPtrInput interface {
	pulumi.Input

	ToUploadBufferPtrOutput() UploadBufferPtrOutput
	ToUploadBufferPtrOutputWithContext(ctx context.Context) UploadBufferPtrOutput
}

type UploadBufferPtrOutput added in v3.25.0

type UploadBufferPtrOutput struct {
	*pulumi.OutputState
}

func (UploadBufferPtrOutput) ElementType added in v3.25.0

func (UploadBufferPtrOutput) ElementType() reflect.Type

func (UploadBufferPtrOutput) ToUploadBufferPtrOutput added in v3.25.0

func (o UploadBufferPtrOutput) ToUploadBufferPtrOutput() UploadBufferPtrOutput

func (UploadBufferPtrOutput) ToUploadBufferPtrOutputWithContext added in v3.25.0

func (o UploadBufferPtrOutput) ToUploadBufferPtrOutputWithContext(ctx context.Context) UploadBufferPtrOutput

type UploadBufferState

type UploadBufferState struct {
	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringPtrInput
	// Local disk path. For example, `/dev/nvme1n1`.
	DiskPath pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringPtrInput
}

func (UploadBufferState) ElementType

func (UploadBufferState) ElementType() reflect.Type

type WorkingStorage

type WorkingStorage struct {
	pulumi.CustomResourceState

	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"`
}

Manages an AWS Storage Gateway working storage.

> **NOTE:** The Storage Gateway API provides no method to remove a working storage disk. Destroying this resource does not perform any Storage Gateway actions.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/storagegateway"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storagegateway.NewWorkingStorage(ctx, "example", &storagegateway.WorkingStorageArgs{
			DiskId:     pulumi.Any(data.Aws_storagegateway_local_disk.Example.Id),
			GatewayArn: pulumi.Any(aws_storagegateway_gateway.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

`aws_storagegateway_working_storage` can be imported by using the gateway Amazon Resource Name (ARN) and local disk identifier separated with a colon (`:`), e.g.

```sh

$ pulumi import aws:storagegateway/workingStorage:WorkingStorage example arn:aws:storagegateway:us-east-1:123456789012:gateway/sgw-12345678:pci-0000:03:00.0-scsi-0:0:0:0

```

func GetWorkingStorage

func GetWorkingStorage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WorkingStorageState, opts ...pulumi.ResourceOption) (*WorkingStorage, error)

GetWorkingStorage gets an existing WorkingStorage resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewWorkingStorage

func NewWorkingStorage(ctx *pulumi.Context,
	name string, args *WorkingStorageArgs, opts ...pulumi.ResourceOption) (*WorkingStorage, error)

NewWorkingStorage registers a new resource with the given unique name, arguments, and options.

func (*WorkingStorage) ElementType added in v3.13.0

func (*WorkingStorage) ElementType() reflect.Type

func (*WorkingStorage) ToWorkingStorageOutput added in v3.13.0

func (i *WorkingStorage) ToWorkingStorageOutput() WorkingStorageOutput

func (*WorkingStorage) ToWorkingStorageOutputWithContext added in v3.13.0

func (i *WorkingStorage) ToWorkingStorageOutputWithContext(ctx context.Context) WorkingStorageOutput

func (*WorkingStorage) ToWorkingStoragePtrOutput added in v3.25.0

func (i *WorkingStorage) ToWorkingStoragePtrOutput() WorkingStoragePtrOutput

func (*WorkingStorage) ToWorkingStoragePtrOutputWithContext added in v3.25.0

func (i *WorkingStorage) ToWorkingStoragePtrOutputWithContext(ctx context.Context) WorkingStoragePtrOutput

type WorkingStorageArgs

type WorkingStorageArgs struct {
	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringInput
}

The set of arguments for constructing a WorkingStorage resource.

func (WorkingStorageArgs) ElementType

func (WorkingStorageArgs) ElementType() reflect.Type

type WorkingStorageArray added in v3.25.0

type WorkingStorageArray []WorkingStorageInput

func (WorkingStorageArray) ElementType added in v3.25.0

func (WorkingStorageArray) ElementType() reflect.Type

func (WorkingStorageArray) ToWorkingStorageArrayOutput added in v3.25.0

func (i WorkingStorageArray) ToWorkingStorageArrayOutput() WorkingStorageArrayOutput

func (WorkingStorageArray) ToWorkingStorageArrayOutputWithContext added in v3.25.0

func (i WorkingStorageArray) ToWorkingStorageArrayOutputWithContext(ctx context.Context) WorkingStorageArrayOutput

type WorkingStorageArrayInput added in v3.25.0

type WorkingStorageArrayInput interface {
	pulumi.Input

	ToWorkingStorageArrayOutput() WorkingStorageArrayOutput
	ToWorkingStorageArrayOutputWithContext(context.Context) WorkingStorageArrayOutput
}

WorkingStorageArrayInput is an input type that accepts WorkingStorageArray and WorkingStorageArrayOutput values. You can construct a concrete instance of `WorkingStorageArrayInput` via:

WorkingStorageArray{ WorkingStorageArgs{...} }

type WorkingStorageArrayOutput added in v3.25.0

type WorkingStorageArrayOutput struct{ *pulumi.OutputState }

func (WorkingStorageArrayOutput) ElementType added in v3.25.0

func (WorkingStorageArrayOutput) ElementType() reflect.Type

func (WorkingStorageArrayOutput) Index added in v3.25.0

func (WorkingStorageArrayOutput) ToWorkingStorageArrayOutput added in v3.25.0

func (o WorkingStorageArrayOutput) ToWorkingStorageArrayOutput() WorkingStorageArrayOutput

func (WorkingStorageArrayOutput) ToWorkingStorageArrayOutputWithContext added in v3.25.0

func (o WorkingStorageArrayOutput) ToWorkingStorageArrayOutputWithContext(ctx context.Context) WorkingStorageArrayOutput

type WorkingStorageInput added in v3.13.0

type WorkingStorageInput interface {
	pulumi.Input

	ToWorkingStorageOutput() WorkingStorageOutput
	ToWorkingStorageOutputWithContext(ctx context.Context) WorkingStorageOutput
}

type WorkingStorageMap added in v3.25.0

type WorkingStorageMap map[string]WorkingStorageInput

func (WorkingStorageMap) ElementType added in v3.25.0

func (WorkingStorageMap) ElementType() reflect.Type

func (WorkingStorageMap) ToWorkingStorageMapOutput added in v3.25.0

func (i WorkingStorageMap) ToWorkingStorageMapOutput() WorkingStorageMapOutput

func (WorkingStorageMap) ToWorkingStorageMapOutputWithContext added in v3.25.0

func (i WorkingStorageMap) ToWorkingStorageMapOutputWithContext(ctx context.Context) WorkingStorageMapOutput

type WorkingStorageMapInput added in v3.25.0

type WorkingStorageMapInput interface {
	pulumi.Input

	ToWorkingStorageMapOutput() WorkingStorageMapOutput
	ToWorkingStorageMapOutputWithContext(context.Context) WorkingStorageMapOutput
}

WorkingStorageMapInput is an input type that accepts WorkingStorageMap and WorkingStorageMapOutput values. You can construct a concrete instance of `WorkingStorageMapInput` via:

WorkingStorageMap{ "key": WorkingStorageArgs{...} }

type WorkingStorageMapOutput added in v3.25.0

type WorkingStorageMapOutput struct{ *pulumi.OutputState }

func (WorkingStorageMapOutput) ElementType added in v3.25.0

func (WorkingStorageMapOutput) ElementType() reflect.Type

func (WorkingStorageMapOutput) MapIndex added in v3.25.0

func (WorkingStorageMapOutput) ToWorkingStorageMapOutput added in v3.25.0

func (o WorkingStorageMapOutput) ToWorkingStorageMapOutput() WorkingStorageMapOutput

func (WorkingStorageMapOutput) ToWorkingStorageMapOutputWithContext added in v3.25.0

func (o WorkingStorageMapOutput) ToWorkingStorageMapOutputWithContext(ctx context.Context) WorkingStorageMapOutput

type WorkingStorageOutput added in v3.13.0

type WorkingStorageOutput struct {
	*pulumi.OutputState
}

func (WorkingStorageOutput) ElementType added in v3.13.0

func (WorkingStorageOutput) ElementType() reflect.Type

func (WorkingStorageOutput) ToWorkingStorageOutput added in v3.13.0

func (o WorkingStorageOutput) ToWorkingStorageOutput() WorkingStorageOutput

func (WorkingStorageOutput) ToWorkingStorageOutputWithContext added in v3.13.0

func (o WorkingStorageOutput) ToWorkingStorageOutputWithContext(ctx context.Context) WorkingStorageOutput

func (WorkingStorageOutput) ToWorkingStoragePtrOutput added in v3.25.0

func (o WorkingStorageOutput) ToWorkingStoragePtrOutput() WorkingStoragePtrOutput

func (WorkingStorageOutput) ToWorkingStoragePtrOutputWithContext added in v3.25.0

func (o WorkingStorageOutput) ToWorkingStoragePtrOutputWithContext(ctx context.Context) WorkingStoragePtrOutput

type WorkingStoragePtrInput added in v3.25.0

type WorkingStoragePtrInput interface {
	pulumi.Input

	ToWorkingStoragePtrOutput() WorkingStoragePtrOutput
	ToWorkingStoragePtrOutputWithContext(ctx context.Context) WorkingStoragePtrOutput
}

type WorkingStoragePtrOutput added in v3.25.0

type WorkingStoragePtrOutput struct {
	*pulumi.OutputState
}

func (WorkingStoragePtrOutput) ElementType added in v3.25.0

func (WorkingStoragePtrOutput) ElementType() reflect.Type

func (WorkingStoragePtrOutput) ToWorkingStoragePtrOutput added in v3.25.0

func (o WorkingStoragePtrOutput) ToWorkingStoragePtrOutput() WorkingStoragePtrOutput

func (WorkingStoragePtrOutput) ToWorkingStoragePtrOutputWithContext added in v3.25.0

func (o WorkingStoragePtrOutput) ToWorkingStoragePtrOutputWithContext(ctx context.Context) WorkingStoragePtrOutput

type WorkingStorageState

type WorkingStorageState struct {
	// Local disk identifier. For example, `pci-0000:03:00.0-scsi-0:0:0:0`.
	DiskId pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the gateway.
	GatewayArn pulumi.StringPtrInput
}

func (WorkingStorageState) ElementType

func (WorkingStorageState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL