resourcemanager

package
v2.26.0 Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account added in v2.5.0

type Account struct {
	pulumi.CustomResourceState

	// Member name. The length is 2 ~ 50 characters or Chinese characters, which can include Chinese characters, English letters, numbers, underscores (_), dots (.) And dashes (-).
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// The ID of the parent folder.
	FolderId pulumi.StringPtrOutput `pulumi:"folderId"`
	// Ways for members to join the resource directory. Valid values: `invited`, `created`.
	JoinMethod pulumi.StringOutput `pulumi:"joinMethod"`
	// The time when the member joined the resource directory.
	JoinTime pulumi.StringOutput `pulumi:"joinTime"`
	// The modification time of the invitation.
	ModifyTime pulumi.StringOutput `pulumi:"modifyTime"`
	// Settlement account ID. If the value is empty, the current account will be used for settlement.
	PayerAccountId pulumi.StringPtrOutput `pulumi:"payerAccountId"`
	// Resource directory ID.
	ResourceDirectoryId pulumi.StringOutput `pulumi:"resourceDirectoryId"`
	// Member joining status. Valid values: `CreateSuccess`,`CreateVerifying`,`CreateFailed`,`CreateExpired`,`CreateCancelled`,`PromoteVerifying`,`PromoteFailed`,`PromoteExpired`,`PromoteCancelled`,`PromoteSuccess`,`InviteSuccess`,`Removed`.
	Status pulumi.StringOutput `pulumi:"status"`
	// Member type. The value of `ResourceAccount` indicates the resource account.
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a Resource Manager Account resource. Member accounts are containers for resources in a resource directory. These accounts isolate resources and serve as organizational units in the resource directory. You can create member accounts in a folder and then manage them in a unified manner. For information about Resource Manager Account and how to use it, see [What is Resource Manager Account](https://www.alibabacloud.com/help/en/doc-detail/111231.htm).

> **NOTE:** Available in v1.83.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		f1, err := resourcemanager.NewFolder(ctx, "f1", &resourcemanager.FolderArgs{
			FolderName: pulumi.String("test1"),
		})
		if err != nil {
			return err
		}
		_, err = resourcemanager.NewAccount(ctx, "example", &resourcemanager.AccountArgs{
			DisplayName: pulumi.String("RDAccount"),
			FolderId:    f1.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Manager Account can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/account:Account example 13148890145*****

```

func GetAccount added in v2.5.0

func GetAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountState, opts ...pulumi.ResourceOption) (*Account, error)

GetAccount gets an existing Account 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 NewAccount added in v2.5.0

func NewAccount(ctx *pulumi.Context,
	name string, args *AccountArgs, opts ...pulumi.ResourceOption) (*Account, error)

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

func (Account) ElementType added in v2.25.1

func (Account) ElementType() reflect.Type

func (Account) ToAccountOutput added in v2.25.1

func (i Account) ToAccountOutput() AccountOutput

func (Account) ToAccountOutputWithContext added in v2.25.1

func (i Account) ToAccountOutputWithContext(ctx context.Context) AccountOutput

type AccountArgs added in v2.5.0

type AccountArgs struct {
	// Member name. The length is 2 ~ 50 characters or Chinese characters, which can include Chinese characters, English letters, numbers, underscores (_), dots (.) And dashes (-).
	DisplayName pulumi.StringInput
	// The ID of the parent folder.
	FolderId pulumi.StringPtrInput
	// Settlement account ID. If the value is empty, the current account will be used for settlement.
	PayerAccountId pulumi.StringPtrInput
}

The set of arguments for constructing a Account resource.

func (AccountArgs) ElementType added in v2.5.0

func (AccountArgs) ElementType() reflect.Type

type AccountInput added in v2.25.1

type AccountInput interface {
	pulumi.Input

	ToAccountOutput() AccountOutput
	ToAccountOutputWithContext(ctx context.Context) AccountOutput
}

type AccountOutput added in v2.25.1

type AccountOutput struct {
	*pulumi.OutputState
}

func (AccountOutput) ElementType added in v2.25.1

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) ToAccountOutput added in v2.25.1

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext added in v2.25.1

func (o AccountOutput) ToAccountOutputWithContext(ctx context.Context) AccountOutput

type AccountState added in v2.5.0

type AccountState struct {
	// Member name. The length is 2 ~ 50 characters or Chinese characters, which can include Chinese characters, English letters, numbers, underscores (_), dots (.) And dashes (-).
	DisplayName pulumi.StringPtrInput
	// The ID of the parent folder.
	FolderId pulumi.StringPtrInput
	// Ways for members to join the resource directory. Valid values: `invited`, `created`.
	JoinMethod pulumi.StringPtrInput
	// The time when the member joined the resource directory.
	JoinTime pulumi.StringPtrInput
	// The modification time of the invitation.
	ModifyTime pulumi.StringPtrInput
	// Settlement account ID. If the value is empty, the current account will be used for settlement.
	PayerAccountId pulumi.StringPtrInput
	// Resource directory ID.
	ResourceDirectoryId pulumi.StringPtrInput
	// Member joining status. Valid values: `CreateSuccess`,`CreateVerifying`,`CreateFailed`,`CreateExpired`,`CreateCancelled`,`PromoteVerifying`,`PromoteFailed`,`PromoteExpired`,`PromoteCancelled`,`PromoteSuccess`,`InviteSuccess`,`Removed`.
	Status pulumi.StringPtrInput
	// Member type. The value of `ResourceAccount` indicates the resource account.
	Type pulumi.StringPtrInput
}

func (AccountState) ElementType added in v2.5.0

func (AccountState) ElementType() reflect.Type

type Folder

type Folder struct {
	pulumi.CustomResourceState

	// The name of the folder. The name must be 1 to 24 characters in length and can contain letters, digits, underscores (_), periods (.), and hyphens (-).
	FolderName pulumi.StringOutput `pulumi:"folderName"`
	// The ID of the parent folder. If not set, the system default value will be used.
	ParentFolderId pulumi.StringOutput `pulumi:"parentFolderId"`
}

Provides a Resource Manager Folder resource. A folder is an organizational unit in a resource directory. You can use folders to build an organizational structure for resources. For information about Resource Manager Foler and how to use it, see [What is Resource Manager Folder](https://www.alibabacloud.com/help/en/doc-detail/111221.htm).

> **NOTE:** Available in v1.82.0+.

> **NOTE:** A maximum of five levels of folders can be created under the root folder.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := resourcemanager.NewFolder(ctx, "example", &resourcemanager.FolderArgs{
			FolderName: pulumi.String("test"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Manager Folder can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/folder:Folder example fd-u8B321****

```

func GetFolder

func GetFolder(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FolderState, opts ...pulumi.ResourceOption) (*Folder, error)

GetFolder gets an existing Folder 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 NewFolder

func NewFolder(ctx *pulumi.Context,
	name string, args *FolderArgs, opts ...pulumi.ResourceOption) (*Folder, error)

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

func (Folder) ElementType added in v2.25.1

func (Folder) ElementType() reflect.Type

func (Folder) ToFolderOutput added in v2.25.1

func (i Folder) ToFolderOutput() FolderOutput

func (Folder) ToFolderOutputWithContext added in v2.25.1

func (i Folder) ToFolderOutputWithContext(ctx context.Context) FolderOutput

type FolderArgs

type FolderArgs struct {
	// The name of the folder. The name must be 1 to 24 characters in length and can contain letters, digits, underscores (_), periods (.), and hyphens (-).
	FolderName pulumi.StringInput
	// The ID of the parent folder. If not set, the system default value will be used.
	ParentFolderId pulumi.StringPtrInput
}

The set of arguments for constructing a Folder resource.

func (FolderArgs) ElementType

func (FolderArgs) ElementType() reflect.Type

type FolderInput added in v2.25.1

type FolderInput interface {
	pulumi.Input

	ToFolderOutput() FolderOutput
	ToFolderOutputWithContext(ctx context.Context) FolderOutput
}

type FolderOutput added in v2.25.1

type FolderOutput struct {
	*pulumi.OutputState
}

func (FolderOutput) ElementType added in v2.25.1

func (FolderOutput) ElementType() reflect.Type

func (FolderOutput) ToFolderOutput added in v2.25.1

func (o FolderOutput) ToFolderOutput() FolderOutput

func (FolderOutput) ToFolderOutputWithContext added in v2.25.1

func (o FolderOutput) ToFolderOutputWithContext(ctx context.Context) FolderOutput

type FolderState

type FolderState struct {
	// The name of the folder. The name must be 1 to 24 characters in length and can contain letters, digits, underscores (_), periods (.), and hyphens (-).
	FolderName pulumi.StringPtrInput
	// The ID of the parent folder. If not set, the system default value will be used.
	ParentFolderId pulumi.StringPtrInput
}

func (FolderState) ElementType

func (FolderState) ElementType() reflect.Type

type GetAccountsAccount added in v2.8.0

type GetAccountsAccount struct {
	AccountId   string `pulumi:"accountId"`
	DisplayName string `pulumi:"displayName"`
	// The ID of the folder.
	FolderId string `pulumi:"folderId"`
	// The ID of the resource.
	// * `accountId`- The ID of the account.
	// * `displayName`- The name of the member account.
	Id string `pulumi:"id"`
	// The way in which the member account joined the resource directory.
	JoinMethod string `pulumi:"joinMethod"`
	// The time when the member account joined the resource directory.
	JoinTime string `pulumi:"joinTime"`
	// The time when the member account was modified.
	ModifyTime string `pulumi:"modifyTime"`
	// The ID of the resource directory.
	ResourceDirectoryId string `pulumi:"resourceDirectoryId"`
	// The status of the member account.
	Status string `pulumi:"status"`
	// The type of the member account.
	Type string `pulumi:"type"`
}

type GetAccountsAccountArgs added in v2.8.0

type GetAccountsAccountArgs struct {
	AccountId   pulumi.StringInput `pulumi:"accountId"`
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// The ID of the folder.
	FolderId pulumi.StringInput `pulumi:"folderId"`
	// The ID of the resource.
	// * `accountId`- The ID of the account.
	// * `displayName`- The name of the member account.
	Id pulumi.StringInput `pulumi:"id"`
	// The way in which the member account joined the resource directory.
	JoinMethod pulumi.StringInput `pulumi:"joinMethod"`
	// The time when the member account joined the resource directory.
	JoinTime pulumi.StringInput `pulumi:"joinTime"`
	// The time when the member account was modified.
	ModifyTime pulumi.StringInput `pulumi:"modifyTime"`
	// The ID of the resource directory.
	ResourceDirectoryId pulumi.StringInput `pulumi:"resourceDirectoryId"`
	// The status of the member account.
	Status pulumi.StringInput `pulumi:"status"`
	// The type of the member account.
	Type pulumi.StringInput `pulumi:"type"`
}

func (GetAccountsAccountArgs) ElementType added in v2.8.0

func (GetAccountsAccountArgs) ElementType() reflect.Type

func (GetAccountsAccountArgs) ToGetAccountsAccountOutput added in v2.8.0

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext added in v2.8.0

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext(ctx context.Context) GetAccountsAccountOutput

type GetAccountsAccountArray added in v2.8.0

type GetAccountsAccountArray []GetAccountsAccountInput

func (GetAccountsAccountArray) ElementType added in v2.8.0

func (GetAccountsAccountArray) ElementType() reflect.Type

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutput added in v2.8.0

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext added in v2.8.0

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext(ctx context.Context) GetAccountsAccountArrayOutput

type GetAccountsAccountArrayInput added in v2.8.0

type GetAccountsAccountArrayInput interface {
	pulumi.Input

	ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput
	ToGetAccountsAccountArrayOutputWithContext(context.Context) GetAccountsAccountArrayOutput
}

GetAccountsAccountArrayInput is an input type that accepts GetAccountsAccountArray and GetAccountsAccountArrayOutput values. You can construct a concrete instance of `GetAccountsAccountArrayInput` via:

GetAccountsAccountArray{ GetAccountsAccountArgs{...} }

type GetAccountsAccountArrayOutput added in v2.8.0

type GetAccountsAccountArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountArrayOutput) ElementType added in v2.8.0

func (GetAccountsAccountArrayOutput) Index added in v2.8.0

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput added in v2.8.0

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext added in v2.8.0

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext(ctx context.Context) GetAccountsAccountArrayOutput

type GetAccountsAccountInput added in v2.8.0

type GetAccountsAccountInput interface {
	pulumi.Input

	ToGetAccountsAccountOutput() GetAccountsAccountOutput
	ToGetAccountsAccountOutputWithContext(context.Context) GetAccountsAccountOutput
}

GetAccountsAccountInput is an input type that accepts GetAccountsAccountArgs and GetAccountsAccountOutput values. You can construct a concrete instance of `GetAccountsAccountInput` via:

GetAccountsAccountArgs{...}

type GetAccountsAccountOutput added in v2.8.0

type GetAccountsAccountOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountOutput) AccountId added in v2.8.0

func (GetAccountsAccountOutput) DisplayName added in v2.8.0

func (GetAccountsAccountOutput) ElementType added in v2.8.0

func (GetAccountsAccountOutput) ElementType() reflect.Type

func (GetAccountsAccountOutput) FolderId added in v2.8.0

The ID of the folder.

func (GetAccountsAccountOutput) Id added in v2.8.0

The ID of the resource. * `accountId`- The ID of the account. * `displayName`- The name of the member account.

func (GetAccountsAccountOutput) JoinMethod added in v2.8.0

The way in which the member account joined the resource directory.

func (GetAccountsAccountOutput) JoinTime added in v2.8.0

The time when the member account joined the resource directory.

func (GetAccountsAccountOutput) ModifyTime added in v2.8.0

The time when the member account was modified.

func (GetAccountsAccountOutput) ResourceDirectoryId added in v2.8.0

func (o GetAccountsAccountOutput) ResourceDirectoryId() pulumi.StringOutput

The ID of the resource directory.

func (GetAccountsAccountOutput) Status added in v2.8.0

The status of the member account.

func (GetAccountsAccountOutput) ToGetAccountsAccountOutput added in v2.8.0

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext added in v2.8.0

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext(ctx context.Context) GetAccountsAccountOutput

func (GetAccountsAccountOutput) Type added in v2.8.0

The type of the member account.

type GetAccountsArgs added in v2.8.0

type GetAccountsArgs struct {
	// A list of account IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of arguments for invoking getAccounts.

type GetAccountsResult added in v2.8.0

type GetAccountsResult struct {
	// A list of accounts. Each element contains the following attributes:
	Accounts []GetAccountsAccount `pulumi:"accounts"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of account IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getAccounts.

func GetAccounts added in v2.8.0

func GetAccounts(ctx *pulumi.Context, args *GetAccountsArgs, opts ...pulumi.InvokeOption) (*GetAccountsResult, error)

This data source provides the Resource Manager Accounts of the current Alibaba Cloud user.

> **NOTE:** Available in 1.86.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := resourcemanager.GetAccounts(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstAccountId", _default.Accounts[0].Id)
		return nil
	})
}

```

type GetFoldersArgs added in v2.6.0

type GetFoldersArgs struct {
	// A list of resource manager folders IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by folder name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the parent folder.
	ParentFolderId *string `pulumi:"parentFolderId"`
}

A collection of arguments for invoking getFolders.

type GetFoldersFolder added in v2.6.0

type GetFoldersFolder struct {
	FolderId   string `pulumi:"folderId"`
	FolderName string `pulumi:"folderName"`
	// The ID of the folder.
	// * `folderId`- The ID of the folder.
	// * `folderName`- The name of the folder.
	Id string `pulumi:"id"`
}

type GetFoldersFolderArgs added in v2.6.0

type GetFoldersFolderArgs struct {
	FolderId   pulumi.StringInput `pulumi:"folderId"`
	FolderName pulumi.StringInput `pulumi:"folderName"`
	// The ID of the folder.
	// * `folderId`- The ID of the folder.
	// * `folderName`- The name of the folder.
	Id pulumi.StringInput `pulumi:"id"`
}

func (GetFoldersFolderArgs) ElementType added in v2.6.0

func (GetFoldersFolderArgs) ElementType() reflect.Type

func (GetFoldersFolderArgs) ToGetFoldersFolderOutput added in v2.6.0

func (i GetFoldersFolderArgs) ToGetFoldersFolderOutput() GetFoldersFolderOutput

func (GetFoldersFolderArgs) ToGetFoldersFolderOutputWithContext added in v2.6.0

func (i GetFoldersFolderArgs) ToGetFoldersFolderOutputWithContext(ctx context.Context) GetFoldersFolderOutput

type GetFoldersFolderArray added in v2.6.0

type GetFoldersFolderArray []GetFoldersFolderInput

func (GetFoldersFolderArray) ElementType added in v2.6.0

func (GetFoldersFolderArray) ElementType() reflect.Type

func (GetFoldersFolderArray) ToGetFoldersFolderArrayOutput added in v2.6.0

func (i GetFoldersFolderArray) ToGetFoldersFolderArrayOutput() GetFoldersFolderArrayOutput

func (GetFoldersFolderArray) ToGetFoldersFolderArrayOutputWithContext added in v2.6.0

func (i GetFoldersFolderArray) ToGetFoldersFolderArrayOutputWithContext(ctx context.Context) GetFoldersFolderArrayOutput

type GetFoldersFolderArrayInput added in v2.6.0

type GetFoldersFolderArrayInput interface {
	pulumi.Input

	ToGetFoldersFolderArrayOutput() GetFoldersFolderArrayOutput
	ToGetFoldersFolderArrayOutputWithContext(context.Context) GetFoldersFolderArrayOutput
}

GetFoldersFolderArrayInput is an input type that accepts GetFoldersFolderArray and GetFoldersFolderArrayOutput values. You can construct a concrete instance of `GetFoldersFolderArrayInput` via:

GetFoldersFolderArray{ GetFoldersFolderArgs{...} }

type GetFoldersFolderArrayOutput added in v2.6.0

type GetFoldersFolderArrayOutput struct{ *pulumi.OutputState }

func (GetFoldersFolderArrayOutput) ElementType added in v2.6.0

func (GetFoldersFolderArrayOutput) Index added in v2.6.0

func (GetFoldersFolderArrayOutput) ToGetFoldersFolderArrayOutput added in v2.6.0

func (o GetFoldersFolderArrayOutput) ToGetFoldersFolderArrayOutput() GetFoldersFolderArrayOutput

func (GetFoldersFolderArrayOutput) ToGetFoldersFolderArrayOutputWithContext added in v2.6.0

func (o GetFoldersFolderArrayOutput) ToGetFoldersFolderArrayOutputWithContext(ctx context.Context) GetFoldersFolderArrayOutput

type GetFoldersFolderInput added in v2.6.0

type GetFoldersFolderInput interface {
	pulumi.Input

	ToGetFoldersFolderOutput() GetFoldersFolderOutput
	ToGetFoldersFolderOutputWithContext(context.Context) GetFoldersFolderOutput
}

GetFoldersFolderInput is an input type that accepts GetFoldersFolderArgs and GetFoldersFolderOutput values. You can construct a concrete instance of `GetFoldersFolderInput` via:

GetFoldersFolderArgs{...}

type GetFoldersFolderOutput added in v2.6.0

type GetFoldersFolderOutput struct{ *pulumi.OutputState }

func (GetFoldersFolderOutput) ElementType added in v2.6.0

func (GetFoldersFolderOutput) ElementType() reflect.Type

func (GetFoldersFolderOutput) FolderId added in v2.6.0

func (GetFoldersFolderOutput) FolderName added in v2.6.0

func (GetFoldersFolderOutput) Id added in v2.6.0

The ID of the folder. * `folderId`- The ID of the folder. * `folderName`- The name of the folder.

func (GetFoldersFolderOutput) ToGetFoldersFolderOutput added in v2.6.0

func (o GetFoldersFolderOutput) ToGetFoldersFolderOutput() GetFoldersFolderOutput

func (GetFoldersFolderOutput) ToGetFoldersFolderOutputWithContext added in v2.6.0

func (o GetFoldersFolderOutput) ToGetFoldersFolderOutputWithContext(ctx context.Context) GetFoldersFolderOutput

type GetFoldersResult added in v2.6.0

type GetFoldersResult struct {
	// A list of folders. Each element contains the following attributes:
	Folders []GetFoldersFolder `pulumi:"folders"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of folder IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of folder names.
	Names          []string `pulumi:"names"`
	OutputFile     *string  `pulumi:"outputFile"`
	ParentFolderId *string  `pulumi:"parentFolderId"`
}

A collection of values returned by getFolders.

func GetFolders added in v2.6.0

func GetFolders(ctx *pulumi.Context, args *GetFoldersArgs, opts ...pulumi.InvokeOption) (*GetFoldersResult, error)

This data source provides the resource manager folders of the current Alibaba Cloud user.

> **NOTE:** Available in 1.84.0+.

> **NOTE:** You can view only the information of the first-level child folders of the specified folder.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tftest"
		example, err := resourcemanager.GetFolders(ctx, &resourcemanager.GetFoldersArgs{
			NameRegex: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstFolderId", example.Folders[0].Id)
		return nil
	})
}

```

type GetHandshakesArgs added in v2.8.0

type GetHandshakesArgs struct {
	// A list of Resource Manager Handshake IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of arguments for invoking getHandshakes.

type GetHandshakesHandshake added in v2.8.0

type GetHandshakesHandshake struct {
	// The time when the invitation expires.
	ExpireTime  string `pulumi:"expireTime"`
	HandshakeId string `pulumi:"handshakeId"`
	// The ID of the resource.
	// * `handshakeId`- The ID of the invitation.
	Id string `pulumi:"id"`
	// The ID of the master account of the resource directory.
	MasterAccountId string `pulumi:"masterAccountId"`
	// The name of the master account of the resource directory.
	MasterAccountName string `pulumi:"masterAccountName"`
	// The time when the invitation was modified.
	ModifyTime string `pulumi:"modifyTime"`
	// The invitation note.
	Note string `pulumi:"note"`
	// The ID of the resource directory.
	ResourceDirectoryId string `pulumi:"resourceDirectoryId"`
	// The status of the invitation.
	Status string `pulumi:"status"`
	// The ID or logon email address of the invited account.
	TargetEntity string `pulumi:"targetEntity"`
	// The type of the invited account.
	TargetType string `pulumi:"targetType"`
}

type GetHandshakesHandshakeArgs added in v2.8.0

type GetHandshakesHandshakeArgs struct {
	// The time when the invitation expires.
	ExpireTime  pulumi.StringInput `pulumi:"expireTime"`
	HandshakeId pulumi.StringInput `pulumi:"handshakeId"`
	// The ID of the resource.
	// * `handshakeId`- The ID of the invitation.
	Id pulumi.StringInput `pulumi:"id"`
	// The ID of the master account of the resource directory.
	MasterAccountId pulumi.StringInput `pulumi:"masterAccountId"`
	// The name of the master account of the resource directory.
	MasterAccountName pulumi.StringInput `pulumi:"masterAccountName"`
	// The time when the invitation was modified.
	ModifyTime pulumi.StringInput `pulumi:"modifyTime"`
	// The invitation note.
	Note pulumi.StringInput `pulumi:"note"`
	// The ID of the resource directory.
	ResourceDirectoryId pulumi.StringInput `pulumi:"resourceDirectoryId"`
	// The status of the invitation.
	Status pulumi.StringInput `pulumi:"status"`
	// The ID or logon email address of the invited account.
	TargetEntity pulumi.StringInput `pulumi:"targetEntity"`
	// The type of the invited account.
	TargetType pulumi.StringInput `pulumi:"targetType"`
}

func (GetHandshakesHandshakeArgs) ElementType added in v2.8.0

func (GetHandshakesHandshakeArgs) ElementType() reflect.Type

func (GetHandshakesHandshakeArgs) ToGetHandshakesHandshakeOutput added in v2.8.0

func (i GetHandshakesHandshakeArgs) ToGetHandshakesHandshakeOutput() GetHandshakesHandshakeOutput

func (GetHandshakesHandshakeArgs) ToGetHandshakesHandshakeOutputWithContext added in v2.8.0

func (i GetHandshakesHandshakeArgs) ToGetHandshakesHandshakeOutputWithContext(ctx context.Context) GetHandshakesHandshakeOutput

type GetHandshakesHandshakeArray added in v2.8.0

type GetHandshakesHandshakeArray []GetHandshakesHandshakeInput

func (GetHandshakesHandshakeArray) ElementType added in v2.8.0

func (GetHandshakesHandshakeArray) ToGetHandshakesHandshakeArrayOutput added in v2.8.0

func (i GetHandshakesHandshakeArray) ToGetHandshakesHandshakeArrayOutput() GetHandshakesHandshakeArrayOutput

func (GetHandshakesHandshakeArray) ToGetHandshakesHandshakeArrayOutputWithContext added in v2.8.0

func (i GetHandshakesHandshakeArray) ToGetHandshakesHandshakeArrayOutputWithContext(ctx context.Context) GetHandshakesHandshakeArrayOutput

type GetHandshakesHandshakeArrayInput added in v2.8.0

type GetHandshakesHandshakeArrayInput interface {
	pulumi.Input

	ToGetHandshakesHandshakeArrayOutput() GetHandshakesHandshakeArrayOutput
	ToGetHandshakesHandshakeArrayOutputWithContext(context.Context) GetHandshakesHandshakeArrayOutput
}

GetHandshakesHandshakeArrayInput is an input type that accepts GetHandshakesHandshakeArray and GetHandshakesHandshakeArrayOutput values. You can construct a concrete instance of `GetHandshakesHandshakeArrayInput` via:

GetHandshakesHandshakeArray{ GetHandshakesHandshakeArgs{...} }

type GetHandshakesHandshakeArrayOutput added in v2.8.0

type GetHandshakesHandshakeArrayOutput struct{ *pulumi.OutputState }

func (GetHandshakesHandshakeArrayOutput) ElementType added in v2.8.0

func (GetHandshakesHandshakeArrayOutput) Index added in v2.8.0

func (GetHandshakesHandshakeArrayOutput) ToGetHandshakesHandshakeArrayOutput added in v2.8.0

func (o GetHandshakesHandshakeArrayOutput) ToGetHandshakesHandshakeArrayOutput() GetHandshakesHandshakeArrayOutput

func (GetHandshakesHandshakeArrayOutput) ToGetHandshakesHandshakeArrayOutputWithContext added in v2.8.0

func (o GetHandshakesHandshakeArrayOutput) ToGetHandshakesHandshakeArrayOutputWithContext(ctx context.Context) GetHandshakesHandshakeArrayOutput

type GetHandshakesHandshakeInput added in v2.8.0

type GetHandshakesHandshakeInput interface {
	pulumi.Input

	ToGetHandshakesHandshakeOutput() GetHandshakesHandshakeOutput
	ToGetHandshakesHandshakeOutputWithContext(context.Context) GetHandshakesHandshakeOutput
}

GetHandshakesHandshakeInput is an input type that accepts GetHandshakesHandshakeArgs and GetHandshakesHandshakeOutput values. You can construct a concrete instance of `GetHandshakesHandshakeInput` via:

GetHandshakesHandshakeArgs{...}

type GetHandshakesHandshakeOutput added in v2.8.0

type GetHandshakesHandshakeOutput struct{ *pulumi.OutputState }

func (GetHandshakesHandshakeOutput) ElementType added in v2.8.0

func (GetHandshakesHandshakeOutput) ExpireTime added in v2.8.0

The time when the invitation expires.

func (GetHandshakesHandshakeOutput) HandshakeId added in v2.8.0

func (GetHandshakesHandshakeOutput) Id added in v2.8.0

The ID of the resource. * `handshakeId`- The ID of the invitation.

func (GetHandshakesHandshakeOutput) MasterAccountId added in v2.8.0

func (o GetHandshakesHandshakeOutput) MasterAccountId() pulumi.StringOutput

The ID of the master account of the resource directory.

func (GetHandshakesHandshakeOutput) MasterAccountName added in v2.8.0

func (o GetHandshakesHandshakeOutput) MasterAccountName() pulumi.StringOutput

The name of the master account of the resource directory.

func (GetHandshakesHandshakeOutput) ModifyTime added in v2.8.0

The time when the invitation was modified.

func (GetHandshakesHandshakeOutput) Note added in v2.8.0

The invitation note.

func (GetHandshakesHandshakeOutput) ResourceDirectoryId added in v2.8.0

func (o GetHandshakesHandshakeOutput) ResourceDirectoryId() pulumi.StringOutput

The ID of the resource directory.

func (GetHandshakesHandshakeOutput) Status added in v2.8.0

The status of the invitation.

func (GetHandshakesHandshakeOutput) TargetEntity added in v2.8.0

The ID or logon email address of the invited account.

func (GetHandshakesHandshakeOutput) TargetType added in v2.8.0

The type of the invited account.

func (GetHandshakesHandshakeOutput) ToGetHandshakesHandshakeOutput added in v2.8.0

func (o GetHandshakesHandshakeOutput) ToGetHandshakesHandshakeOutput() GetHandshakesHandshakeOutput

func (GetHandshakesHandshakeOutput) ToGetHandshakesHandshakeOutputWithContext added in v2.8.0

func (o GetHandshakesHandshakeOutput) ToGetHandshakesHandshakeOutputWithContext(ctx context.Context) GetHandshakesHandshakeOutput

type GetHandshakesResult added in v2.8.0

type GetHandshakesResult struct {
	// A list of Resource Manager Handshakes. Each element contains the following attributes:
	Handshakes []GetHandshakesHandshake `pulumi:"handshakes"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Resource Manager Handshake IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
}

A collection of values returned by getHandshakes.

func GetHandshakes added in v2.8.0

func GetHandshakes(ctx *pulumi.Context, args *GetHandshakesArgs, opts ...pulumi.InvokeOption) (*GetHandshakesResult, error)

This data source provides the Resource Manager Handshakes of the current Alibaba Cloud user.

> **NOTE:** Available in 1.86.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := resourcemanager.GetHandshakes(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstHandshakeId", example.Handshakes[0].Id)
		return nil
	})
}

```

type GetPoliciesArgs added in v2.8.0

type GetPoliciesArgs struct {
	// A list of Resource Manager Policy IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by policy name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The type of the policy. If you do not specify this parameter, the system lists all types of policies. Valid values: `Custom` and `System`.
	PolicyType *string `pulumi:"policyType"`
}

A collection of arguments for invoking getPolicies.

type GetPoliciesPolicy added in v2.8.0

type GetPoliciesPolicy struct {
	// The number of times the policy is referenced.
	AttachmentCount int `pulumi:"attachmentCount"`
	// The time when the policy was created.
	CreateDate string `pulumi:"createDate"`
	// The default version of the policy.
	DefaultVersion string `pulumi:"defaultVersion"`
	// The description of the policy.
	Description string `pulumi:"description"`
	// The ID of the policy.
	// * `policyName`- The name of the policy.
	// * `policyType`- The type of the policy.
	Id         string `pulumi:"id"`
	PolicyName string `pulumi:"policyName"`
	// The type of the policy. If you do not specify this parameter, the system lists all types of policies. Valid values: `Custom` and `System`.
	PolicyType string `pulumi:"policyType"`
	// The time when the policy was updated.
	UpdateDate string `pulumi:"updateDate"`
}

type GetPoliciesPolicyArgs added in v2.8.0

type GetPoliciesPolicyArgs struct {
	// The number of times the policy is referenced.
	AttachmentCount pulumi.IntInput `pulumi:"attachmentCount"`
	// The time when the policy was created.
	CreateDate pulumi.StringInput `pulumi:"createDate"`
	// The default version of the policy.
	DefaultVersion pulumi.StringInput `pulumi:"defaultVersion"`
	// The description of the policy.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the policy.
	// * `policyName`- The name of the policy.
	// * `policyType`- The type of the policy.
	Id         pulumi.StringInput `pulumi:"id"`
	PolicyName pulumi.StringInput `pulumi:"policyName"`
	// The type of the policy. If you do not specify this parameter, the system lists all types of policies. Valid values: `Custom` and `System`.
	PolicyType pulumi.StringInput `pulumi:"policyType"`
	// The time when the policy was updated.
	UpdateDate pulumi.StringInput `pulumi:"updateDate"`
}

func (GetPoliciesPolicyArgs) ElementType added in v2.8.0

func (GetPoliciesPolicyArgs) ElementType() reflect.Type

func (GetPoliciesPolicyArgs) ToGetPoliciesPolicyOutput added in v2.8.0

func (i GetPoliciesPolicyArgs) ToGetPoliciesPolicyOutput() GetPoliciesPolicyOutput

func (GetPoliciesPolicyArgs) ToGetPoliciesPolicyOutputWithContext added in v2.8.0

func (i GetPoliciesPolicyArgs) ToGetPoliciesPolicyOutputWithContext(ctx context.Context) GetPoliciesPolicyOutput

type GetPoliciesPolicyArray added in v2.8.0

type GetPoliciesPolicyArray []GetPoliciesPolicyInput

func (GetPoliciesPolicyArray) ElementType added in v2.8.0

func (GetPoliciesPolicyArray) ElementType() reflect.Type

func (GetPoliciesPolicyArray) ToGetPoliciesPolicyArrayOutput added in v2.8.0

func (i GetPoliciesPolicyArray) ToGetPoliciesPolicyArrayOutput() GetPoliciesPolicyArrayOutput

func (GetPoliciesPolicyArray) ToGetPoliciesPolicyArrayOutputWithContext added in v2.8.0

func (i GetPoliciesPolicyArray) ToGetPoliciesPolicyArrayOutputWithContext(ctx context.Context) GetPoliciesPolicyArrayOutput

type GetPoliciesPolicyArrayInput added in v2.8.0

type GetPoliciesPolicyArrayInput interface {
	pulumi.Input

	ToGetPoliciesPolicyArrayOutput() GetPoliciesPolicyArrayOutput
	ToGetPoliciesPolicyArrayOutputWithContext(context.Context) GetPoliciesPolicyArrayOutput
}

GetPoliciesPolicyArrayInput is an input type that accepts GetPoliciesPolicyArray and GetPoliciesPolicyArrayOutput values. You can construct a concrete instance of `GetPoliciesPolicyArrayInput` via:

GetPoliciesPolicyArray{ GetPoliciesPolicyArgs{...} }

type GetPoliciesPolicyArrayOutput added in v2.8.0

type GetPoliciesPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetPoliciesPolicyArrayOutput) ElementType added in v2.8.0

func (GetPoliciesPolicyArrayOutput) Index added in v2.8.0

func (GetPoliciesPolicyArrayOutput) ToGetPoliciesPolicyArrayOutput added in v2.8.0

func (o GetPoliciesPolicyArrayOutput) ToGetPoliciesPolicyArrayOutput() GetPoliciesPolicyArrayOutput

func (GetPoliciesPolicyArrayOutput) ToGetPoliciesPolicyArrayOutputWithContext added in v2.8.0

func (o GetPoliciesPolicyArrayOutput) ToGetPoliciesPolicyArrayOutputWithContext(ctx context.Context) GetPoliciesPolicyArrayOutput

type GetPoliciesPolicyInput added in v2.8.0

type GetPoliciesPolicyInput interface {
	pulumi.Input

	ToGetPoliciesPolicyOutput() GetPoliciesPolicyOutput
	ToGetPoliciesPolicyOutputWithContext(context.Context) GetPoliciesPolicyOutput
}

GetPoliciesPolicyInput is an input type that accepts GetPoliciesPolicyArgs and GetPoliciesPolicyOutput values. You can construct a concrete instance of `GetPoliciesPolicyInput` via:

GetPoliciesPolicyArgs{...}

type GetPoliciesPolicyOutput added in v2.8.0

type GetPoliciesPolicyOutput struct{ *pulumi.OutputState }

func (GetPoliciesPolicyOutput) AttachmentCount added in v2.8.0

func (o GetPoliciesPolicyOutput) AttachmentCount() pulumi.IntOutput

The number of times the policy is referenced.

func (GetPoliciesPolicyOutput) CreateDate added in v2.8.0

The time when the policy was created.

func (GetPoliciesPolicyOutput) DefaultVersion added in v2.8.0

func (o GetPoliciesPolicyOutput) DefaultVersion() pulumi.StringOutput

The default version of the policy.

func (GetPoliciesPolicyOutput) Description added in v2.8.0

The description of the policy.

func (GetPoliciesPolicyOutput) ElementType added in v2.8.0

func (GetPoliciesPolicyOutput) ElementType() reflect.Type

func (GetPoliciesPolicyOutput) Id added in v2.8.0

The ID of the policy. * `policyName`- The name of the policy. * `policyType`- The type of the policy.

func (GetPoliciesPolicyOutput) PolicyName added in v2.8.0

func (GetPoliciesPolicyOutput) PolicyType added in v2.8.0

The type of the policy. If you do not specify this parameter, the system lists all types of policies. Valid values: `Custom` and `System`.

func (GetPoliciesPolicyOutput) ToGetPoliciesPolicyOutput added in v2.8.0

func (o GetPoliciesPolicyOutput) ToGetPoliciesPolicyOutput() GetPoliciesPolicyOutput

func (GetPoliciesPolicyOutput) ToGetPoliciesPolicyOutputWithContext added in v2.8.0

func (o GetPoliciesPolicyOutput) ToGetPoliciesPolicyOutputWithContext(ctx context.Context) GetPoliciesPolicyOutput

func (GetPoliciesPolicyOutput) UpdateDate added in v2.8.0

The time when the policy was updated.

type GetPoliciesResult added in v2.8.0

type GetPoliciesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of policy IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of policy names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of policies. Each element contains the following attributes:
	Policies   []GetPoliciesPolicy `pulumi:"policies"`
	PolicyType *string             `pulumi:"policyType"`
}

A collection of values returned by getPolicies.

func GetPolicies added in v2.8.0

func GetPolicies(ctx *pulumi.Context, args *GetPoliciesArgs, opts ...pulumi.InvokeOption) (*GetPoliciesResult, error)

This data source provides the Resource Manager Policies of the current Alibaba Cloud user.

> **NOTE:** Available in 1.86.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tftest"
		opt1 := "Custom"
		example, err := resourcemanager.GetPolicies(ctx, &resourcemanager.GetPoliciesArgs{
			DescriptionRegex: "tftest_policy",
			NameRegex:        &opt0,
			PolicyType:       &opt1,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstPolicyId", example.Policies[0].Id)
		return nil
	})
}

```

type GetPolicyAttachmentsArgs added in v2.14.0

type GetPolicyAttachmentsArgs struct {
	// The language that is used to return the description of the system policy. Valid values:`en`: English, `zh-CN`: Chinese, `ja`: Japanese.
	Language   *string `pulumi:"language"`
	OutputFile *string `pulumi:"outputFile"`
	// The name of the policy. The name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName *string `pulumi:"policyName"`
	// The type of the policy. Valid values: `Custom` and `System`.
	PolicyType *string `pulumi:"policyType"`
	// The name of the object to which the policy is attached.
	PrincipalName *string `pulumi:"principalName"`
	// The type of the object to which the policy is attached. If you do not specify this parameter, the system lists all types of objects. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.
	PrincipalType *string `pulumi:"principalType"`
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs. If you do not specify this parameter, the system lists all policy attachment records under the current account.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
}

A collection of arguments for invoking getPolicyAttachments.

type GetPolicyAttachmentsAttachment added in v2.14.0

type GetPolicyAttachmentsAttachment struct {
	// The time when the policy was attached.
	AttachDate string `pulumi:"attachDate"`
	// The description of the policy.
	Description string `pulumi:"description"`
	// The ID of the Resource Manager Policy Attachment.
	// * `policyName`- The name of the policy.
	// * `policyType`- The type of the policy.
	// * `principalName`- The name of the object to which the policy is attached.
	// * `principalType`- The type of the object to which the policy is attached.
	Id string `pulumi:"id"`
	// The name of the policy. The name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName string `pulumi:"policyName"`
	// The type of the policy. Valid values: `Custom` and `System`.
	PolicyType string `pulumi:"policyType"`
	// The name of the object to which the policy is attached.
	PrincipalName string `pulumi:"principalName"`
	// The type of the object to which the policy is attached. If you do not specify this parameter, the system lists all types of objects. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.
	PrincipalType string `pulumi:"principalType"`
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs. If you do not specify this parameter, the system lists all policy attachment records under the current account.
	ResourceGroupId string `pulumi:"resourceGroupId"`
}

type GetPolicyAttachmentsAttachmentArgs added in v2.14.0

type GetPolicyAttachmentsAttachmentArgs struct {
	// The time when the policy was attached.
	AttachDate pulumi.StringInput `pulumi:"attachDate"`
	// The description of the policy.
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the Resource Manager Policy Attachment.
	// * `policyName`- The name of the policy.
	// * `policyType`- The type of the policy.
	// * `principalName`- The name of the object to which the policy is attached.
	// * `principalType`- The type of the object to which the policy is attached.
	Id pulumi.StringInput `pulumi:"id"`
	// The name of the policy. The name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringInput `pulumi:"policyName"`
	// The type of the policy. Valid values: `Custom` and `System`.
	PolicyType pulumi.StringInput `pulumi:"policyType"`
	// The name of the object to which the policy is attached.
	PrincipalName pulumi.StringInput `pulumi:"principalName"`
	// The type of the object to which the policy is attached. If you do not specify this parameter, the system lists all types of objects. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.
	PrincipalType pulumi.StringInput `pulumi:"principalType"`
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs. If you do not specify this parameter, the system lists all policy attachment records under the current account.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
}

func (GetPolicyAttachmentsAttachmentArgs) ElementType added in v2.14.0

func (GetPolicyAttachmentsAttachmentArgs) ToGetPolicyAttachmentsAttachmentOutput added in v2.14.0

func (i GetPolicyAttachmentsAttachmentArgs) ToGetPolicyAttachmentsAttachmentOutput() GetPolicyAttachmentsAttachmentOutput

func (GetPolicyAttachmentsAttachmentArgs) ToGetPolicyAttachmentsAttachmentOutputWithContext added in v2.14.0

func (i GetPolicyAttachmentsAttachmentArgs) ToGetPolicyAttachmentsAttachmentOutputWithContext(ctx context.Context) GetPolicyAttachmentsAttachmentOutput

type GetPolicyAttachmentsAttachmentArray added in v2.14.0

type GetPolicyAttachmentsAttachmentArray []GetPolicyAttachmentsAttachmentInput

func (GetPolicyAttachmentsAttachmentArray) ElementType added in v2.14.0

func (GetPolicyAttachmentsAttachmentArray) ToGetPolicyAttachmentsAttachmentArrayOutput added in v2.14.0

func (i GetPolicyAttachmentsAttachmentArray) ToGetPolicyAttachmentsAttachmentArrayOutput() GetPolicyAttachmentsAttachmentArrayOutput

func (GetPolicyAttachmentsAttachmentArray) ToGetPolicyAttachmentsAttachmentArrayOutputWithContext added in v2.14.0

func (i GetPolicyAttachmentsAttachmentArray) ToGetPolicyAttachmentsAttachmentArrayOutputWithContext(ctx context.Context) GetPolicyAttachmentsAttachmentArrayOutput

type GetPolicyAttachmentsAttachmentArrayInput added in v2.14.0

type GetPolicyAttachmentsAttachmentArrayInput interface {
	pulumi.Input

	ToGetPolicyAttachmentsAttachmentArrayOutput() GetPolicyAttachmentsAttachmentArrayOutput
	ToGetPolicyAttachmentsAttachmentArrayOutputWithContext(context.Context) GetPolicyAttachmentsAttachmentArrayOutput
}

GetPolicyAttachmentsAttachmentArrayInput is an input type that accepts GetPolicyAttachmentsAttachmentArray and GetPolicyAttachmentsAttachmentArrayOutput values. You can construct a concrete instance of `GetPolicyAttachmentsAttachmentArrayInput` via:

GetPolicyAttachmentsAttachmentArray{ GetPolicyAttachmentsAttachmentArgs{...} }

type GetPolicyAttachmentsAttachmentArrayOutput added in v2.14.0

type GetPolicyAttachmentsAttachmentArrayOutput struct{ *pulumi.OutputState }

func (GetPolicyAttachmentsAttachmentArrayOutput) ElementType added in v2.14.0

func (GetPolicyAttachmentsAttachmentArrayOutput) Index added in v2.14.0

func (GetPolicyAttachmentsAttachmentArrayOutput) ToGetPolicyAttachmentsAttachmentArrayOutput added in v2.14.0

func (o GetPolicyAttachmentsAttachmentArrayOutput) ToGetPolicyAttachmentsAttachmentArrayOutput() GetPolicyAttachmentsAttachmentArrayOutput

func (GetPolicyAttachmentsAttachmentArrayOutput) ToGetPolicyAttachmentsAttachmentArrayOutputWithContext added in v2.14.0

func (o GetPolicyAttachmentsAttachmentArrayOutput) ToGetPolicyAttachmentsAttachmentArrayOutputWithContext(ctx context.Context) GetPolicyAttachmentsAttachmentArrayOutput

type GetPolicyAttachmentsAttachmentInput added in v2.14.0

type GetPolicyAttachmentsAttachmentInput interface {
	pulumi.Input

	ToGetPolicyAttachmentsAttachmentOutput() GetPolicyAttachmentsAttachmentOutput
	ToGetPolicyAttachmentsAttachmentOutputWithContext(context.Context) GetPolicyAttachmentsAttachmentOutput
}

GetPolicyAttachmentsAttachmentInput is an input type that accepts GetPolicyAttachmentsAttachmentArgs and GetPolicyAttachmentsAttachmentOutput values. You can construct a concrete instance of `GetPolicyAttachmentsAttachmentInput` via:

GetPolicyAttachmentsAttachmentArgs{...}

type GetPolicyAttachmentsAttachmentOutput added in v2.14.0

type GetPolicyAttachmentsAttachmentOutput struct{ *pulumi.OutputState }

func (GetPolicyAttachmentsAttachmentOutput) AttachDate added in v2.14.0

The time when the policy was attached.

func (GetPolicyAttachmentsAttachmentOutput) Description added in v2.14.0

The description of the policy.

func (GetPolicyAttachmentsAttachmentOutput) ElementType added in v2.14.0

func (GetPolicyAttachmentsAttachmentOutput) Id added in v2.14.0

The ID of the Resource Manager Policy Attachment. * `policyName`- The name of the policy. * `policyType`- The type of the policy. * `principalName`- The name of the object to which the policy is attached. * `principalType`- The type of the object to which the policy is attached.

func (GetPolicyAttachmentsAttachmentOutput) PolicyName added in v2.14.0

The name of the policy. The name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).

func (GetPolicyAttachmentsAttachmentOutput) PolicyType added in v2.14.0

The type of the policy. Valid values: `Custom` and `System`.

func (GetPolicyAttachmentsAttachmentOutput) PrincipalName added in v2.14.0

The name of the object to which the policy is attached.

func (GetPolicyAttachmentsAttachmentOutput) PrincipalType added in v2.14.0

The type of the object to which the policy is attached. If you do not specify this parameter, the system lists all types of objects. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.

func (GetPolicyAttachmentsAttachmentOutput) ResourceGroupId added in v2.14.0

The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs. If you do not specify this parameter, the system lists all policy attachment records under the current account.

func (GetPolicyAttachmentsAttachmentOutput) ToGetPolicyAttachmentsAttachmentOutput added in v2.14.0

func (o GetPolicyAttachmentsAttachmentOutput) ToGetPolicyAttachmentsAttachmentOutput() GetPolicyAttachmentsAttachmentOutput

func (GetPolicyAttachmentsAttachmentOutput) ToGetPolicyAttachmentsAttachmentOutputWithContext added in v2.14.0

func (o GetPolicyAttachmentsAttachmentOutput) ToGetPolicyAttachmentsAttachmentOutputWithContext(ctx context.Context) GetPolicyAttachmentsAttachmentOutput

type GetPolicyAttachmentsResult added in v2.14.0

type GetPolicyAttachmentsResult struct {
	// A list of Resource Manager Policy Attachment. Each element contains the following attributes:
	Attachments []GetPolicyAttachmentsAttachment `pulumi:"attachments"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of Resource Manager Policy Attachment IDs.
	Ids           []string `pulumi:"ids"`
	Language      *string  `pulumi:"language"`
	OutputFile    *string  `pulumi:"outputFile"`
	PolicyName    *string  `pulumi:"policyName"`
	PolicyType    *string  `pulumi:"policyType"`
	PrincipalName *string  `pulumi:"principalName"`
	PrincipalType *string  `pulumi:"principalType"`
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
}

A collection of values returned by getPolicyAttachments.

func GetPolicyAttachments added in v2.14.0

func GetPolicyAttachments(ctx *pulumi.Context, args *GetPolicyAttachmentsArgs, opts ...pulumi.InvokeOption) (*GetPolicyAttachmentsResult, error)

This data source provides the Resource Manager Policy Attachments of the current Alibaba Cloud user.

> **NOTE:** Available in 1.93.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := resourcemanager.GetPolicyAttachments(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstAttachmentId", example.Attachments[0].Id)
		return nil
	})
}

```

type GetPolicyVersionsArgs added in v2.7.0

type GetPolicyVersionsArgs struct {
	// A list of policy version IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// The name of the policy.
	PolicyName string `pulumi:"policyName"`
	// The type of the policy. Valid values:`Custom` and `System`.
	PolicyType string `pulumi:"policyType"`
}

A collection of arguments for invoking getPolicyVersions.

type GetPolicyVersionsResult added in v2.7.0

type GetPolicyVersionsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of policy version IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	PolicyName string   `pulumi:"policyName"`
	PolicyType string   `pulumi:"policyType"`
	// A list of policy versions. Each element contains the following attributes:
	Versions []GetPolicyVersionsVersion `pulumi:"versions"`
}

A collection of values returned by getPolicyVersions.

func GetPolicyVersions added in v2.7.0

func GetPolicyVersions(ctx *pulumi.Context, args *GetPolicyVersionsArgs, opts ...pulumi.InvokeOption) (*GetPolicyVersionsResult, error)

This data source provides the Resource Manager Policy Versions of the current Alibaba Cloud user.

> **NOTE:** Available in 1.85.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := resourcemanager.GetPolicyVersions(ctx, &resourcemanager.GetPolicyVersionsArgs{
			PolicyName: "tftest",
			PolicyType: "Custom",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstPolicyVersionId", _default.Versions[0].Id)
		return nil
	})
}

```

type GetPolicyVersionsVersion added in v2.7.0

type GetPolicyVersionsVersion struct {
	CreateDate string `pulumi:"createDate"`
	// The ID of the resource, the value is `<policy_name>`:`<version_id>`.
	// * `versionId`- The ID of the policy version.
	// * `createDate`- The time when the policy version was created.
	// * `isDefaultVersion`- Indicates whether the policy version is the default version.
	Id               string `pulumi:"id"`
	IsDefaultVersion bool   `pulumi:"isDefaultVersion"`
	VersionId        string `pulumi:"versionId"`
}

type GetPolicyVersionsVersionArgs added in v2.7.0

type GetPolicyVersionsVersionArgs struct {
	CreateDate pulumi.StringInput `pulumi:"createDate"`
	// The ID of the resource, the value is `<policy_name>`:`<version_id>`.
	// * `versionId`- The ID of the policy version.
	// * `createDate`- The time when the policy version was created.
	// * `isDefaultVersion`- Indicates whether the policy version is the default version.
	Id               pulumi.StringInput `pulumi:"id"`
	IsDefaultVersion pulumi.BoolInput   `pulumi:"isDefaultVersion"`
	VersionId        pulumi.StringInput `pulumi:"versionId"`
}

func (GetPolicyVersionsVersionArgs) ElementType added in v2.7.0

func (GetPolicyVersionsVersionArgs) ToGetPolicyVersionsVersionOutput added in v2.7.0

func (i GetPolicyVersionsVersionArgs) ToGetPolicyVersionsVersionOutput() GetPolicyVersionsVersionOutput

func (GetPolicyVersionsVersionArgs) ToGetPolicyVersionsVersionOutputWithContext added in v2.7.0

func (i GetPolicyVersionsVersionArgs) ToGetPolicyVersionsVersionOutputWithContext(ctx context.Context) GetPolicyVersionsVersionOutput

type GetPolicyVersionsVersionArray added in v2.7.0

type GetPolicyVersionsVersionArray []GetPolicyVersionsVersionInput

func (GetPolicyVersionsVersionArray) ElementType added in v2.7.0

func (GetPolicyVersionsVersionArray) ToGetPolicyVersionsVersionArrayOutput added in v2.7.0

func (i GetPolicyVersionsVersionArray) ToGetPolicyVersionsVersionArrayOutput() GetPolicyVersionsVersionArrayOutput

func (GetPolicyVersionsVersionArray) ToGetPolicyVersionsVersionArrayOutputWithContext added in v2.7.0

func (i GetPolicyVersionsVersionArray) ToGetPolicyVersionsVersionArrayOutputWithContext(ctx context.Context) GetPolicyVersionsVersionArrayOutput

type GetPolicyVersionsVersionArrayInput added in v2.7.0

type GetPolicyVersionsVersionArrayInput interface {
	pulumi.Input

	ToGetPolicyVersionsVersionArrayOutput() GetPolicyVersionsVersionArrayOutput
	ToGetPolicyVersionsVersionArrayOutputWithContext(context.Context) GetPolicyVersionsVersionArrayOutput
}

GetPolicyVersionsVersionArrayInput is an input type that accepts GetPolicyVersionsVersionArray and GetPolicyVersionsVersionArrayOutput values. You can construct a concrete instance of `GetPolicyVersionsVersionArrayInput` via:

GetPolicyVersionsVersionArray{ GetPolicyVersionsVersionArgs{...} }

type GetPolicyVersionsVersionArrayOutput added in v2.7.0

type GetPolicyVersionsVersionArrayOutput struct{ *pulumi.OutputState }

func (GetPolicyVersionsVersionArrayOutput) ElementType added in v2.7.0

func (GetPolicyVersionsVersionArrayOutput) Index added in v2.7.0

func (GetPolicyVersionsVersionArrayOutput) ToGetPolicyVersionsVersionArrayOutput added in v2.7.0

func (o GetPolicyVersionsVersionArrayOutput) ToGetPolicyVersionsVersionArrayOutput() GetPolicyVersionsVersionArrayOutput

func (GetPolicyVersionsVersionArrayOutput) ToGetPolicyVersionsVersionArrayOutputWithContext added in v2.7.0

func (o GetPolicyVersionsVersionArrayOutput) ToGetPolicyVersionsVersionArrayOutputWithContext(ctx context.Context) GetPolicyVersionsVersionArrayOutput

type GetPolicyVersionsVersionInput added in v2.7.0

type GetPolicyVersionsVersionInput interface {
	pulumi.Input

	ToGetPolicyVersionsVersionOutput() GetPolicyVersionsVersionOutput
	ToGetPolicyVersionsVersionOutputWithContext(context.Context) GetPolicyVersionsVersionOutput
}

GetPolicyVersionsVersionInput is an input type that accepts GetPolicyVersionsVersionArgs and GetPolicyVersionsVersionOutput values. You can construct a concrete instance of `GetPolicyVersionsVersionInput` via:

GetPolicyVersionsVersionArgs{...}

type GetPolicyVersionsVersionOutput added in v2.7.0

type GetPolicyVersionsVersionOutput struct{ *pulumi.OutputState }

func (GetPolicyVersionsVersionOutput) CreateDate added in v2.7.0

func (GetPolicyVersionsVersionOutput) ElementType added in v2.7.0

func (GetPolicyVersionsVersionOutput) Id added in v2.7.0

The ID of the resource, the value is `<policy_name>`:`<version_id>`. * `versionId`- The ID of the policy version. * `createDate`- The time when the policy version was created. * `isDefaultVersion`- Indicates whether the policy version is the default version.

func (GetPolicyVersionsVersionOutput) IsDefaultVersion added in v2.7.0

func (o GetPolicyVersionsVersionOutput) IsDefaultVersion() pulumi.BoolOutput

func (GetPolicyVersionsVersionOutput) ToGetPolicyVersionsVersionOutput added in v2.7.0

func (o GetPolicyVersionsVersionOutput) ToGetPolicyVersionsVersionOutput() GetPolicyVersionsVersionOutput

func (GetPolicyVersionsVersionOutput) ToGetPolicyVersionsVersionOutputWithContext added in v2.7.0

func (o GetPolicyVersionsVersionOutput) ToGetPolicyVersionsVersionOutputWithContext(ctx context.Context) GetPolicyVersionsVersionOutput

func (GetPolicyVersionsVersionOutput) VersionId added in v2.7.0

type GetResourceDirectoriesArgs added in v2.8.0

type GetResourceDirectoriesArgs struct {
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getResourceDirectories.

type GetResourceDirectoriesDirectory added in v2.8.0

type GetResourceDirectoriesDirectory struct {
	// The ID of resource directory.
	// * `masterAccountId`- The ID of the master account.
	// * `masterAccountName`- The name of the master account.
	Id                string `pulumi:"id"`
	MasterAccountId   string `pulumi:"masterAccountId"`
	MasterAccountName string `pulumi:"masterAccountName"`
	// The ID of the resource directory.
	ResourceDirectoryId string `pulumi:"resourceDirectoryId"`
	// The ID of the root folder.
	RootFolderId string `pulumi:"rootFolderId"`
}

type GetResourceDirectoriesDirectoryArgs added in v2.8.0

type GetResourceDirectoriesDirectoryArgs struct {
	// The ID of resource directory.
	// * `masterAccountId`- The ID of the master account.
	// * `masterAccountName`- The name of the master account.
	Id                pulumi.StringInput `pulumi:"id"`
	MasterAccountId   pulumi.StringInput `pulumi:"masterAccountId"`
	MasterAccountName pulumi.StringInput `pulumi:"masterAccountName"`
	// The ID of the resource directory.
	ResourceDirectoryId pulumi.StringInput `pulumi:"resourceDirectoryId"`
	// The ID of the root folder.
	RootFolderId pulumi.StringInput `pulumi:"rootFolderId"`
}

func (GetResourceDirectoriesDirectoryArgs) ElementType added in v2.8.0

func (GetResourceDirectoriesDirectoryArgs) ToGetResourceDirectoriesDirectoryOutput added in v2.8.0

func (i GetResourceDirectoriesDirectoryArgs) ToGetResourceDirectoriesDirectoryOutput() GetResourceDirectoriesDirectoryOutput

func (GetResourceDirectoriesDirectoryArgs) ToGetResourceDirectoriesDirectoryOutputWithContext added in v2.8.0

func (i GetResourceDirectoriesDirectoryArgs) ToGetResourceDirectoriesDirectoryOutputWithContext(ctx context.Context) GetResourceDirectoriesDirectoryOutput

type GetResourceDirectoriesDirectoryArray added in v2.8.0

type GetResourceDirectoriesDirectoryArray []GetResourceDirectoriesDirectoryInput

func (GetResourceDirectoriesDirectoryArray) ElementType added in v2.8.0

func (GetResourceDirectoriesDirectoryArray) ToGetResourceDirectoriesDirectoryArrayOutput added in v2.8.0

func (i GetResourceDirectoriesDirectoryArray) ToGetResourceDirectoriesDirectoryArrayOutput() GetResourceDirectoriesDirectoryArrayOutput

func (GetResourceDirectoriesDirectoryArray) ToGetResourceDirectoriesDirectoryArrayOutputWithContext added in v2.8.0

func (i GetResourceDirectoriesDirectoryArray) ToGetResourceDirectoriesDirectoryArrayOutputWithContext(ctx context.Context) GetResourceDirectoriesDirectoryArrayOutput

type GetResourceDirectoriesDirectoryArrayInput added in v2.8.0

type GetResourceDirectoriesDirectoryArrayInput interface {
	pulumi.Input

	ToGetResourceDirectoriesDirectoryArrayOutput() GetResourceDirectoriesDirectoryArrayOutput
	ToGetResourceDirectoriesDirectoryArrayOutputWithContext(context.Context) GetResourceDirectoriesDirectoryArrayOutput
}

GetResourceDirectoriesDirectoryArrayInput is an input type that accepts GetResourceDirectoriesDirectoryArray and GetResourceDirectoriesDirectoryArrayOutput values. You can construct a concrete instance of `GetResourceDirectoriesDirectoryArrayInput` via:

GetResourceDirectoriesDirectoryArray{ GetResourceDirectoriesDirectoryArgs{...} }

type GetResourceDirectoriesDirectoryArrayOutput added in v2.8.0

type GetResourceDirectoriesDirectoryArrayOutput struct{ *pulumi.OutputState }

func (GetResourceDirectoriesDirectoryArrayOutput) ElementType added in v2.8.0

func (GetResourceDirectoriesDirectoryArrayOutput) Index added in v2.8.0

func (GetResourceDirectoriesDirectoryArrayOutput) ToGetResourceDirectoriesDirectoryArrayOutput added in v2.8.0

func (o GetResourceDirectoriesDirectoryArrayOutput) ToGetResourceDirectoriesDirectoryArrayOutput() GetResourceDirectoriesDirectoryArrayOutput

func (GetResourceDirectoriesDirectoryArrayOutput) ToGetResourceDirectoriesDirectoryArrayOutputWithContext added in v2.8.0

func (o GetResourceDirectoriesDirectoryArrayOutput) ToGetResourceDirectoriesDirectoryArrayOutputWithContext(ctx context.Context) GetResourceDirectoriesDirectoryArrayOutput

type GetResourceDirectoriesDirectoryInput added in v2.8.0

type GetResourceDirectoriesDirectoryInput interface {
	pulumi.Input

	ToGetResourceDirectoriesDirectoryOutput() GetResourceDirectoriesDirectoryOutput
	ToGetResourceDirectoriesDirectoryOutputWithContext(context.Context) GetResourceDirectoriesDirectoryOutput
}

GetResourceDirectoriesDirectoryInput is an input type that accepts GetResourceDirectoriesDirectoryArgs and GetResourceDirectoriesDirectoryOutput values. You can construct a concrete instance of `GetResourceDirectoriesDirectoryInput` via:

GetResourceDirectoriesDirectoryArgs{...}

type GetResourceDirectoriesDirectoryOutput added in v2.8.0

type GetResourceDirectoriesDirectoryOutput struct{ *pulumi.OutputState }

func (GetResourceDirectoriesDirectoryOutput) ElementType added in v2.8.0

func (GetResourceDirectoriesDirectoryOutput) Id added in v2.8.0

The ID of resource directory. * `masterAccountId`- The ID of the master account. * `masterAccountName`- The name of the master account.

func (GetResourceDirectoriesDirectoryOutput) MasterAccountId added in v2.8.0

func (GetResourceDirectoriesDirectoryOutput) MasterAccountName added in v2.8.0

func (GetResourceDirectoriesDirectoryOutput) ResourceDirectoryId added in v2.8.0

The ID of the resource directory.

func (GetResourceDirectoriesDirectoryOutput) RootFolderId added in v2.8.0

The ID of the root folder.

func (GetResourceDirectoriesDirectoryOutput) ToGetResourceDirectoriesDirectoryOutput added in v2.8.0

func (o GetResourceDirectoriesDirectoryOutput) ToGetResourceDirectoriesDirectoryOutput() GetResourceDirectoriesDirectoryOutput

func (GetResourceDirectoriesDirectoryOutput) ToGetResourceDirectoriesDirectoryOutputWithContext added in v2.8.0

func (o GetResourceDirectoriesDirectoryOutput) ToGetResourceDirectoriesDirectoryOutputWithContext(ctx context.Context) GetResourceDirectoriesDirectoryOutput

type GetResourceDirectoriesResult added in v2.8.0

type GetResourceDirectoriesResult struct {
	// A list of resource directories. Each element contains the following attributes:
	Directories []GetResourceDirectoriesDirectory `pulumi:"directories"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of values returned by getResourceDirectories.

func GetResourceDirectories added in v2.8.0

func GetResourceDirectories(ctx *pulumi.Context, args *GetResourceDirectoriesArgs, opts ...pulumi.InvokeOption) (*GetResourceDirectoriesResult, error)

This data source provides the Resource Manager Resource Directories of the current Alibaba Cloud user.

> **NOTE:** Available in 1.86.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := resourcemanager.GetResourceDirectories(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("resourceDirectoryId", _default.Directories[0].Id)
		return nil
	})
}

```

type GetResourceGroupsArgs added in v2.6.0

type GetResourceGroupsArgs struct {
	// A list of resource group IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by resource group name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The status of the resource group. Possible values:`Creating`,`Deleted`,`OK` and `PendingDelete`.
	Status *string `pulumi:"status"`
}

A collection of arguments for invoking getResourceGroups.

type GetResourceGroupsGroup added in v2.6.0

type GetResourceGroupsGroup struct {
	// The ID of the Alibaba Cloud account to which the resource group belongs.
	AccountId string `pulumi:"accountId"`
	// The time when the resource group was created.
	CreateDate string `pulumi:"createDate"`
	// The display name of the resource group.
	DisplayName string `pulumi:"displayName"`
	// The ID of the resource group.
	Id string `pulumi:"id"`
	// The unique identifier of the resource group.
	Name string `pulumi:"name"`
	// The status of the resource group. Possible values:`Creating`,`Deleted`,`OK` and `PendingDelete`.
	Status string `pulumi:"status"`
}

type GetResourceGroupsGroupArgs added in v2.6.0

type GetResourceGroupsGroupArgs struct {
	// The ID of the Alibaba Cloud account to which the resource group belongs.
	AccountId pulumi.StringInput `pulumi:"accountId"`
	// The time when the resource group was created.
	CreateDate pulumi.StringInput `pulumi:"createDate"`
	// The display name of the resource group.
	DisplayName pulumi.StringInput `pulumi:"displayName"`
	// The ID of the resource group.
	Id pulumi.StringInput `pulumi:"id"`
	// The unique identifier of the resource group.
	Name pulumi.StringInput `pulumi:"name"`
	// The status of the resource group. Possible values:`Creating`,`Deleted`,`OK` and `PendingDelete`.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetResourceGroupsGroupArgs) ElementType added in v2.6.0

func (GetResourceGroupsGroupArgs) ElementType() reflect.Type

func (GetResourceGroupsGroupArgs) ToGetResourceGroupsGroupOutput added in v2.6.0

func (i GetResourceGroupsGroupArgs) ToGetResourceGroupsGroupOutput() GetResourceGroupsGroupOutput

func (GetResourceGroupsGroupArgs) ToGetResourceGroupsGroupOutputWithContext added in v2.6.0

func (i GetResourceGroupsGroupArgs) ToGetResourceGroupsGroupOutputWithContext(ctx context.Context) GetResourceGroupsGroupOutput

type GetResourceGroupsGroupArray added in v2.6.0

type GetResourceGroupsGroupArray []GetResourceGroupsGroupInput

func (GetResourceGroupsGroupArray) ElementType added in v2.6.0

func (GetResourceGroupsGroupArray) ToGetResourceGroupsGroupArrayOutput added in v2.6.0

func (i GetResourceGroupsGroupArray) ToGetResourceGroupsGroupArrayOutput() GetResourceGroupsGroupArrayOutput

func (GetResourceGroupsGroupArray) ToGetResourceGroupsGroupArrayOutputWithContext added in v2.6.0

func (i GetResourceGroupsGroupArray) ToGetResourceGroupsGroupArrayOutputWithContext(ctx context.Context) GetResourceGroupsGroupArrayOutput

type GetResourceGroupsGroupArrayInput added in v2.6.0

type GetResourceGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetResourceGroupsGroupArrayOutput() GetResourceGroupsGroupArrayOutput
	ToGetResourceGroupsGroupArrayOutputWithContext(context.Context) GetResourceGroupsGroupArrayOutput
}

GetResourceGroupsGroupArrayInput is an input type that accepts GetResourceGroupsGroupArray and GetResourceGroupsGroupArrayOutput values. You can construct a concrete instance of `GetResourceGroupsGroupArrayInput` via:

GetResourceGroupsGroupArray{ GetResourceGroupsGroupArgs{...} }

type GetResourceGroupsGroupArrayOutput added in v2.6.0

type GetResourceGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetResourceGroupsGroupArrayOutput) ElementType added in v2.6.0

func (GetResourceGroupsGroupArrayOutput) Index added in v2.6.0

func (GetResourceGroupsGroupArrayOutput) ToGetResourceGroupsGroupArrayOutput added in v2.6.0

func (o GetResourceGroupsGroupArrayOutput) ToGetResourceGroupsGroupArrayOutput() GetResourceGroupsGroupArrayOutput

func (GetResourceGroupsGroupArrayOutput) ToGetResourceGroupsGroupArrayOutputWithContext added in v2.6.0

func (o GetResourceGroupsGroupArrayOutput) ToGetResourceGroupsGroupArrayOutputWithContext(ctx context.Context) GetResourceGroupsGroupArrayOutput

type GetResourceGroupsGroupInput added in v2.6.0

type GetResourceGroupsGroupInput interface {
	pulumi.Input

	ToGetResourceGroupsGroupOutput() GetResourceGroupsGroupOutput
	ToGetResourceGroupsGroupOutputWithContext(context.Context) GetResourceGroupsGroupOutput
}

GetResourceGroupsGroupInput is an input type that accepts GetResourceGroupsGroupArgs and GetResourceGroupsGroupOutput values. You can construct a concrete instance of `GetResourceGroupsGroupInput` via:

GetResourceGroupsGroupArgs{...}

type GetResourceGroupsGroupOutput added in v2.6.0

type GetResourceGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetResourceGroupsGroupOutput) AccountId added in v2.6.0

The ID of the Alibaba Cloud account to which the resource group belongs.

func (GetResourceGroupsGroupOutput) CreateDate added in v2.6.0

The time when the resource group was created.

func (GetResourceGroupsGroupOutput) DisplayName added in v2.6.0

The display name of the resource group.

func (GetResourceGroupsGroupOutput) ElementType added in v2.6.0

func (GetResourceGroupsGroupOutput) Id added in v2.6.0

The ID of the resource group.

func (GetResourceGroupsGroupOutput) Name added in v2.6.0

The unique identifier of the resource group.

func (GetResourceGroupsGroupOutput) Status added in v2.6.0

The status of the resource group. Possible values:`Creating`,`Deleted`,`OK` and `PendingDelete`.

func (GetResourceGroupsGroupOutput) ToGetResourceGroupsGroupOutput added in v2.6.0

func (o GetResourceGroupsGroupOutput) ToGetResourceGroupsGroupOutput() GetResourceGroupsGroupOutput

func (GetResourceGroupsGroupOutput) ToGetResourceGroupsGroupOutputWithContext added in v2.6.0

func (o GetResourceGroupsGroupOutput) ToGetResourceGroupsGroupOutputWithContext(ctx context.Context) GetResourceGroupsGroupOutput

type GetResourceGroupsResult added in v2.6.0

type GetResourceGroupsResult struct {
	// A list of resource groups. Each element contains the following attributes:
	Groups []GetResourceGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of resource group IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of resource group names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// The status of the resource group. Possible values:`Creating`,`Deleted`,`OK` and `PendingDelete`.
	Status *string `pulumi:"status"`
}

A collection of values returned by getResourceGroups.

func GetResourceGroups added in v2.6.0

func GetResourceGroups(ctx *pulumi.Context, args *GetResourceGroupsArgs, opts ...pulumi.InvokeOption) (*GetResourceGroupsResult, error)

This data source provides resource groups of the current Alibaba Cloud user.

> **NOTE:** Available in v1.84.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tftest"
		example, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
			NameRegex: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstResourceGroupId", example.Groups[0].Id)
		return nil
	})
}

