Documentation ¶
Index ¶
- type Cache
- type CacheArgs
- type CacheState
- type CachesIscsiVolume
- type CachesIscsiVolumeArgs
- type CachesIscsiVolumeState
- type Gateway
- type GatewayArgs
- type GatewaySmbActiveDirectorySettings
- type GatewaySmbActiveDirectorySettingsArgs
- func (GatewaySmbActiveDirectorySettingsArgs) ElementType() reflect.Type
- func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsOutput() GatewaySmbActiveDirectorySettingsOutput
- func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsOutput
- func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput
- func (i GatewaySmbActiveDirectorySettingsArgs) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput
- type GatewaySmbActiveDirectorySettingsInput
- type GatewaySmbActiveDirectorySettingsOutput
- func (o GatewaySmbActiveDirectorySettingsOutput) DomainName() pulumi.StringOutput
- func (GatewaySmbActiveDirectorySettingsOutput) ElementType() reflect.Type
- func (o GatewaySmbActiveDirectorySettingsOutput) Password() pulumi.StringOutput
- func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsOutput() GatewaySmbActiveDirectorySettingsOutput
- func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsOutput
- func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput
- func (o GatewaySmbActiveDirectorySettingsOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput
- func (o GatewaySmbActiveDirectorySettingsOutput) Username() pulumi.StringOutput
- type GatewaySmbActiveDirectorySettingsPtrInput
- type GatewaySmbActiveDirectorySettingsPtrOutput
- func (o GatewaySmbActiveDirectorySettingsPtrOutput) DomainName() pulumi.StringPtrOutput
- func (o GatewaySmbActiveDirectorySettingsPtrOutput) Elem() GatewaySmbActiveDirectorySettingsOutput
- func (GatewaySmbActiveDirectorySettingsPtrOutput) ElementType() reflect.Type
- func (o GatewaySmbActiveDirectorySettingsPtrOutput) Password() pulumi.StringPtrOutput
- func (o GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput
- func (o GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput
- func (o GatewaySmbActiveDirectorySettingsPtrOutput) Username() pulumi.StringPtrOutput
- type GatewayState
- type GetLocalDiskArgs
- type GetLocalDiskResult
- type NfsFileShare
- type NfsFileShareArgs
- type NfsFileShareCacheAttributes
- type NfsFileShareCacheAttributesArgs
- func (NfsFileShareCacheAttributesArgs) ElementType() reflect.Type
- func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesOutput() NfsFileShareCacheAttributesOutput
- func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesOutput
- func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput
- func (i NfsFileShareCacheAttributesArgs) ToNfsFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesPtrOutput
- type NfsFileShareCacheAttributesInput
- type NfsFileShareCacheAttributesOutput
- func (o NfsFileShareCacheAttributesOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput
- func (NfsFileShareCacheAttributesOutput) ElementType() reflect.Type
- func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesOutput() NfsFileShareCacheAttributesOutput
- func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesOutput
- func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput
- func (o NfsFileShareCacheAttributesOutput) ToNfsFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesPtrOutput
- type NfsFileShareCacheAttributesPtrInput
- type NfsFileShareCacheAttributesPtrOutput
- func (o NfsFileShareCacheAttributesPtrOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput
- func (o NfsFileShareCacheAttributesPtrOutput) Elem() NfsFileShareCacheAttributesOutput
- func (NfsFileShareCacheAttributesPtrOutput) ElementType() reflect.Type
- func (o NfsFileShareCacheAttributesPtrOutput) ToNfsFileShareCacheAttributesPtrOutput() NfsFileShareCacheAttributesPtrOutput
- func (o NfsFileShareCacheAttributesPtrOutput) ToNfsFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) NfsFileShareCacheAttributesPtrOutput
- type NfsFileShareNfsFileShareDefaults
- type NfsFileShareNfsFileShareDefaultsArgs
- func (NfsFileShareNfsFileShareDefaultsArgs) ElementType() reflect.Type
- func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsOutput() NfsFileShareNfsFileShareDefaultsOutput
- func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsOutput
- func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput
- func (i NfsFileShareNfsFileShareDefaultsArgs) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput
- type NfsFileShareNfsFileShareDefaultsInput
- type NfsFileShareNfsFileShareDefaultsOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) DirectoryMode() pulumi.StringPtrOutput
- func (NfsFileShareNfsFileShareDefaultsOutput) ElementType() reflect.Type
- func (o NfsFileShareNfsFileShareDefaultsOutput) FileMode() pulumi.StringPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) GroupId() pulumi.IntPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) OwnerId() pulumi.IntPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsOutput() NfsFileShareNfsFileShareDefaultsOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput
- type NfsFileShareNfsFileShareDefaultsPtrInput
- type NfsFileShareNfsFileShareDefaultsPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) DirectoryMode() pulumi.StringPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) Elem() NfsFileShareNfsFileShareDefaultsOutput
- func (NfsFileShareNfsFileShareDefaultsPtrOutput) ElementType() reflect.Type
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) FileMode() pulumi.StringPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) GroupId() pulumi.IntPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) OwnerId() pulumi.IntPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutput() NfsFileShareNfsFileShareDefaultsPtrOutput
- func (o NfsFileShareNfsFileShareDefaultsPtrOutput) ToNfsFileShareNfsFileShareDefaultsPtrOutputWithContext(ctx context.Context) NfsFileShareNfsFileShareDefaultsPtrOutput
- type NfsFileShareState
- type SmbFileShare
- type SmbFileShareArgs
- type SmbFileShareCacheAttributes
- type SmbFileShareCacheAttributesArgs
- func (SmbFileShareCacheAttributesArgs) ElementType() reflect.Type
- func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesOutput() SmbFileShareCacheAttributesOutput
- func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesOutput
- func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput
- func (i SmbFileShareCacheAttributesArgs) ToSmbFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesPtrOutput
- type SmbFileShareCacheAttributesInput
- type SmbFileShareCacheAttributesOutput
- func (o SmbFileShareCacheAttributesOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput
- func (SmbFileShareCacheAttributesOutput) ElementType() reflect.Type
- func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesOutput() SmbFileShareCacheAttributesOutput
- func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesOutput
- func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput
- func (o SmbFileShareCacheAttributesOutput) ToSmbFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesPtrOutput
- type SmbFileShareCacheAttributesPtrInput
- type SmbFileShareCacheAttributesPtrOutput
- func (o SmbFileShareCacheAttributesPtrOutput) CacheStaleTimeoutInSeconds() pulumi.IntPtrOutput
- func (o SmbFileShareCacheAttributesPtrOutput) Elem() SmbFileShareCacheAttributesOutput
- func (SmbFileShareCacheAttributesPtrOutput) ElementType() reflect.Type
- func (o SmbFileShareCacheAttributesPtrOutput) ToSmbFileShareCacheAttributesPtrOutput() SmbFileShareCacheAttributesPtrOutput
- func (o SmbFileShareCacheAttributesPtrOutput) ToSmbFileShareCacheAttributesPtrOutputWithContext(ctx context.Context) SmbFileShareCacheAttributesPtrOutput
- type SmbFileShareState
- type StoredIscsiVolume
- type StoredIscsiVolumeArgs
- type StoredIscsiVolumeState
- type TapePool
- type TapePoolArgs
- type TapePoolState
- type UploadBuffer
- type UploadBufferArgs
- type UploadBufferState
- type WorkingStorage
- type WorkingStorageArgs
- type WorkingStorageState
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 }) }
```
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).
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 ¶
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 }) }
```
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.
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 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"` // 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"` // 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"` // Type of medium changer to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `STK-L700`, `AWS-Gateway-VTL`. 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"` // 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 mapping 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 }) }
```
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.
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`. 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 // 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 mapping 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 GatewaySmbActiveDirectorySettings ¶
type GatewaySmbActiveDirectorySettings struct { // The name of the domain that you want the gateway to join. DomainName string `pulumi:"domainName"` // The password of the user who has permission to add the gateway to the Active Directory domain. Password string `pulumi:"password"` // 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 { // The name of the domain that you want the gateway to join. DomainName pulumi.StringInput `pulumi:"domainName"` // The password of the user who has permission to add the gateway to the Active Directory domain. Password pulumi.StringInput `pulumi:"password"` // 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) ElementType() reflect.Type
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) DomainName ¶
func (o GatewaySmbActiveDirectorySettingsOutput) DomainName() pulumi.StringOutput
The name of the domain that you want the gateway to join.
func (GatewaySmbActiveDirectorySettingsOutput) ElementType ¶
func (GatewaySmbActiveDirectorySettingsOutput) ElementType() reflect.Type
func (GatewaySmbActiveDirectorySettingsOutput) Password ¶
func (o GatewaySmbActiveDirectorySettingsOutput) Password() pulumi.StringOutput
The password of the user who has permission to add the gateway to the Active Directory domain.
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 ¶
func (o GatewaySmbActiveDirectorySettingsOutput) Username() pulumi.StringOutput
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
func GatewaySmbActiveDirectorySettingsPtr ¶
func GatewaySmbActiveDirectorySettingsPtr(v *GatewaySmbActiveDirectorySettingsArgs) GatewaySmbActiveDirectorySettingsPtrInput
type GatewaySmbActiveDirectorySettingsPtrOutput ¶
type GatewaySmbActiveDirectorySettingsPtrOutput struct{ *pulumi.OutputState }
func (GatewaySmbActiveDirectorySettingsPtrOutput) DomainName ¶
func (o GatewaySmbActiveDirectorySettingsPtrOutput) DomainName() pulumi.StringPtrOutput
The name of the domain that you want the gateway to join.
func (GatewaySmbActiveDirectorySettingsPtrOutput) ElementType ¶
func (GatewaySmbActiveDirectorySettingsPtrOutput) ElementType() reflect.Type
func (GatewaySmbActiveDirectorySettingsPtrOutput) Password ¶
func (o GatewaySmbActiveDirectorySettingsPtrOutput) Password() pulumi.StringPtrOutput
The password of the user who has permission to add the gateway to the Active Directory domain.
func (GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput ¶
func (o GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutput() GatewaySmbActiveDirectorySettingsPtrOutput
func (GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext ¶
func (o GatewaySmbActiveDirectorySettingsPtrOutput) ToGatewaySmbActiveDirectorySettingsPtrOutputWithContext(ctx context.Context) GatewaySmbActiveDirectorySettingsPtrOutput
func (GatewaySmbActiveDirectorySettingsPtrOutput) Username ¶
func (o GatewaySmbActiveDirectorySettingsPtrOutput) Username() pulumi.StringPtrOutput
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 // 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 // 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 // Type of medium changer to use for tape gateway. This provider cannot detect drift of this argument. Valid values: `STK-L700`, `AWS-Gateway-VTL`. 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 // 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 mapping 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.StringOutput `pulumi:"arn"` CacheAttributes NfsFileShareCacheAttributesPtrOutput `pulumi:"cacheAttributes"` ClientLists pulumi.StringArrayOutput `pulumi:"clientLists"` DefaultStorageClass pulumi.StringPtrOutput `pulumi:"defaultStorageClass"` FileshareId pulumi.StringOutput `pulumi:"fileshareId"` GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"` GuessMimeTypeEnabled pulumi.BoolPtrOutput `pulumi:"guessMimeTypeEnabled"` KmsEncrypted pulumi.BoolPtrOutput `pulumi:"kmsEncrypted"` KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"` LocationArn pulumi.StringOutput `pulumi:"locationArn"` NfsFileShareDefaults NfsFileShareNfsFileShareDefaultsPtrOutput `pulumi:"nfsFileShareDefaults"` ObjectAcl pulumi.StringPtrOutput `pulumi:"objectAcl"` Path pulumi.StringOutput `pulumi:"path"` ReadOnly pulumi.BoolPtrOutput `pulumi:"readOnly"` RequesterPays pulumi.BoolPtrOutput `pulumi:"requesterPays"` RoleArn pulumi.StringOutput `pulumi:"roleArn"` Squash pulumi.StringPtrOutput `pulumi:"squash"` Tags pulumi.StringMapOutput `pulumi:"tags"` }Arn
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 }) }
```
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.
type NfsFileShareArgs ¶
type NfsFileShareArgs struct { NfsFileShareCacheAttributesPtrInput ClientLists pulumi.StringArrayInput DefaultStorageClass pulumi.StringPtrInput GatewayArn pulumi.StringInput GuessMimeTypeEnabled pulumi.BoolPtrInput KmsEncrypted pulumi.BoolPtrInput KmsKeyArn pulumi.StringPtrInput LocationArn pulumi.StringInput NfsFileShareDefaults NfsFileShareNfsFileShareDefaultsPtrInput ObjectAcl pulumi.StringPtrInput ReadOnly pulumi.BoolPtrInput RequesterPays pulumi.BoolPtrInput RoleArn pulumi.StringInput Squash pulumi.StringPtrInput Tags pulumi.StringMapInput }CacheAttributes
The set of arguments for constructing a NfsFileShare resource.
func (NfsFileShareArgs) ElementType ¶
func (NfsFileShareArgs) ElementType() reflect.Type
type NfsFileShareCacheAttributes ¶ added in v3.3.0
type NfsFileShareCacheAttributes struct { // 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 { // 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) ElementType() reflect.Type
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
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
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) ElementType() reflect.Type
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
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
func NfsFileShareCacheAttributesPtr(v *NfsFileShareCacheAttributesArgs) NfsFileShareCacheAttributesPtrInput
type NfsFileShareCacheAttributesPtrOutput ¶ added in v3.3.0
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) ElementType ¶ added in v3.3.0
func (NfsFileShareCacheAttributesPtrOutput) ElementType() reflect.Type
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 NfsFileShareNfsFileShareDefaultsArgs ¶
type NfsFileShareNfsFileShareDefaultsArgs struct { pulumi.StringPtrInput `pulumi:"directoryMode"` FileMode pulumi.StringPtrInput `pulumi:"fileMode"` GroupId pulumi.IntPtrInput `pulumi:"groupId"` OwnerId pulumi.IntPtrInput `pulumi:"ownerId"` }DirectoryMode
func (NfsFileShareNfsFileShareDefaultsArgs) ElementType ¶
func (NfsFileShareNfsFileShareDefaultsArgs) ElementType() reflect.Type
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 ¶
NfsFileShareNfsFileShareDefaultsInput is an input type that accepts NfsFileShareNfsFileShareDefaultsArgs and NfsFileShareNfsFileShareDefaultsOutput values. You can construct a concrete instance of `NfsFileShareNfsFileShareDefaultsInput` via:
NfsFileShareNfsFileShareDefaultsArgs{...}
type NfsFileShareNfsFileShareDefaultsOutput ¶
func (NfsFileShareNfsFileShareDefaultsOutput) DirectoryMode ¶
func (o NfsFileShareNfsFileShareDefaultsOutput) DirectoryMode() pulumi.StringPtrOutput
The Unix directory mode in the string form "nnnn". Defaults to `"0777"`.
func (NfsFileShareNfsFileShareDefaultsOutput) ElementType ¶
func (NfsFileShareNfsFileShareDefaultsOutput) ElementType() reflect.Type
func (NfsFileShareNfsFileShareDefaultsOutput) FileMode ¶
func (o NfsFileShareNfsFileShareDefaultsOutput) FileMode() pulumi.StringPtrOutput
The Unix file mode in the string form "nnnn". Defaults to `"0666"`.
func (NfsFileShareNfsFileShareDefaultsOutput) GroupId ¶
func (o NfsFileShareNfsFileShareDefaultsOutput) GroupId() pulumi.IntPtrOutput
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 ¶
func (o NfsFileShareNfsFileShareDefaultsOutput) OwnerId() pulumi.IntPtrOutput
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 ¶
NfsFileShareNfsFileShareDefaultsPtrInput is an input type that accepts NfsFileShareNfsFileShareDefaultsArgs, NfsFileShareNfsFileShareDefaultsPtr and NfsFileShareNfsFileShareDefaultsPtrOutput values. You can construct a concrete instance of `NfsFileShareNfsFileShareDefaultsPtrInput` via:
NfsFileShareNfsFileShareDefaultsArgs{...} or: nil
func NfsFileShareNfsFileShareDefaultsPtr ¶
func NfsFileShareNfsFileShareDefaultsPtr(v *NfsFileShareNfsFileShareDefaultsArgs) NfsFileShareNfsFileShareDefaultsPtrInput
type NfsFileShareNfsFileShareDefaultsPtrOutput ¶
func (NfsFileShareNfsFileShareDefaultsPtrOutput) DirectoryMode ¶
func (o NfsFileShareNfsFileShareDefaultsPtrOutput) DirectoryMode() pulumi.StringPtrOutput
The Unix directory mode in the string form "nnnn". Defaults to `"0777"`.
func (NfsFileShareNfsFileShareDefaultsPtrOutput) ElementType ¶
func (NfsFileShareNfsFileShareDefaultsPtrOutput) ElementType() reflect.Type
func (NfsFileShareNfsFileShareDefaultsPtrOutput) FileMode ¶
func (o NfsFileShareNfsFileShareDefaultsPtrOutput) FileMode() pulumi.StringPtrOutput
The Unix file mode in the string form "nnnn". Defaults to `"0666"`.
func (NfsFileShareNfsFileShareDefaultsPtrOutput) GroupId ¶
func (o NfsFileShareNfsFileShareDefaultsPtrOutput) GroupId() pulumi.IntPtrOutput
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 ¶
func (o NfsFileShareNfsFileShareDefaultsPtrOutput) OwnerId() pulumi.IntPtrOutput
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 NfsFileShareState ¶
type NfsFileShareState struct { pulumi.StringPtrInput CacheAttributes NfsFileShareCacheAttributesPtrInput ClientLists pulumi.StringArrayInput DefaultStorageClass pulumi.StringPtrInput FileshareId pulumi.StringPtrInput GatewayArn pulumi.StringPtrInput GuessMimeTypeEnabled pulumi.BoolPtrInput KmsEncrypted pulumi.BoolPtrInput KmsKeyArn pulumi.StringPtrInput LocationArn pulumi.StringPtrInput NfsFileShareDefaults NfsFileShareNfsFileShareDefaultsPtrInput ObjectAcl pulumi.StringPtrInput Path pulumi.StringPtrInput ReadOnly pulumi.BoolPtrInput RequesterPays pulumi.BoolPtrInput RoleArn pulumi.StringPtrInput Squash pulumi.StringPtrInput Tags pulumi.StringMapInput }Arn
func (NfsFileShareState) ElementType ¶
func (NfsFileShareState) ElementType() reflect.Type
type SmbFileShare ¶
type SmbFileShare struct { pulumi.StringArrayOutput `pulumi:"adminUserLists"` Arn pulumi.StringOutput `pulumi:"arn"` AuditDestinationArn pulumi.StringPtrOutput `pulumi:"auditDestinationArn"` Authentication pulumi.StringPtrOutput `pulumi:"authentication"` CacheAttributes SmbFileShareCacheAttributesPtrOutput `pulumi:"cacheAttributes"` CaseSensitivity pulumi.StringPtrOutput `pulumi:"caseSensitivity"` DefaultStorageClass pulumi.StringPtrOutput `pulumi:"defaultStorageClass"` FileshareId pulumi.StringOutput `pulumi:"fileshareId"` GatewayArn pulumi.StringOutput `pulumi:"gatewayArn"` GuessMimeTypeEnabled pulumi.BoolPtrOutput `pulumi:"guessMimeTypeEnabled"` InvalidUserLists pulumi.StringArrayOutput `pulumi:"invalidUserLists"` KmsEncrypted pulumi.BoolPtrOutput `pulumi:"kmsEncrypted"` KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"` LocationArn pulumi.StringOutput `pulumi:"locationArn"` ObjectAcl pulumi.StringPtrOutput `pulumi:"objectAcl"` Path pulumi.StringOutput `pulumi:"path"` ReadOnly pulumi.BoolPtrOutput `pulumi:"readOnly"` RequesterPays pulumi.BoolPtrOutput `pulumi:"requesterPays"` RoleArn pulumi.StringOutput `pulumi:"roleArn"` SmbAclEnabled pulumi.BoolPtrOutput `pulumi:"smbAclEnabled"` Tags pulumi.StringMapOutput `pulumi:"tags"` ValidUserLists pulumi.StringArrayOutput `pulumi:"validUserLists"` }AdminUserLists
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 }) }
```
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.
type SmbFileShareArgs ¶
type SmbFileShareArgs struct { pulumi.StringArrayInput AuditDestinationArn pulumi.StringPtrInput Authentication pulumi.StringPtrInput CacheAttributes SmbFileShareCacheAttributesPtrInput CaseSensitivity pulumi.StringPtrInput DefaultStorageClass pulumi.StringPtrInput GatewayArn pulumi.StringInput GuessMimeTypeEnabled pulumi.BoolPtrInput InvalidUserLists pulumi.StringArrayInput KmsEncrypted pulumi.BoolPtrInput KmsKeyArn pulumi.StringPtrInput LocationArn pulumi.StringInput ObjectAcl pulumi.StringPtrInput ReadOnly pulumi.BoolPtrInput RequesterPays pulumi.BoolPtrInput RoleArn pulumi.StringInput SmbAclEnabled pulumi.BoolPtrInput Tags pulumi.StringMapInput ValidUserLists pulumi.StringArrayInput }AdminUserLists
The set of arguments for constructing a SmbFileShare resource.
func (SmbFileShareArgs) ElementType ¶
func (SmbFileShareArgs) ElementType() reflect.Type
type SmbFileShareCacheAttributes ¶ added in v3.3.0
type SmbFileShareCacheAttributes struct { // 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 { // 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) ElementType() reflect.Type
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
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
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) ElementType() reflect.Type
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
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
func SmbFileShareCacheAttributesPtr(v *SmbFileShareCacheAttributesArgs) SmbFileShareCacheAttributesPtrInput
type SmbFileShareCacheAttributesPtrOutput ¶ added in v3.3.0
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) ElementType ¶ added in v3.3.0
func (SmbFileShareCacheAttributesPtrOutput) ElementType() reflect.Type
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 SmbFileShareState ¶
type SmbFileShareState struct { pulumi.StringArrayInput Arn pulumi.StringPtrInput AuditDestinationArn pulumi.StringPtrInput Authentication pulumi.StringPtrInput CacheAttributes SmbFileShareCacheAttributesPtrInput CaseSensitivity pulumi.StringPtrInput DefaultStorageClass pulumi.StringPtrInput FileshareId pulumi.StringPtrInput GatewayArn pulumi.StringPtrInput GuessMimeTypeEnabled pulumi.BoolPtrInput InvalidUserLists pulumi.StringArrayInput KmsEncrypted pulumi.BoolPtrInput KmsKeyArn pulumi.StringPtrInput LocationArn pulumi.StringPtrInput ObjectAcl pulumi.StringPtrInput Path pulumi.StringPtrInput ReadOnly pulumi.BoolPtrInput RequesterPays pulumi.BoolPtrInput RoleArn pulumi.StringPtrInput SmbAclEnabled pulumi.BoolPtrInput Tags pulumi.StringMapInput ValidUserLists pulumi.StringArrayInput }AdminUserLists
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`](https://www.terraform.io/docs/providers/aws/r/storagegateway_working_storage.html) 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 }) }
```
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.
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 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 }) }
```
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.
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 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"` // 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
```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.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 }) }
```
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.
type UploadBufferArgs ¶
type UploadBufferArgs 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 UploadBuffer resource.
func (UploadBufferArgs) ElementType ¶
func (UploadBufferArgs) ElementType() reflect.Type
type UploadBufferState ¶
type UploadBufferState 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 (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 }) }
```
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.
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 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