ebs

package
v4.15.0 Latest Latest
Warning

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

Go to latest
Published: Aug 9, 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 DefaultKmsKey

type DefaultKmsKey struct {
	pulumi.CustomResourceState

	// The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use to encrypt the EBS volume.
	KeyArn pulumi.StringOutput `pulumi:"keyArn"`
}

Provides a resource to manage the default customer master key (CMK) that your AWS account uses to encrypt EBS volumes.

Your AWS account has an AWS-managed default CMK that is used for encrypting an EBS volume when no CMK is specified in the API call that creates the volume. By using the `ebs.DefaultKmsKey` resource, you can specify a customer-managed CMK to use in place of the AWS-managed default CMK.

> **NOTE:** Creating an `ebs.DefaultKmsKey` resource does not enable default EBS encryption. Use the `ebs.EncryptionByDefault` to enable default EBS encryption.

> **NOTE:** Destroying this resource will reset the default CMK to the account's AWS-managed default CMK for EBS.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ebs.NewDefaultKmsKey(ctx, "example", &ebs.DefaultKmsKeyArgs{
			KeyArn: pulumi.Any(aws_kms_key.Example.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The EBS default KMS CMK can be imported with the KMS key ARN, e.g. console

```sh

$ pulumi import aws:ebs/defaultKmsKey:DefaultKmsKey example arn:aws:kms:us-east-1:123456789012:key/abcd-1234

```

func GetDefaultKmsKey

func GetDefaultKmsKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DefaultKmsKeyState, opts ...pulumi.ResourceOption) (*DefaultKmsKey, error)

GetDefaultKmsKey gets an existing DefaultKmsKey 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 NewDefaultKmsKey

func NewDefaultKmsKey(ctx *pulumi.Context,
	name string, args *DefaultKmsKeyArgs, opts ...pulumi.ResourceOption) (*DefaultKmsKey, error)

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

func (*DefaultKmsKey) ElementType

func (*DefaultKmsKey) ElementType() reflect.Type

func (*DefaultKmsKey) ToDefaultKmsKeyOutput

func (i *DefaultKmsKey) ToDefaultKmsKeyOutput() DefaultKmsKeyOutput

func (*DefaultKmsKey) ToDefaultKmsKeyOutputWithContext

func (i *DefaultKmsKey) ToDefaultKmsKeyOutputWithContext(ctx context.Context) DefaultKmsKeyOutput

func (*DefaultKmsKey) ToDefaultKmsKeyPtrOutput

func (i *DefaultKmsKey) ToDefaultKmsKeyPtrOutput() DefaultKmsKeyPtrOutput

func (*DefaultKmsKey) ToDefaultKmsKeyPtrOutputWithContext

func (i *DefaultKmsKey) ToDefaultKmsKeyPtrOutputWithContext(ctx context.Context) DefaultKmsKeyPtrOutput

type DefaultKmsKeyArgs

type DefaultKmsKeyArgs struct {
	// The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use to encrypt the EBS volume.
	KeyArn pulumi.StringInput
}

The set of arguments for constructing a DefaultKmsKey resource.

func (DefaultKmsKeyArgs) ElementType

func (DefaultKmsKeyArgs) ElementType() reflect.Type

type DefaultKmsKeyArray

type DefaultKmsKeyArray []DefaultKmsKeyInput

func (DefaultKmsKeyArray) ElementType

func (DefaultKmsKeyArray) ElementType() reflect.Type

func (DefaultKmsKeyArray) ToDefaultKmsKeyArrayOutput

func (i DefaultKmsKeyArray) ToDefaultKmsKeyArrayOutput() DefaultKmsKeyArrayOutput

func (DefaultKmsKeyArray) ToDefaultKmsKeyArrayOutputWithContext

func (i DefaultKmsKeyArray) ToDefaultKmsKeyArrayOutputWithContext(ctx context.Context) DefaultKmsKeyArrayOutput

type DefaultKmsKeyArrayInput

type DefaultKmsKeyArrayInput interface {
	pulumi.Input

	ToDefaultKmsKeyArrayOutput() DefaultKmsKeyArrayOutput
	ToDefaultKmsKeyArrayOutputWithContext(context.Context) DefaultKmsKeyArrayOutput
}

DefaultKmsKeyArrayInput is an input type that accepts DefaultKmsKeyArray and DefaultKmsKeyArrayOutput values. You can construct a concrete instance of `DefaultKmsKeyArrayInput` via:

DefaultKmsKeyArray{ DefaultKmsKeyArgs{...} }

type DefaultKmsKeyArrayOutput

type DefaultKmsKeyArrayOutput struct{ *pulumi.OutputState }

func (DefaultKmsKeyArrayOutput) ElementType

func (DefaultKmsKeyArrayOutput) ElementType() reflect.Type

func (DefaultKmsKeyArrayOutput) Index

func (DefaultKmsKeyArrayOutput) ToDefaultKmsKeyArrayOutput

func (o DefaultKmsKeyArrayOutput) ToDefaultKmsKeyArrayOutput() DefaultKmsKeyArrayOutput

func (DefaultKmsKeyArrayOutput) ToDefaultKmsKeyArrayOutputWithContext

func (o DefaultKmsKeyArrayOutput) ToDefaultKmsKeyArrayOutputWithContext(ctx context.Context) DefaultKmsKeyArrayOutput

type DefaultKmsKeyInput

type DefaultKmsKeyInput interface {
	pulumi.Input

	ToDefaultKmsKeyOutput() DefaultKmsKeyOutput
	ToDefaultKmsKeyOutputWithContext(ctx context.Context) DefaultKmsKeyOutput
}

type DefaultKmsKeyMap

type DefaultKmsKeyMap map[string]DefaultKmsKeyInput

func (DefaultKmsKeyMap) ElementType

func (DefaultKmsKeyMap) ElementType() reflect.Type

func (DefaultKmsKeyMap) ToDefaultKmsKeyMapOutput

func (i DefaultKmsKeyMap) ToDefaultKmsKeyMapOutput() DefaultKmsKeyMapOutput

func (DefaultKmsKeyMap) ToDefaultKmsKeyMapOutputWithContext

func (i DefaultKmsKeyMap) ToDefaultKmsKeyMapOutputWithContext(ctx context.Context) DefaultKmsKeyMapOutput

type DefaultKmsKeyMapInput

type DefaultKmsKeyMapInput interface {
	pulumi.Input

	ToDefaultKmsKeyMapOutput() DefaultKmsKeyMapOutput
	ToDefaultKmsKeyMapOutputWithContext(context.Context) DefaultKmsKeyMapOutput
}

DefaultKmsKeyMapInput is an input type that accepts DefaultKmsKeyMap and DefaultKmsKeyMapOutput values. You can construct a concrete instance of `DefaultKmsKeyMapInput` via:

DefaultKmsKeyMap{ "key": DefaultKmsKeyArgs{...} }

type DefaultKmsKeyMapOutput

type DefaultKmsKeyMapOutput struct{ *pulumi.OutputState }

func (DefaultKmsKeyMapOutput) ElementType

func (DefaultKmsKeyMapOutput) ElementType() reflect.Type

func (DefaultKmsKeyMapOutput) MapIndex

func (DefaultKmsKeyMapOutput) ToDefaultKmsKeyMapOutput

func (o DefaultKmsKeyMapOutput) ToDefaultKmsKeyMapOutput() DefaultKmsKeyMapOutput

func (DefaultKmsKeyMapOutput) ToDefaultKmsKeyMapOutputWithContext

func (o DefaultKmsKeyMapOutput) ToDefaultKmsKeyMapOutputWithContext(ctx context.Context) DefaultKmsKeyMapOutput

type DefaultKmsKeyOutput

type DefaultKmsKeyOutput struct{ *pulumi.OutputState }

func (DefaultKmsKeyOutput) ElementType

func (DefaultKmsKeyOutput) ElementType() reflect.Type

func (DefaultKmsKeyOutput) ToDefaultKmsKeyOutput

func (o DefaultKmsKeyOutput) ToDefaultKmsKeyOutput() DefaultKmsKeyOutput

func (DefaultKmsKeyOutput) ToDefaultKmsKeyOutputWithContext

func (o DefaultKmsKeyOutput) ToDefaultKmsKeyOutputWithContext(ctx context.Context) DefaultKmsKeyOutput

func (DefaultKmsKeyOutput) ToDefaultKmsKeyPtrOutput

func (o DefaultKmsKeyOutput) ToDefaultKmsKeyPtrOutput() DefaultKmsKeyPtrOutput

func (DefaultKmsKeyOutput) ToDefaultKmsKeyPtrOutputWithContext

func (o DefaultKmsKeyOutput) ToDefaultKmsKeyPtrOutputWithContext(ctx context.Context) DefaultKmsKeyPtrOutput

type DefaultKmsKeyPtrInput

type DefaultKmsKeyPtrInput interface {
	pulumi.Input

	ToDefaultKmsKeyPtrOutput() DefaultKmsKeyPtrOutput
	ToDefaultKmsKeyPtrOutputWithContext(ctx context.Context) DefaultKmsKeyPtrOutput
}

type DefaultKmsKeyPtrOutput

type DefaultKmsKeyPtrOutput struct{ *pulumi.OutputState }

func (DefaultKmsKeyPtrOutput) Elem added in v4.15.0

func (DefaultKmsKeyPtrOutput) ElementType

func (DefaultKmsKeyPtrOutput) ElementType() reflect.Type

func (DefaultKmsKeyPtrOutput) ToDefaultKmsKeyPtrOutput

func (o DefaultKmsKeyPtrOutput) ToDefaultKmsKeyPtrOutput() DefaultKmsKeyPtrOutput

func (DefaultKmsKeyPtrOutput) ToDefaultKmsKeyPtrOutputWithContext

func (o DefaultKmsKeyPtrOutput) ToDefaultKmsKeyPtrOutputWithContext(ctx context.Context) DefaultKmsKeyPtrOutput

type DefaultKmsKeyState

type DefaultKmsKeyState struct {
	// The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use to encrypt the EBS volume.
	KeyArn pulumi.StringPtrInput
}

func (DefaultKmsKeyState) ElementType

func (DefaultKmsKeyState) ElementType() reflect.Type

type EncryptionByDefault

type EncryptionByDefault struct {
	pulumi.CustomResourceState

	// Whether or not default EBS encryption is enabled. Valid values are `true` or `false`. Defaults to `true`.
	Enabled pulumi.BoolPtrOutput `pulumi:"enabled"`
}

Provides a resource to manage whether default EBS encryption is enabled for your AWS account in the current AWS region. To manage the default KMS key for the region, see the `ebs.DefaultKmsKey` resource.