```

type GetRolesArgs added in v2.8.0

type GetRolesArgs struct {
	// A list of Resource Manager Role IDs.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by role name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getRoles.

type GetRolesResult added in v2.8.0

type GetRolesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of role IDs.
	Ids       []string `pulumi:"ids"`
	NameRegex *string  `pulumi:"nameRegex"`
	// A list of role names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of roles. Each element contains the following attributes:
	Roles []GetRolesRole `pulumi:"roles"`
}

A collection of values returned by getRoles.

func GetRoles added in v2.8.0

func GetRoles(ctx *pulumi.Context, args *GetRolesArgs, opts ...pulumi.InvokeOption) (*GetRolesResult, error)

This data source provides the Resource Manager Roles of the current Alibaba Cloud user.

> **NOTE:** Available in 1.86.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "tftest"
		example, err := resourcemanager.GetRoles(ctx, &resourcemanager.GetRolesArgs{
			NameRegex: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstRoleId", example.Roles[0].Id)
		return nil
	})
}

```

type GetRolesRole added in v2.8.0

type GetRolesRole struct {
	Arn         string `pulumi:"arn"`
	CreateDate  string `pulumi:"createDate"`
	Description string `pulumi:"description"`
	// The ID of the role.
	// * `roleId`- The ID of the role.
	// * `roleName`- The name of the role.
	// * `arn`- The Alibaba Cloud Resource Name (ARN) of the RAM role.
	// * `createDate`- The time when the RAM role was created.
	// * `updateDate`- The time when the RAM role was updated.
	// * `description`- The description of the RAM role.
	// * `maxSessionDuration`- The maximum session duration of the RAM role.
	Id                 string `pulumi:"id"`
	MaxSessionDuration int    `pulumi:"maxSessionDuration"`
	RoleId             string `pulumi:"roleId"`
	RoleName           string `pulumi:"roleName"`
	UpdateDate         string `pulumi:"updateDate"`
}

