ram

package
v6.32.0 Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2024 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 GetResourceShareFilter

type GetResourceShareFilter struct {
	// Name of the tag key to filter on.
	Name string `pulumi:"name"`
	// Value of the tag key.
	Values []string `pulumi:"values"`
}

type GetResourceShareFilterArgs

type GetResourceShareFilterArgs struct {
	// Name of the tag key to filter on.
	Name pulumi.StringInput `pulumi:"name"`
	// Value of the tag key.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetResourceShareFilterArgs) ElementType

func (GetResourceShareFilterArgs) ElementType() reflect.Type

func (GetResourceShareFilterArgs) ToGetResourceShareFilterOutput

func (i GetResourceShareFilterArgs) ToGetResourceShareFilterOutput() GetResourceShareFilterOutput

func (GetResourceShareFilterArgs) ToGetResourceShareFilterOutputWithContext

func (i GetResourceShareFilterArgs) ToGetResourceShareFilterOutputWithContext(ctx context.Context) GetResourceShareFilterOutput

type GetResourceShareFilterArray

type GetResourceShareFilterArray []GetResourceShareFilterInput

func (GetResourceShareFilterArray) ElementType

func (GetResourceShareFilterArray) ToGetResourceShareFilterArrayOutput

func (i GetResourceShareFilterArray) ToGetResourceShareFilterArrayOutput() GetResourceShareFilterArrayOutput

func (GetResourceShareFilterArray) ToGetResourceShareFilterArrayOutputWithContext

func (i GetResourceShareFilterArray) ToGetResourceShareFilterArrayOutputWithContext(ctx context.Context) GetResourceShareFilterArrayOutput

type GetResourceShareFilterArrayInput

type GetResourceShareFilterArrayInput interface {
	pulumi.Input

	ToGetResourceShareFilterArrayOutput() GetResourceShareFilterArrayOutput
	ToGetResourceShareFilterArrayOutputWithContext(context.Context) GetResourceShareFilterArrayOutput
}

GetResourceShareFilterArrayInput is an input type that accepts GetResourceShareFilterArray and GetResourceShareFilterArrayOutput values. You can construct a concrete instance of `GetResourceShareFilterArrayInput` via:

GetResourceShareFilterArray{ GetResourceShareFilterArgs{...} }

type GetResourceShareFilterArrayOutput

type GetResourceShareFilterArrayOutput struct{ *pulumi.OutputState }

func (GetResourceShareFilterArrayOutput) ElementType

func (GetResourceShareFilterArrayOutput) Index

func (GetResourceShareFilterArrayOutput) ToGetResourceShareFilterArrayOutput

func (o GetResourceShareFilterArrayOutput) ToGetResourceShareFilterArrayOutput() GetResourceShareFilterArrayOutput

func (GetResourceShareFilterArrayOutput) ToGetResourceShareFilterArrayOutputWithContext

func (o GetResourceShareFilterArrayOutput) ToGetResourceShareFilterArrayOutputWithContext(ctx context.Context) GetResourceShareFilterArrayOutput

type GetResourceShareFilterInput

type GetResourceShareFilterInput interface {
	pulumi.Input

	ToGetResourceShareFilterOutput() GetResourceShareFilterOutput
	ToGetResourceShareFilterOutputWithContext(context.Context) GetResourceShareFilterOutput
}

GetResourceShareFilterInput is an input type that accepts GetResourceShareFilterArgs and GetResourceShareFilterOutput values. You can construct a concrete instance of `GetResourceShareFilterInput` via:

GetResourceShareFilterArgs{...}

type GetResourceShareFilterOutput

type GetResourceShareFilterOutput struct{ *pulumi.OutputState }

func (GetResourceShareFilterOutput) ElementType

func (GetResourceShareFilterOutput) Name

Name of the tag key to filter on.

func (GetResourceShareFilterOutput) ToGetResourceShareFilterOutput

func (o GetResourceShareFilterOutput) ToGetResourceShareFilterOutput() GetResourceShareFilterOutput

func (GetResourceShareFilterOutput) ToGetResourceShareFilterOutputWithContext

func (o GetResourceShareFilterOutput) ToGetResourceShareFilterOutputWithContext(ctx context.Context) GetResourceShareFilterOutput

func (GetResourceShareFilterOutput) Values

Value of the tag key.

type LookupResourceShareArgs

type LookupResourceShareArgs struct {
	// Filter used to scope the list e.g., by tags. See [related docs] (https://docs.aws.amazon.com/ram/latest/APIReference/API_TagFilter.html).
	Filters []GetResourceShareFilter `pulumi:"filters"`
	// Name of the tag key to filter on.
	Name *string `pulumi:"name"`
	// Owner of the resource share. Valid values are `SELF` or `OTHER-ACCOUNTS`.
	ResourceOwner string `pulumi:"resourceOwner"`
	// Specifies that you want to retrieve details of only those resource shares that have this status. Valid values are `PENDING`, `ACTIVE`, `FAILED`, `DELETING`, and `DELETED`.
	ResourceShareStatus *string `pulumi:"resourceShareStatus"`
	// Tags attached to the resource share.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getResourceShare.

type LookupResourceShareOutputArgs

type LookupResourceShareOutputArgs struct {
	// Filter used to scope the list e.g., by tags. See [related docs] (https://docs.aws.amazon.com/ram/latest/APIReference/API_TagFilter.html).
	Filters GetResourceShareFilterArrayInput `pulumi:"filters"`
	// Name of the tag key to filter on.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Owner of the resource share. Valid values are `SELF` or `OTHER-ACCOUNTS`.
	ResourceOwner pulumi.StringInput `pulumi:"resourceOwner"`
	// Specifies that you want to retrieve details of only those resource shares that have this status. Valid values are `PENDING`, `ACTIVE`, `FAILED`, `DELETING`, and `DELETED`.
	ResourceShareStatus pulumi.StringPtrInput `pulumi:"resourceShareStatus"`
	// Tags attached to the resource share.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getResourceShare.

func (LookupResourceShareOutputArgs) ElementType

type LookupResourceShareResult

type LookupResourceShareResult struct {
	// ARN of the resource share.
	Arn     string                   `pulumi:"arn"`
	Filters []GetResourceShareFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// ID of the AWS account that owns the resource share.
	OwningAccountId string `pulumi:"owningAccountId"`
	// A list of resource ARNs associated with the resource share.
	ResourceArns        []string `pulumi:"resourceArns"`
	ResourceOwner       string   `pulumi:"resourceOwner"`
	ResourceShareStatus *string  `pulumi:"resourceShareStatus"`
	// Status of the resource share.
	Status string `pulumi:"status"`
	// Tags attached to the resource share.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getResourceShare.

func LookupResourceShare

func LookupResourceShare(ctx *pulumi.Context, args *LookupResourceShareArgs, opts ...pulumi.InvokeOption) (*LookupResourceShareResult, error)

`ram.ResourceShare` Retrieve information about a RAM Resource Share.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.LookupResourceShare(ctx, &ram.LookupResourceShareArgs{
			Name:          pulumi.StringRef("example"),
			ResourceOwner: "SELF",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Search by filters

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.LookupResourceShare(ctx, &ram.LookupResourceShareArgs{
			ResourceOwner: "SELF",
			Filters: []ram.GetResourceShareFilter{
				{
					Name: "NameOfTag",
					Values: []string{
						"exampleNameTagValue",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

type LookupResourceShareResultOutput

type LookupResourceShareResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResourceShare.

func (LookupResourceShareResultOutput) Arn

ARN of the resource share.

func (LookupResourceShareResultOutput) ElementType

func (LookupResourceShareResultOutput) Filters

func (LookupResourceShareResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResourceShareResultOutput) Name

func (LookupResourceShareResultOutput) OwningAccountId

ID of the AWS account that owns the resource share.

func (LookupResourceShareResultOutput) ResourceArns added in v6.1.0

A list of resource ARNs associated with the resource share.

func (LookupResourceShareResultOutput) ResourceOwner

func (LookupResourceShareResultOutput) ResourceShareStatus

func (o LookupResourceShareResultOutput) ResourceShareStatus() pulumi.StringPtrOutput

func (LookupResourceShareResultOutput) Status

Status of the resource share.

func (LookupResourceShareResultOutput) Tags

Tags attached to the resource share.

func (LookupResourceShareResultOutput) ToLookupResourceShareResultOutput

func (o LookupResourceShareResultOutput) ToLookupResourceShareResultOutput() LookupResourceShareResultOutput

func (LookupResourceShareResultOutput) ToLookupResourceShareResultOutputWithContext

func (o LookupResourceShareResultOutput) ToLookupResourceShareResultOutputWithContext(ctx context.Context) LookupResourceShareResultOutput

type PrincipalAssociation

type PrincipalAssociation struct {
	pulumi.CustomResourceState

	// The principal to associate with the resource share. Possible values are an AWS account ID, an AWS Organizations Organization ARN, or an AWS Organizations Organization Unit ARN.
	Principal pulumi.StringOutput `pulumi:"principal"`
	// The Amazon Resource Name (ARN) of the resource share.
	ResourceShareArn pulumi.StringOutput `pulumi:"resourceShareArn"`
}

Provides a Resource Access Manager (RAM) principal association. Depending if [RAM Sharing with AWS Organizations is enabled](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs), the RAM behavior with different principal types changes.

When RAM Sharing with AWS Organizations is enabled:

- For AWS Account ID, Organization, and Organizational Unit principals within the same AWS Organization, no resource share invitation is sent and resources become available automatically after creating the association. - For AWS Account ID principals outside the AWS Organization, a resource share invitation is sent and must be accepted before resources become available. See the `ram.ResourceShareAccepter` resource to accept these invitations.

When RAM Sharing with AWS Organizations is not enabled:

- Organization and Organizational Unit principals cannot be used. - For AWS Account ID principals, a resource share invitation is sent and must be accepted before resources become available. See the `ram.ResourceShareAccepter` resource to accept these invitations.

## Example Usage

### AWS Account ID

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ram.NewResourceShare(ctx, "example", &ram.ResourceShareArgs{
			AllowExternalPrincipals: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = ram.NewPrincipalAssociation(ctx, "example", &ram.PrincipalAssociationArgs{
			Principal:        pulumi.String("111111111111"),
			ResourceShareArn: example.Arn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

### AWS Organization

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.NewPrincipalAssociation(ctx, "example", &ram.PrincipalAssociationArgs{
			Principal:        pulumi.Any(exampleAwsOrganizationsOrganization.Arn),
			ResourceShareArn: pulumi.Any(exampleAwsRamResourceShare.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Using `pulumi import`, import RAM Principal Associations using their Resource Share ARN and the `principal` separated by a comma. For example:

```sh $ pulumi import aws:ram/principalAssociation:PrincipalAssociation example arn:aws:ram:eu-west-1:123456789012:resource-share/73da1ab9-b94a-4ba3-8eb4-45917f7f4b12,123456789012 ```

func GetPrincipalAssociation

func GetPrincipalAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PrincipalAssociationState, opts ...pulumi.ResourceOption) (*PrincipalAssociation, error)

GetPrincipalAssociation gets an existing PrincipalAssociation 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 NewPrincipalAssociation

func NewPrincipalAssociation(ctx *pulumi.Context,
	name string, args *PrincipalAssociationArgs, opts ...pulumi.ResourceOption) (*PrincipalAssociation, error)

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

func (*PrincipalAssociation) ElementType

func (*PrincipalAssociation) ElementType() reflect.Type

func (*PrincipalAssociation) ToPrincipalAssociationOutput

func (i *PrincipalAssociation) ToPrincipalAssociationOutput() PrincipalAssociationOutput

func (*PrincipalAssociation) ToPrincipalAssociationOutputWithContext

func (i *PrincipalAssociation) ToPrincipalAssociationOutputWithContext(ctx context.Context) PrincipalAssociationOutput

type PrincipalAssociationArgs

type PrincipalAssociationArgs struct {
	// The principal to associate with the resource share. Possible values are an AWS account ID, an AWS Organizations Organization ARN, or an AWS Organizations Organization Unit ARN.
	Principal pulumi.StringInput
	// The Amazon Resource Name (ARN) of the resource share.
	ResourceShareArn pulumi.StringInput
}

The set of arguments for constructing a PrincipalAssociation resource.

func (PrincipalAssociationArgs) ElementType

func (PrincipalAssociationArgs) ElementType() reflect.Type

type PrincipalAssociationArray

type PrincipalAssociationArray []PrincipalAssociationInput

func (PrincipalAssociationArray) ElementType

func (PrincipalAssociationArray) ElementType() reflect.Type

func (PrincipalAssociationArray) ToPrincipalAssociationArrayOutput

func (i PrincipalAssociationArray) ToPrincipalAssociationArrayOutput() PrincipalAssociationArrayOutput

func (PrincipalAssociationArray) ToPrincipalAssociationArrayOutputWithContext

func (i PrincipalAssociationArray) ToPrincipalAssociationArrayOutputWithContext(ctx context.Context) PrincipalAssociationArrayOutput

type PrincipalAssociationArrayInput

type PrincipalAssociationArrayInput interface {
	pulumi.Input

	ToPrincipalAssociationArrayOutput() PrincipalAssociationArrayOutput
	ToPrincipalAssociationArrayOutputWithContext(context.Context) PrincipalAssociationArrayOutput
}

PrincipalAssociationArrayInput is an input type that accepts PrincipalAssociationArray and PrincipalAssociationArrayOutput values. You can construct a concrete instance of `PrincipalAssociationArrayInput` via:

PrincipalAssociationArray{ PrincipalAssociationArgs{...} }

type PrincipalAssociationArrayOutput

type PrincipalAssociationArrayOutput struct{ *pulumi.OutputState }

func (PrincipalAssociationArrayOutput) ElementType

func (PrincipalAssociationArrayOutput) Index

func (PrincipalAssociationArrayOutput) ToPrincipalAssociationArrayOutput

func (o PrincipalAssociationArrayOutput) ToPrincipalAssociationArrayOutput() PrincipalAssociationArrayOutput

func (PrincipalAssociationArrayOutput) ToPrincipalAssociationArrayOutputWithContext

func (o PrincipalAssociationArrayOutput) ToPrincipalAssociationArrayOutputWithContext(ctx context.Context) PrincipalAssociationArrayOutput

type PrincipalAssociationInput

type PrincipalAssociationInput interface {
	pulumi.Input

	ToPrincipalAssociationOutput() PrincipalAssociationOutput
	ToPrincipalAssociationOutputWithContext(ctx context.Context) PrincipalAssociationOutput
}

type PrincipalAssociationMap

type PrincipalAssociationMap map[string]PrincipalAssociationInput

func (PrincipalAssociationMap) ElementType

func (PrincipalAssociationMap) ElementType() reflect.Type

func (PrincipalAssociationMap) ToPrincipalAssociationMapOutput

func (i PrincipalAssociationMap) ToPrincipalAssociationMapOutput() PrincipalAssociationMapOutput

func (PrincipalAssociationMap) ToPrincipalAssociationMapOutputWithContext

func (i PrincipalAssociationMap) ToPrincipalAssociationMapOutputWithContext(ctx context.Context) PrincipalAssociationMapOutput

type PrincipalAssociationMapInput

type PrincipalAssociationMapInput interface {
	pulumi.Input

	ToPrincipalAssociationMapOutput() PrincipalAssociationMapOutput
	ToPrincipalAssociationMapOutputWithContext(context.Context) PrincipalAssociationMapOutput
}

PrincipalAssociationMapInput is an input type that accepts PrincipalAssociationMap and PrincipalAssociationMapOutput values. You can construct a concrete instance of `PrincipalAssociationMapInput` via:

PrincipalAssociationMap{ "key": PrincipalAssociationArgs{...} }

type PrincipalAssociationMapOutput

type PrincipalAssociationMapOutput struct{ *pulumi.OutputState }

func (PrincipalAssociationMapOutput) ElementType

func (PrincipalAssociationMapOutput) MapIndex

func (PrincipalAssociationMapOutput) ToPrincipalAssociationMapOutput

func (o PrincipalAssociationMapOutput) ToPrincipalAssociationMapOutput() PrincipalAssociationMapOutput

func (PrincipalAssociationMapOutput) ToPrincipalAssociationMapOutputWithContext

func (o PrincipalAssociationMapOutput) ToPrincipalAssociationMapOutputWithContext(ctx context.Context) PrincipalAssociationMapOutput

type PrincipalAssociationOutput

type PrincipalAssociationOutput struct{ *pulumi.OutputState }

func (PrincipalAssociationOutput) ElementType

func (PrincipalAssociationOutput) ElementType() reflect.Type

func (PrincipalAssociationOutput) Principal

The principal to associate with the resource share. Possible values are an AWS account ID, an AWS Organizations Organization ARN, or an AWS Organizations Organization Unit ARN.

func (PrincipalAssociationOutput) ResourceShareArn

func (o PrincipalAssociationOutput) ResourceShareArn() pulumi.StringOutput

The Amazon Resource Name (ARN) of the resource share.

func (PrincipalAssociationOutput) ToPrincipalAssociationOutput

func (o PrincipalAssociationOutput) ToPrincipalAssociationOutput() PrincipalAssociationOutput

func (PrincipalAssociationOutput) ToPrincipalAssociationOutputWithContext

func (o PrincipalAssociationOutput) ToPrincipalAssociationOutputWithContext(ctx context.Context) PrincipalAssociationOutput

type PrincipalAssociationState

type PrincipalAssociationState struct {
	// The principal to associate with the resource share. Possible values are an AWS account ID, an AWS Organizations Organization ARN, or an AWS Organizations Organization Unit ARN.
	Principal pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) of the resource share.
	ResourceShareArn pulumi.StringPtrInput
}

func (PrincipalAssociationState) ElementType

func (PrincipalAssociationState) ElementType() reflect.Type

type ResourceAssociation

type ResourceAssociation struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the resource to associate with the RAM Resource Share.
	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
	// Amazon Resource Name (ARN) of the RAM Resource Share.
	ResourceShareArn pulumi.StringOutput `pulumi:"resourceShareArn"`
}

Manages a Resource Access Manager (RAM) Resource Association.

> *NOTE:* Certain AWS resources (e.g., EC2 Subnets) can only be shared in an AWS account that is a member of an AWS Organizations organization with organization-wide Resource Access Manager functionality enabled. See the [Resource Access Manager User Guide](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) and AWS service specific documentation for additional information.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.NewResourceAssociation(ctx, "example", &ram.ResourceAssociationArgs{
			ResourceArn:      pulumi.Any(exampleAwsSubnet.Arn),
			ResourceShareArn: pulumi.Any(exampleAwsRamResourceShare.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Using `pulumi import`, import RAM Resource Associations using their Resource Share ARN and Resource ARN separated by a comma. For example:

```sh $ pulumi import aws:ram/resourceAssociation:ResourceAssociation example arn:aws:ram:eu-west-1:123456789012:resource-share/73da1ab9-b94a-4ba3-8eb4-45917f7f4b12,arn:aws:ec2:eu-west-1:123456789012:subnet/subnet-12345678 ```

func GetResourceAssociation

func GetResourceAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceAssociationState, opts ...pulumi.ResourceOption) (*ResourceAssociation, error)

GetResourceAssociation gets an existing ResourceAssociation 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 NewResourceAssociation

func NewResourceAssociation(ctx *pulumi.Context,
	name string, args *ResourceAssociationArgs, opts ...pulumi.ResourceOption) (*ResourceAssociation, error)

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

func (*ResourceAssociation) ElementType

func (*ResourceAssociation) ElementType() reflect.Type

func (*ResourceAssociation) ToResourceAssociationOutput

func (i *ResourceAssociation) ToResourceAssociationOutput() ResourceAssociationOutput

func (*ResourceAssociation) ToResourceAssociationOutputWithContext

func (i *ResourceAssociation) ToResourceAssociationOutputWithContext(ctx context.Context) ResourceAssociationOutput

type ResourceAssociationArgs

type ResourceAssociationArgs struct {
	// Amazon Resource Name (ARN) of the resource to associate with the RAM Resource Share.
	ResourceArn pulumi.StringInput
	// Amazon Resource Name (ARN) of the RAM Resource Share.
	ResourceShareArn pulumi.StringInput
}

The set of arguments for constructing a ResourceAssociation resource.

func (ResourceAssociationArgs) ElementType

func (ResourceAssociationArgs) ElementType() reflect.Type

type ResourceAssociationArray

type ResourceAssociationArray []ResourceAssociationInput

func (ResourceAssociationArray) ElementType

func (ResourceAssociationArray) ElementType() reflect.Type

func (ResourceAssociationArray) ToResourceAssociationArrayOutput

func (i ResourceAssociationArray) ToResourceAssociationArrayOutput() ResourceAssociationArrayOutput

func (ResourceAssociationArray) ToResourceAssociationArrayOutputWithContext

func (i ResourceAssociationArray) ToResourceAssociationArrayOutputWithContext(ctx context.Context) ResourceAssociationArrayOutput

type ResourceAssociationArrayInput

type ResourceAssociationArrayInput interface {
	pulumi.Input

	ToResourceAssociationArrayOutput() ResourceAssociationArrayOutput
	ToResourceAssociationArrayOutputWithContext(context.Context) ResourceAssociationArrayOutput
}

ResourceAssociationArrayInput is an input type that accepts ResourceAssociationArray and ResourceAssociationArrayOutput values. You can construct a concrete instance of `ResourceAssociationArrayInput` via:

ResourceAssociationArray{ ResourceAssociationArgs{...} }

type ResourceAssociationArrayOutput

type ResourceAssociationArrayOutput struct{ *pulumi.OutputState }

func (ResourceAssociationArrayOutput) ElementType

func (ResourceAssociationArrayOutput) Index

func (ResourceAssociationArrayOutput) ToResourceAssociationArrayOutput

func (o ResourceAssociationArrayOutput) ToResourceAssociationArrayOutput() ResourceAssociationArrayOutput

func (ResourceAssociationArrayOutput) ToResourceAssociationArrayOutputWithContext

func (o ResourceAssociationArrayOutput) ToResourceAssociationArrayOutputWithContext(ctx context.Context) ResourceAssociationArrayOutput

type ResourceAssociationInput

type ResourceAssociationInput interface {
	pulumi.Input

	ToResourceAssociationOutput() ResourceAssociationOutput
	ToResourceAssociationOutputWithContext(ctx context.Context) ResourceAssociationOutput
}

type ResourceAssociationMap

type ResourceAssociationMap map[string]ResourceAssociationInput

func (ResourceAssociationMap) ElementType

func (ResourceAssociationMap) ElementType() reflect.Type

func (ResourceAssociationMap) ToResourceAssociationMapOutput

func (i ResourceAssociationMap) ToResourceAssociationMapOutput() ResourceAssociationMapOutput

func (ResourceAssociationMap) ToResourceAssociationMapOutputWithContext

func (i ResourceAssociationMap) ToResourceAssociationMapOutputWithContext(ctx context.Context) ResourceAssociationMapOutput

type ResourceAssociationMapInput

type ResourceAssociationMapInput interface {
	pulumi.Input

	ToResourceAssociationMapOutput() ResourceAssociationMapOutput
	ToResourceAssociationMapOutputWithContext(context.Context) ResourceAssociationMapOutput
}

ResourceAssociationMapInput is an input type that accepts ResourceAssociationMap and ResourceAssociationMapOutput values. You can construct a concrete instance of `ResourceAssociationMapInput` via:

ResourceAssociationMap{ "key": ResourceAssociationArgs{...} }

type ResourceAssociationMapOutput

type ResourceAssociationMapOutput struct{ *pulumi.OutputState }

func (ResourceAssociationMapOutput) ElementType

func (ResourceAssociationMapOutput) MapIndex

func (ResourceAssociationMapOutput) ToResourceAssociationMapOutput

func (o ResourceAssociationMapOutput) ToResourceAssociationMapOutput() ResourceAssociationMapOutput

func (ResourceAssociationMapOutput) ToResourceAssociationMapOutputWithContext

func (o ResourceAssociationMapOutput) ToResourceAssociationMapOutputWithContext(ctx context.Context) ResourceAssociationMapOutput

type ResourceAssociationOutput

type ResourceAssociationOutput struct{ *pulumi.OutputState }

func (ResourceAssociationOutput) ElementType

func (ResourceAssociationOutput) ElementType() reflect.Type

func (ResourceAssociationOutput) ResourceArn

Amazon Resource Name (ARN) of the resource to associate with the RAM Resource Share.

func (ResourceAssociationOutput) ResourceShareArn

func (o ResourceAssociationOutput) ResourceShareArn() pulumi.StringOutput

Amazon Resource Name (ARN) of the RAM Resource Share.

func (ResourceAssociationOutput) ToResourceAssociationOutput

func (o ResourceAssociationOutput) ToResourceAssociationOutput() ResourceAssociationOutput

func (ResourceAssociationOutput) ToResourceAssociationOutputWithContext

func (o ResourceAssociationOutput) ToResourceAssociationOutputWithContext(ctx context.Context) ResourceAssociationOutput

type ResourceAssociationState

type ResourceAssociationState struct {
	// Amazon Resource Name (ARN) of the resource to associate with the RAM Resource Share.
	ResourceArn pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the RAM Resource Share.
	ResourceShareArn pulumi.StringPtrInput
}

func (ResourceAssociationState) ElementType

func (ResourceAssociationState) ElementType() reflect.Type

type ResourceShare

type ResourceShare struct {
	pulumi.CustomResourceState

	// Indicates whether principals outside your organization can be associated with a resource share.
	AllowExternalPrincipals pulumi.BoolPtrOutput `pulumi:"allowExternalPrincipals"`
	// The Amazon Resource Name (ARN) of the resource share.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name of the resource share.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the Amazon Resource Names (ARNs) of the RAM permission to associate with the resource share. If you do not specify an ARN for the permission, RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.
	PermissionArns pulumi.StringArrayOutput `pulumi:"permissionArns"`
	// A map of tags to assign to the resource share. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages a Resource Access Manager (RAM) Resource Share. To associate principals with the share, see the `ram.PrincipalAssociation` resource. To associate resources with the share, see the `ram.ResourceAssociation` resource.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.NewResourceShare(ctx, "example", &ram.ResourceShareArgs{
			Name:                    pulumi.String("example"),
			AllowExternalPrincipals: pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Using `pulumi import`, import resource shares using the `arn` of the resource share. For example:

```sh $ pulumi import aws:ram/resourceShare:ResourceShare example arn:aws:ram:eu-west-1:123456789012:resource-share/73da1ab9-b94a-4ba3-8eb4-45917f7f4b12 ```

func GetResourceShare

func GetResourceShare(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceShareState, opts ...pulumi.ResourceOption) (*ResourceShare, error)

GetResourceShare gets an existing ResourceShare 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 NewResourceShare

func NewResourceShare(ctx *pulumi.Context,
	name string, args *ResourceShareArgs, opts ...pulumi.ResourceOption) (*ResourceShare, error)

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

func (*ResourceShare) ElementType

func (*ResourceShare) ElementType() reflect.Type

func (*ResourceShare) ToResourceShareOutput

func (i *ResourceShare) ToResourceShareOutput() ResourceShareOutput

func (*ResourceShare) ToResourceShareOutputWithContext

func (i *ResourceShare) ToResourceShareOutputWithContext(ctx context.Context) ResourceShareOutput

type ResourceShareAccepter

type ResourceShareAccepter struct {
	pulumi.CustomResourceState

	// The ARN of the resource share invitation.
	InvitationArn pulumi.StringOutput `pulumi:"invitationArn"`
	// The account ID of the receiver account which accepts the invitation.
	ReceiverAccountId pulumi.StringOutput `pulumi:"receiverAccountId"`
	// A list of the resource ARNs shared via the resource share.
	Resources pulumi.StringArrayOutput `pulumi:"resources"`
	// The account ID of the sender account which submits the invitation.
	SenderAccountId pulumi.StringOutput `pulumi:"senderAccountId"`
	// The ARN of the resource share.
	ShareArn pulumi.StringOutput `pulumi:"shareArn"`
	// The ID of the resource share as displayed in the console.
	ShareId pulumi.StringOutput `pulumi:"shareId"`
	// The name of the resource share.
	ShareName pulumi.StringOutput `pulumi:"shareName"`
	// The status of the resource share (ACTIVE, PENDING, FAILED, DELETING, DELETED).
	Status pulumi.StringOutput `pulumi:"status"`
}

Manage accepting a Resource Access Manager (RAM) Resource Share invitation. From a _receiver_ AWS account, accept an invitation to share resources that were shared by a _sender_ AWS account. To create a resource share in the _sender_, see the `ram.ResourceShare` resource.

> **Note:** If both AWS accounts are in the same Organization and [RAM Sharing with AWS Organizations is enabled](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs), this resource is not necessary as RAM Resource Share invitations are not used.

## Example Usage

This configuration provides an example of using multiple AWS providers to configure two different AWS accounts. In the _sender_ account, the configuration creates a `ram.ResourceShare` and uses a data source in the _receiver_ account to create a `ram.PrincipalAssociation` resource with the _receiver's_ account ID. In the _receiver_ account, the configuration accepts the invitation to share resources with the `ram.ResourceShareAccepter`.

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		senderShare, err := ram.NewResourceShare(ctx, "sender_share", &ram.ResourceShareArgs{
			Name:                    pulumi.String("tf-test-resource-share"),
			AllowExternalPrincipals: pulumi.Bool(true),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("tf-test-resource-share"),
			},
		})
		if err != nil {
			return err
		}
		receiver, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		senderInvite, err := ram.NewPrincipalAssociation(ctx, "sender_invite", &ram.PrincipalAssociationArgs{
			Principal:        pulumi.String(receiver.AccountId),
			ResourceShareArn: senderShare.Arn,
		})
		if err != nil {
			return err
		}
		_, err = ram.NewResourceShareAccepter(ctx, "receiver_accept", &ram.ResourceShareAccepterArgs{
			ShareArn: senderInvite.ResourceShareArn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Using `pulumi import`, import resource share accepters using the resource share ARN. For example:

```sh $ pulumi import aws:ram/resourceShareAccepter:ResourceShareAccepter example arn:aws:ram:us-east-1:123456789012:resource-share/c4b56393-e8d9-89d9-6dc9-883752de4767 ```

func GetResourceShareAccepter

func GetResourceShareAccepter(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceShareAccepterState, opts ...pulumi.ResourceOption) (*ResourceShareAccepter, error)

GetResourceShareAccepter gets an existing ResourceShareAccepter 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 NewResourceShareAccepter

func NewResourceShareAccepter(ctx *pulumi.Context,
	name string, args *ResourceShareAccepterArgs, opts ...pulumi.ResourceOption) (*ResourceShareAccepter, error)

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

func (*ResourceShareAccepter) ElementType

func (*ResourceShareAccepter) ElementType() reflect.Type

func (*ResourceShareAccepter) ToResourceShareAccepterOutput

func (i *ResourceShareAccepter) ToResourceShareAccepterOutput() ResourceShareAccepterOutput

func (*ResourceShareAccepter) ToResourceShareAccepterOutputWithContext

func (i *ResourceShareAccepter) ToResourceShareAccepterOutputWithContext(ctx context.Context) ResourceShareAccepterOutput

type ResourceShareAccepterArgs

type ResourceShareAccepterArgs struct {
	// The ARN of the resource share.
	ShareArn pulumi.StringInput
}

The set of arguments for constructing a ResourceShareAccepter resource.

func (ResourceShareAccepterArgs) ElementType

func (ResourceShareAccepterArgs) ElementType() reflect.Type

type ResourceShareAccepterArray

type ResourceShareAccepterArray []ResourceShareAccepterInput

func (ResourceShareAccepterArray) ElementType

func (ResourceShareAccepterArray) ElementType() reflect.Type

func (ResourceShareAccepterArray) ToResourceShareAccepterArrayOutput

func (i ResourceShareAccepterArray) ToResourceShareAccepterArrayOutput() ResourceShareAccepterArrayOutput

func (ResourceShareAccepterArray) ToResourceShareAccepterArrayOutputWithContext

func (i ResourceShareAccepterArray) ToResourceShareAccepterArrayOutputWithContext(ctx context.Context) ResourceShareAccepterArrayOutput

type ResourceShareAccepterArrayInput

type ResourceShareAccepterArrayInput interface {
	pulumi.Input

	ToResourceShareAccepterArrayOutput() ResourceShareAccepterArrayOutput
	ToResourceShareAccepterArrayOutputWithContext(context.Context) ResourceShareAccepterArrayOutput
}

ResourceShareAccepterArrayInput is an input type that accepts ResourceShareAccepterArray and ResourceShareAccepterArrayOutput values. You can construct a concrete instance of `ResourceShareAccepterArrayInput` via:

ResourceShareAccepterArray{ ResourceShareAccepterArgs{...} }

type ResourceShareAccepterArrayOutput

type ResourceShareAccepterArrayOutput struct{ *pulumi.OutputState }

func (ResourceShareAccepterArrayOutput) ElementType

func (ResourceShareAccepterArrayOutput) Index

func (ResourceShareAccepterArrayOutput) ToResourceShareAccepterArrayOutput

func (o ResourceShareAccepterArrayOutput) ToResourceShareAccepterArrayOutput() ResourceShareAccepterArrayOutput

func (ResourceShareAccepterArrayOutput) ToResourceShareAccepterArrayOutputWithContext

func (o ResourceShareAccepterArrayOutput) ToResourceShareAccepterArrayOutputWithContext(ctx context.Context) ResourceShareAccepterArrayOutput

type ResourceShareAccepterInput

type ResourceShareAccepterInput interface {
	pulumi.Input

	ToResourceShareAccepterOutput() ResourceShareAccepterOutput
	ToResourceShareAccepterOutputWithContext(ctx context.Context) ResourceShareAccepterOutput
}

type ResourceShareAccepterMap

type ResourceShareAccepterMap map[string]ResourceShareAccepterInput

func (ResourceShareAccepterMap) ElementType

func (ResourceShareAccepterMap) ElementType() reflect.Type

func (ResourceShareAccepterMap) ToResourceShareAccepterMapOutput

func (i ResourceShareAccepterMap) ToResourceShareAccepterMapOutput() ResourceShareAccepterMapOutput

func (ResourceShareAccepterMap) ToResourceShareAccepterMapOutputWithContext

func (i ResourceShareAccepterMap) ToResourceShareAccepterMapOutputWithContext(ctx context.Context) ResourceShareAccepterMapOutput

type ResourceShareAccepterMapInput

type ResourceShareAccepterMapInput interface {
	pulumi.Input

	ToResourceShareAccepterMapOutput() ResourceShareAccepterMapOutput
	ToResourceShareAccepterMapOutputWithContext(context.Context) ResourceShareAccepterMapOutput
}

ResourceShareAccepterMapInput is an input type that accepts ResourceShareAccepterMap and ResourceShareAccepterMapOutput values. You can construct a concrete instance of `ResourceShareAccepterMapInput` via:

ResourceShareAccepterMap{ "key": ResourceShareAccepterArgs{...} }

type ResourceShareAccepterMapOutput

type ResourceShareAccepterMapOutput struct{ *pulumi.OutputState }

func (ResourceShareAccepterMapOutput) ElementType

func (ResourceShareAccepterMapOutput) MapIndex

func (ResourceShareAccepterMapOutput) ToResourceShareAccepterMapOutput

func (o ResourceShareAccepterMapOutput) ToResourceShareAccepterMapOutput() ResourceShareAccepterMapOutput

func (ResourceShareAccepterMapOutput) ToResourceShareAccepterMapOutputWithContext

func (o ResourceShareAccepterMapOutput) ToResourceShareAccepterMapOutputWithContext(ctx context.Context) ResourceShareAccepterMapOutput

type ResourceShareAccepterOutput

type ResourceShareAccepterOutput struct{ *pulumi.OutputState }

func (ResourceShareAccepterOutput) ElementType

func (ResourceShareAccepterOutput) InvitationArn

The ARN of the resource share invitation.

func (ResourceShareAccepterOutput) ReceiverAccountId

func (o ResourceShareAccepterOutput) ReceiverAccountId() pulumi.StringOutput

The account ID of the receiver account which accepts the invitation.

func (ResourceShareAccepterOutput) Resources

A list of the resource ARNs shared via the resource share.

func (ResourceShareAccepterOutput) SenderAccountId

func (o ResourceShareAccepterOutput) SenderAccountId() pulumi.StringOutput

The account ID of the sender account which submits the invitation.

func (ResourceShareAccepterOutput) ShareArn

The ARN of the resource share.

func (ResourceShareAccepterOutput) ShareId

The ID of the resource share as displayed in the console.

func (ResourceShareAccepterOutput) ShareName

The name of the resource share.

func (ResourceShareAccepterOutput) Status

The status of the resource share (ACTIVE, PENDING, FAILED, DELETING, DELETED).

func (ResourceShareAccepterOutput) ToResourceShareAccepterOutput

func (o ResourceShareAccepterOutput) ToResourceShareAccepterOutput() ResourceShareAccepterOutput

func (ResourceShareAccepterOutput) ToResourceShareAccepterOutputWithContext

func (o ResourceShareAccepterOutput) ToResourceShareAccepterOutputWithContext(ctx context.Context) ResourceShareAccepterOutput

type ResourceShareAccepterState

type ResourceShareAccepterState struct {
	// The ARN of the resource share invitation.
	InvitationArn pulumi.StringPtrInput
	// The account ID of the receiver account which accepts the invitation.
	ReceiverAccountId pulumi.StringPtrInput
	// A list of the resource ARNs shared via the resource share.
	Resources pulumi.StringArrayInput
	// The account ID of the sender account which submits the invitation.
	SenderAccountId pulumi.StringPtrInput
	// The ARN of the resource share.
	ShareArn pulumi.StringPtrInput
	// The ID of the resource share as displayed in the console.
	ShareId pulumi.StringPtrInput
	// The name of the resource share.
	ShareName pulumi.StringPtrInput
	// The status of the resource share (ACTIVE, PENDING, FAILED, DELETING, DELETED).
	Status pulumi.StringPtrInput
}

func (ResourceShareAccepterState) ElementType

func (ResourceShareAccepterState) ElementType() reflect.Type

type ResourceShareArgs

type ResourceShareArgs struct {
	// Indicates whether principals outside your organization can be associated with a resource share.
	AllowExternalPrincipals pulumi.BoolPtrInput
	// The name of the resource share.
	Name pulumi.StringPtrInput
	// Specifies the Amazon Resource Names (ARNs) of the RAM permission to associate with the resource share. If you do not specify an ARN for the permission, RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.
	PermissionArns pulumi.StringArrayInput
	// A map of tags to assign to the resource share. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ResourceShare resource.

func (ResourceShareArgs) ElementType

func (ResourceShareArgs) ElementType() reflect.Type

type ResourceShareArray

type ResourceShareArray []ResourceShareInput

func (ResourceShareArray) ElementType

func (ResourceShareArray) ElementType() reflect.Type

func (ResourceShareArray) ToResourceShareArrayOutput

func (i ResourceShareArray) ToResourceShareArrayOutput() ResourceShareArrayOutput

func (ResourceShareArray) ToResourceShareArrayOutputWithContext

func (i ResourceShareArray) ToResourceShareArrayOutputWithContext(ctx context.Context) ResourceShareArrayOutput

type ResourceShareArrayInput

type ResourceShareArrayInput interface {
	pulumi.Input

	ToResourceShareArrayOutput() ResourceShareArrayOutput
	ToResourceShareArrayOutputWithContext(context.Context) ResourceShareArrayOutput
}

ResourceShareArrayInput is an input type that accepts ResourceShareArray and ResourceShareArrayOutput values. You can construct a concrete instance of `ResourceShareArrayInput` via:

ResourceShareArray{ ResourceShareArgs{...} }

type ResourceShareArrayOutput

type ResourceShareArrayOutput struct{ *pulumi.OutputState }

func (ResourceShareArrayOutput) ElementType

func (ResourceShareArrayOutput) ElementType() reflect.Type

func (ResourceShareArrayOutput) Index

func (ResourceShareArrayOutput) ToResourceShareArrayOutput

func (o ResourceShareArrayOutput) ToResourceShareArrayOutput() ResourceShareArrayOutput

func (ResourceShareArrayOutput) ToResourceShareArrayOutputWithContext

func (o ResourceShareArrayOutput) ToResourceShareArrayOutputWithContext(ctx context.Context) ResourceShareArrayOutput

type ResourceShareInput

type ResourceShareInput interface {
	pulumi.Input

	ToResourceShareOutput() ResourceShareOutput
	ToResourceShareOutputWithContext(ctx context.Context) ResourceShareOutput
}

type ResourceShareMap

type ResourceShareMap map[string]ResourceShareInput

func (ResourceShareMap) ElementType

func (ResourceShareMap) ElementType() reflect.Type

func (ResourceShareMap) ToResourceShareMapOutput

func (i ResourceShareMap) ToResourceShareMapOutput() ResourceShareMapOutput

func (ResourceShareMap) ToResourceShareMapOutputWithContext

func (i ResourceShareMap) ToResourceShareMapOutputWithContext(ctx context.Context) ResourceShareMapOutput

type ResourceShareMapInput

type ResourceShareMapInput interface {
	pulumi.Input

	ToResourceShareMapOutput() ResourceShareMapOutput
	ToResourceShareMapOutputWithContext(context.Context) ResourceShareMapOutput
}

ResourceShareMapInput is an input type that accepts ResourceShareMap and ResourceShareMapOutput values. You can construct a concrete instance of `ResourceShareMapInput` via:

ResourceShareMap{ "key": ResourceShareArgs{...} }

type ResourceShareMapOutput

type ResourceShareMapOutput struct{ *pulumi.OutputState }

func (ResourceShareMapOutput) ElementType

func (ResourceShareMapOutput) ElementType() reflect.Type

func (ResourceShareMapOutput) MapIndex

func (ResourceShareMapOutput) ToResourceShareMapOutput

func (o ResourceShareMapOutput) ToResourceShareMapOutput() ResourceShareMapOutput

func (ResourceShareMapOutput) ToResourceShareMapOutputWithContext

func (o ResourceShareMapOutput) ToResourceShareMapOutputWithContext(ctx context.Context) ResourceShareMapOutput

type ResourceShareOutput

type ResourceShareOutput struct{ *pulumi.OutputState }

func (ResourceShareOutput) AllowExternalPrincipals

func (o ResourceShareOutput) AllowExternalPrincipals() pulumi.BoolPtrOutput

Indicates whether principals outside your organization can be associated with a resource share.

func (ResourceShareOutput) Arn

The Amazon Resource Name (ARN) of the resource share.

func (ResourceShareOutput) ElementType

func (ResourceShareOutput) ElementType() reflect.Type

func (ResourceShareOutput) Name

The name of the resource share.

func (ResourceShareOutput) PermissionArns

func (o ResourceShareOutput) PermissionArns() pulumi.StringArrayOutput

Specifies the Amazon Resource Names (ARNs) of the RAM permission to associate with the resource share. If you do not specify an ARN for the permission, RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.

func (ResourceShareOutput) Tags

A map of tags to assign to the resource share. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResourceShareOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResourceShareOutput) ToResourceShareOutput

func (o ResourceShareOutput) ToResourceShareOutput() ResourceShareOutput

func (ResourceShareOutput) ToResourceShareOutputWithContext

func (o ResourceShareOutput) ToResourceShareOutputWithContext(ctx context.Context) ResourceShareOutput

type ResourceShareState

type ResourceShareState struct {
	// Indicates whether principals outside your organization can be associated with a resource share.
	AllowExternalPrincipals pulumi.BoolPtrInput
	// The Amazon Resource Name (ARN) of the resource share.
	Arn pulumi.StringPtrInput
	// The name of the resource share.
	Name pulumi.StringPtrInput
	// Specifies the Amazon Resource Names (ARNs) of the RAM permission to associate with the resource share. If you do not specify an ARN for the permission, RAM automatically attaches the default version of the permission for each resource type. You can associate only one permission with each resource type included in the resource share.
	PermissionArns pulumi.StringArrayInput
	// A map of tags to assign to the resource share. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ResourceShareState) ElementType

func (ResourceShareState) ElementType() reflect.Type

type SharingWithOrganization added in v6.1.0

type SharingWithOrganization struct {
	pulumi.CustomResourceState
}

Manages Resource Access Manager (RAM) Resource Sharing with AWS Organizations. If you enable sharing with your organization, you can share resources without using invitations. Refer to the [AWS RAM user guide](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs) for more details.

> **NOTE:** Use this resource to manage resource sharing within your organization, **not** the `organizations.Organization` resource with `ram.amazonaws.com` configured in `awsServiceAccessPrincipals`.

## Example Usage

<!--Start PulumiCodeChooser --> ```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ram"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := ram.NewSharingWithOrganization(ctx, "example", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` <!--End PulumiCodeChooser -->

## Import

Using `pulumi import`, import the resource using the current AWS account ID. For example:

```sh $ pulumi import aws:ram/sharingWithOrganization:SharingWithOrganization example 123456789012 ```

func GetSharingWithOrganization added in v6.1.0

func GetSharingWithOrganization(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SharingWithOrganizationState, opts ...pulumi.ResourceOption) (*SharingWithOrganization, error)

GetSharingWithOrganization gets an existing SharingWithOrganization 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 NewSharingWithOrganization added in v6.1.0

func NewSharingWithOrganization(ctx *pulumi.Context,
	name string, args *SharingWithOrganizationArgs, opts ...pulumi.ResourceOption) (*SharingWithOrganization, error)

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

func (*SharingWithOrganization) ElementType added in v6.1.0

func (*SharingWithOrganization) ElementType() reflect.Type

func (*SharingWithOrganization) ToSharingWithOrganizationOutput added in v6.1.0

func (i *SharingWithOrganization) ToSharingWithOrganizationOutput() SharingWithOrganizationOutput

func (*SharingWithOrganization) ToSharingWithOrganizationOutputWithContext added in v6.1.0

func (i *SharingWithOrganization) ToSharingWithOrganizationOutputWithContext(ctx context.Context) SharingWithOrganizationOutput

type SharingWithOrganizationArgs added in v6.1.0

type SharingWithOrganizationArgs struct {
}

The set of arguments for constructing a SharingWithOrganization resource.

func (SharingWithOrganizationArgs) ElementType added in v6.1.0

type SharingWithOrganizationArray added in v6.1.0

type SharingWithOrganizationArray []SharingWithOrganizationInput

func (SharingWithOrganizationArray) ElementType added in v6.1.0

func (SharingWithOrganizationArray) ToSharingWithOrganizationArrayOutput added in v6.1.0

func (i SharingWithOrganizationArray) ToSharingWithOrganizationArrayOutput() SharingWithOrganizationArrayOutput

func (SharingWithOrganizationArray) ToSharingWithOrganizationArrayOutputWithContext added in v6.1.0

func (i SharingWithOrganizationArray) ToSharingWithOrganizationArrayOutputWithContext(ctx context.Context) SharingWithOrganizationArrayOutput

type SharingWithOrganizationArrayInput added in v6.1.0

type SharingWithOrganizationArrayInput interface {
	pulumi.Input

	ToSharingWithOrganizationArrayOutput() SharingWithOrganizationArrayOutput
	ToSharingWithOrganizationArrayOutputWithContext(context.Context) SharingWithOrganizationArrayOutput
}

SharingWithOrganizationArrayInput is an input type that accepts SharingWithOrganizationArray and SharingWithOrganizationArrayOutput values. You can construct a concrete instance of `SharingWithOrganizationArrayInput` via:

SharingWithOrganizationArray{ SharingWithOrganizationArgs{...} }

type SharingWithOrganizationArrayOutput added in v6.1.0

type SharingWithOrganizationArrayOutput struct{ *pulumi.OutputState }

func (SharingWithOrganizationArrayOutput) ElementType added in v6.1.0

func (SharingWithOrganizationArrayOutput) Index added in v6.1.0

func (SharingWithOrganizationArrayOutput) ToSharingWithOrganizationArrayOutput added in v6.1.0

func (o SharingWithOrganizationArrayOutput) ToSharingWithOrganizationArrayOutput() SharingWithOrganizationArrayOutput

func (SharingWithOrganizationArrayOutput) ToSharingWithOrganizationArrayOutputWithContext added in v6.1.0

func (o SharingWithOrganizationArrayOutput) ToSharingWithOrganizationArrayOutputWithContext(ctx context.Context) SharingWithOrganizationArrayOutput

type SharingWithOrganizationInput added in v6.1.0

type SharingWithOrganizationInput interface {
	pulumi.Input

	ToSharingWithOrganizationOutput() SharingWithOrganizationOutput
	ToSharingWithOrganizationOutputWithContext(ctx context.Context) SharingWithOrganizationOutput
}

type SharingWithOrganizationMap added in v6.1.0

type SharingWithOrganizationMap map[string]SharingWithOrganizationInput

func (SharingWithOrganizationMap) ElementType added in v6.1.0

func (SharingWithOrganizationMap) ElementType() reflect.Type

func (SharingWithOrganizationMap) ToSharingWithOrganizationMapOutput added in v6.1.0

func (i SharingWithOrganizationMap) ToSharingWithOrganizationMapOutput() SharingWithOrganizationMapOutput

func (SharingWithOrganizationMap) ToSharingWithOrganizationMapOutputWithContext added in v6.1.0

func (i SharingWithOrganizationMap) ToSharingWithOrganizationMapOutputWithContext(ctx context.Context) SharingWithOrganizationMapOutput

type SharingWithOrganizationMapInput added in v6.1.0

type SharingWithOrganizationMapInput interface {
	pulumi.Input

	ToSharingWithOrganizationMapOutput() SharingWithOrganizationMapOutput
	ToSharingWithOrganizationMapOutputWithContext(context.Context) SharingWithOrganizationMapOutput
}

SharingWithOrganizationMapInput is an input type that accepts SharingWithOrganizationMap and SharingWithOrganizationMapOutput values. You can construct a concrete instance of `SharingWithOrganizationMapInput` via:

SharingWithOrganizationMap{ "key": SharingWithOrganizationArgs{...} }

type SharingWithOrganizationMapOutput added in v6.1.0

type SharingWithOrganizationMapOutput struct{ *pulumi.OutputState }

func (SharingWithOrganizationMapOutput) ElementType added in v6.1.0

func (SharingWithOrganizationMapOutput) MapIndex added in v6.1.0

func (SharingWithOrganizationMapOutput) ToSharingWithOrganizationMapOutput added in v6.1.0

func (o SharingWithOrganizationMapOutput) ToSharingWithOrganizationMapOutput() SharingWithOrganizationMapOutput

func (SharingWithOrganizationMapOutput) ToSharingWithOrganizationMapOutputWithContext added in v6.1.0

func (o SharingWithOrganizationMapOutput) ToSharingWithOrganizationMapOutputWithContext(ctx context.Context) SharingWithOrganizationMapOutput

type SharingWithOrganizationOutput added in v6.1.0

type SharingWithOrganizationOutput struct{ *pulumi.OutputState }

func (SharingWithOrganizationOutput) ElementType added in v6.1.0

func (SharingWithOrganizationOutput) ToSharingWithOrganizationOutput added in v6.1.0

func (o SharingWithOrganizationOutput) ToSharingWithOrganizationOutput() SharingWithOrganizationOutput

func (SharingWithOrganizationOutput) ToSharingWithOrganizationOutputWithContext added in v6.1.0

func (o SharingWithOrganizationOutput) ToSharingWithOrganizationOutputWithContext(ctx context.Context) SharingWithOrganizationOutput

type SharingWithOrganizationState added in v6.1.0

type SharingWithOrganizationState struct {
}

func (SharingWithOrganizationState) ElementType added in v6.1.0

Jump to

Keyboard shortcuts

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