> **NOTE:** Removing this resource disables default EBS encryption.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ebs.NewEncryptionByDefault(ctx, "example", &ebs.EncryptionByDefaultArgs{
			Enabled: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetEncryptionByDefault

func GetEncryptionByDefault(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EncryptionByDefaultState, opts ...pulumi.ResourceOption) (*EncryptionByDefault, error)

GetEncryptionByDefault gets an existing EncryptionByDefault 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 NewEncryptionByDefault

func NewEncryptionByDefault(ctx *pulumi.Context,
	name string, args *EncryptionByDefaultArgs, opts ...pulumi.ResourceOption) (*EncryptionByDefault, error)

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

func (*EncryptionByDefault) ElementType

func (*EncryptionByDefault) ElementType() reflect.Type

func (*EncryptionByDefault) ToEncryptionByDefaultOutput

func (i *EncryptionByDefault) ToEncryptionByDefaultOutput() EncryptionByDefaultOutput

func (*EncryptionByDefault) ToEncryptionByDefaultOutputWithContext

func (i *EncryptionByDefault) ToEncryptionByDefaultOutputWithContext(ctx context.Context) EncryptionByDefaultOutput

func (*EncryptionByDefault) ToEncryptionByDefaultPtrOutput

func (i *EncryptionByDefault) ToEncryptionByDefaultPtrOutput() EncryptionByDefaultPtrOutput

func (*EncryptionByDefault) ToEncryptionByDefaultPtrOutputWithContext

func (i *EncryptionByDefault) ToEncryptionByDefaultPtrOutputWithContext(ctx context.Context) EncryptionByDefaultPtrOutput

type EncryptionByDefaultArgs

type EncryptionByDefaultArgs struct {
	// Whether or not default EBS encryption is enabled. Valid values are `true` or `false`. Defaults to `true`.
	Enabled pulumi.BoolPtrInput
}

The set of arguments for constructing a EncryptionByDefault resource.

func (EncryptionByDefaultArgs) ElementType

func (EncryptionByDefaultArgs) ElementType() reflect.Type

type EncryptionByDefaultArray

type EncryptionByDefaultArray []EncryptionByDefaultInput

func (EncryptionByDefaultArray) ElementType

func (EncryptionByDefaultArray) ElementType() reflect.Type

func (EncryptionByDefaultArray) ToEncryptionByDefaultArrayOutput

func (i EncryptionByDefaultArray) ToEncryptionByDefaultArrayOutput() EncryptionByDefaultArrayOutput

func (EncryptionByDefaultArray) ToEncryptionByDefaultArrayOutputWithContext

func (i EncryptionByDefaultArray) ToEncryptionByDefaultArrayOutputWithContext(ctx context.Context) EncryptionByDefaultArrayOutput

type EncryptionByDefaultArrayInput

type EncryptionByDefaultArrayInput interface {
	pulumi.Input

	ToEncryptionByDefaultArrayOutput() EncryptionByDefaultArrayOutput
	ToEncryptionByDefaultArrayOutputWithContext(context.Context) EncryptionByDefaultArrayOutput
}

EncryptionByDefaultArrayInput is an input type that accepts EncryptionByDefaultArray and EncryptionByDefaultArrayOutput values. You can construct a concrete instance of `EncryptionByDefaultArrayInput` via:

EncryptionByDefaultArray{ EncryptionByDefaultArgs{...} }

type EncryptionByDefaultArrayOutput

type EncryptionByDefaultArrayOutput struct{ *pulumi.OutputState }

func (EncryptionByDefaultArrayOutput) ElementType

func (EncryptionByDefaultArrayOutput) Index

func (EncryptionByDefaultArrayOutput) ToEncryptionByDefaultArrayOutput

func (o EncryptionByDefaultArrayOutput) ToEncryptionByDefaultArrayOutput() EncryptionByDefaultArrayOutput

func (EncryptionByDefaultArrayOutput) ToEncryptionByDefaultArrayOutputWithContext

func (o EncryptionByDefaultArrayOutput) ToEncryptionByDefaultArrayOutputWithContext(ctx context.Context) EncryptionByDefaultArrayOutput

type EncryptionByDefaultInput

type EncryptionByDefaultInput interface {
	pulumi.Input

	ToEncryptionByDefaultOutput() EncryptionByDefaultOutput
	ToEncryptionByDefaultOutputWithContext(ctx context.Context) EncryptionByDefaultOutput
}

type EncryptionByDefaultMap

type EncryptionByDefaultMap map[string]EncryptionByDefaultInput

func (EncryptionByDefaultMap) ElementType

func (EncryptionByDefaultMap) ElementType() reflect.Type

func (EncryptionByDefaultMap) ToEncryptionByDefaultMapOutput

func (i EncryptionByDefaultMap) ToEncryptionByDefaultMapOutput() EncryptionByDefaultMapOutput

func (EncryptionByDefaultMap) ToEncryptionByDefaultMapOutputWithContext

func (i EncryptionByDefaultMap) ToEncryptionByDefaultMapOutputWithContext(ctx context.Context) EncryptionByDefaultMapOutput

type EncryptionByDefaultMapInput

type EncryptionByDefaultMapInput interface {
	pulumi.Input

	ToEncryptionByDefaultMapOutput() EncryptionByDefaultMapOutput
	ToEncryptionByDefaultMapOutputWithContext(context.Context) EncryptionByDefaultMapOutput
}

EncryptionByDefaultMapInput is an input type that accepts EncryptionByDefaultMap and EncryptionByDefaultMapOutput values. You can construct a concrete instance of `EncryptionByDefaultMapInput` via:

EncryptionByDefaultMap{ "key": EncryptionByDefaultArgs{...} }

type EncryptionByDefaultMapOutput

type EncryptionByDefaultMapOutput struct{ *pulumi.OutputState }

func (EncryptionByDefaultMapOutput) ElementType

func (EncryptionByDefaultMapOutput) MapIndex

func (EncryptionByDefaultMapOutput) ToEncryptionByDefaultMapOutput

func (o EncryptionByDefaultMapOutput) ToEncryptionByDefaultMapOutput() EncryptionByDefaultMapOutput

func (EncryptionByDefaultMapOutput) ToEncryptionByDefaultMapOutputWithContext

func (o EncryptionByDefaultMapOutput) ToEncryptionByDefaultMapOutputWithContext(ctx context.Context) EncryptionByDefaultMapOutput

type EncryptionByDefaultOutput

type EncryptionByDefaultOutput struct{ *pulumi.OutputState }

func (EncryptionByDefaultOutput) ElementType

func (EncryptionByDefaultOutput) ElementType() reflect.Type

func (EncryptionByDefaultOutput) ToEncryptionByDefaultOutput

func (o EncryptionByDefaultOutput) ToEncryptionByDefaultOutput() EncryptionByDefaultOutput

func (EncryptionByDefaultOutput) ToEncryptionByDefaultOutputWithContext

func (o EncryptionByDefaultOutput) ToEncryptionByDefaultOutputWithContext(ctx context.Context) EncryptionByDefaultOutput

func (EncryptionByDefaultOutput) ToEncryptionByDefaultPtrOutput

func (o EncryptionByDefaultOutput) ToEncryptionByDefaultPtrOutput() EncryptionByDefaultPtrOutput

func (EncryptionByDefaultOutput) ToEncryptionByDefaultPtrOutputWithContext

func (o EncryptionByDefaultOutput) ToEncryptionByDefaultPtrOutputWithContext(ctx context.Context) EncryptionByDefaultPtrOutput

type EncryptionByDefaultPtrInput

type EncryptionByDefaultPtrInput interface {
	pulumi.Input

	ToEncryptionByDefaultPtrOutput() EncryptionByDefaultPtrOutput
	ToEncryptionByDefaultPtrOutputWithContext(ctx context.Context) EncryptionByDefaultPtrOutput
}

type EncryptionByDefaultPtrOutput

type EncryptionByDefaultPtrOutput struct{ *pulumi.OutputState }

func (EncryptionByDefaultPtrOutput) Elem added in v4.15.0

func (EncryptionByDefaultPtrOutput) ElementType

func (EncryptionByDefaultPtrOutput) ToEncryptionByDefaultPtrOutput

func (o EncryptionByDefaultPtrOutput) ToEncryptionByDefaultPtrOutput() EncryptionByDefaultPtrOutput

func (EncryptionByDefaultPtrOutput) ToEncryptionByDefaultPtrOutputWithContext

func (o EncryptionByDefaultPtrOutput) ToEncryptionByDefaultPtrOutputWithContext(ctx context.Context) EncryptionByDefaultPtrOutput

type EncryptionByDefaultState

type EncryptionByDefaultState struct {
	// Whether or not default EBS encryption is enabled. Valid values are `true` or `false`. Defaults to `true`.
	Enabled pulumi.BoolPtrInput
}

func (EncryptionByDefaultState) ElementType

func (EncryptionByDefaultState) ElementType() reflect.Type

type GetEbsVolumesArgs

type GetEbsVolumesArgs struct {
	// Custom filter block as described below.
	Filters []GetEbsVolumesFilter `pulumi:"filters"`
	// A map of tags, each pair of which must exactly match
	// a pair on the desired volumes.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getEbsVolumes.

type GetEbsVolumesFilter

type GetEbsVolumesFilter struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVolumes.html).
	// For example, if matching against the `size` filter, use:
	Name string `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// EBS Volume IDs will be selected if any one of the given values match.
	Values []string `pulumi:"values"`
}

type GetEbsVolumesFilterArgs

type GetEbsVolumesFilterArgs struct {
	// The name of the field to filter by, as defined by
	// [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVolumes.html).
	// For example, if matching against the `size` filter, use:
	Name pulumi.StringInput `pulumi:"name"`
	// Set of values that are accepted for the given field.
	// EBS Volume IDs will be selected if any one of the given values match.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetEbsVolumesFilterArgs) ElementType

func (GetEbsVolumesFilterArgs) ElementType() reflect.Type

func (GetEbsVolumesFilterArgs) ToGetEbsVolumesFilterOutput

func (i GetEbsVolumesFilterArgs) ToGetEbsVolumesFilterOutput() GetEbsVolumesFilterOutput

func (GetEbsVolumesFilterArgs) ToGetEbsVolumesFilterOutputWithContext

func (i GetEbsVolumesFilterArgs) ToGetEbsVolumesFilterOutputWithContext(ctx context.Context) GetEbsVolumesFilterOutput

type GetEbsVolumesFilterArray

type GetEbsVolumesFilterArray []GetEbsVolumesFilterInput

func (GetEbsVolumesFilterArray) ElementType

func (GetEbsVolumesFilterArray) ElementType() reflect.Type

func (GetEbsVolumesFilterArray) ToGetEbsVolumesFilterArrayOutput

func (i GetEbsVolumesFilterArray) ToGetEbsVolumesFilterArrayOutput() GetEbsVolumesFilterArrayOutput

func (GetEbsVolumesFilterArray) ToGetEbsVolumesFilterArrayOutputWithContext

func (i GetEbsVolumesFilterArray) ToGetEbsVolumesFilterArrayOutputWithContext(ctx context.Context) GetEbsVolumesFilterArrayOutput

type GetEbsVolumesFilterArrayInput

type GetEbsVolumesFilterArrayInput interface {
	pulumi.Input

	ToGetEbsVolumesFilterArrayOutput() GetEbsVolumesFilterArrayOutput
	ToGetEbsVolumesFilterArrayOutputWithContext(context.Context) GetEbsVolumesFilterArrayOutput
}

GetEbsVolumesFilterArrayInput is an input type that accepts GetEbsVolumesFilterArray and GetEbsVolumesFilterArrayOutput values. You can construct a concrete instance of `GetEbsVolumesFilterArrayInput` via:

GetEbsVolumesFilterArray{ GetEbsVolumesFilterArgs{...} }

type GetEbsVolumesFilterArrayOutput

type GetEbsVolumesFilterArrayOutput struct{ *pulumi.OutputState }

func (GetEbsVolumesFilterArrayOutput) ElementType

func (GetEbsVolumesFilterArrayOutput) Index

func (GetEbsVolumesFilterArrayOutput) ToGetEbsVolumesFilterArrayOutput

func (o GetEbsVolumesFilterArrayOutput) ToGetEbsVolumesFilterArrayOutput() GetEbsVolumesFilterArrayOutput

func (GetEbsVolumesFilterArrayOutput) ToGetEbsVolumesFilterArrayOutputWithContext

func (o GetEbsVolumesFilterArrayOutput) ToGetEbsVolumesFilterArrayOutputWithContext(ctx context.Context) GetEbsVolumesFilterArrayOutput

type GetEbsVolumesFilterInput

type GetEbsVolumesFilterInput interface {
	pulumi.Input

	ToGetEbsVolumesFilterOutput() GetEbsVolumesFilterOutput
	ToGetEbsVolumesFilterOutputWithContext(context.Context) GetEbsVolumesFilterOutput
}

GetEbsVolumesFilterInput is an input type that accepts GetEbsVolumesFilterArgs and GetEbsVolumesFilterOutput values. You can construct a concrete instance of `GetEbsVolumesFilterInput` via:

GetEbsVolumesFilterArgs{...}

type GetEbsVolumesFilterOutput

type GetEbsVolumesFilterOutput struct{ *pulumi.OutputState }

func (GetEbsVolumesFilterOutput) ElementType

func (GetEbsVolumesFilterOutput) ElementType() reflect.Type

func (GetEbsVolumesFilterOutput) Name

The name of the field to filter by, as defined by [the underlying AWS API](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVolumes.html). For example, if matching against the `size` filter, use:

func (GetEbsVolumesFilterOutput) ToGetEbsVolumesFilterOutput

func (o GetEbsVolumesFilterOutput) ToGetEbsVolumesFilterOutput() GetEbsVolumesFilterOutput

func (GetEbsVolumesFilterOutput) ToGetEbsVolumesFilterOutputWithContext

func (o GetEbsVolumesFilterOutput) ToGetEbsVolumesFilterOutputWithContext(ctx context.Context) GetEbsVolumesFilterOutput

func (GetEbsVolumesFilterOutput) Values

Set of values that are accepted for the given field. EBS Volume IDs will be selected if any one of the given values match.

type GetEbsVolumesResult

type GetEbsVolumesResult struct {
	Filters []GetEbsVolumesFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A set of all the EBS Volume IDs found. This data source will fail if
	// no volumes match the provided criteria.
	Ids  []string          `pulumi:"ids"`
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getEbsVolumes.

func GetEbsVolumes

func GetEbsVolumes(ctx *pulumi.Context, args *GetEbsVolumesArgs, opts ...pulumi.InvokeOption) (*GetEbsVolumesResult, error)

`ebs.getEbsVolumes` provides identifying information for EBS volumes matching given criteria.

This data source can be useful for getting a list of volume IDs with (for example) matching tags.

type GetSnapshotFilter

type GetSnapshotFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetSnapshotFilterArgs

type GetSnapshotFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSnapshotFilterArgs) ElementType

func (GetSnapshotFilterArgs) ElementType() reflect.Type

func (GetSnapshotFilterArgs) ToGetSnapshotFilterOutput

func (i GetSnapshotFilterArgs) ToGetSnapshotFilterOutput() GetSnapshotFilterOutput

func (GetSnapshotFilterArgs) ToGetSnapshotFilterOutputWithContext

func (i GetSnapshotFilterArgs) ToGetSnapshotFilterOutputWithContext(ctx context.Context) GetSnapshotFilterOutput

type GetSnapshotFilterArray

type GetSnapshotFilterArray []GetSnapshotFilterInput

func (GetSnapshotFilterArray) ElementType

func (GetSnapshotFilterArray) ElementType() reflect.Type

func (GetSnapshotFilterArray) ToGetSnapshotFilterArrayOutput

func (i GetSnapshotFilterArray) ToGetSnapshotFilterArrayOutput() GetSnapshotFilterArrayOutput

func (GetSnapshotFilterArray) ToGetSnapshotFilterArrayOutputWithContext

func (i GetSnapshotFilterArray) ToGetSnapshotFilterArrayOutputWithContext(ctx context.Context) GetSnapshotFilterArrayOutput

type GetSnapshotFilterArrayInput

type GetSnapshotFilterArrayInput interface {
	pulumi.Input

	ToGetSnapshotFilterArrayOutput() GetSnapshotFilterArrayOutput
	ToGetSnapshotFilterArrayOutputWithContext(context.Context) GetSnapshotFilterArrayOutput
}

GetSnapshotFilterArrayInput is an input type that accepts GetSnapshotFilterArray and GetSnapshotFilterArrayOutput values. You can construct a concrete instance of `GetSnapshotFilterArrayInput` via:

GetSnapshotFilterArray{ GetSnapshotFilterArgs{...} }

type GetSnapshotFilterArrayOutput

type GetSnapshotFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSnapshotFilterArrayOutput) ElementType

func (GetSnapshotFilterArrayOutput) Index

func (GetSnapshotFilterArrayOutput) ToGetSnapshotFilterArrayOutput

func (o GetSnapshotFilterArrayOutput) ToGetSnapshotFilterArrayOutput() GetSnapshotFilterArrayOutput

func (GetSnapshotFilterArrayOutput) ToGetSnapshotFilterArrayOutputWithContext

func (o GetSnapshotFilterArrayOutput) ToGetSnapshotFilterArrayOutputWithContext(ctx context.Context) GetSnapshotFilterArrayOutput

type GetSnapshotFilterInput

type GetSnapshotFilterInput interface {
	pulumi.Input

	ToGetSnapshotFilterOutput() GetSnapshotFilterOutput
	ToGetSnapshotFilterOutputWithContext(context.Context) GetSnapshotFilterOutput
}

GetSnapshotFilterInput is an input type that accepts GetSnapshotFilterArgs and GetSnapshotFilterOutput values. You can construct a concrete instance of `GetSnapshotFilterInput` via:

GetSnapshotFilterArgs{...}

type GetSnapshotFilterOutput

type GetSnapshotFilterOutput struct{ *pulumi.OutputState }

func (GetSnapshotFilterOutput) ElementType

func (GetSnapshotFilterOutput) ElementType() reflect.Type

func (GetSnapshotFilterOutput) Name

func (GetSnapshotFilterOutput) ToGetSnapshotFilterOutput

func (o GetSnapshotFilterOutput) ToGetSnapshotFilterOutput() GetSnapshotFilterOutput

func (GetSnapshotFilterOutput) ToGetSnapshotFilterOutputWithContext

func (o GetSnapshotFilterOutput) ToGetSnapshotFilterOutputWithContext(ctx context.Context) GetSnapshotFilterOutput

func (GetSnapshotFilterOutput) Values

type GetSnapshotIdsArgs

type GetSnapshotIdsArgs struct {
	// One or more name/value pairs to filter off of. There are
	// several valid keys, for a full reference, check out
	// [describe-volumes in the AWS CLI reference][1].
	Filters []GetSnapshotIdsFilter `pulumi:"filters"`
	// Returns the snapshots owned by the specified owner id. Multiple owners can be specified.
	Owners []string `pulumi:"owners"`
	// One or more AWS accounts IDs that can create volumes from the snapshot.
	RestorableByUserIds []string `pulumi:"restorableByUserIds"`
}

A collection of arguments for invoking getSnapshotIds.

type GetSnapshotIdsFilter

type GetSnapshotIdsFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetSnapshotIdsFilterArgs

type GetSnapshotIdsFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetSnapshotIdsFilterArgs) ElementType

func (GetSnapshotIdsFilterArgs) ElementType() reflect.Type

func (GetSnapshotIdsFilterArgs) ToGetSnapshotIdsFilterOutput

func (i GetSnapshotIdsFilterArgs) ToGetSnapshotIdsFilterOutput() GetSnapshotIdsFilterOutput

func (GetSnapshotIdsFilterArgs) ToGetSnapshotIdsFilterOutputWithContext

func (i GetSnapshotIdsFilterArgs) ToGetSnapshotIdsFilterOutputWithContext(ctx context.Context) GetSnapshotIdsFilterOutput

type GetSnapshotIdsFilterArray

type GetSnapshotIdsFilterArray []GetSnapshotIdsFilterInput

func (GetSnapshotIdsFilterArray) ElementType

func (GetSnapshotIdsFilterArray) ElementType() reflect.Type

func (GetSnapshotIdsFilterArray) ToGetSnapshotIdsFilterArrayOutput

func (i GetSnapshotIdsFilterArray) ToGetSnapshotIdsFilterArrayOutput() GetSnapshotIdsFilterArrayOutput

func (GetSnapshotIdsFilterArray) ToGetSnapshotIdsFilterArrayOutputWithContext

func (i GetSnapshotIdsFilterArray) ToGetSnapshotIdsFilterArrayOutputWithContext(ctx context.Context) GetSnapshotIdsFilterArrayOutput

type GetSnapshotIdsFilterArrayInput

type GetSnapshotIdsFilterArrayInput interface {
	pulumi.Input

	ToGetSnapshotIdsFilterArrayOutput() GetSnapshotIdsFilterArrayOutput
	ToGetSnapshotIdsFilterArrayOutputWithContext(context.Context) GetSnapshotIdsFilterArrayOutput
}

GetSnapshotIdsFilterArrayInput is an input type that accepts GetSnapshotIdsFilterArray and GetSnapshotIdsFilterArrayOutput values. You can construct a concrete instance of `GetSnapshotIdsFilterArrayInput` via:

GetSnapshotIdsFilterArray{ GetSnapshotIdsFilterArgs{...} }

type GetSnapshotIdsFilterArrayOutput

type GetSnapshotIdsFilterArrayOutput struct{ *pulumi.OutputState }

func (GetSnapshotIdsFilterArrayOutput) ElementType

func (GetSnapshotIdsFilterArrayOutput) Index

func (GetSnapshotIdsFilterArrayOutput) ToGetSnapshotIdsFilterArrayOutput

func (o GetSnapshotIdsFilterArrayOutput) ToGetSnapshotIdsFilterArrayOutput() GetSnapshotIdsFilterArrayOutput

func (GetSnapshotIdsFilterArrayOutput) ToGetSnapshotIdsFilterArrayOutputWithContext

func (o GetSnapshotIdsFilterArrayOutput) ToGetSnapshotIdsFilterArrayOutputWithContext(ctx context.Context) GetSnapshotIdsFilterArrayOutput

type GetSnapshotIdsFilterInput

type GetSnapshotIdsFilterInput interface {
	pulumi.Input

	ToGetSnapshotIdsFilterOutput() GetSnapshotIdsFilterOutput
	ToGetSnapshotIdsFilterOutputWithContext(context.Context) GetSnapshotIdsFilterOutput
}

GetSnapshotIdsFilterInput is an input type that accepts GetSnapshotIdsFilterArgs and GetSnapshotIdsFilterOutput values. You can construct a concrete instance of `GetSnapshotIdsFilterInput` via:

GetSnapshotIdsFilterArgs{...}

type GetSnapshotIdsFilterOutput

type GetSnapshotIdsFilterOutput struct{ *pulumi.OutputState }

func (GetSnapshotIdsFilterOutput) ElementType

func (GetSnapshotIdsFilterOutput) ElementType() reflect.Type

func (GetSnapshotIdsFilterOutput) Name

func (GetSnapshotIdsFilterOutput) ToGetSnapshotIdsFilterOutput

func (o GetSnapshotIdsFilterOutput) ToGetSnapshotIdsFilterOutput() GetSnapshotIdsFilterOutput

func (GetSnapshotIdsFilterOutput) ToGetSnapshotIdsFilterOutputWithContext

func (o GetSnapshotIdsFilterOutput) ToGetSnapshotIdsFilterOutputWithContext(ctx context.Context) GetSnapshotIdsFilterOutput

func (GetSnapshotIdsFilterOutput) Values

type GetSnapshotIdsResult

type GetSnapshotIdsResult struct {
	Filters []GetSnapshotIdsFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of EBS snapshot IDs, sorted by creation time in descending order.
	Ids                 []string `pulumi:"ids"`
	Owners              []string `pulumi:"owners"`
	RestorableByUserIds []string `pulumi:"restorableByUserIds"`
}

A collection of values returned by getSnapshotIds.

func GetSnapshotIds

func GetSnapshotIds(ctx *pulumi.Context, args *GetSnapshotIdsArgs, opts ...pulumi.InvokeOption) (*GetSnapshotIdsResult, error)

Use this data source to get a list of EBS Snapshot IDs matching the specified criteria.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ebs.GetSnapshotIds(ctx, &ebs.GetSnapshotIdsArgs{
			Filters: []ebs.GetSnapshotIdsFilter{
				ebs.GetSnapshotIdsFilter{
					Name: "volume-size",
					Values: []string{
						"40",
					},
				},
				ebs.GetSnapshotIdsFilter{
					Name: "tag:Name",
					Values: []string{
						"Example",
					},
				},
			},
			Owners: []string{
				"self",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetVolumeFilter

type GetVolumeFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetVolumeFilterArgs

type GetVolumeFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetVolumeFilterArgs) ElementType

func (GetVolumeFilterArgs) ElementType() reflect.Type

func (GetVolumeFilterArgs) ToGetVolumeFilterOutput

func (i GetVolumeFilterArgs) ToGetVolumeFilterOutput() GetVolumeFilterOutput

func (GetVolumeFilterArgs) ToGetVolumeFilterOutputWithContext

func (i GetVolumeFilterArgs) ToGetVolumeFilterOutputWithContext(ctx context.Context) GetVolumeFilterOutput

type GetVolumeFilterArray

type GetVolumeFilterArray []GetVolumeFilterInput

func (GetVolumeFilterArray) ElementType

func (GetVolumeFilterArray) ElementType() reflect.Type

func (GetVolumeFilterArray) ToGetVolumeFilterArrayOutput

func (i GetVolumeFilterArray) ToGetVolumeFilterArrayOutput() GetVolumeFilterArrayOutput

func (GetVolumeFilterArray) ToGetVolumeFilterArrayOutputWithContext

func (i GetVolumeFilterArray) ToGetVolumeFilterArrayOutputWithContext(ctx context.Context) GetVolumeFilterArrayOutput

type GetVolumeFilterArrayInput

type GetVolumeFilterArrayInput interface {
	pulumi.Input

	ToGetVolumeFilterArrayOutput() GetVolumeFilterArrayOutput
	ToGetVolumeFilterArrayOutputWithContext(context.Context) GetVolumeFilterArrayOutput
}

GetVolumeFilterArrayInput is an input type that accepts GetVolumeFilterArray and GetVolumeFilterArrayOutput values. You can construct a concrete instance of `GetVolumeFilterArrayInput` via:

GetVolumeFilterArray{ GetVolumeFilterArgs{...} }

type GetVolumeFilterArrayOutput

type GetVolumeFilterArrayOutput struct{ *pulumi.OutputState }

func (GetVolumeFilterArrayOutput) ElementType

func (GetVolumeFilterArrayOutput) ElementType() reflect.Type

func (GetVolumeFilterArrayOutput) Index

func (GetVolumeFilterArrayOutput) ToGetVolumeFilterArrayOutput

func (o GetVolumeFilterArrayOutput) ToGetVolumeFilterArrayOutput() GetVolumeFilterArrayOutput

func (GetVolumeFilterArrayOutput) ToGetVolumeFilterArrayOutputWithContext

func (o GetVolumeFilterArrayOutput) ToGetVolumeFilterArrayOutputWithContext(ctx context.Context) GetVolumeFilterArrayOutput

type GetVolumeFilterInput

type GetVolumeFilterInput interface {
	pulumi.Input

	ToGetVolumeFilterOutput() GetVolumeFilterOutput
	ToGetVolumeFilterOutputWithContext(context.Context) GetVolumeFilterOutput
}

GetVolumeFilterInput is an input type that accepts GetVolumeFilterArgs and GetVolumeFilterOutput values. You can construct a concrete instance of `GetVolumeFilterInput` via:

GetVolumeFilterArgs{...}

type GetVolumeFilterOutput

type GetVolumeFilterOutput struct{ *pulumi.OutputState }

func (GetVolumeFilterOutput) ElementType

func (GetVolumeFilterOutput) ElementType() reflect.Type

func (GetVolumeFilterOutput) Name

func (GetVolumeFilterOutput) ToGetVolumeFilterOutput

func (o GetVolumeFilterOutput) ToGetVolumeFilterOutput() GetVolumeFilterOutput

func (GetVolumeFilterOutput) ToGetVolumeFilterOutputWithContext

func (o GetVolumeFilterOutput) ToGetVolumeFilterOutputWithContext(ctx context.Context) GetVolumeFilterOutput

func (GetVolumeFilterOutput) Values

type LookupDefaultKmsKeyResult

type LookupDefaultKmsKeyResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Amazon Resource Name (ARN) of the default KMS key uses to encrypt an EBS volume in this region when no key is specified in an API call that creates the volume and encryption by default is enabled.
	KeyArn string `pulumi:"keyArn"`
}

A collection of values returned by getDefaultKmsKey.

func LookupDefaultKmsKey

func LookupDefaultKmsKey(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*LookupDefaultKmsKeyResult, error)

Use this data source to get the default EBS encryption KMS key in the current region.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := ebs.LookupDefaultKmsKey(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Encrypted:        pulumi.Bool(true),
			KmsKeyId:         pulumi.String(current.KeyArn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupEncryptionByDefaultResult

type LookupEncryptionByDefaultResult struct {
	// Whether or not default EBS encryption is enabled. Returns as `true` or `false`.
	Enabled bool `pulumi:"enabled"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getEncryptionByDefault.

func LookupEncryptionByDefault

func LookupEncryptionByDefault(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*LookupEncryptionByDefaultResult, error)

Provides a way to check whether default EBS encryption is enabled for your AWS account in the current AWS region.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ebs.LookupEncryptionByDefault(ctx, nil, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupSnapshotArgs

type LookupSnapshotArgs struct {
	// One or more name/value pairs to filter off of. There are
	// several valid keys, for a full reference, check out
	// [describe-snapshots in the AWS CLI reference][1].
	Filters []GetSnapshotFilter `pulumi:"filters"`
	// If more than one result is returned, use the most recent snapshot.
	MostRecent *bool `pulumi:"mostRecent"`
	// Returns the snapshots owned by the specified owner id. Multiple owners can be specified.
	Owners []string `pulumi:"owners"`
	// One or more AWS accounts IDs that can create volumes from the snapshot.
	RestorableByUserIds []string `pulumi:"restorableByUserIds"`
	// Returns information on a specific snapshot_id.
	SnapshotIds []string `pulumi:"snapshotIds"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getSnapshot.

type LookupSnapshotResult

type LookupSnapshotResult struct {
	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn string `pulumi:"arn"`
	// The data encryption key identifier for the snapshot.
	DataEncryptionKeyId string `pulumi:"dataEncryptionKeyId"`
	// A description for the snapshot
	Description string `pulumi:"description"`
	// Whether the snapshot is encrypted.
	Encrypted bool                `pulumi:"encrypted"`
	Filters   []GetSnapshotFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The ARN for the KMS encryption key.
	KmsKeyId   string `pulumi:"kmsKeyId"`
	MostRecent *bool  `pulumi:"mostRecent"`
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias string `pulumi:"ownerAlias"`
	// The AWS account ID of the EBS snapshot owner.
	OwnerId             string   `pulumi:"ownerId"`
	Owners              []string `pulumi:"owners"`
	RestorableByUserIds []string `pulumi:"restorableByUserIds"`
	// The snapshot ID (e.g. snap-59fcb34e).
	SnapshotId  string   `pulumi:"snapshotId"`
	SnapshotIds []string `pulumi:"snapshotIds"`
	// The snapshot state.
	State string `pulumi:"state"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
	// The volume ID (e.g. vol-59fcb34e).
	VolumeId string `pulumi:"volumeId"`
	// The size of the drive in GiBs.
	VolumeSize int `pulumi:"volumeSize"`
}

A collection of values returned by getSnapshot.

func LookupSnapshot

func LookupSnapshot(ctx *pulumi.Context, args *LookupSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupSnapshotResult, error)

Use this data source to get information about an EBS Snapshot for use when provisioning EBS Volumes

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		_, err := ebs.LookupSnapshot(ctx, &ebs.LookupSnapshotArgs{
			Filters: []ebs.GetSnapshotFilter{
				ebs.GetSnapshotFilter{
					Name: "volume-size",
					Values: []string{
						"40",
					},
				},
				ebs.GetSnapshotFilter{
					Name: "tag:Name",
					Values: []string{
						"Example",
					},
				},
			},
			MostRecent: &opt0,
			Owners: []string{
				"self",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupVolumeArgs

type LookupVolumeArgs struct {
	// One or more name/value pairs to filter off of. There are
	// several valid keys, for a full reference, check out
	// [describe-volumes in the AWS CLI reference][1].
	Filters []GetVolumeFilter `pulumi:"filters"`
	// If more than one result is returned, use the most
	// recent Volume.
	MostRecent *bool `pulumi:"mostRecent"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getVolume.

type LookupVolumeResult

type LookupVolumeResult struct {
	// The volume ARN (e.g. arn:aws:ec2:us-east-1:0123456789012:volume/vol-59fcb34e).
	Arn string `pulumi:"arn"`
	// The AZ where the EBS volume exists.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Whether the disk is encrypted.
	Encrypted bool              `pulumi:"encrypted"`
	Filters   []GetVolumeFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The amount of IOPS for the disk.
	Iops int `pulumi:"iops"`
	// The ARN for the KMS encryption key.
	KmsKeyId   string `pulumi:"kmsKeyId"`
	MostRecent *bool  `pulumi:"mostRecent"`
	// (Optional) Specifies whether Amazon EBS Multi-Attach is enabled.
	MultiAttachEnabled bool `pulumi:"multiAttachEnabled"`
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn string `pulumi:"outpostArn"`
	// The size of the drive in GiBs.
	Size int `pulumi:"size"`
	// The snapshotId the EBS volume is based off.
	SnapshotId string `pulumi:"snapshotId"`
	// A map of tags for the resource.
	Tags map[string]string `pulumi:"tags"`
	// The throughput that the volume supports, in MiB/s.
	Throughput int `pulumi:"throughput"`
	// The volume ID (e.g. vol-59fcb34e).
	VolumeId string `pulumi:"volumeId"`
	// The type of EBS volume.
	VolumeType string `pulumi:"volumeType"`
}

A collection of values returned by getVolume.

func LookupVolume

func LookupVolume(ctx *pulumi.Context, args *LookupVolumeArgs, opts ...pulumi.InvokeOption) (*LookupVolumeResult, error)

Use this data source to get information about an EBS volume for use in other resources.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := true
		_, err := ebs.LookupVolume(ctx, &ebs.LookupVolumeArgs{
			Filters: []ebs.GetVolumeFilter{
				ebs.GetVolumeFilter{
					Name: "volume-type",
					Values: []string{
						"gp2",
					},
				},
				ebs.GetVolumeFilter{
					Name: "tag:Name",
					Values: []string{
						"Example",
					},
				},
			},
			MostRecent: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type Snapshot

type Snapshot struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The data encryption key identifier for the snapshot.
	DataEncryptionKeyId pulumi.StringOutput `pulumi:"dataEncryptionKeyId"`
	// A description of what the snapshot is.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolOutput `pulumi:"encrypted"`
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias pulumi.StringOutput `pulumi:"ownerAlias"`
	// The AWS account ID of the EBS snapshot owner.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// A map of tags for the snapshot.
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The Volume ID of which to make a snapshot.
	VolumeId pulumi.StringOutput `pulumi:"volumeId"`
	// The size of the drive in GiBs.
	VolumeSize pulumi.IntOutput `pulumi:"volumeSize"`
}

Creates a Snapshot of an EBS Volume.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Size:             pulumi.Int(40),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ebs.NewSnapshot(ctx, "exampleSnapshot", &ebs.SnapshotArgs{
			VolumeId: example.ID(),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld_snap"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

EBS Snapshot can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ebs/snapshot:Snapshot id snap-049df61146c4d7901

```

func GetSnapshot

func GetSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotState, opts ...pulumi.ResourceOption) (*Snapshot, error)

GetSnapshot gets an existing Snapshot 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 NewSnapshot

func NewSnapshot(ctx *pulumi.Context,
	name string, args *SnapshotArgs, opts ...pulumi.ResourceOption) (*Snapshot, error)

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

func (*Snapshot) ElementType

func (*Snapshot) ElementType() reflect.Type

func (*Snapshot) ToSnapshotOutput

func (i *Snapshot) ToSnapshotOutput() SnapshotOutput

func (*Snapshot) ToSnapshotOutputWithContext

func (i *Snapshot) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

func (*Snapshot) ToSnapshotPtrOutput

func (i *Snapshot) ToSnapshotPtrOutput() SnapshotPtrOutput

func (*Snapshot) ToSnapshotPtrOutputWithContext

func (i *Snapshot) ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput

type SnapshotArgs

type SnapshotArgs struct {
	// A description of what the snapshot is.
	Description pulumi.StringPtrInput
	// A map of tags for the snapshot.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The Volume ID of which to make a snapshot.
	VolumeId pulumi.StringInput
}

The set of arguments for constructing a Snapshot resource.

func (SnapshotArgs) ElementType

func (SnapshotArgs) ElementType() reflect.Type

type SnapshotArray

type SnapshotArray []SnapshotInput

func (SnapshotArray) ElementType

func (SnapshotArray) ElementType() reflect.Type

func (SnapshotArray) ToSnapshotArrayOutput

func (i SnapshotArray) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArray) ToSnapshotArrayOutputWithContext

func (i SnapshotArray) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotArrayInput

type SnapshotArrayInput interface {
	pulumi.Input

	ToSnapshotArrayOutput() SnapshotArrayOutput
	ToSnapshotArrayOutputWithContext(context.Context) SnapshotArrayOutput
}

SnapshotArrayInput is an input type that accepts SnapshotArray and SnapshotArrayOutput values. You can construct a concrete instance of `SnapshotArrayInput` via:

SnapshotArray{ SnapshotArgs{...} }

type SnapshotArrayOutput

type SnapshotArrayOutput struct{ *pulumi.OutputState }

func (SnapshotArrayOutput) ElementType

func (SnapshotArrayOutput) ElementType() reflect.Type

func (SnapshotArrayOutput) Index

func (SnapshotArrayOutput) ToSnapshotArrayOutput

func (o SnapshotArrayOutput) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArrayOutput) ToSnapshotArrayOutputWithContext

func (o SnapshotArrayOutput) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotCopy

type SnapshotCopy struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The data encryption key identifier for the snapshot.
	// * `sourceSnapshotId` The ARN of the copied snapshot.
	// * `sourceRegion` The region of the source snapshot.
	DataEncryptionKeyId pulumi.StringOutput `pulumi:"dataEncryptionKeyId"`
	// A description of what the snapshot is.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias pulumi.StringOutput `pulumi:"ownerAlias"`
	// The AWS account ID of the snapshot owner.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The region of the source snapshot.
	SourceRegion pulumi.StringOutput `pulumi:"sourceRegion"`
	// The ARN for the snapshot to be copied.
	SourceSnapshotId pulumi.StringOutput `pulumi:"sourceSnapshotId"`
	// A map of tags for the snapshot.
	Tags     pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll  pulumi.StringMapOutput `pulumi:"tagsAll"`
	VolumeId pulumi.StringOutput    `pulumi:"volumeId"`
	// The size of the drive in GiBs.
	VolumeSize pulumi.IntOutput `pulumi:"volumeSize"`
}

Creates a Snapshot of a snapshot.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Size:             pulumi.Int(40),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		exampleSnapshot, err := ebs.NewSnapshot(ctx, "exampleSnapshot", &ebs.SnapshotArgs{
			VolumeId: example.ID(),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld_snap"),
			},
		})
		if err != nil {
			return err
		}
		_, err = ebs.NewSnapshotCopy(ctx, "exampleCopy", &ebs.SnapshotCopyArgs{
			SourceSnapshotId: exampleSnapshot.ID(),
			SourceRegion:     pulumi.String("us-west-2"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld_copy_snap"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSnapshotCopy

func GetSnapshotCopy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotCopyState, opts ...pulumi.ResourceOption) (*SnapshotCopy, error)

GetSnapshotCopy gets an existing SnapshotCopy 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 NewSnapshotCopy

func NewSnapshotCopy(ctx *pulumi.Context,
	name string, args *SnapshotCopyArgs, opts ...pulumi.ResourceOption) (*SnapshotCopy, error)

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

func (*SnapshotCopy) ElementType

func (*SnapshotCopy) ElementType() reflect.Type

func (*SnapshotCopy) ToSnapshotCopyOutput

func (i *SnapshotCopy) ToSnapshotCopyOutput() SnapshotCopyOutput

func (*SnapshotCopy) ToSnapshotCopyOutputWithContext

func (i *SnapshotCopy) ToSnapshotCopyOutputWithContext(ctx context.Context) SnapshotCopyOutput

func (*SnapshotCopy) ToSnapshotCopyPtrOutput

func (i *SnapshotCopy) ToSnapshotCopyPtrOutput() SnapshotCopyPtrOutput

func (*SnapshotCopy) ToSnapshotCopyPtrOutputWithContext

func (i *SnapshotCopy) ToSnapshotCopyPtrOutputWithContext(ctx context.Context) SnapshotCopyPtrOutput

type SnapshotCopyArgs

type SnapshotCopyArgs struct {
	// A description of what the snapshot is.
	Description pulumi.StringPtrInput
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolPtrInput
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringPtrInput
	// The region of the source snapshot.
	SourceRegion pulumi.StringInput
	// The ARN for the snapshot to be copied.
	SourceSnapshotId pulumi.StringInput
	// A map of tags for the snapshot.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a SnapshotCopy resource.

func (SnapshotCopyArgs) ElementType

func (SnapshotCopyArgs) ElementType() reflect.Type

type SnapshotCopyArray

type SnapshotCopyArray []SnapshotCopyInput

func (SnapshotCopyArray) ElementType

func (SnapshotCopyArray) ElementType() reflect.Type

func (SnapshotCopyArray) ToSnapshotCopyArrayOutput

func (i SnapshotCopyArray) ToSnapshotCopyArrayOutput() SnapshotCopyArrayOutput

func (SnapshotCopyArray) ToSnapshotCopyArrayOutputWithContext

func (i SnapshotCopyArray) ToSnapshotCopyArrayOutputWithContext(ctx context.Context) SnapshotCopyArrayOutput

type SnapshotCopyArrayInput

type SnapshotCopyArrayInput interface {
	pulumi.Input

	ToSnapshotCopyArrayOutput() SnapshotCopyArrayOutput
	ToSnapshotCopyArrayOutputWithContext(context.Context) SnapshotCopyArrayOutput
}

SnapshotCopyArrayInput is an input type that accepts SnapshotCopyArray and SnapshotCopyArrayOutput values. You can construct a concrete instance of `SnapshotCopyArrayInput` via:

SnapshotCopyArray{ SnapshotCopyArgs{...} }

type SnapshotCopyArrayOutput

type SnapshotCopyArrayOutput struct{ *pulumi.OutputState }

func (SnapshotCopyArrayOutput) ElementType

func (SnapshotCopyArrayOutput) ElementType() reflect.Type

func (SnapshotCopyArrayOutput) Index

func (SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutput

func (o SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutput() SnapshotCopyArrayOutput

func (SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutputWithContext

func (o SnapshotCopyArrayOutput) ToSnapshotCopyArrayOutputWithContext(ctx context.Context) SnapshotCopyArrayOutput

type SnapshotCopyInput

type SnapshotCopyInput interface {
	pulumi.Input

	ToSnapshotCopyOutput() SnapshotCopyOutput
	ToSnapshotCopyOutputWithContext(ctx context.Context) SnapshotCopyOutput
}

type SnapshotCopyMap

type SnapshotCopyMap map[string]SnapshotCopyInput

func (SnapshotCopyMap) ElementType

func (SnapshotCopyMap) ElementType() reflect.Type

func (SnapshotCopyMap) ToSnapshotCopyMapOutput

func (i SnapshotCopyMap) ToSnapshotCopyMapOutput() SnapshotCopyMapOutput

func (SnapshotCopyMap) ToSnapshotCopyMapOutputWithContext

func (i SnapshotCopyMap) ToSnapshotCopyMapOutputWithContext(ctx context.Context) SnapshotCopyMapOutput

type SnapshotCopyMapInput

type SnapshotCopyMapInput interface {
	pulumi.Input

	ToSnapshotCopyMapOutput() SnapshotCopyMapOutput
	ToSnapshotCopyMapOutputWithContext(context.Context) SnapshotCopyMapOutput
}

SnapshotCopyMapInput is an input type that accepts SnapshotCopyMap and SnapshotCopyMapOutput values. You can construct a concrete instance of `SnapshotCopyMapInput` via:

SnapshotCopyMap{ "key": SnapshotCopyArgs{...} }

type SnapshotCopyMapOutput

type SnapshotCopyMapOutput struct{ *pulumi.OutputState }

func (SnapshotCopyMapOutput) ElementType

func (SnapshotCopyMapOutput) ElementType() reflect.Type

func (SnapshotCopyMapOutput) MapIndex

func (SnapshotCopyMapOutput) ToSnapshotCopyMapOutput

func (o SnapshotCopyMapOutput) ToSnapshotCopyMapOutput() SnapshotCopyMapOutput

func (SnapshotCopyMapOutput) ToSnapshotCopyMapOutputWithContext

func (o SnapshotCopyMapOutput) ToSnapshotCopyMapOutputWithContext(ctx context.Context) SnapshotCopyMapOutput

type SnapshotCopyOutput

type SnapshotCopyOutput struct{ *pulumi.OutputState }

func (SnapshotCopyOutput) ElementType

func (SnapshotCopyOutput) ElementType() reflect.Type

func (SnapshotCopyOutput) ToSnapshotCopyOutput

func (o SnapshotCopyOutput) ToSnapshotCopyOutput() SnapshotCopyOutput

func (SnapshotCopyOutput) ToSnapshotCopyOutputWithContext

func (o SnapshotCopyOutput) ToSnapshotCopyOutputWithContext(ctx context.Context) SnapshotCopyOutput

func (SnapshotCopyOutput) ToSnapshotCopyPtrOutput

func (o SnapshotCopyOutput) ToSnapshotCopyPtrOutput() SnapshotCopyPtrOutput

func (SnapshotCopyOutput) ToSnapshotCopyPtrOutputWithContext

func (o SnapshotCopyOutput) ToSnapshotCopyPtrOutputWithContext(ctx context.Context) SnapshotCopyPtrOutput

type SnapshotCopyPtrInput

type SnapshotCopyPtrInput interface {
	pulumi.Input

	ToSnapshotCopyPtrOutput() SnapshotCopyPtrOutput
	ToSnapshotCopyPtrOutputWithContext(ctx context.Context) SnapshotCopyPtrOutput
}

type SnapshotCopyPtrOutput

type SnapshotCopyPtrOutput struct{ *pulumi.OutputState }

func (SnapshotCopyPtrOutput) Elem added in v4.15.0

func (SnapshotCopyPtrOutput) ElementType

func (SnapshotCopyPtrOutput) ElementType() reflect.Type

func (SnapshotCopyPtrOutput) ToSnapshotCopyPtrOutput

func (o SnapshotCopyPtrOutput) ToSnapshotCopyPtrOutput() SnapshotCopyPtrOutput

func (SnapshotCopyPtrOutput) ToSnapshotCopyPtrOutputWithContext

func (o SnapshotCopyPtrOutput) ToSnapshotCopyPtrOutputWithContext(ctx context.Context) SnapshotCopyPtrOutput

type SnapshotCopyState

type SnapshotCopyState struct {
	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn pulumi.StringPtrInput
	// The data encryption key identifier for the snapshot.
	// * `sourceSnapshotId` The ARN of the copied snapshot.
	// * `sourceRegion` The region of the source snapshot.
	DataEncryptionKeyId pulumi.StringPtrInput
	// A description of what the snapshot is.
	Description pulumi.StringPtrInput
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolPtrInput
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringPtrInput
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias pulumi.StringPtrInput
	// The AWS account ID of the snapshot owner.
	OwnerId pulumi.StringPtrInput
	// The region of the source snapshot.
	SourceRegion pulumi.StringPtrInput
	// The ARN for the snapshot to be copied.
	SourceSnapshotId pulumi.StringPtrInput
	// A map of tags for the snapshot.
	Tags     pulumi.StringMapInput
	TagsAll  pulumi.StringMapInput
	VolumeId pulumi.StringPtrInput
	// The size of the drive in GiBs.
	VolumeSize pulumi.IntPtrInput
}

func (SnapshotCopyState) ElementType

func (SnapshotCopyState) ElementType() reflect.Type

type SnapshotImport added in v4.15.0

type SnapshotImport struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The client-specific data. Detailed below.
	ClientData SnapshotImportClientDataPtrOutput `pulumi:"clientData"`
	// The data encryption key identifier for the snapshot.
	DataEncryptionKeyId pulumi.StringOutput `pulumi:"dataEncryptionKeyId"`
	// The description of the disk image being imported.
	Description pulumi.StringOutput `pulumi:"description"`
	// Information about the disk container. Detailed below.
	DiskContainer SnapshotImportDiskContainerOutput `pulumi:"diskContainer"`
	// Specifies whether the destination snapshot of the imported image should be encrypted. The default KMS key for EBS is used unless you specify a non-default KMS key using KmsKeyId.
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// An identifier for the symmetric KMS key to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.
	KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"`
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias pulumi.StringOutput `pulumi:"ownerAlias"`
	// The AWS account ID of the EBS snapshot owner.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The name of the IAM Role the VM Import/Export service will assume. This role needs certain permissions. See https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#vmimport-role. Default: `vmimport`
	RoleName pulumi.StringPtrOutput `pulumi:"roleName"`
	// A map of tags to assign to the snapshot.
	Tags    pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The size of the drive in GiBs.
	VolumeSize pulumi.IntOutput `pulumi:"volumeSize"`
}

Imports a disk image from S3 as a Snapshot.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ebs.NewSnapshotImport(ctx, "example", &ebs.SnapshotImportArgs{
			DiskContainer: &ebs.SnapshotImportDiskContainerArgs{
				Format: pulumi.String("VHD"),
				UserBucket: &ebs.SnapshotImportDiskContainerUserBucketArgs{
					S3Bucket: pulumi.String("disk-images"),
					S3Key:    pulumi.String("source.vhd"),
				},
			},
			RoleName: pulumi.String("disk-image-import"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetSnapshotImport added in v4.15.0

func GetSnapshotImport(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotImportState, opts ...pulumi.ResourceOption) (*SnapshotImport, error)

GetSnapshotImport gets an existing SnapshotImport 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 NewSnapshotImport added in v4.15.0

func NewSnapshotImport(ctx *pulumi.Context,
	name string, args *SnapshotImportArgs, opts ...pulumi.ResourceOption) (*SnapshotImport, error)

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

func (*SnapshotImport) ElementType added in v4.15.0

func (*SnapshotImport) ElementType() reflect.Type

func (*SnapshotImport) ToSnapshotImportOutput added in v4.15.0

func (i *SnapshotImport) ToSnapshotImportOutput() SnapshotImportOutput

func (*SnapshotImport) ToSnapshotImportOutputWithContext added in v4.15.0

func (i *SnapshotImport) ToSnapshotImportOutputWithContext(ctx context.Context) SnapshotImportOutput

func (*SnapshotImport) ToSnapshotImportPtrOutput added in v4.15.0

func (i *SnapshotImport) ToSnapshotImportPtrOutput() SnapshotImportPtrOutput

func (*SnapshotImport) ToSnapshotImportPtrOutputWithContext added in v4.15.0

func (i *SnapshotImport) ToSnapshotImportPtrOutputWithContext(ctx context.Context) SnapshotImportPtrOutput

type SnapshotImportArgs added in v4.15.0

type SnapshotImportArgs struct {
	// The client-specific data. Detailed below.
	ClientData SnapshotImportClientDataPtrInput
	// The description of the disk image being imported.
	Description pulumi.StringPtrInput
	// Information about the disk container. Detailed below.
	DiskContainer SnapshotImportDiskContainerInput
	// Specifies whether the destination snapshot of the imported image should be encrypted. The default KMS key for EBS is used unless you specify a non-default KMS key using KmsKeyId.
	Encrypted pulumi.BoolPtrInput
	// An identifier for the symmetric KMS key to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.
	KmsKeyId pulumi.StringPtrInput
	// The name of the IAM Role the VM Import/Export service will assume. This role needs certain permissions. See https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#vmimport-role. Default: `vmimport`
	RoleName pulumi.StringPtrInput
	// A map of tags to assign to the snapshot.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
}

The set of arguments for constructing a SnapshotImport resource.

func (SnapshotImportArgs) ElementType added in v4.15.0

func (SnapshotImportArgs) ElementType() reflect.Type

type SnapshotImportArray added in v4.15.0

type SnapshotImportArray []SnapshotImportInput

func (SnapshotImportArray) ElementType added in v4.15.0

func (SnapshotImportArray) ElementType() reflect.Type

func (SnapshotImportArray) ToSnapshotImportArrayOutput added in v4.15.0

func (i SnapshotImportArray) ToSnapshotImportArrayOutput() SnapshotImportArrayOutput

func (SnapshotImportArray) ToSnapshotImportArrayOutputWithContext added in v4.15.0

func (i SnapshotImportArray) ToSnapshotImportArrayOutputWithContext(ctx context.Context) SnapshotImportArrayOutput

type SnapshotImportArrayInput added in v4.15.0

type SnapshotImportArrayInput interface {
	pulumi.Input

	ToSnapshotImportArrayOutput() SnapshotImportArrayOutput
	ToSnapshotImportArrayOutputWithContext(context.Context) SnapshotImportArrayOutput
}

SnapshotImportArrayInput is an input type that accepts SnapshotImportArray and SnapshotImportArrayOutput values. You can construct a concrete instance of `SnapshotImportArrayInput` via:

SnapshotImportArray{ SnapshotImportArgs{...} }

type SnapshotImportArrayOutput added in v4.15.0

type SnapshotImportArrayOutput struct{ *pulumi.OutputState }

func (SnapshotImportArrayOutput) ElementType added in v4.15.0

func (SnapshotImportArrayOutput) ElementType() reflect.Type

func (SnapshotImportArrayOutput) Index added in v4.15.0

func (SnapshotImportArrayOutput) ToSnapshotImportArrayOutput added in v4.15.0

func (o SnapshotImportArrayOutput) ToSnapshotImportArrayOutput() SnapshotImportArrayOutput

func (SnapshotImportArrayOutput) ToSnapshotImportArrayOutputWithContext added in v4.15.0

func (o SnapshotImportArrayOutput) ToSnapshotImportArrayOutputWithContext(ctx context.Context) SnapshotImportArrayOutput

type SnapshotImportClientData added in v4.15.0

type SnapshotImportClientData struct {
	// A user-defined comment about the disk upload.
	Comment *string `pulumi:"comment"`
	// The time that the disk upload ends.
	UploadEnd *string `pulumi:"uploadEnd"`
	// The size of the uploaded disk image, in GiB.
	UploadSize *float64 `pulumi:"uploadSize"`
	// The time that the disk upload starts.
	UploadStart *string `pulumi:"uploadStart"`
}

type SnapshotImportClientDataArgs added in v4.15.0

type SnapshotImportClientDataArgs struct {
	// A user-defined comment about the disk upload.
	Comment pulumi.StringPtrInput `pulumi:"comment"`
	// The time that the disk upload ends.
	UploadEnd pulumi.StringPtrInput `pulumi:"uploadEnd"`
	// The size of the uploaded disk image, in GiB.
	UploadSize pulumi.Float64PtrInput `pulumi:"uploadSize"`
	// The time that the disk upload starts.
	UploadStart pulumi.StringPtrInput `pulumi:"uploadStart"`
}

func (SnapshotImportClientDataArgs) ElementType added in v4.15.0

func (SnapshotImportClientDataArgs) ToSnapshotImportClientDataOutput added in v4.15.0

func (i SnapshotImportClientDataArgs) ToSnapshotImportClientDataOutput() SnapshotImportClientDataOutput

func (SnapshotImportClientDataArgs) ToSnapshotImportClientDataOutputWithContext added in v4.15.0

func (i SnapshotImportClientDataArgs) ToSnapshotImportClientDataOutputWithContext(ctx context.Context) SnapshotImportClientDataOutput

func (SnapshotImportClientDataArgs) ToSnapshotImportClientDataPtrOutput added in v4.15.0

func (i SnapshotImportClientDataArgs) ToSnapshotImportClientDataPtrOutput() SnapshotImportClientDataPtrOutput

func (SnapshotImportClientDataArgs) ToSnapshotImportClientDataPtrOutputWithContext added in v4.15.0

func (i SnapshotImportClientDataArgs) ToSnapshotImportClientDataPtrOutputWithContext(ctx context.Context) SnapshotImportClientDataPtrOutput

type SnapshotImportClientDataInput added in v4.15.0

type SnapshotImportClientDataInput interface {
	pulumi.Input

	ToSnapshotImportClientDataOutput() SnapshotImportClientDataOutput
	ToSnapshotImportClientDataOutputWithContext(context.Context) SnapshotImportClientDataOutput
}

SnapshotImportClientDataInput is an input type that accepts SnapshotImportClientDataArgs and SnapshotImportClientDataOutput values. You can construct a concrete instance of `SnapshotImportClientDataInput` via:

SnapshotImportClientDataArgs{...}

type SnapshotImportClientDataOutput added in v4.15.0

type SnapshotImportClientDataOutput struct{ *pulumi.OutputState }

func (SnapshotImportClientDataOutput) Comment added in v4.15.0

A user-defined comment about the disk upload.

func (SnapshotImportClientDataOutput) ElementType added in v4.15.0

func (SnapshotImportClientDataOutput) ToSnapshotImportClientDataOutput added in v4.15.0

func (o SnapshotImportClientDataOutput) ToSnapshotImportClientDataOutput() SnapshotImportClientDataOutput

func (SnapshotImportClientDataOutput) ToSnapshotImportClientDataOutputWithContext added in v4.15.0

func (o SnapshotImportClientDataOutput) ToSnapshotImportClientDataOutputWithContext(ctx context.Context) SnapshotImportClientDataOutput

func (SnapshotImportClientDataOutput) ToSnapshotImportClientDataPtrOutput added in v4.15.0

func (o SnapshotImportClientDataOutput) ToSnapshotImportClientDataPtrOutput() SnapshotImportClientDataPtrOutput

func (SnapshotImportClientDataOutput) ToSnapshotImportClientDataPtrOutputWithContext added in v4.15.0

func (o SnapshotImportClientDataOutput) ToSnapshotImportClientDataPtrOutputWithContext(ctx context.Context) SnapshotImportClientDataPtrOutput

func (SnapshotImportClientDataOutput) UploadEnd added in v4.15.0

The time that the disk upload ends.

func (SnapshotImportClientDataOutput) UploadSize added in v4.15.0

The size of the uploaded disk image, in GiB.

func (SnapshotImportClientDataOutput) UploadStart added in v4.15.0

The time that the disk upload starts.

type SnapshotImportClientDataPtrInput added in v4.15.0

type SnapshotImportClientDataPtrInput interface {
	pulumi.Input

	ToSnapshotImportClientDataPtrOutput() SnapshotImportClientDataPtrOutput
	ToSnapshotImportClientDataPtrOutputWithContext(context.Context) SnapshotImportClientDataPtrOutput
}

SnapshotImportClientDataPtrInput is an input type that accepts SnapshotImportClientDataArgs, SnapshotImportClientDataPtr and SnapshotImportClientDataPtrOutput values. You can construct a concrete instance of `SnapshotImportClientDataPtrInput` via:

        SnapshotImportClientDataArgs{...}

or:

        nil

func SnapshotImportClientDataPtr added in v4.15.0

func SnapshotImportClientDataPtr(v *SnapshotImportClientDataArgs) SnapshotImportClientDataPtrInput

type SnapshotImportClientDataPtrOutput added in v4.15.0

type SnapshotImportClientDataPtrOutput struct{ *pulumi.OutputState }

func (SnapshotImportClientDataPtrOutput) Comment added in v4.15.0

A user-defined comment about the disk upload.

func (SnapshotImportClientDataPtrOutput) Elem added in v4.15.0

func (SnapshotImportClientDataPtrOutput) ElementType added in v4.15.0

func (SnapshotImportClientDataPtrOutput) ToSnapshotImportClientDataPtrOutput added in v4.15.0

func (o SnapshotImportClientDataPtrOutput) ToSnapshotImportClientDataPtrOutput() SnapshotImportClientDataPtrOutput

func (SnapshotImportClientDataPtrOutput) ToSnapshotImportClientDataPtrOutputWithContext added in v4.15.0

func (o SnapshotImportClientDataPtrOutput) ToSnapshotImportClientDataPtrOutputWithContext(ctx context.Context) SnapshotImportClientDataPtrOutput

func (SnapshotImportClientDataPtrOutput) UploadEnd added in v4.15.0

The time that the disk upload ends.

func (SnapshotImportClientDataPtrOutput) UploadSize added in v4.15.0

The size of the uploaded disk image, in GiB.

func (SnapshotImportClientDataPtrOutput) UploadStart added in v4.15.0

The time that the disk upload starts.

type SnapshotImportDiskContainer added in v4.15.0

type SnapshotImportDiskContainer struct {
	// The description of the disk image being imported.
	Description *string `pulumi:"description"`
	// The format of the disk image being imported. One of `VHD` or `VMDK`.
	Format string `pulumi:"format"`
	// The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..). One of `url` or `userBucket` must be set.
	Url *string `pulumi:"url"`
	// The Amazon S3 bucket for the disk image. One of `url` or `userBucket` must be set. Detailed below.
	UserBucket *SnapshotImportDiskContainerUserBucket `pulumi:"userBucket"`
}

type SnapshotImportDiskContainerArgs added in v4.15.0

type SnapshotImportDiskContainerArgs struct {
	// The description of the disk image being imported.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The format of the disk image being imported. One of `VHD` or `VMDK`.
	Format pulumi.StringInput `pulumi:"format"`
	// The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..). One of `url` or `userBucket` must be set.
	Url pulumi.StringPtrInput `pulumi:"url"`
	// The Amazon S3 bucket for the disk image. One of `url` or `userBucket` must be set. Detailed below.
	UserBucket SnapshotImportDiskContainerUserBucketPtrInput `pulumi:"userBucket"`
}

func (SnapshotImportDiskContainerArgs) ElementType added in v4.15.0

func (SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerOutput added in v4.15.0

func (i SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerOutput() SnapshotImportDiskContainerOutput

func (SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerOutputWithContext added in v4.15.0

func (i SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerOutputWithContext(ctx context.Context) SnapshotImportDiskContainerOutput

func (SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerPtrOutput added in v4.15.0

func (i SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerPtrOutput() SnapshotImportDiskContainerPtrOutput

func (SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerPtrOutputWithContext added in v4.15.0

func (i SnapshotImportDiskContainerArgs) ToSnapshotImportDiskContainerPtrOutputWithContext(ctx context.Context) SnapshotImportDiskContainerPtrOutput

type SnapshotImportDiskContainerInput added in v4.15.0

type SnapshotImportDiskContainerInput interface {
	pulumi.Input

	ToSnapshotImportDiskContainerOutput() SnapshotImportDiskContainerOutput
	ToSnapshotImportDiskContainerOutputWithContext(context.Context) SnapshotImportDiskContainerOutput
}

SnapshotImportDiskContainerInput is an input type that accepts SnapshotImportDiskContainerArgs and SnapshotImportDiskContainerOutput values. You can construct a concrete instance of `SnapshotImportDiskContainerInput` via:

SnapshotImportDiskContainerArgs{...}

type SnapshotImportDiskContainerOutput added in v4.15.0

type SnapshotImportDiskContainerOutput struct{ *pulumi.OutputState }

func (SnapshotImportDiskContainerOutput) Description added in v4.15.0

The description of the disk image being imported.

func (SnapshotImportDiskContainerOutput) ElementType added in v4.15.0

func (SnapshotImportDiskContainerOutput) Format added in v4.15.0

The format of the disk image being imported. One of `VHD` or `VMDK`.

func (SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerOutput added in v4.15.0

func (o SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerOutput() SnapshotImportDiskContainerOutput

func (SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerOutputWithContext added in v4.15.0

func (o SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerOutputWithContext(ctx context.Context) SnapshotImportDiskContainerOutput

func (SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerPtrOutput added in v4.15.0

func (o SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerPtrOutput() SnapshotImportDiskContainerPtrOutput

func (SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerPtrOutputWithContext added in v4.15.0

func (o SnapshotImportDiskContainerOutput) ToSnapshotImportDiskContainerPtrOutputWithContext(ctx context.Context) SnapshotImportDiskContainerPtrOutput

func (SnapshotImportDiskContainerOutput) Url added in v4.15.0

The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..). One of `url` or `userBucket` must be set.

func (SnapshotImportDiskContainerOutput) UserBucket added in v4.15.0

The Amazon S3 bucket for the disk image. One of `url` or `userBucket` must be set. Detailed below.

type SnapshotImportDiskContainerPtrInput added in v4.15.0

type SnapshotImportDiskContainerPtrInput interface {
	pulumi.Input

	ToSnapshotImportDiskContainerPtrOutput() SnapshotImportDiskContainerPtrOutput
	ToSnapshotImportDiskContainerPtrOutputWithContext(context.Context) SnapshotImportDiskContainerPtrOutput
}

SnapshotImportDiskContainerPtrInput is an input type that accepts SnapshotImportDiskContainerArgs, SnapshotImportDiskContainerPtr and SnapshotImportDiskContainerPtrOutput values. You can construct a concrete instance of `SnapshotImportDiskContainerPtrInput` via:

        SnapshotImportDiskContainerArgs{...}

or:

        nil

func SnapshotImportDiskContainerPtr added in v4.15.0

type SnapshotImportDiskContainerPtrOutput added in v4.15.0

type SnapshotImportDiskContainerPtrOutput struct{ *pulumi.OutputState }

func (SnapshotImportDiskContainerPtrOutput) Description added in v4.15.0

The description of the disk image being imported.

func (SnapshotImportDiskContainerPtrOutput) Elem added in v4.15.0

func (SnapshotImportDiskContainerPtrOutput) ElementType added in v4.15.0

func (SnapshotImportDiskContainerPtrOutput) Format added in v4.15.0

The format of the disk image being imported. One of `VHD` or `VMDK`.

func (SnapshotImportDiskContainerPtrOutput) ToSnapshotImportDiskContainerPtrOutput added in v4.15.0

func (o SnapshotImportDiskContainerPtrOutput) ToSnapshotImportDiskContainerPtrOutput() SnapshotImportDiskContainerPtrOutput

func (SnapshotImportDiskContainerPtrOutput) ToSnapshotImportDiskContainerPtrOutputWithContext added in v4.15.0

func (o SnapshotImportDiskContainerPtrOutput) ToSnapshotImportDiskContainerPtrOutputWithContext(ctx context.Context) SnapshotImportDiskContainerPtrOutput

func (SnapshotImportDiskContainerPtrOutput) Url added in v4.15.0

The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..). One of `url` or `userBucket` must be set.

func (SnapshotImportDiskContainerPtrOutput) UserBucket added in v4.15.0

The Amazon S3 bucket for the disk image. One of `url` or `userBucket` must be set. Detailed below.

type SnapshotImportDiskContainerUserBucket added in v4.15.0

type SnapshotImportDiskContainerUserBucket struct {
	// The name of the Amazon S3 bucket where the disk image is located.
	S3Bucket string `pulumi:"s3Bucket"`
	// The file name of the disk image.
	S3Key string `pulumi:"s3Key"`
}

type SnapshotImportDiskContainerUserBucketArgs added in v4.15.0

type SnapshotImportDiskContainerUserBucketArgs struct {
	// The name of the Amazon S3 bucket where the disk image is located.
	S3Bucket pulumi.StringInput `pulumi:"s3Bucket"`
	// The file name of the disk image.
	S3Key pulumi.StringInput `pulumi:"s3Key"`
}

func (SnapshotImportDiskContainerUserBucketArgs) ElementType added in v4.15.0

func (SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketOutput added in v4.15.0

func (i SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketOutput() SnapshotImportDiskContainerUserBucketOutput

func (SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketOutputWithContext added in v4.15.0

func (i SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketOutputWithContext(ctx context.Context) SnapshotImportDiskContainerUserBucketOutput

func (SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketPtrOutput added in v4.15.0

func (i SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketPtrOutput() SnapshotImportDiskContainerUserBucketPtrOutput

func (SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext added in v4.15.0

func (i SnapshotImportDiskContainerUserBucketArgs) ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext(ctx context.Context) SnapshotImportDiskContainerUserBucketPtrOutput

type SnapshotImportDiskContainerUserBucketInput added in v4.15.0

type SnapshotImportDiskContainerUserBucketInput interface {
	pulumi.Input

	ToSnapshotImportDiskContainerUserBucketOutput() SnapshotImportDiskContainerUserBucketOutput
	ToSnapshotImportDiskContainerUserBucketOutputWithContext(context.Context) SnapshotImportDiskContainerUserBucketOutput
}

SnapshotImportDiskContainerUserBucketInput is an input type that accepts SnapshotImportDiskContainerUserBucketArgs and SnapshotImportDiskContainerUserBucketOutput values. You can construct a concrete instance of `SnapshotImportDiskContainerUserBucketInput` via:

SnapshotImportDiskContainerUserBucketArgs{...}

type SnapshotImportDiskContainerUserBucketOutput added in v4.15.0

type SnapshotImportDiskContainerUserBucketOutput struct{ *pulumi.OutputState }

func (SnapshotImportDiskContainerUserBucketOutput) ElementType added in v4.15.0

func (SnapshotImportDiskContainerUserBucketOutput) S3Bucket added in v4.15.0

The name of the Amazon S3 bucket where the disk image is located.

func (SnapshotImportDiskContainerUserBucketOutput) S3Key added in v4.15.0

The file name of the disk image.

func (SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketOutput added in v4.15.0

func (o SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketOutput() SnapshotImportDiskContainerUserBucketOutput

func (SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketOutputWithContext added in v4.15.0

func (o SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketOutputWithContext(ctx context.Context) SnapshotImportDiskContainerUserBucketOutput

func (SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketPtrOutput added in v4.15.0

func (o SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketPtrOutput() SnapshotImportDiskContainerUserBucketPtrOutput

func (SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext added in v4.15.0

func (o SnapshotImportDiskContainerUserBucketOutput) ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext(ctx context.Context) SnapshotImportDiskContainerUserBucketPtrOutput

type SnapshotImportDiskContainerUserBucketPtrInput added in v4.15.0

type SnapshotImportDiskContainerUserBucketPtrInput interface {
	pulumi.Input

	ToSnapshotImportDiskContainerUserBucketPtrOutput() SnapshotImportDiskContainerUserBucketPtrOutput
	ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext(context.Context) SnapshotImportDiskContainerUserBucketPtrOutput
}

SnapshotImportDiskContainerUserBucketPtrInput is an input type that accepts SnapshotImportDiskContainerUserBucketArgs, SnapshotImportDiskContainerUserBucketPtr and SnapshotImportDiskContainerUserBucketPtrOutput values. You can construct a concrete instance of `SnapshotImportDiskContainerUserBucketPtrInput` via:

        SnapshotImportDiskContainerUserBucketArgs{...}

or:

        nil

type SnapshotImportDiskContainerUserBucketPtrOutput added in v4.15.0

type SnapshotImportDiskContainerUserBucketPtrOutput struct{ *pulumi.OutputState }

func (SnapshotImportDiskContainerUserBucketPtrOutput) Elem added in v4.15.0

func (SnapshotImportDiskContainerUserBucketPtrOutput) ElementType added in v4.15.0

func (SnapshotImportDiskContainerUserBucketPtrOutput) S3Bucket added in v4.15.0

The name of the Amazon S3 bucket where the disk image is located.

func (SnapshotImportDiskContainerUserBucketPtrOutput) S3Key added in v4.15.0

The file name of the disk image.

func (SnapshotImportDiskContainerUserBucketPtrOutput) ToSnapshotImportDiskContainerUserBucketPtrOutput added in v4.15.0

func (o SnapshotImportDiskContainerUserBucketPtrOutput) ToSnapshotImportDiskContainerUserBucketPtrOutput() SnapshotImportDiskContainerUserBucketPtrOutput

func (SnapshotImportDiskContainerUserBucketPtrOutput) ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext added in v4.15.0

func (o SnapshotImportDiskContainerUserBucketPtrOutput) ToSnapshotImportDiskContainerUserBucketPtrOutputWithContext(ctx context.Context) SnapshotImportDiskContainerUserBucketPtrOutput

type SnapshotImportInput added in v4.15.0

type SnapshotImportInput interface {
	pulumi.Input

	ToSnapshotImportOutput() SnapshotImportOutput
	ToSnapshotImportOutputWithContext(ctx context.Context) SnapshotImportOutput
}

type SnapshotImportMap added in v4.15.0

type SnapshotImportMap map[string]SnapshotImportInput

func (SnapshotImportMap) ElementType added in v4.15.0

func (SnapshotImportMap) ElementType() reflect.Type

func (SnapshotImportMap) ToSnapshotImportMapOutput added in v4.15.0

func (i SnapshotImportMap) ToSnapshotImportMapOutput() SnapshotImportMapOutput

func (SnapshotImportMap) ToSnapshotImportMapOutputWithContext added in v4.15.0

func (i SnapshotImportMap) ToSnapshotImportMapOutputWithContext(ctx context.Context) SnapshotImportMapOutput

type SnapshotImportMapInput added in v4.15.0

type SnapshotImportMapInput interface {
	pulumi.Input

	ToSnapshotImportMapOutput() SnapshotImportMapOutput
	ToSnapshotImportMapOutputWithContext(context.Context) SnapshotImportMapOutput
}

SnapshotImportMapInput is an input type that accepts SnapshotImportMap and SnapshotImportMapOutput values. You can construct a concrete instance of `SnapshotImportMapInput` via:

SnapshotImportMap{ "key": SnapshotImportArgs{...} }

type SnapshotImportMapOutput added in v4.15.0

type SnapshotImportMapOutput struct{ *pulumi.OutputState }

func (SnapshotImportMapOutput) ElementType added in v4.15.0

func (SnapshotImportMapOutput) ElementType() reflect.Type

func (SnapshotImportMapOutput) MapIndex added in v4.15.0

func (SnapshotImportMapOutput) ToSnapshotImportMapOutput added in v4.15.0

func (o SnapshotImportMapOutput) ToSnapshotImportMapOutput() SnapshotImportMapOutput

func (SnapshotImportMapOutput) ToSnapshotImportMapOutputWithContext added in v4.15.0

func (o SnapshotImportMapOutput) ToSnapshotImportMapOutputWithContext(ctx context.Context) SnapshotImportMapOutput

type SnapshotImportOutput added in v4.15.0

type SnapshotImportOutput struct{ *pulumi.OutputState }

func (SnapshotImportOutput) ElementType added in v4.15.0

func (SnapshotImportOutput) ElementType() reflect.Type

func (SnapshotImportOutput) ToSnapshotImportOutput added in v4.15.0

func (o SnapshotImportOutput) ToSnapshotImportOutput() SnapshotImportOutput

func (SnapshotImportOutput) ToSnapshotImportOutputWithContext added in v4.15.0

func (o SnapshotImportOutput) ToSnapshotImportOutputWithContext(ctx context.Context) SnapshotImportOutput

func (SnapshotImportOutput) ToSnapshotImportPtrOutput added in v4.15.0

func (o SnapshotImportOutput) ToSnapshotImportPtrOutput() SnapshotImportPtrOutput

func (SnapshotImportOutput) ToSnapshotImportPtrOutputWithContext added in v4.15.0

func (o SnapshotImportOutput) ToSnapshotImportPtrOutputWithContext(ctx context.Context) SnapshotImportPtrOutput

type SnapshotImportPtrInput added in v4.15.0

type SnapshotImportPtrInput interface {
	pulumi.Input

	ToSnapshotImportPtrOutput() SnapshotImportPtrOutput
	ToSnapshotImportPtrOutputWithContext(ctx context.Context) SnapshotImportPtrOutput
}

type SnapshotImportPtrOutput added in v4.15.0

type SnapshotImportPtrOutput struct{ *pulumi.OutputState }

func (SnapshotImportPtrOutput) Elem added in v4.15.0

func (SnapshotImportPtrOutput) ElementType added in v4.15.0

func (SnapshotImportPtrOutput) ElementType() reflect.Type

func (SnapshotImportPtrOutput) ToSnapshotImportPtrOutput added in v4.15.0

func (o SnapshotImportPtrOutput) ToSnapshotImportPtrOutput() SnapshotImportPtrOutput

func (SnapshotImportPtrOutput) ToSnapshotImportPtrOutputWithContext added in v4.15.0

func (o SnapshotImportPtrOutput) ToSnapshotImportPtrOutputWithContext(ctx context.Context) SnapshotImportPtrOutput

type SnapshotImportState added in v4.15.0

type SnapshotImportState struct {
	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn pulumi.StringPtrInput
	// The client-specific data. Detailed below.
	ClientData SnapshotImportClientDataPtrInput
	// The data encryption key identifier for the snapshot.
	DataEncryptionKeyId pulumi.StringPtrInput
	// The description of the disk image being imported.
	Description pulumi.StringPtrInput
	// Information about the disk container. Detailed below.
	DiskContainer SnapshotImportDiskContainerPtrInput
	// Specifies whether the destination snapshot of the imported image should be encrypted. The default KMS key for EBS is used unless you specify a non-default KMS key using KmsKeyId.
	Encrypted pulumi.BoolPtrInput
	// An identifier for the symmetric KMS key to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.
	KmsKeyId pulumi.StringPtrInput
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias pulumi.StringPtrInput
	// The AWS account ID of the EBS snapshot owner.
	OwnerId pulumi.StringPtrInput
	// The name of the IAM Role the VM Import/Export service will assume. This role needs certain permissions. See https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#vmimport-role. Default: `vmimport`
	RoleName pulumi.StringPtrInput
	// A map of tags to assign to the snapshot.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The size of the drive in GiBs.
	VolumeSize pulumi.IntPtrInput
}

func (SnapshotImportState) ElementType added in v4.15.0

func (SnapshotImportState) ElementType() reflect.Type

type SnapshotInput

type SnapshotInput interface {
	pulumi.Input

	ToSnapshotOutput() SnapshotOutput
	ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput
}

type SnapshotMap

type SnapshotMap map[string]SnapshotInput

func (SnapshotMap) ElementType

func (SnapshotMap) ElementType() reflect.Type

func (SnapshotMap) ToSnapshotMapOutput

func (i SnapshotMap) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMap) ToSnapshotMapOutputWithContext

func (i SnapshotMap) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotMapInput

type SnapshotMapInput interface {
	pulumi.Input

	ToSnapshotMapOutput() SnapshotMapOutput
	ToSnapshotMapOutputWithContext(context.Context) SnapshotMapOutput
}

SnapshotMapInput is an input type that accepts SnapshotMap and SnapshotMapOutput values. You can construct a concrete instance of `SnapshotMapInput` via:

SnapshotMap{ "key": SnapshotArgs{...} }

type SnapshotMapOutput

type SnapshotMapOutput struct{ *pulumi.OutputState }

func (SnapshotMapOutput) ElementType

func (SnapshotMapOutput) ElementType() reflect.Type

func (SnapshotMapOutput) MapIndex

func (SnapshotMapOutput) ToSnapshotMapOutput

func (o SnapshotMapOutput) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMapOutput) ToSnapshotMapOutputWithContext

func (o SnapshotMapOutput) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotOutput

type SnapshotOutput struct{ *pulumi.OutputState }

func (SnapshotOutput) ElementType

func (SnapshotOutput) ElementType() reflect.Type

func (SnapshotOutput) ToSnapshotOutput

func (o SnapshotOutput) ToSnapshotOutput() SnapshotOutput

func (SnapshotOutput) ToSnapshotOutputWithContext

func (o SnapshotOutput) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

func (SnapshotOutput) ToSnapshotPtrOutput

func (o SnapshotOutput) ToSnapshotPtrOutput() SnapshotPtrOutput

func (SnapshotOutput) ToSnapshotPtrOutputWithContext

func (o SnapshotOutput) ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput

type SnapshotPtrInput

type SnapshotPtrInput interface {
	pulumi.Input

	ToSnapshotPtrOutput() SnapshotPtrOutput
	ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput
}

type SnapshotPtrOutput

type SnapshotPtrOutput struct{ *pulumi.OutputState }

func (SnapshotPtrOutput) Elem added in v4.15.0

func (SnapshotPtrOutput) ElementType

func (SnapshotPtrOutput) ElementType() reflect.Type

func (SnapshotPtrOutput) ToSnapshotPtrOutput

func (o SnapshotPtrOutput) ToSnapshotPtrOutput() SnapshotPtrOutput

func (SnapshotPtrOutput) ToSnapshotPtrOutputWithContext

func (o SnapshotPtrOutput) ToSnapshotPtrOutputWithContext(ctx context.Context) SnapshotPtrOutput

type SnapshotState

type SnapshotState struct {
	// Amazon Resource Name (ARN) of the EBS Snapshot.
	Arn pulumi.StringPtrInput
	// The data encryption key identifier for the snapshot.
	DataEncryptionKeyId pulumi.StringPtrInput
	// A description of what the snapshot is.
	Description pulumi.StringPtrInput
	// Whether the snapshot is encrypted.
	Encrypted pulumi.BoolPtrInput
	// The ARN for the KMS encryption key.
	KmsKeyId pulumi.StringPtrInput
	// Value from an Amazon-maintained list (`amazon`, `aws-marketplace`, `microsoft`) of snapshot owners.
	OwnerAlias pulumi.StringPtrInput
	// The AWS account ID of the EBS snapshot owner.
	OwnerId pulumi.StringPtrInput
	// A map of tags for the snapshot.
	Tags    pulumi.StringMapInput
	TagsAll pulumi.StringMapInput
	// The Volume ID of which to make a snapshot.
	VolumeId pulumi.StringPtrInput
	// The size of the drive in GiBs.
	VolumeSize pulumi.IntPtrInput
}

func (SnapshotState) ElementType

func (SnapshotState) ElementType() reflect.Type

type Volume

type Volume struct {
	pulumi.CustomResourceState

	// The volume ARN (e.g. arn:aws:ec2:us-east-1:0123456789012:volume/vol-59fcb34e).
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The AZ where the EBS volume will exist.
	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// If true, the disk will be encrypted.
	Encrypted pulumi.BoolOutput `pulumi:"encrypted"`
	// The amount of IOPS to provision for the disk. Only valid for `type` of `io1`, `io2` or `gp3`.
	Iops     pulumi.IntOutput    `pulumi:"iops"`
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Specifies whether to enable Amazon EBS Multi-Attach. Multi-Attach is supported exclusively on `io1` volumes.
	MultiAttachEnabled pulumi.BoolPtrOutput `pulumi:"multiAttachEnabled"`
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn pulumi.StringPtrOutput `pulumi:"outpostArn"`
	// The size of the drive in GiBs.
	Size pulumi.IntOutput `pulumi:"size"`
	// A snapshot to base the EBS volume off of.
	SnapshotId pulumi.StringOutput    `pulumi:"snapshotId"`
	Tags       pulumi.StringMapOutput `pulumi:"tags"`
	TagsAll    pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The throughput that the volume supports, in MiB/s. Only valid for `type` of `gp3`.
	Throughput pulumi.IntOutput `pulumi:"throughput"`
	// The type of EBS volume. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).
	Type pulumi.StringOutput `pulumi:"type"`
}

Manages a single EBS volume.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/ebs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{
			AvailabilityZone: pulumi.String("us-west-2a"),
			Size:             pulumi.Int(40),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("HelloWorld"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

> **NOTE**: At least one of `size` or `snapshotId` is required when specifying an EBS volume

## Import

EBS Volumes can be imported using the `id`, e.g.

```sh

$ pulumi import aws:ebs/volume:Volume id vol-049df61146c4d7901

```

func GetVolume

func GetVolume(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VolumeState, opts ...pulumi.ResourceOption) (*Volume, error)

GetVolume gets an existing Volume 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 NewVolume

func NewVolume(ctx *pulumi.Context,
	name string, args *VolumeArgs, opts ...pulumi.ResourceOption) (*Volume, error)

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

func (*Volume) ElementType

func (*Volume) ElementType() reflect.Type

func (*Volume) ToVolumeOutput

func (i *Volume) ToVolumeOutput() VolumeOutput

func (*Volume) ToVolumeOutputWithContext

func (i *Volume) ToVolumeOutputWithContext(ctx context.Context) VolumeOutput

func (*Volume) ToVolumePtrOutput

func (i *Volume) ToVolumePtrOutput() VolumePtrOutput

func (*Volume) ToVolumePtrOutputWithContext

func (i *Volume) ToVolumePtrOutputWithContext(ctx context.Context) VolumePtrOutput

type VolumeArgs

type VolumeArgs struct {
	// The AZ where the EBS volume will exist.
	AvailabilityZone pulumi.StringInput
	// If true, the disk will be encrypted.
	Encrypted pulumi.BoolPtrInput
	// The amount of IOPS to provision for the disk. Only valid for `type` of `io1`, `io2` or `gp3`.
	Iops     pulumi.IntPtrInput
	KmsKeyId pulumi.StringPtrInput
	// Specifies whether to enable Amazon EBS Multi-Attach. Multi-Attach is supported exclusively on `io1` volumes.
	MultiAttachEnabled pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn pulumi.StringPtrInput
	// The size of the drive in GiBs.
	Size pulumi.IntPtrInput
	// A snapshot to base the EBS volume off of.
	SnapshotId pulumi.StringPtrInput
	Tags       pulumi.StringMapInput
	TagsAll    pulumi.StringMapInput
	// The throughput that the volume supports, in MiB/s. Only valid for `type` of `gp3`.
	Throughput pulumi.IntPtrInput
	// The type of EBS volume. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).
	Type pulumi.StringPtrInput
}

The set of arguments for constructing a Volume resource.

func (VolumeArgs) ElementType

func (VolumeArgs) ElementType() reflect.Type

type VolumeArray

type VolumeArray []VolumeInput

func (VolumeArray) ElementType

func (VolumeArray) ElementType() reflect.Type

func (VolumeArray) ToVolumeArrayOutput

func (i VolumeArray) ToVolumeArrayOutput() VolumeArrayOutput

func (VolumeArray) ToVolumeArrayOutputWithContext

func (i VolumeArray) ToVolumeArrayOutputWithContext(ctx context.Context) VolumeArrayOutput

type VolumeArrayInput

type VolumeArrayInput interface {
	pulumi.Input

	ToVolumeArrayOutput() VolumeArrayOutput
	ToVolumeArrayOutputWithContext(context.Context) VolumeArrayOutput
}

VolumeArrayInput is an input type that accepts VolumeArray and VolumeArrayOutput values. You can construct a concrete instance of `VolumeArrayInput` via:

VolumeArray{ VolumeArgs{...} }

type VolumeArrayOutput

type VolumeArrayOutput struct{ *pulumi.OutputState }

func (VolumeArrayOutput) ElementType

func (VolumeArrayOutput) ElementType() reflect.Type

func (VolumeArrayOutput) Index

func (VolumeArrayOutput) ToVolumeArrayOutput

func (o VolumeArrayOutput) ToVolumeArrayOutput() VolumeArrayOutput

func (VolumeArrayOutput) ToVolumeArrayOutputWithContext

func (o VolumeArrayOutput) ToVolumeArrayOutputWithContext(ctx context.Context) VolumeArrayOutput

type VolumeInput

type VolumeInput interface {
	pulumi.Input

	ToVolumeOutput() VolumeOutput
	ToVolumeOutputWithContext(ctx context.Context) VolumeOutput
}

type VolumeMap

type VolumeMap map[string]VolumeInput

func (VolumeMap) ElementType

func (VolumeMap) ElementType() reflect.Type

func (VolumeMap) ToVolumeMapOutput

func (i VolumeMap) ToVolumeMapOutput() VolumeMapOutput

func (VolumeMap) ToVolumeMapOutputWithContext

func (i VolumeMap) ToVolumeMapOutputWithContext(ctx context.Context) VolumeMapOutput

type VolumeMapInput

type VolumeMapInput interface {
	pulumi.Input

	ToVolumeMapOutput() VolumeMapOutput
	ToVolumeMapOutputWithContext(context.Context) VolumeMapOutput
}

VolumeMapInput is an input type that accepts VolumeMap and VolumeMapOutput values. You can construct a concrete instance of `VolumeMapInput` via:

VolumeMap{ "key": VolumeArgs{...} }

type VolumeMapOutput

type VolumeMapOutput struct{ *pulumi.OutputState }

func (VolumeMapOutput) ElementType

func (VolumeMapOutput) ElementType() reflect.Type

func (VolumeMapOutput) MapIndex

func (VolumeMapOutput) ToVolumeMapOutput

func (o VolumeMapOutput) ToVolumeMapOutput() VolumeMapOutput

func (VolumeMapOutput) ToVolumeMapOutputWithContext

func (o VolumeMapOutput) ToVolumeMapOutputWithContext(ctx context.Context) VolumeMapOutput

type VolumeOutput

type VolumeOutput struct{ *pulumi.OutputState }

func (VolumeOutput) ElementType

func (VolumeOutput) ElementType() reflect.Type

func (VolumeOutput) ToVolumeOutput

func (o VolumeOutput) ToVolumeOutput() VolumeOutput

func (VolumeOutput) ToVolumeOutputWithContext

func (o VolumeOutput) ToVolumeOutputWithContext(ctx context.Context) VolumeOutput

func (VolumeOutput) ToVolumePtrOutput

func (o VolumeOutput) ToVolumePtrOutput() VolumePtrOutput

func (VolumeOutput) ToVolumePtrOutputWithContext

func (o VolumeOutput) ToVolumePtrOutputWithContext(ctx context.Context) VolumePtrOutput

type VolumePtrInput

type VolumePtrInput interface {
	pulumi.Input

	ToVolumePtrOutput() VolumePtrOutput
	ToVolumePtrOutputWithContext(ctx context.Context) VolumePtrOutput
}

type VolumePtrOutput

type VolumePtrOutput struct{ *pulumi.OutputState }

func (VolumePtrOutput) Elem added in v4.15.0

func (o VolumePtrOutput) Elem() VolumeOutput

func (VolumePtrOutput) ElementType

func (VolumePtrOutput) ElementType() reflect.Type

func (VolumePtrOutput) ToVolumePtrOutput

func (o VolumePtrOutput) ToVolumePtrOutput() VolumePtrOutput

func (VolumePtrOutput) ToVolumePtrOutputWithContext

func (o VolumePtrOutput) ToVolumePtrOutputWithContext(ctx context.Context) VolumePtrOutput

type VolumeState

type VolumeState struct {
	// The volume ARN (e.g. arn:aws:ec2:us-east-1:0123456789012:volume/vol-59fcb34e).
	Arn pulumi.StringPtrInput
	// The AZ where the EBS volume will exist.
	AvailabilityZone pulumi.StringPtrInput
	// If true, the disk will be encrypted.
	Encrypted pulumi.BoolPtrInput
	// The amount of IOPS to provision for the disk. Only valid for `type` of `io1`, `io2` or `gp3`.
	Iops     pulumi.IntPtrInput
	KmsKeyId pulumi.StringPtrInput
	// Specifies whether to enable Amazon EBS Multi-Attach. Multi-Attach is supported exclusively on `io1` volumes.
	MultiAttachEnabled pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn pulumi.StringPtrInput
	// The size of the drive in GiBs.
	Size pulumi.IntPtrInput
	// A snapshot to base the EBS volume off of.
	SnapshotId pulumi.StringPtrInput
	Tags       pulumi.StringMapInput
	TagsAll    pulumi.StringMapInput
	// The throughput that the volume supports, in MiB/s. Only valid for `type` of `gp3`.
	Throughput pulumi.IntPtrInput
	// The type of EBS volume. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).
	Type pulumi.StringPtrInput
}

func (VolumeState) ElementType

func (VolumeState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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