type GetRolesRoleArgs added in v2.8.0

type GetRolesRoleArgs struct {
	Arn         pulumi.StringInput `pulumi:"arn"`
	CreateDate  pulumi.StringInput `pulumi:"createDate"`
	Description pulumi.StringInput `pulumi:"description"`
	// The ID of the role.
	// * `roleId`- The ID of the role.
	// * `roleName`- The name of the role.
	// * `arn`- The Alibaba Cloud Resource Name (ARN) of the RAM role.
	// * `createDate`- The time when the RAM role was created.
	// * `updateDate`- The time when the RAM role was updated.
	// * `description`- The description of the RAM role.
	// * `maxSessionDuration`- The maximum session duration of the RAM role.
	Id                 pulumi.StringInput `pulumi:"id"`
	MaxSessionDuration pulumi.IntInput    `pulumi:"maxSessionDuration"`
	RoleId             pulumi.StringInput `pulumi:"roleId"`
	RoleName           pulumi.StringInput `pulumi:"roleName"`
	UpdateDate         pulumi.StringInput `pulumi:"updateDate"`
}

func (GetRolesRoleArgs) ElementType added in v2.8.0

func (GetRolesRoleArgs) ElementType() reflect.Type

func (GetRolesRoleArgs) ToGetRolesRoleOutput added in v2.8.0

func (i GetRolesRoleArgs) ToGetRolesRoleOutput() GetRolesRoleOutput

func (GetRolesRoleArgs) ToGetRolesRoleOutputWithContext added in v2.8.0

func (i GetRolesRoleArgs) ToGetRolesRoleOutputWithContext(ctx context.Context) GetRolesRoleOutput

type GetRolesRoleArray added in v2.8.0

type GetRolesRoleArray []GetRolesRoleInput

func (GetRolesRoleArray) ElementType added in v2.8.0

func (GetRolesRoleArray) ElementType() reflect.Type

func (GetRolesRoleArray) ToGetRolesRoleArrayOutput added in v2.8.0

func (i GetRolesRoleArray) ToGetRolesRoleArrayOutput() GetRolesRoleArrayOutput

func (GetRolesRoleArray) ToGetRolesRoleArrayOutputWithContext added in v2.8.0

func (i GetRolesRoleArray) ToGetRolesRoleArrayOutputWithContext(ctx context.Context) GetRolesRoleArrayOutput

type GetRolesRoleArrayInput added in v2.8.0

type GetRolesRoleArrayInput interface {
	pulumi.Input

	ToGetRolesRoleArrayOutput() GetRolesRoleArrayOutput
	ToGetRolesRoleArrayOutputWithContext(context.Context) GetRolesRoleArrayOutput
}

GetRolesRoleArrayInput is an input type that accepts GetRolesRoleArray and GetRolesRoleArrayOutput values. You can construct a concrete instance of `GetRolesRoleArrayInput` via:

GetRolesRoleArray{ GetRolesRoleArgs{...} }

type GetRolesRoleArrayOutput added in v2.8.0

type GetRolesRoleArrayOutput struct{ *pulumi.OutputState }

func (GetRolesRoleArrayOutput) ElementType added in v2.8.0

func (GetRolesRoleArrayOutput) ElementType() reflect.Type

func (GetRolesRoleArrayOutput) Index added in v2.8.0

func (GetRolesRoleArrayOutput) ToGetRolesRoleArrayOutput added in v2.8.0

func (o GetRolesRoleArrayOutput) ToGetRolesRoleArrayOutput() GetRolesRoleArrayOutput

func (GetRolesRoleArrayOutput) ToGetRolesRoleArrayOutputWithContext added in v2.8.0

func (o GetRolesRoleArrayOutput) ToGetRolesRoleArrayOutputWithContext(ctx context.Context) GetRolesRoleArrayOutput

type GetRolesRoleInput added in v2.8.0

type GetRolesRoleInput interface {
	pulumi.Input

	ToGetRolesRoleOutput() GetRolesRoleOutput
	ToGetRolesRoleOutputWithContext(context.Context) GetRolesRoleOutput
}

GetRolesRoleInput is an input type that accepts GetRolesRoleArgs and GetRolesRoleOutput values. You can construct a concrete instance of `GetRolesRoleInput` via:

GetRolesRoleArgs{...}

type GetRolesRoleOutput added in v2.8.0

type GetRolesRoleOutput struct{ *pulumi.OutputState }

func (GetRolesRoleOutput) Arn added in v2.8.0

func (GetRolesRoleOutput) CreateDate added in v2.8.0

func (o GetRolesRoleOutput) CreateDate() pulumi.StringOutput

func (GetRolesRoleOutput) Description added in v2.8.0

func (o GetRolesRoleOutput) Description() pulumi.StringOutput

func (GetRolesRoleOutput) ElementType added in v2.8.0

func (GetRolesRoleOutput) ElementType() reflect.Type

func (GetRolesRoleOutput) Id added in v2.8.0

The ID of the role. * `roleId`- The ID of the role. * `roleName`- The name of the role. * `arn`- The Alibaba Cloud Resource Name (ARN) of the RAM role. * `createDate`- The time when the RAM role was created. * `updateDate`- The time when the RAM role was updated. * `description`- The description of the RAM role. * `maxSessionDuration`- The maximum session duration of the RAM role.

func (GetRolesRoleOutput) MaxSessionDuration added in v2.8.0

func (o GetRolesRoleOutput) MaxSessionDuration() pulumi.IntOutput

func (GetRolesRoleOutput) RoleId added in v2.8.0

func (GetRolesRoleOutput) RoleName added in v2.8.0

func (o GetRolesRoleOutput) RoleName() pulumi.StringOutput

func (GetRolesRoleOutput) ToGetRolesRoleOutput added in v2.8.0

func (o GetRolesRoleOutput) ToGetRolesRoleOutput() GetRolesRoleOutput

func (GetRolesRoleOutput) ToGetRolesRoleOutputWithContext added in v2.8.0

func (o GetRolesRoleOutput) ToGetRolesRoleOutputWithContext(ctx context.Context) GetRolesRoleOutput

func (GetRolesRoleOutput) UpdateDate added in v2.8.0

func (o GetRolesRoleOutput) UpdateDate() pulumi.StringOutput

type Handshake

type Handshake struct {
	pulumi.CustomResourceState

	// The expiration time of the invitation.
	ExpireTime pulumi.StringOutput `pulumi:"expireTime"`
	// Resource account master account ID.
	MasterAccountId pulumi.StringOutput `pulumi:"masterAccountId"`
	// The name of the main account of the resource directory.
	MasterAccountName pulumi.StringOutput `pulumi:"masterAccountName"`
	// The modification time of the invitation.
	ModifyTime pulumi.StringOutput `pulumi:"modifyTime"`
	// Remarks. The maximum length is 1024 characters.
	Note pulumi.StringPtrOutput `pulumi:"note"`
	// Resource directory ID.
	ResourceDirectoryId pulumi.StringOutput `pulumi:"resourceDirectoryId"`
	// Invitation status. Valid values: `Pending` waiting for confirmation, `Accepted`, `Cancelled`, `Declined`, `Expired`.
	Status pulumi.StringOutput `pulumi:"status"`
	// Invited account ID or login email.
	TargetEntity pulumi.StringOutput `pulumi:"targetEntity"`
	// Type of account being invited. Valid values: `Account`, `Email`.
	TargetType pulumi.StringOutput `pulumi:"targetType"`
}

Provides a Resource Manager handshake resource. You can invite accounts to join a resource directory for unified management. For information about Resource Manager handshake and how to use it, see [What is Resource Manager handshake](https://www.alibabacloud.com/help/en/doc-detail/135287.htm).

> **NOTE:** Available in v1.82.0+.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := resourcemanager.NewHandshake(ctx, "example", &resourcemanager.HandshakeArgs{
			Note:         pulumi.String("test resource manager handshake"),
			TargetEntity: pulumi.String("1182775234******"),
			TargetType:   pulumi.String("Account"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Manager handshake can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/handshake:Handshake example h-QmdexeFm1kE*****

```

func GetHandshake

func GetHandshake(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HandshakeState, opts ...pulumi.ResourceOption) (*Handshake, error)

GetHandshake gets an existing Handshake 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 NewHandshake

func NewHandshake(ctx *pulumi.Context,
	name string, args *HandshakeArgs, opts ...pulumi.ResourceOption) (*Handshake, error)

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

func (Handshake) ElementType added in v2.25.1

func (Handshake) ElementType() reflect.Type

func (Handshake) ToHandshakeOutput added in v2.25.1

func (i Handshake) ToHandshakeOutput() HandshakeOutput

func (Handshake) ToHandshakeOutputWithContext added in v2.25.1

func (i Handshake) ToHandshakeOutputWithContext(ctx context.Context) HandshakeOutput

type HandshakeArgs

type HandshakeArgs struct {
	// Remarks. The maximum length is 1024 characters.
	Note pulumi.StringPtrInput
	// Invited account ID or login email.
	TargetEntity pulumi.StringInput
	// Type of account being invited. Valid values: `Account`, `Email`.
	TargetType pulumi.StringInput
}

The set of arguments for constructing a Handshake resource.

func (HandshakeArgs) ElementType

func (HandshakeArgs) ElementType() reflect.Type

type HandshakeInput added in v2.25.1

type HandshakeInput interface {
	pulumi.Input

	ToHandshakeOutput() HandshakeOutput
	ToHandshakeOutputWithContext(ctx context.Context) HandshakeOutput
}

type HandshakeOutput added in v2.25.1

type HandshakeOutput struct {
	*pulumi.OutputState
}

func (HandshakeOutput) ElementType added in v2.25.1

func (HandshakeOutput) ElementType() reflect.Type

func (HandshakeOutput) ToHandshakeOutput added in v2.25.1

func (o HandshakeOutput) ToHandshakeOutput() HandshakeOutput

func (HandshakeOutput) ToHandshakeOutputWithContext added in v2.25.1

func (o HandshakeOutput) ToHandshakeOutputWithContext(ctx context.Context) HandshakeOutput

type HandshakeState

type HandshakeState struct {
	// The expiration time of the invitation.
	ExpireTime pulumi.StringPtrInput
	// Resource account master account ID.
	MasterAccountId pulumi.StringPtrInput
	// The name of the main account of the resource directory.
	MasterAccountName pulumi.StringPtrInput
	// The modification time of the invitation.
	ModifyTime pulumi.StringPtrInput
	// Remarks. The maximum length is 1024 characters.
	Note pulumi.StringPtrInput
	// Resource directory ID.
	ResourceDirectoryId pulumi.StringPtrInput
	// Invitation status. Valid values: `Pending` waiting for confirmation, `Accepted`, `Cancelled`, `Declined`, `Expired`.
	Status pulumi.StringPtrInput
	// Invited account ID or login email.
	TargetEntity pulumi.StringPtrInput
	// Type of account being invited. Valid values: `Account`, `Email`.
	TargetType pulumi.StringPtrInput
}

func (HandshakeState) ElementType

func (HandshakeState) ElementType() reflect.Type

type Policy added in v2.5.0

type Policy struct {
	pulumi.CustomResourceState

	// The version of the policy. Default to v1.
	//
	// Deprecated: Field 'default_version' has been deprecated from provider version 1.90.0
	DefaultVersion pulumi.StringOutput `pulumi:"defaultVersion"`
	// The description of the policy. The description must be 1 to 1,024 characters in length.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The content of the policy. The content must be 1 to 2,048 characters in length.
	PolicyDocument pulumi.StringOutput `pulumi:"policyDocument"`
	// The name of the policy. name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringOutput `pulumi:"policyName"`
	// The type of the policy. Valid values: `Custom`, `System`.
	PolicyType pulumi.StringOutput `pulumi:"policyType"`
}

Provides a Resource Manager Policy resource.\ For information about Resource Manager Policy and how to use it, see [What is Resource Manager Policy](https://www.alibabacloud.com/help/en/doc-detail/93732.htm).

> **NOTE:** Available in v1.83.0+.

## Example Usage

Basic Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := resourcemanager.NewPolicy(ctx, "example", &resourcemanager.PolicyArgs{
			PolicyDocument: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v", "		{\n", "			\"Statement\": [{\n", "				\"Action\": [\"oss:*\"],\n", "				\"Effect\": \"Allow\",\n", "				\"Resource\": [\"acs:oss:*:*:*\"]\n", "			}],\n", "			\"Version\": \"1\"\n", "		}\n", "    \n")),
			PolicyName: pulumi.String("abc12345"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Manager Policy can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/policy:Policy example abc12345

```

func GetPolicy added in v2.5.0

func GetPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyState, opts ...pulumi.ResourceOption) (*Policy, error)

GetPolicy gets an existing Policy 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 NewPolicy added in v2.5.0

func NewPolicy(ctx *pulumi.Context,
	name string, args *PolicyArgs, opts ...pulumi.ResourceOption) (*Policy, error)

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

func (Policy) ElementType added in v2.25.1

func (Policy) ElementType() reflect.Type

func (Policy) ToPolicyOutput added in v2.25.1

func (i Policy) ToPolicyOutput() PolicyOutput

func (Policy) ToPolicyOutputWithContext added in v2.25.1

func (i Policy) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyArgs added in v2.5.0

type PolicyArgs struct {
	// The version of the policy. Default to v1.
	//
	// Deprecated: Field 'default_version' has been deprecated from provider version 1.90.0
	DefaultVersion pulumi.StringPtrInput
	// The description of the policy. The description must be 1 to 1,024 characters in length.
	Description pulumi.StringPtrInput
	// The content of the policy. The content must be 1 to 2,048 characters in length.
	PolicyDocument pulumi.StringInput
	// The name of the policy. name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringInput
}

The set of arguments for constructing a Policy resource.

func (PolicyArgs) ElementType added in v2.5.0

func (PolicyArgs) ElementType() reflect.Type

type PolicyAttachment added in v2.14.0

type PolicyAttachment struct {
	pulumi.CustomResourceState

	// The name of the policy. name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringOutput `pulumi:"policyName"`
	// - (Required, ForceNew) The type of the policy. Valid values: `Custom`, `System`.
	PolicyType pulumi.StringOutput `pulumi:"policyType"`
	// The name of the object to which you want to attach the policy.
	PrincipalName pulumi.StringOutput `pulumi:"principalName"`
	// The type of the object to which you want to attach the policy. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.
	PrincipalType pulumi.StringOutput `pulumi:"principalType"`
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
}

Provides a Resource Manager Policy Attachment resource to attaches a policy to an object. After you attach a policy to an object, the object has the operation permissions on the current resource group or the resources under the current account. For information about Resource Manager Policy Attachment and how to use it, see [How to authorize and manage resource groups](https://www.alibabacloud.com/help/en/doc-detail/94490.htm).

> **NOTE:** Available in v1.93.0+.

## Import

Resource Manager Policy Attachment can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/policyAttachment:PolicyAttachment example tf-testaccrdpolicy:Custom:tf-testaccrdpolicy@11827252********.onaliyun.com:IMSUser:rg******

```

func GetPolicyAttachment added in v2.14.0

func GetPolicyAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyAttachmentState, opts ...pulumi.ResourceOption) (*PolicyAttachment, error)

GetPolicyAttachment gets an existing PolicyAttachment 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 NewPolicyAttachment added in v2.14.0

func NewPolicyAttachment(ctx *pulumi.Context,
	name string, args *PolicyAttachmentArgs, opts ...pulumi.ResourceOption) (*PolicyAttachment, error)

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

func (PolicyAttachment) ElementType added in v2.25.1

func (PolicyAttachment) ElementType() reflect.Type

func (PolicyAttachment) ToPolicyAttachmentOutput added in v2.25.1

func (i PolicyAttachment) ToPolicyAttachmentOutput() PolicyAttachmentOutput

func (PolicyAttachment) ToPolicyAttachmentOutputWithContext added in v2.25.1

func (i PolicyAttachment) ToPolicyAttachmentOutputWithContext(ctx context.Context) PolicyAttachmentOutput

type PolicyAttachmentArgs added in v2.14.0

type PolicyAttachmentArgs struct {
	// The name of the policy. name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringInput
	// - (Required, ForceNew) The type of the policy. Valid values: `Custom`, `System`.
	PolicyType pulumi.StringInput
	// The name of the object to which you want to attach the policy.
	PrincipalName pulumi.StringInput
	// The type of the object to which you want to attach the policy. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.
	PrincipalType pulumi.StringInput
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs.
	ResourceGroupId pulumi.StringInput
}

The set of arguments for constructing a PolicyAttachment resource.

func (PolicyAttachmentArgs) ElementType added in v2.14.0

func (PolicyAttachmentArgs) ElementType() reflect.Type

type PolicyAttachmentInput added in v2.25.1

type PolicyAttachmentInput interface {
	pulumi.Input

	ToPolicyAttachmentOutput() PolicyAttachmentOutput
	ToPolicyAttachmentOutputWithContext(ctx context.Context) PolicyAttachmentOutput
}

type PolicyAttachmentOutput added in v2.25.1

type PolicyAttachmentOutput struct {
	*pulumi.OutputState
}

func (PolicyAttachmentOutput) ElementType added in v2.25.1

func (PolicyAttachmentOutput) ElementType() reflect.Type

func (PolicyAttachmentOutput) ToPolicyAttachmentOutput added in v2.25.1

func (o PolicyAttachmentOutput) ToPolicyAttachmentOutput() PolicyAttachmentOutput

func (PolicyAttachmentOutput) ToPolicyAttachmentOutputWithContext added in v2.25.1

func (o PolicyAttachmentOutput) ToPolicyAttachmentOutputWithContext(ctx context.Context) PolicyAttachmentOutput

type PolicyAttachmentState added in v2.14.0

type PolicyAttachmentState struct {
	// The name of the policy. name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringPtrInput
	// - (Required, ForceNew) The type of the policy. Valid values: `Custom`, `System`.
	PolicyType pulumi.StringPtrInput
	// The name of the object to which you want to attach the policy.
	PrincipalName pulumi.StringPtrInput
	// The type of the object to which you want to attach the policy. Valid values: `IMSUser`: RAM user, `IMSGroup`: RAM user group, `ServiceRole`: RAM role.
	PrincipalType pulumi.StringPtrInput
	// The ID of the resource group or the ID of the Alibaba Cloud account to which the resource group belongs.
	ResourceGroupId pulumi.StringPtrInput
}

func (PolicyAttachmentState) ElementType added in v2.14.0

func (PolicyAttachmentState) ElementType() reflect.Type

type PolicyInput added in v2.25.1

type PolicyInput interface {
	pulumi.Input

	ToPolicyOutput() PolicyOutput
	ToPolicyOutputWithContext(ctx context.Context) PolicyOutput
}

type PolicyOutput added in v2.25.1

type PolicyOutput struct {
	*pulumi.OutputState
}

func (PolicyOutput) ElementType added in v2.25.1

func (PolicyOutput) ElementType() reflect.Type

func (PolicyOutput) ToPolicyOutput added in v2.25.1

func (o PolicyOutput) ToPolicyOutput() PolicyOutput

func (PolicyOutput) ToPolicyOutputWithContext added in v2.25.1

func (o PolicyOutput) ToPolicyOutputWithContext(ctx context.Context) PolicyOutput

type PolicyState added in v2.5.0

type PolicyState struct {
	// The version of the policy. Default to v1.
	//
	// Deprecated: Field 'default_version' has been deprecated from provider version 1.90.0
	DefaultVersion pulumi.StringPtrInput
	// The description of the policy. The description must be 1 to 1,024 characters in length.
	Description pulumi.StringPtrInput
	// The content of the policy. The content must be 1 to 2,048 characters in length.
	PolicyDocument pulumi.StringPtrInput
	// The name of the policy. name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringPtrInput
	// The type of the policy. Valid values: `Custom`, `System`.
	PolicyType pulumi.StringPtrInput
}

func (PolicyState) ElementType added in v2.5.0

func (PolicyState) ElementType() reflect.Type

type PolicyVersion added in v2.6.0

type PolicyVersion struct {
	pulumi.CustomResourceState

	// Specifies whether to set the policy version as the default version. Default to `false`.
	//
	// Deprecated: Field 'is_default_version' has been deprecated from provider version 1.90.0
	IsDefaultVersion pulumi.BoolPtrOutput `pulumi:"isDefaultVersion"`
	// The content of the policy. The content must be 1 to 2,048 characters in length.
	PolicyDocument pulumi.StringOutput `pulumi:"policyDocument"`
	// The name of the policy. Name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringOutput `pulumi:"policyName"`
}

## Import

Resource Manager Policy Version can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/policyVersion:PolicyVersion example tftest:v2

```

func GetPolicyVersion added in v2.6.0

func GetPolicyVersion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PolicyVersionState, opts ...pulumi.ResourceOption) (*PolicyVersion, error)

GetPolicyVersion gets an existing PolicyVersion 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 NewPolicyVersion added in v2.6.0

func NewPolicyVersion(ctx *pulumi.Context,
	name string, args *PolicyVersionArgs, opts ...pulumi.ResourceOption) (*PolicyVersion, error)

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

func (PolicyVersion) ElementType added in v2.25.1

func (PolicyVersion) ElementType() reflect.Type

func (PolicyVersion) ToPolicyVersionOutput added in v2.25.1

func (i PolicyVersion) ToPolicyVersionOutput() PolicyVersionOutput

func (PolicyVersion) ToPolicyVersionOutputWithContext added in v2.25.1

func (i PolicyVersion) ToPolicyVersionOutputWithContext(ctx context.Context) PolicyVersionOutput

type PolicyVersionArgs added in v2.6.0

type PolicyVersionArgs struct {
	// Specifies whether to set the policy version as the default version. Default to `false`.
	//
	// Deprecated: Field 'is_default_version' has been deprecated from provider version 1.90.0
	IsDefaultVersion pulumi.BoolPtrInput
	// The content of the policy. The content must be 1 to 2,048 characters in length.
	PolicyDocument pulumi.StringInput
	// The name of the policy. Name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringInput
}

The set of arguments for constructing a PolicyVersion resource.

func (PolicyVersionArgs) ElementType added in v2.6.0

func (PolicyVersionArgs) ElementType() reflect.Type

type PolicyVersionInput added in v2.25.1

type PolicyVersionInput interface {
	pulumi.Input

	ToPolicyVersionOutput() PolicyVersionOutput
	ToPolicyVersionOutputWithContext(ctx context.Context) PolicyVersionOutput
}

type PolicyVersionOutput added in v2.25.1

type PolicyVersionOutput struct {
	*pulumi.OutputState
}

func (PolicyVersionOutput) ElementType added in v2.25.1

func (PolicyVersionOutput) ElementType() reflect.Type

func (PolicyVersionOutput) ToPolicyVersionOutput added in v2.25.1

func (o PolicyVersionOutput) ToPolicyVersionOutput() PolicyVersionOutput

func (PolicyVersionOutput) ToPolicyVersionOutputWithContext added in v2.25.1

func (o PolicyVersionOutput) ToPolicyVersionOutputWithContext(ctx context.Context) PolicyVersionOutput

type PolicyVersionState added in v2.6.0

type PolicyVersionState struct {
	// Specifies whether to set the policy version as the default version. Default to `false`.
	//
	// Deprecated: Field 'is_default_version' has been deprecated from provider version 1.90.0
	IsDefaultVersion pulumi.BoolPtrInput
	// The content of the policy. The content must be 1 to 2,048 characters in length.
	PolicyDocument pulumi.StringPtrInput
	// The name of the policy. Name must be 1 to 128 characters in length and can contain letters, digits, and hyphens (-).
	PolicyName pulumi.StringPtrInput
}

func (PolicyVersionState) ElementType added in v2.6.0

func (PolicyVersionState) ElementType() reflect.Type

type ResourceDirectory added in v2.6.0

type ResourceDirectory struct {
	pulumi.CustomResourceState

	// The ID of the master account.
	MasterAccountId pulumi.StringOutput `pulumi:"masterAccountId"`
	// The name of the master account.
	MasterAccountName pulumi.StringOutput `pulumi:"masterAccountName"`
	// The ID of the root folder.
	RootFolderId pulumi.StringOutput `pulumi:"rootFolderId"`
}

Provides a Resource Manager Resource Directory resource. Resource Directory enables you to establish an organizational structure for the resources used by applications of your enterprise. You can plan, build, and manage the resources in a centralized manner by using only one resource directory.

For information about Resource Manager Resource Directory and how to use it, see [What is Resource Manager Resource Directory](https://www.alibabacloud.com/help/en/doc-detail/94475.htm).

> **NOTE:** Available in v1.84.0+.

> **NOTE:** An account can only be used to enable a resource directory after it passes enterprise real-name verification. An account that only passed individual real-name verification cannot be used to enable a resource directory.

> **NOTE:** Before you destroy the resource, make sure that the following requirements are met:

  • All member accounts must be removed from the resource directory.
  • All folders except the root folder must be deleted from the resource directory.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

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

```

## Import

Resource Manager Resource Directory can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/resourceDirectory:ResourceDirectory example rd-s3****

```

func GetResourceDirectory added in v2.6.0

func GetResourceDirectory(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceDirectoryState, opts ...pulumi.ResourceOption) (*ResourceDirectory, error)

GetResourceDirectory gets an existing ResourceDirectory 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 NewResourceDirectory added in v2.6.0

func NewResourceDirectory(ctx *pulumi.Context,
	name string, args *ResourceDirectoryArgs, opts ...pulumi.ResourceOption) (*ResourceDirectory, error)

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

func (ResourceDirectory) ElementType added in v2.25.1

func (ResourceDirectory) ElementType() reflect.Type

func (ResourceDirectory) ToResourceDirectoryOutput added in v2.25.1

func (i ResourceDirectory) ToResourceDirectoryOutput() ResourceDirectoryOutput

func (ResourceDirectory) ToResourceDirectoryOutputWithContext added in v2.25.1

func (i ResourceDirectory) ToResourceDirectoryOutputWithContext(ctx context.Context) ResourceDirectoryOutput

type ResourceDirectoryArgs added in v2.6.0

type ResourceDirectoryArgs struct {
}

The set of arguments for constructing a ResourceDirectory resource.

func (ResourceDirectoryArgs) ElementType added in v2.6.0

func (ResourceDirectoryArgs) ElementType() reflect.Type

type ResourceDirectoryInput added in v2.25.1

type ResourceDirectoryInput interface {
	pulumi.Input

	ToResourceDirectoryOutput() ResourceDirectoryOutput
	ToResourceDirectoryOutputWithContext(ctx context.Context) ResourceDirectoryOutput
}

type ResourceDirectoryOutput added in v2.25.1

type ResourceDirectoryOutput struct {
	*pulumi.OutputState
}

func (ResourceDirectoryOutput) ElementType added in v2.25.1

func (ResourceDirectoryOutput) ElementType() reflect.Type

func (ResourceDirectoryOutput) ToResourceDirectoryOutput added in v2.25.1

func (o ResourceDirectoryOutput) ToResourceDirectoryOutput() ResourceDirectoryOutput

func (ResourceDirectoryOutput) ToResourceDirectoryOutputWithContext added in v2.25.1

func (o ResourceDirectoryOutput) ToResourceDirectoryOutputWithContext(ctx context.Context) ResourceDirectoryOutput

type ResourceDirectoryState added in v2.6.0

type ResourceDirectoryState struct {
	// The ID of the master account.
	MasterAccountId pulumi.StringPtrInput
	// The name of the master account.
	MasterAccountName pulumi.StringPtrInput
	// The ID of the root folder.
	RootFolderId pulumi.StringPtrInput
}

func (ResourceDirectoryState) ElementType added in v2.6.0

func (ResourceDirectoryState) ElementType() reflect.Type

type ResourceGroup

type ResourceGroup struct {
	pulumi.CustomResourceState

	// The ID of the Alibaba Cloud account to which the resource group belongs.
	AccountId pulumi.StringOutput `pulumi:"accountId"`
	// The time when the resource group was created.
	// * `regionStatuses` -The status of the resource group in all regions.
	CreateDate pulumi.StringOutput `pulumi:"createDate"`
	// The display name of the resource group. The name must be 1 to 30 characters in length and can contain letters, digits, periods (.), at signs (@), and hyphens (-).
	DisplayName pulumi.StringOutput `pulumi:"displayName"`
	// The unique identifier of the resource group.The identifier must be 3 to 12 characters in length and can contain letters, digits, periods (.), hyphens (-), and underscores (_). The identifier must start with a letter.
	Name           pulumi.StringOutput                  `pulumi:"name"`
	RegionStatuses ResourceGroupRegionStatusArrayOutput `pulumi:"regionStatuses"`
	// The status of the regional resource group.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a Resource Manager Resource Group resource. If you need to group cloud resources according to business departments, projects, and other dimensions, you can create resource groups. For information about Resource Manager Resoource Group and how to use it, see [What is Resource Manager Resource Group](https://www.alibabacloud.com/help/en/doc-detail/94485.htm)

> **NOTE:** Available in v1.82.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := resourcemanager.NewResourceGroup(ctx, "example", &resourcemanager.ResourceGroupArgs{
			DisplayName: pulumi.String("testrd"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Manager Resource Group can be imported using the id, e.g.

```sh

$ pulumi import alicloud:resourcemanager/resourceGroup:ResourceGroup example abc123456

```

func GetResourceGroup

func GetResourceGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceGroupState, opts ...pulumi.ResourceOption) (*ResourceGroup, error)

GetResourceGroup gets an existing ResourceGroup 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 NewResourceGroup

func NewResourceGroup(ctx *pulumi.Context,
	name string, args *ResourceGroupArgs, opts ...pulumi.ResourceOption) (*ResourceGroup, error)

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

func (ResourceGroup) ElementType added in v2.25.1

func (ResourceGroup) ElementType() reflect.Type

func (ResourceGroup) ToResourceGroupOutput added in v2.25.1

func (i ResourceGroup) ToResourceGroupOutput() ResourceGroupOutput

func (ResourceGroup) ToResourceGroupOutputWithContext added in v2.25.1

func (i ResourceGroup) ToResourceGroupOutputWithContext(ctx context.Context) ResourceGroupOutput

type ResourceGroupArgs

type ResourceGroupArgs struct {
	// The display name of the resource group. The name must be 1 to 30 characters in length and can contain letters, digits, periods (.), at signs (@), and hyphens (-).
	DisplayName pulumi.StringInput
	// The unique identifier of the resource group.The identifier must be 3 to 12 characters in length and can contain letters, digits, periods (.), hyphens (-), and underscores (_). The identifier must start with a letter.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a ResourceGroup resource.

func (ResourceGroupArgs) ElementType

func (ResourceGroupArgs) ElementType() reflect.Type

type ResourceGroupInput added in v2.25.1

type ResourceGroupInput interface {
	pulumi.Input

	ToResourceGroupOutput() ResourceGroupOutput
	ToResourceGroupOutputWithContext(ctx context.Context) ResourceGroupOutput
}

type ResourceGroupOutput added in v2.25.1

type ResourceGroupOutput struct {
	*pulumi.OutputState
}

func (ResourceGroupOutput) ElementType added in v2.25.1

func (ResourceGroupOutput) ElementType() reflect.Type

func (ResourceGroupOutput) ToResourceGroupOutput added in v2.25.1

func (o ResourceGroupOutput) ToResourceGroupOutput() ResourceGroupOutput

func (ResourceGroupOutput) ToResourceGroupOutputWithContext added in v2.25.1

func (o ResourceGroupOutput) ToResourceGroupOutputWithContext(ctx context.Context) ResourceGroupOutput

type ResourceGroupRegionStatus

type ResourceGroupRegionStatus struct {
	// The region ID.
	RegionId *string `pulumi:"regionId"`
	// The status of the regional resource group.
	Status *string `pulumi:"status"`
}

type ResourceGroupRegionStatusArgs

type ResourceGroupRegionStatusArgs struct {
	// The region ID.
	RegionId pulumi.StringPtrInput `pulumi:"regionId"`
	// The status of the regional resource group.
	Status pulumi.StringPtrInput `pulumi:"status"`
}

func (ResourceGroupRegionStatusArgs) ElementType

func (ResourceGroupRegionStatusArgs) ToResourceGroupRegionStatusOutput

func (i ResourceGroupRegionStatusArgs) ToResourceGroupRegionStatusOutput() ResourceGroupRegionStatusOutput

func (ResourceGroupRegionStatusArgs) ToResourceGroupRegionStatusOutputWithContext

func (i ResourceGroupRegionStatusArgs) ToResourceGroupRegionStatusOutputWithContext(ctx context.Context) ResourceGroupRegionStatusOutput

type ResourceGroupRegionStatusArray

type ResourceGroupRegionStatusArray []ResourceGroupRegionStatusInput

func (ResourceGroupRegionStatusArray) ElementType

func (ResourceGroupRegionStatusArray) ToResourceGroupRegionStatusArrayOutput

func (i ResourceGroupRegionStatusArray) ToResourceGroupRegionStatusArrayOutput() ResourceGroupRegionStatusArrayOutput

func (ResourceGroupRegionStatusArray) ToResourceGroupRegionStatusArrayOutputWithContext

func (i ResourceGroupRegionStatusArray) ToResourceGroupRegionStatusArrayOutputWithContext(ctx context.Context) ResourceGroupRegionStatusArrayOutput

type ResourceGroupRegionStatusArrayInput

type ResourceGroupRegionStatusArrayInput interface {
	pulumi.Input

	ToResourceGroupRegionStatusArrayOutput() ResourceGroupRegionStatusArrayOutput
	ToResourceGroupRegionStatusArrayOutputWithContext(context.Context) ResourceGroupRegionStatusArrayOutput
}

ResourceGroupRegionStatusArrayInput is an input type that accepts ResourceGroupRegionStatusArray and ResourceGroupRegionStatusArrayOutput values. You can construct a concrete instance of `ResourceGroupRegionStatusArrayInput` via:

ResourceGroupRegionStatusArray{ ResourceGroupRegionStatusArgs{...} }

type ResourceGroupRegionStatusArrayOutput

type ResourceGroupRegionStatusArrayOutput struct{ *pulumi.OutputState }

func (ResourceGroupRegionStatusArrayOutput) ElementType

func (ResourceGroupRegionStatusArrayOutput) Index

func (ResourceGroupRegionStatusArrayOutput) ToResourceGroupRegionStatusArrayOutput

func (o ResourceGroupRegionStatusArrayOutput) ToResourceGroupRegionStatusArrayOutput() ResourceGroupRegionStatusArrayOutput

func (ResourceGroupRegionStatusArrayOutput) ToResourceGroupRegionStatusArrayOutputWithContext

func (o ResourceGroupRegionStatusArrayOutput) ToResourceGroupRegionStatusArrayOutputWithContext(ctx context.Context) ResourceGroupRegionStatusArrayOutput

type ResourceGroupRegionStatusInput

type ResourceGroupRegionStatusInput interface {
	pulumi.Input

	ToResourceGroupRegionStatusOutput() ResourceGroupRegionStatusOutput
	ToResourceGroupRegionStatusOutputWithContext(context.Context) ResourceGroupRegionStatusOutput
}

ResourceGroupRegionStatusInput is an input type that accepts ResourceGroupRegionStatusArgs and ResourceGroupRegionStatusOutput values. You can construct a concrete instance of `ResourceGroupRegionStatusInput` via:

ResourceGroupRegionStatusArgs{...}

type ResourceGroupRegionStatusOutput

type ResourceGroupRegionStatusOutput struct{ *pulumi.OutputState }

func (ResourceGroupRegionStatusOutput) ElementType

func (ResourceGroupRegionStatusOutput) RegionId

The region ID.

func (ResourceGroupRegionStatusOutput) Status

The status of the regional resource group.

func (ResourceGroupRegionStatusOutput) ToResourceGroupRegionStatusOutput

func (o ResourceGroupRegionStatusOutput) ToResourceGroupRegionStatusOutput() ResourceGroupRegionStatusOutput

func (ResourceGroupRegionStatusOutput) ToResourceGroupRegionStatusOutputWithContext

func (o ResourceGroupRegionStatusOutput) ToResourceGroupRegionStatusOutputWithContext(ctx context.Context) ResourceGroupRegionStatusOutput

type ResourceGroupState

type ResourceGroupState struct {
	// The ID of the Alibaba Cloud account to which the resource group belongs.
	AccountId pulumi.StringPtrInput
	// The time when the resource group was created.
	// * `regionStatuses` -The status of the resource group in all regions.
	CreateDate pulumi.StringPtrInput
	// The display name of the resource group. The name must be 1 to 30 characters in length and can contain letters, digits, periods (.), at signs (@), and hyphens (-).
	DisplayName pulumi.StringPtrInput
	// The unique identifier of the resource group.The identifier must be 3 to 12 characters in length and can contain letters, digits, periods (.), hyphens (-), and underscores (_). The identifier must start with a letter.
	Name           pulumi.StringPtrInput
	RegionStatuses ResourceGroupRegionStatusArrayInput
	// The status of the regional resource group.
	Status pulumi.StringPtrInput
}

func (ResourceGroupState) ElementType

func (ResourceGroupState) ElementType() reflect.Type

type Role

type Role struct {
	pulumi.CustomResourceState

	// The resource descriptor of the role.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The content of the permissions strategy that plays a role.
	AssumeRolePolicyDocument pulumi.StringOutput `pulumi:"assumeRolePolicyDocument"`
	// Role creation time.
	CreateDate pulumi.StringOutput `pulumi:"createDate"`
	// The description of the Resource Manager role.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Role maximum session time. Valid values: [3600-43200]. Default to `3600`.
	MaxSessionDuration pulumi.IntPtrOutput `pulumi:"maxSessionDuration"`
	RoleId             pulumi.StringOutput `pulumi:"roleId"`
	// Role Name. The length is 1 ~ 64 characters, which can include English letters, numbers, dots "." and dashes "-".
	RoleName pulumi.StringOutput `pulumi:"roleName"`
	// Role update time.
	UpdateDate pulumi.StringOutput `pulumi:"updateDate"`
}

Provides a Resource Manager role resource. Members are resource containers in the resource directory, which can physically isolate resources to form an independent resource grouping unit. You can create members in the resource folder to manage them in a unified manner. For information about Resource Manager role and how to use it, see [What is Resource Manager role](https://www.alibabacloud.com/help/en/doc-detail/111231.htm).

> **NOTE:** Available in v1.82.0+.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := resourcemanager.NewRole(ctx, "example", &resourcemanager.RoleArgs{
			AssumeRolePolicyDocument: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "     {\n", "          \"Statement\": [\n", "               {\n", "                    \"Action\": \"sts:AssumeRole\",\n", "                    \"Effect\": \"Allow\",\n", "                    \"Principal\": {\n", "                        \"RAM\":[\n", "                                \"acs:ram::103755469187****:root\",\n", "                                \"acs:ram::104408977069****:root\"\n", "                        ]\n", "                    }\n", "                }\n", "          ],\n", "          \"Version\": \"1\"\n", "     }\n", "	 \n")),
			RoleName: pulumi.String("testrd"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Resource Manager can be imported using the id or role_name, e.g.

```sh

$ pulumi import alicloud:resourcemanager/role:Role example testrd

```

func GetRole

func GetRole(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RoleState, opts ...pulumi.ResourceOption) (*Role, error)

GetRole gets an existing Role 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 NewRole

func NewRole(ctx *pulumi.Context,
	name string, args *RoleArgs, opts ...pulumi.ResourceOption) (*Role, error)

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

func (Role) ElementType added in v2.25.1

func (Role) ElementType() reflect.Type

func (Role) ToRoleOutput added in v2.25.1

func (i Role) ToRoleOutput() RoleOutput

func (Role) ToRoleOutputWithContext added in v2.25.1

func (i Role) ToRoleOutputWithContext(ctx context.Context) RoleOutput

type RoleArgs

type RoleArgs struct {
	// The content of the permissions strategy that plays a role.
	AssumeRolePolicyDocument pulumi.StringInput
	// The description of the Resource Manager role.
	Description pulumi.StringPtrInput
	// Role maximum session time. Valid values: [3600-43200]. Default to `3600`.
	MaxSessionDuration pulumi.IntPtrInput
	// Role Name. The length is 1 ~ 64 characters, which can include English letters, numbers, dots "." and dashes "-".
	RoleName pulumi.StringInput
}

The set of arguments for constructing a Role resource.

func (RoleArgs) ElementType

func (RoleArgs) ElementType() reflect.Type

type RoleInput added in v2.25.1

type RoleInput interface {
	pulumi.Input

	ToRoleOutput() RoleOutput
	ToRoleOutputWithContext(ctx context.Context) RoleOutput
}

type RoleOutput added in v2.25.1

type RoleOutput struct {
	*pulumi.OutputState
}

func (RoleOutput) ElementType added in v2.25.1

func (RoleOutput) ElementType() reflect.Type

func (RoleOutput) ToRoleOutput added in v2.25.1

func (o RoleOutput) ToRoleOutput() RoleOutput

func (RoleOutput) ToRoleOutputWithContext added in v2.25.1

func (o RoleOutput) ToRoleOutputWithContext(ctx context.Context) RoleOutput

type RoleState

type RoleState struct {
	// The resource descriptor of the role.
	Arn pulumi.StringPtrInput
	// The content of the permissions strategy that plays a role.
	AssumeRolePolicyDocument pulumi.StringPtrInput
	// Role creation time.
	CreateDate pulumi.StringPtrInput
	// The description of the Resource Manager role.
	Description pulumi.StringPtrInput
	// Role maximum session time. Valid values: [3600-43200]. Default to `3600`.
	MaxSessionDuration pulumi.IntPtrInput
	RoleId             pulumi.StringPtrInput
	// Role Name. The length is 1 ~ 64 characters, which can include English letters, numbers, dots "." and dashes "-".
	RoleName pulumi.StringPtrInput
	// Role update time.
	UpdateDate pulumi.StringPtrInput
}

func (RoleState) ElementType

func (RoleState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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