polardb

package
v2.39.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	pulumi.CustomResourceState

	// Account description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	AccountDescription pulumi.StringPtrOutput `pulumi:"accountDescription"`
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and have no more than 16 characters.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters.
	AccountPassword pulumi.StringOutput `pulumi:"accountPassword"`
	// Account type, Valid values are `Normal`, `Super`, Default to `Normal`.
	AccountType pulumi.StringPtrOutput `pulumi:"accountType"`
	// The Id of cluster in which account belongs.
	DbClusterId pulumi.StringOutput `pulumi:"dbClusterId"`
	// An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapOutput `pulumi:"kmsEncryptionContext"`
}

Provides a PolarDB account resource and used to manage databases.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/polardb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "PolarDB"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "polardbaccountmysql"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			VswitchName:      pulumi.String(name),
		})
		if err != nil {
			return err
		}
		cluster, err := polardb.NewCluster(ctx, "cluster", &polardb.ClusterArgs{
			DbType:      pulumi.String("MySQL"),
			DbVersion:   pulumi.String("8.0"),
			DbNodeClass: pulumi.String("polar.mysql.x4.large"),
			PayType:     pulumi.String("PostPaid"),
			VswitchId:   defaultSwitch.ID(),
			Description: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = polardb.NewAccount(ctx, "account", &polardb.AccountArgs{
			DbClusterId:        cluster.ID(),
			AccountName:        pulumi.String("tftestnormal"),
			AccountPassword:    pulumi.String("Test12345"),
			AccountDescription: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

PolarDB account can be imported using the id, e.g.

```sh

$ pulumi import alicloud:polardb/account:Account example "pc-12345:tf_account"

```

func GetAccount

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

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

func (*Account) ToAccountPtrOutput added in v2.35.1

func (i *Account) ToAccountPtrOutput() AccountPtrOutput

func (*Account) ToAccountPtrOutputWithContext added in v2.35.1

func (i *Account) ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput

type AccountArgs

type AccountArgs struct {
	// Account description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	AccountDescription pulumi.StringPtrInput
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and have no more than 16 characters.
	AccountName pulumi.StringInput
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters.
	AccountPassword pulumi.StringInput
	// Account type, Valid values are `Normal`, `Super`, Default to `Normal`.
	AccountType pulumi.StringPtrInput
	// The Id of cluster in which account belongs.
	DbClusterId pulumi.StringInput
	// An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
}

The set of arguments for constructing a Account resource.

func (AccountArgs) ElementType

func (AccountArgs) ElementType() reflect.Type

type AccountArray added in v2.35.1

type AccountArray []AccountInput

func (AccountArray) ElementType added in v2.35.1

func (AccountArray) ElementType() reflect.Type

func (AccountArray) ToAccountArrayOutput added in v2.35.1

func (i AccountArray) ToAccountArrayOutput() AccountArrayOutput

func (AccountArray) ToAccountArrayOutputWithContext added in v2.35.1

func (i AccountArray) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountArrayInput added in v2.35.1

type AccountArrayInput interface {
	pulumi.Input

	ToAccountArrayOutput() AccountArrayOutput
	ToAccountArrayOutputWithContext(context.Context) AccountArrayOutput
}

AccountArrayInput is an input type that accepts AccountArray and AccountArrayOutput values. You can construct a concrete instance of `AccountArrayInput` via:

AccountArray{ AccountArgs{...} }

type AccountArrayOutput added in v2.35.1

type AccountArrayOutput struct{ *pulumi.OutputState }

func (AccountArrayOutput) ElementType added in v2.35.1

func (AccountArrayOutput) ElementType() reflect.Type

func (AccountArrayOutput) Index added in v2.35.1

func (AccountArrayOutput) ToAccountArrayOutput added in v2.35.1

func (o AccountArrayOutput) ToAccountArrayOutput() AccountArrayOutput

func (AccountArrayOutput) ToAccountArrayOutputWithContext added in v2.35.1

func (o AccountArrayOutput) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountInput added in v2.25.1

type AccountInput interface {
	pulumi.Input

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

type AccountMap added in v2.35.1

type AccountMap map[string]AccountInput

func (AccountMap) ElementType added in v2.35.1

func (AccountMap) ElementType() reflect.Type

func (AccountMap) ToAccountMapOutput added in v2.35.1

func (i AccountMap) ToAccountMapOutput() AccountMapOutput

func (AccountMap) ToAccountMapOutputWithContext added in v2.35.1

func (i AccountMap) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountMapInput added in v2.35.1

type AccountMapInput interface {
	pulumi.Input

	ToAccountMapOutput() AccountMapOutput
	ToAccountMapOutputWithContext(context.Context) AccountMapOutput
}

AccountMapInput is an input type that accepts AccountMap and AccountMapOutput values. You can construct a concrete instance of `AccountMapInput` via:

AccountMap{ "key": AccountArgs{...} }

type AccountMapOutput added in v2.35.1

type AccountMapOutput struct{ *pulumi.OutputState }

func (AccountMapOutput) ElementType added in v2.35.1

func (AccountMapOutput) ElementType() reflect.Type

func (AccountMapOutput) MapIndex added in v2.35.1

func (AccountMapOutput) ToAccountMapOutput added in v2.35.1

func (o AccountMapOutput) ToAccountMapOutput() AccountMapOutput

func (AccountMapOutput) ToAccountMapOutputWithContext added in v2.35.1

func (o AccountMapOutput) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

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

func (AccountOutput) ToAccountPtrOutput added in v2.35.1

func (o AccountOutput) ToAccountPtrOutput() AccountPtrOutput

func (AccountOutput) ToAccountPtrOutputWithContext added in v2.35.1

func (o AccountOutput) ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput

type AccountPrivilege

type AccountPrivilege struct {
	pulumi.CustomResourceState

	// A specified account name.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// The privilege of one account access database. Valid values: ["ReadOnly", "ReadWrite"], ["DMLOnly", "DDLOnly"] added since version v1.101.0. Default to "ReadOnly".
	AccountPrivilege pulumi.StringPtrOutput `pulumi:"accountPrivilege"`
	// The Id of cluster in which account belongs.
	DbClusterId pulumi.StringOutput `pulumi:"dbClusterId"`
	// List of specified database name.
	DbNames pulumi.StringArrayOutput `pulumi:"dbNames"`
}

Provides a PolarDB account privilege resource and used to grant several database some access privilege. A database can be granted by multiple account.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/polardb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "PolarDB"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "dbaccountprivilegebasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		cluster, err := polardb.NewCluster(ctx, "cluster", &polardb.ClusterArgs{
			DbType:      pulumi.String("MySQL"),
			DbVersion:   pulumi.String("8.0"),
			PayType:     pulumi.String("PostPaid"),
			DbNodeClass: pulumi.String("polar.mysql.x4.large"),
			VswitchId:   defaultSwitch.ID(),
			Description: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		db, err := polardb.NewDatabase(ctx, "db", &polardb.DatabaseArgs{
			DbClusterId: cluster.ID(),
			DbName:      pulumi.String("tftestdatabase"),
		})
		if err != nil {
			return err
		}
		account, err := polardb.NewAccount(ctx, "account", &polardb.AccountArgs{
			DbClusterId:        cluster.ID(),
			AccountName:        pulumi.String("tftestnormal"),
			AccountPassword:    pulumi.String("Test12345"),
			AccountDescription: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = polardb.NewAccountPrivilege(ctx, "privilege", &polardb.AccountPrivilegeArgs{
			DbClusterId:      cluster.ID(),
			AccountName:      account.AccountName,
			AccountPrivilege: pulumi.String("ReadOnly"),
			DbNames: pulumi.StringArray{
				db.DbName,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

PolarDB account privilege can be imported using the id, e.g.

```sh

$ pulumi import alicloud:polardb/accountPrivilege:AccountPrivilege example "pc-12345:tf_account:ReadOnly"

```

func GetAccountPrivilege

func GetAccountPrivilege(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountPrivilegeState, opts ...pulumi.ResourceOption) (*AccountPrivilege, error)

GetAccountPrivilege gets an existing AccountPrivilege 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 NewAccountPrivilege

func NewAccountPrivilege(ctx *pulumi.Context,
	name string, args *AccountPrivilegeArgs, opts ...pulumi.ResourceOption) (*AccountPrivilege, error)

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

func (*AccountPrivilege) ElementType added in v2.25.1

func (*AccountPrivilege) ElementType() reflect.Type

func (*AccountPrivilege) ToAccountPrivilegeOutput added in v2.25.1

func (i *AccountPrivilege) ToAccountPrivilegeOutput() AccountPrivilegeOutput

func (*AccountPrivilege) ToAccountPrivilegeOutputWithContext added in v2.25.1

func (i *AccountPrivilege) ToAccountPrivilegeOutputWithContext(ctx context.Context) AccountPrivilegeOutput

func (*AccountPrivilege) ToAccountPrivilegePtrOutput added in v2.35.1

func (i *AccountPrivilege) ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput

func (*AccountPrivilege) ToAccountPrivilegePtrOutputWithContext added in v2.35.1

func (i *AccountPrivilege) ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput

type AccountPrivilegeArgs

type AccountPrivilegeArgs struct {
	// A specified account name.
	AccountName pulumi.StringInput
	// The privilege of one account access database. Valid values: ["ReadOnly", "ReadWrite"], ["DMLOnly", "DDLOnly"] added since version v1.101.0. Default to "ReadOnly".
	AccountPrivilege pulumi.StringPtrInput
	// The Id of cluster in which account belongs.
	DbClusterId pulumi.StringInput
	// List of specified database name.
	DbNames pulumi.StringArrayInput
}

The set of arguments for constructing a AccountPrivilege resource.

func (AccountPrivilegeArgs) ElementType

func (AccountPrivilegeArgs) ElementType() reflect.Type

type AccountPrivilegeArray added in v2.35.1

type AccountPrivilegeArray []AccountPrivilegeInput

func (AccountPrivilegeArray) ElementType added in v2.35.1

func (AccountPrivilegeArray) ElementType() reflect.Type

func (AccountPrivilegeArray) ToAccountPrivilegeArrayOutput added in v2.35.1

func (i AccountPrivilegeArray) ToAccountPrivilegeArrayOutput() AccountPrivilegeArrayOutput

func (AccountPrivilegeArray) ToAccountPrivilegeArrayOutputWithContext added in v2.35.1

func (i AccountPrivilegeArray) ToAccountPrivilegeArrayOutputWithContext(ctx context.Context) AccountPrivilegeArrayOutput

type AccountPrivilegeArrayInput added in v2.35.1

type AccountPrivilegeArrayInput interface {
	pulumi.Input

	ToAccountPrivilegeArrayOutput() AccountPrivilegeArrayOutput
	ToAccountPrivilegeArrayOutputWithContext(context.Context) AccountPrivilegeArrayOutput
}

AccountPrivilegeArrayInput is an input type that accepts AccountPrivilegeArray and AccountPrivilegeArrayOutput values. You can construct a concrete instance of `AccountPrivilegeArrayInput` via:

AccountPrivilegeArray{ AccountPrivilegeArgs{...} }

type AccountPrivilegeArrayOutput added in v2.35.1

type AccountPrivilegeArrayOutput struct{ *pulumi.OutputState }

func (AccountPrivilegeArrayOutput) ElementType added in v2.35.1

func (AccountPrivilegeArrayOutput) Index added in v2.35.1

func (AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutput added in v2.35.1

func (o AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutput() AccountPrivilegeArrayOutput

func (AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutputWithContext added in v2.35.1

func (o AccountPrivilegeArrayOutput) ToAccountPrivilegeArrayOutputWithContext(ctx context.Context) AccountPrivilegeArrayOutput

type AccountPrivilegeInput added in v2.25.1

type AccountPrivilegeInput interface {
	pulumi.Input

	ToAccountPrivilegeOutput() AccountPrivilegeOutput
	ToAccountPrivilegeOutputWithContext(ctx context.Context) AccountPrivilegeOutput
}

type AccountPrivilegeMap added in v2.35.1

type AccountPrivilegeMap map[string]AccountPrivilegeInput

func (AccountPrivilegeMap) ElementType added in v2.35.1

func (AccountPrivilegeMap) ElementType() reflect.Type

func (AccountPrivilegeMap) ToAccountPrivilegeMapOutput added in v2.35.1

func (i AccountPrivilegeMap) ToAccountPrivilegeMapOutput() AccountPrivilegeMapOutput

func (AccountPrivilegeMap) ToAccountPrivilegeMapOutputWithContext added in v2.35.1

func (i AccountPrivilegeMap) ToAccountPrivilegeMapOutputWithContext(ctx context.Context) AccountPrivilegeMapOutput

type AccountPrivilegeMapInput added in v2.35.1

type AccountPrivilegeMapInput interface {
	pulumi.Input

	ToAccountPrivilegeMapOutput() AccountPrivilegeMapOutput
	ToAccountPrivilegeMapOutputWithContext(context.Context) AccountPrivilegeMapOutput
}

AccountPrivilegeMapInput is an input type that accepts AccountPrivilegeMap and AccountPrivilegeMapOutput values. You can construct a concrete instance of `AccountPrivilegeMapInput` via:

AccountPrivilegeMap{ "key": AccountPrivilegeArgs{...} }

type AccountPrivilegeMapOutput added in v2.35.1

type AccountPrivilegeMapOutput struct{ *pulumi.OutputState }

func (AccountPrivilegeMapOutput) ElementType added in v2.35.1

func (AccountPrivilegeMapOutput) ElementType() reflect.Type

func (AccountPrivilegeMapOutput) MapIndex added in v2.35.1

func (AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutput added in v2.35.1

func (o AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutput() AccountPrivilegeMapOutput

func (AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutputWithContext added in v2.35.1

func (o AccountPrivilegeMapOutput) ToAccountPrivilegeMapOutputWithContext(ctx context.Context) AccountPrivilegeMapOutput

type AccountPrivilegeOutput added in v2.25.1

type AccountPrivilegeOutput struct {
	*pulumi.OutputState
}

func (AccountPrivilegeOutput) ElementType added in v2.25.1

func (AccountPrivilegeOutput) ElementType() reflect.Type

func (AccountPrivilegeOutput) ToAccountPrivilegeOutput added in v2.25.1

func (o AccountPrivilegeOutput) ToAccountPrivilegeOutput() AccountPrivilegeOutput

func (AccountPrivilegeOutput) ToAccountPrivilegeOutputWithContext added in v2.25.1

func (o AccountPrivilegeOutput) ToAccountPrivilegeOutputWithContext(ctx context.Context) AccountPrivilegeOutput

func (AccountPrivilegeOutput) ToAccountPrivilegePtrOutput added in v2.35.1

func (o AccountPrivilegeOutput) ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput

func (AccountPrivilegeOutput) ToAccountPrivilegePtrOutputWithContext added in v2.35.1

func (o AccountPrivilegeOutput) ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput

type AccountPrivilegePtrInput added in v2.35.1

type AccountPrivilegePtrInput interface {
	pulumi.Input

	ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput
	ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput
}

type AccountPrivilegePtrOutput added in v2.35.1

type AccountPrivilegePtrOutput struct {
	*pulumi.OutputState
}

func (AccountPrivilegePtrOutput) ElementType added in v2.35.1

func (AccountPrivilegePtrOutput) ElementType() reflect.Type

func (AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutput added in v2.35.1

func (o AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutput() AccountPrivilegePtrOutput

func (AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutputWithContext added in v2.35.1

func (o AccountPrivilegePtrOutput) ToAccountPrivilegePtrOutputWithContext(ctx context.Context) AccountPrivilegePtrOutput

type AccountPrivilegeState

type AccountPrivilegeState struct {
	// A specified account name.
	AccountName pulumi.StringPtrInput
	// The privilege of one account access database. Valid values: ["ReadOnly", "ReadWrite"], ["DMLOnly", "DDLOnly"] added since version v1.101.0. Default to "ReadOnly".
	AccountPrivilege pulumi.StringPtrInput
	// The Id of cluster in which account belongs.
	DbClusterId pulumi.StringPtrInput
	// List of specified database name.
	DbNames pulumi.StringArrayInput
}

func (AccountPrivilegeState) ElementType

func (AccountPrivilegeState) ElementType() reflect.Type

type AccountPtrInput added in v2.35.1

type AccountPtrInput interface {
	pulumi.Input

	ToAccountPtrOutput() AccountPtrOutput
	ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput
}

type AccountPtrOutput added in v2.35.1

type AccountPtrOutput struct {
	*pulumi.OutputState
}

func (AccountPtrOutput) ElementType added in v2.35.1

func (AccountPtrOutput) ElementType() reflect.Type

func (AccountPtrOutput) ToAccountPtrOutput added in v2.35.1

func (o AccountPtrOutput) ToAccountPtrOutput() AccountPtrOutput

func (AccountPtrOutput) ToAccountPtrOutputWithContext added in v2.35.1

func (o AccountPtrOutput) ToAccountPtrOutputWithContext(ctx context.Context) AccountPtrOutput

type AccountState

type AccountState struct {
	// Account description. It cannot begin with https://. It must start with a Chinese character or English letter. It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length may be 2-256 characters.
	AccountDescription pulumi.StringPtrInput
	// Operation account requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letter and have no more than 16 characters.
	AccountName pulumi.StringPtrInput
	// Operation password. It may consist of letters, digits, or underlines, with a length of 6 to 32 characters.
	AccountPassword pulumi.StringPtrInput
	// Account type, Valid values are `Normal`, `Super`, Default to `Normal`.
	AccountType pulumi.StringPtrInput
	// The Id of cluster in which account belongs.
	DbClusterId pulumi.StringPtrInput
	// An KMS encrypts password used to a db account. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating a db account with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
}

func (AccountState) ElementType

func (AccountState) ElementType() reflect.Type

type BackupPolicy

type BackupPolicy struct {
	pulumi.CustomResourceState

	// Cluster backup retention days, Fixed for 7 days, not modified.
	BackupRetentionPeriod pulumi.StringOutput `pulumi:"backupRetentionPeriod"`
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringOutput `pulumi:"dbClusterId"`
	// PolarDB Cluster backup period. Valid values: ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]. Default to ["Tuesday", "Thursday", "Saturday"].
	PreferredBackupPeriods pulumi.StringArrayOutput `pulumi:"preferredBackupPeriods"`
	// PolarDB Cluster backup time, in the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. Default to "02:00Z-03:00Z". China time is 8 hours behind it.
	PreferredBackupTime pulumi.StringPtrOutput `pulumi:"preferredBackupTime"`
}

## Import

PolarDB backup policy can be imported using the id or cluster id, e.g.

```sh

$ pulumi import alicloud:polardb/backupPolicy:BackupPolicy example "rm-12345678"

```

func GetBackupPolicy

func GetBackupPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BackupPolicyState, opts ...pulumi.ResourceOption) (*BackupPolicy, error)

GetBackupPolicy gets an existing BackupPolicy 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 NewBackupPolicy

func NewBackupPolicy(ctx *pulumi.Context,
	name string, args *BackupPolicyArgs, opts ...pulumi.ResourceOption) (*BackupPolicy, error)

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

func (*BackupPolicy) ElementType added in v2.25.1

func (*BackupPolicy) ElementType() reflect.Type

func (*BackupPolicy) ToBackupPolicyOutput added in v2.25.1

func (i *BackupPolicy) ToBackupPolicyOutput() BackupPolicyOutput

func (*BackupPolicy) ToBackupPolicyOutputWithContext added in v2.25.1

func (i *BackupPolicy) ToBackupPolicyOutputWithContext(ctx context.Context) BackupPolicyOutput

func (*BackupPolicy) ToBackupPolicyPtrOutput added in v2.35.1

func (i *BackupPolicy) ToBackupPolicyPtrOutput() BackupPolicyPtrOutput

func (*BackupPolicy) ToBackupPolicyPtrOutputWithContext added in v2.35.1

func (i *BackupPolicy) ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput

type BackupPolicyArgs

type BackupPolicyArgs struct {
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringInput
	// PolarDB Cluster backup period. Valid values: ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]. Default to ["Tuesday", "Thursday", "Saturday"].
	PreferredBackupPeriods pulumi.StringArrayInput
	// PolarDB Cluster backup time, in the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. Default to "02:00Z-03:00Z". China time is 8 hours behind it.
	PreferredBackupTime pulumi.StringPtrInput
}

The set of arguments for constructing a BackupPolicy resource.

func (BackupPolicyArgs) ElementType

func (BackupPolicyArgs) ElementType() reflect.Type

type BackupPolicyArray added in v2.35.1

type BackupPolicyArray []BackupPolicyInput

func (BackupPolicyArray) ElementType added in v2.35.1

func (BackupPolicyArray) ElementType() reflect.Type

func (BackupPolicyArray) ToBackupPolicyArrayOutput added in v2.35.1

func (i BackupPolicyArray) ToBackupPolicyArrayOutput() BackupPolicyArrayOutput

func (BackupPolicyArray) ToBackupPolicyArrayOutputWithContext added in v2.35.1

func (i BackupPolicyArray) ToBackupPolicyArrayOutputWithContext(ctx context.Context) BackupPolicyArrayOutput

type BackupPolicyArrayInput added in v2.35.1

type BackupPolicyArrayInput interface {
	pulumi.Input

	ToBackupPolicyArrayOutput() BackupPolicyArrayOutput
	ToBackupPolicyArrayOutputWithContext(context.Context) BackupPolicyArrayOutput
}

BackupPolicyArrayInput is an input type that accepts BackupPolicyArray and BackupPolicyArrayOutput values. You can construct a concrete instance of `BackupPolicyArrayInput` via:

BackupPolicyArray{ BackupPolicyArgs{...} }

type BackupPolicyArrayOutput added in v2.35.1

type BackupPolicyArrayOutput struct{ *pulumi.OutputState }

func (BackupPolicyArrayOutput) ElementType added in v2.35.1

func (BackupPolicyArrayOutput) ElementType() reflect.Type

func (BackupPolicyArrayOutput) Index added in v2.35.1

func (BackupPolicyArrayOutput) ToBackupPolicyArrayOutput added in v2.35.1

func (o BackupPolicyArrayOutput) ToBackupPolicyArrayOutput() BackupPolicyArrayOutput

func (BackupPolicyArrayOutput) ToBackupPolicyArrayOutputWithContext added in v2.35.1

func (o BackupPolicyArrayOutput) ToBackupPolicyArrayOutputWithContext(ctx context.Context) BackupPolicyArrayOutput

type BackupPolicyInput added in v2.25.1

type BackupPolicyInput interface {
	pulumi.Input

	ToBackupPolicyOutput() BackupPolicyOutput
	ToBackupPolicyOutputWithContext(ctx context.Context) BackupPolicyOutput
}

type BackupPolicyMap added in v2.35.1

type BackupPolicyMap map[string]BackupPolicyInput

func (BackupPolicyMap) ElementType added in v2.35.1

func (BackupPolicyMap) ElementType() reflect.Type

func (BackupPolicyMap) ToBackupPolicyMapOutput added in v2.35.1

func (i BackupPolicyMap) ToBackupPolicyMapOutput() BackupPolicyMapOutput

func (BackupPolicyMap) ToBackupPolicyMapOutputWithContext added in v2.35.1

func (i BackupPolicyMap) ToBackupPolicyMapOutputWithContext(ctx context.Context) BackupPolicyMapOutput

type BackupPolicyMapInput added in v2.35.1

type BackupPolicyMapInput interface {
	pulumi.Input

	ToBackupPolicyMapOutput() BackupPolicyMapOutput
	ToBackupPolicyMapOutputWithContext(context.Context) BackupPolicyMapOutput
}

BackupPolicyMapInput is an input type that accepts BackupPolicyMap and BackupPolicyMapOutput values. You can construct a concrete instance of `BackupPolicyMapInput` via:

BackupPolicyMap{ "key": BackupPolicyArgs{...} }

type BackupPolicyMapOutput added in v2.35.1

type BackupPolicyMapOutput struct{ *pulumi.OutputState }

func (BackupPolicyMapOutput) ElementType added in v2.35.1

func (BackupPolicyMapOutput) ElementType() reflect.Type

func (BackupPolicyMapOutput) MapIndex added in v2.35.1

func (BackupPolicyMapOutput) ToBackupPolicyMapOutput added in v2.35.1

func (o BackupPolicyMapOutput) ToBackupPolicyMapOutput() BackupPolicyMapOutput

func (BackupPolicyMapOutput) ToBackupPolicyMapOutputWithContext added in v2.35.1

func (o BackupPolicyMapOutput) ToBackupPolicyMapOutputWithContext(ctx context.Context) BackupPolicyMapOutput

type BackupPolicyOutput added in v2.25.1

type BackupPolicyOutput struct {
	*pulumi.OutputState
}

func (BackupPolicyOutput) ElementType added in v2.25.1

func (BackupPolicyOutput) ElementType() reflect.Type

func (BackupPolicyOutput) ToBackupPolicyOutput added in v2.25.1

func (o BackupPolicyOutput) ToBackupPolicyOutput() BackupPolicyOutput

func (BackupPolicyOutput) ToBackupPolicyOutputWithContext added in v2.25.1

func (o BackupPolicyOutput) ToBackupPolicyOutputWithContext(ctx context.Context) BackupPolicyOutput

func (BackupPolicyOutput) ToBackupPolicyPtrOutput added in v2.35.1

func (o BackupPolicyOutput) ToBackupPolicyPtrOutput() BackupPolicyPtrOutput

func (BackupPolicyOutput) ToBackupPolicyPtrOutputWithContext added in v2.35.1

func (o BackupPolicyOutput) ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput

type BackupPolicyPtrInput added in v2.35.1

type BackupPolicyPtrInput interface {
	pulumi.Input

	ToBackupPolicyPtrOutput() BackupPolicyPtrOutput
	ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput
}

type BackupPolicyPtrOutput added in v2.35.1

type BackupPolicyPtrOutput struct {
	*pulumi.OutputState
}

func (BackupPolicyPtrOutput) ElementType added in v2.35.1

func (BackupPolicyPtrOutput) ElementType() reflect.Type

func (BackupPolicyPtrOutput) ToBackupPolicyPtrOutput added in v2.35.1

func (o BackupPolicyPtrOutput) ToBackupPolicyPtrOutput() BackupPolicyPtrOutput

func (BackupPolicyPtrOutput) ToBackupPolicyPtrOutputWithContext added in v2.35.1

func (o BackupPolicyPtrOutput) ToBackupPolicyPtrOutputWithContext(ctx context.Context) BackupPolicyPtrOutput

type BackupPolicyState

type BackupPolicyState struct {
	// Cluster backup retention days, Fixed for 7 days, not modified.
	BackupRetentionPeriod pulumi.StringPtrInput
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringPtrInput
	// PolarDB Cluster backup period. Valid values: ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]. Default to ["Tuesday", "Thursday", "Saturday"].
	PreferredBackupPeriods pulumi.StringArrayInput
	// PolarDB Cluster backup time, in the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. Default to "02:00Z-03:00Z". China time is 8 hours behind it.
	PreferredBackupTime pulumi.StringPtrInput
}

func (BackupPolicyState) ElementType

func (BackupPolicyState) ElementType() reflect.Type

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// Auto-renewal period of an cluster, in the unit of the month. It is valid when payType is `PrePaid`. Valid value:1, 2, 3, 6, 12, 24, 36, Default to 1.
	AutoRenewPeriod pulumi.IntPtrOutput `pulumi:"autoRenewPeriod"`
	// Specifies whether to enable or disable SQL data collector. Valid values are `Enable`, `Disabled`.
	CollectorStatus pulumi.StringOutput `pulumi:"collectorStatus"`
	// (Available in 1.81.0+) PolarDB cluster connection string. When securityIps is configured, the address of cluster type endpoint will be returned, and if only "127.0.0.1" is configured, it will also be an empty string.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The dbNodeClass of cluster node.
	DbNodeClass pulumi.StringOutput `pulumi:"dbNodeClass"`
	// Number of the PolarDB cluster nodes, default is 2(Each cluster must contain at least a primary node and a read-only node). Add/remove nodes by modifying this parameter, valid values: [2~16].
	// **NOTE:** To avoid adding or removing multiple read-only nodes by mistake, the system allows you to add or remove one read-only node at a time.
	DbNodeCount pulumi.IntPtrOutput `pulumi:"dbNodeCount"`
	// Database type. Value options: MySQL, Oracle, PostgreSQL.
	DbType pulumi.StringOutput `pulumi:"dbType"`
	// Database version. Value options can refer to the latest docs [CreateDBCluster](https://help.aliyun.com/document_detail/98169.html) `DBVersion`.
	DbVersion pulumi.StringOutput `pulumi:"dbVersion"`
	// The description of cluster.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)
	MaintainTime pulumi.StringOutput `pulumi:"maintainTime"`
	// Use as `dbNodeClass` change class, define upgrade or downgrade. Valid values are `Upgrade`, `Downgrade`, Default to `Upgrade`.
	ModifyType pulumi.StringPtrOutput `pulumi:"modifyType"`
	// Set of parameters needs to be set after DB cluster was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/98122.htm) .
	Parameters ClusterParameterArrayOutput `pulumi:"parameters"`
	// Valid values are `PrePaid`, `PostPaid`, Default to `PostPaid`. Currently, the resource can not supports change pay type.
	PayType pulumi.StringPtrOutput `pulumi:"payType"`
	// The duration that you will buy DB cluster (in month). It is valid when payType is `PrePaid`. Valid values: [1~9], 12, 24, 36. Default to 1.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// Valid values are `AutoRenewal`, `Normal`, `NotRenewal`, Default to `NotRenewal`.
	RenewalStatus pulumi.StringPtrOutput `pulumi:"renewalStatus"`
	// The ID of resource group which the PolarDB cluster belongs. If not specified, then it belongs to the default resource group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// List of IP addresses allowed to access all databases of an cluster. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIps pulumi.StringArrayOutput `pulumi:"securityIps"`
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrOutput `pulumi:"vswitchId"`
	// The Zone to launch the DB cluster. it supports multiple zone.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a PolarDB cluster resource. A PolarDB cluster is an isolated database environment in the cloud. A PolarDB cluster can contain multiple user-created databases.

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

## Example Usage ### Create a PolarDB MySQL cluster

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/polardb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "polardbClusterconfig"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		creation := "PolarDB"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		_, err = polardb.NewCluster(ctx, "defaultCluster", &polardb.ClusterArgs{
			DbType:      pulumi.String("MySQL"),
			DbVersion:   pulumi.String("5.6"),
			DbNodeClass: pulumi.String("polar.mysql.x4.medium"),
			PayType:     pulumi.String("PostPaid"),
			Description: pulumi.String(name),
			VswitchId:   defaultSwitch.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

PolarDB cluster can be imported using the id, e.g.

```sh

$ pulumi import alicloud:polardb/cluster:Cluster example pc-abc12345678

```

func GetCluster

func GetCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterState, opts ...pulumi.ResourceOption) (*Cluster, error)

GetCluster gets an existing Cluster 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 NewCluster

func NewCluster(ctx *pulumi.Context,
	name string, args *ClusterArgs, opts ...pulumi.ResourceOption) (*Cluster, error)

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

func (*Cluster) ElementType added in v2.25.1

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput added in v2.25.1

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext added in v2.25.1

func (i *Cluster) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

func (*Cluster) ToClusterPtrOutput added in v2.35.1

func (i *Cluster) ToClusterPtrOutput() ClusterPtrOutput

func (*Cluster) ToClusterPtrOutputWithContext added in v2.35.1

func (i *Cluster) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterArgs

type ClusterArgs struct {
	// Auto-renewal period of an cluster, in the unit of the month. It is valid when payType is `PrePaid`. Valid value:1, 2, 3, 6, 12, 24, 36, Default to 1.
	AutoRenewPeriod pulumi.IntPtrInput
	// Specifies whether to enable or disable SQL data collector. Valid values are `Enable`, `Disabled`.
	CollectorStatus pulumi.StringPtrInput
	// The dbNodeClass of cluster node.
	DbNodeClass pulumi.StringInput
	// Number of the PolarDB cluster nodes, default is 2(Each cluster must contain at least a primary node and a read-only node). Add/remove nodes by modifying this parameter, valid values: [2~16].
	// **NOTE:** To avoid adding or removing multiple read-only nodes by mistake, the system allows you to add or remove one read-only node at a time.
	DbNodeCount pulumi.IntPtrInput
	// Database type. Value options: MySQL, Oracle, PostgreSQL.
	DbType pulumi.StringInput
	// Database version. Value options can refer to the latest docs [CreateDBCluster](https://help.aliyun.com/document_detail/98169.html) `DBVersion`.
	DbVersion pulumi.StringInput
	// The description of cluster.
	Description pulumi.StringPtrInput
	// Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)
	MaintainTime pulumi.StringPtrInput
	// Use as `dbNodeClass` change class, define upgrade or downgrade. Valid values are `Upgrade`, `Downgrade`, Default to `Upgrade`.
	ModifyType pulumi.StringPtrInput
	// Set of parameters needs to be set after DB cluster was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/98122.htm) .
	Parameters ClusterParameterArrayInput
	// Valid values are `PrePaid`, `PostPaid`, Default to `PostPaid`. Currently, the resource can not supports change pay type.
	PayType pulumi.StringPtrInput
	// The duration that you will buy DB cluster (in month). It is valid when payType is `PrePaid`. Valid values: [1~9], 12, 24, 36. Default to 1.
	Period pulumi.IntPtrInput
	// Valid values are `AutoRenewal`, `Normal`, `NotRenewal`, Default to `NotRenewal`.
	RenewalStatus pulumi.StringPtrInput
	// The ID of resource group which the PolarDB cluster belongs. If not specified, then it belongs to the default resource group.
	ResourceGroupId pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an cluster. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIps pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB cluster. it supports multiple zone.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a Cluster resource.

func (ClusterArgs) ElementType

func (ClusterArgs) ElementType() reflect.Type

type ClusterArray added in v2.35.1

type ClusterArray []ClusterInput

func (ClusterArray) ElementType added in v2.35.1

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput added in v2.35.1

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext added in v2.35.1

func (i ClusterArray) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterArrayInput added in v2.35.1

type ClusterArrayInput interface {
	pulumi.Input

	ToClusterArrayOutput() ClusterArrayOutput
	ToClusterArrayOutputWithContext(context.Context) ClusterArrayOutput
}

ClusterArrayInput is an input type that accepts ClusterArray and ClusterArrayOutput values. You can construct a concrete instance of `ClusterArrayInput` via:

ClusterArray{ ClusterArgs{...} }

type ClusterArrayOutput added in v2.35.1

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType added in v2.35.1

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index added in v2.35.1

func (ClusterArrayOutput) ToClusterArrayOutput added in v2.35.1

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext added in v2.35.1

func (o ClusterArrayOutput) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterInput added in v2.25.1

type ClusterInput interface {
	pulumi.Input

	ToClusterOutput() ClusterOutput
	ToClusterOutputWithContext(ctx context.Context) ClusterOutput
}

type ClusterMap added in v2.35.1

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType added in v2.35.1

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput added in v2.35.1

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext added in v2.35.1

func (i ClusterMap) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterMapInput added in v2.35.1

type ClusterMapInput interface {
	pulumi.Input

	ToClusterMapOutput() ClusterMapOutput
	ToClusterMapOutputWithContext(context.Context) ClusterMapOutput
}

ClusterMapInput is an input type that accepts ClusterMap and ClusterMapOutput values. You can construct a concrete instance of `ClusterMapInput` via:

ClusterMap{ "key": ClusterArgs{...} }

type ClusterMapOutput added in v2.35.1

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType added in v2.35.1

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex added in v2.35.1

func (ClusterMapOutput) ToClusterMapOutput added in v2.35.1

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext added in v2.35.1

func (o ClusterMapOutput) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterOutput added in v2.25.1

type ClusterOutput struct {
	*pulumi.OutputState
}

func (ClusterOutput) ElementType added in v2.25.1

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) ToClusterOutput added in v2.25.1

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext added in v2.25.1

func (o ClusterOutput) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

func (ClusterOutput) ToClusterPtrOutput added in v2.35.1

func (o ClusterOutput) ToClusterPtrOutput() ClusterPtrOutput

func (ClusterOutput) ToClusterPtrOutputWithContext added in v2.35.1

func (o ClusterOutput) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterParameter

type ClusterParameter struct {
	Name  string `pulumi:"name"`
	Value string `pulumi:"value"`
}

type ClusterParameterArgs

type ClusterParameterArgs struct {
	Name  pulumi.StringInput `pulumi:"name"`
	Value pulumi.StringInput `pulumi:"value"`
}

func (ClusterParameterArgs) ElementType

func (ClusterParameterArgs) ElementType() reflect.Type

func (ClusterParameterArgs) ToClusterParameterOutput

func (i ClusterParameterArgs) ToClusterParameterOutput() ClusterParameterOutput

func (ClusterParameterArgs) ToClusterParameterOutputWithContext

func (i ClusterParameterArgs) ToClusterParameterOutputWithContext(ctx context.Context) ClusterParameterOutput

type ClusterParameterArray

type ClusterParameterArray []ClusterParameterInput

func (ClusterParameterArray) ElementType

func (ClusterParameterArray) ElementType() reflect.Type

func (ClusterParameterArray) ToClusterParameterArrayOutput

func (i ClusterParameterArray) ToClusterParameterArrayOutput() ClusterParameterArrayOutput

func (ClusterParameterArray) ToClusterParameterArrayOutputWithContext

func (i ClusterParameterArray) ToClusterParameterArrayOutputWithContext(ctx context.Context) ClusterParameterArrayOutput

type ClusterParameterArrayInput

type ClusterParameterArrayInput interface {
	pulumi.Input

	ToClusterParameterArrayOutput() ClusterParameterArrayOutput
	ToClusterParameterArrayOutputWithContext(context.Context) ClusterParameterArrayOutput
}

ClusterParameterArrayInput is an input type that accepts ClusterParameterArray and ClusterParameterArrayOutput values. You can construct a concrete instance of `ClusterParameterArrayInput` via:

ClusterParameterArray{ ClusterParameterArgs{...} }

type ClusterParameterArrayOutput

type ClusterParameterArrayOutput struct{ *pulumi.OutputState }

func (ClusterParameterArrayOutput) ElementType

func (ClusterParameterArrayOutput) Index

func (ClusterParameterArrayOutput) ToClusterParameterArrayOutput

func (o ClusterParameterArrayOutput) ToClusterParameterArrayOutput() ClusterParameterArrayOutput

func (ClusterParameterArrayOutput) ToClusterParameterArrayOutputWithContext

func (o ClusterParameterArrayOutput) ToClusterParameterArrayOutputWithContext(ctx context.Context) ClusterParameterArrayOutput

type ClusterParameterInput

type ClusterParameterInput interface {
	pulumi.Input

	ToClusterParameterOutput() ClusterParameterOutput
	ToClusterParameterOutputWithContext(context.Context) ClusterParameterOutput
}

ClusterParameterInput is an input type that accepts ClusterParameterArgs and ClusterParameterOutput values. You can construct a concrete instance of `ClusterParameterInput` via:

ClusterParameterArgs{...}

type ClusterParameterOutput

type ClusterParameterOutput struct{ *pulumi.OutputState }

func (ClusterParameterOutput) ElementType

func (ClusterParameterOutput) ElementType() reflect.Type

func (ClusterParameterOutput) Name

func (ClusterParameterOutput) ToClusterParameterOutput

func (o ClusterParameterOutput) ToClusterParameterOutput() ClusterParameterOutput

func (ClusterParameterOutput) ToClusterParameterOutputWithContext

func (o ClusterParameterOutput) ToClusterParameterOutputWithContext(ctx context.Context) ClusterParameterOutput

func (ClusterParameterOutput) Value

type ClusterPtrInput added in v2.35.1

type ClusterPtrInput interface {
	pulumi.Input

	ToClusterPtrOutput() ClusterPtrOutput
	ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput
}

type ClusterPtrOutput added in v2.35.1

type ClusterPtrOutput struct {
	*pulumi.OutputState
}

func (ClusterPtrOutput) ElementType added in v2.35.1

func (ClusterPtrOutput) ElementType() reflect.Type

func (ClusterPtrOutput) ToClusterPtrOutput added in v2.35.1

func (o ClusterPtrOutput) ToClusterPtrOutput() ClusterPtrOutput

func (ClusterPtrOutput) ToClusterPtrOutputWithContext added in v2.35.1

func (o ClusterPtrOutput) ToClusterPtrOutputWithContext(ctx context.Context) ClusterPtrOutput

type ClusterState

type ClusterState struct {
	// Auto-renewal period of an cluster, in the unit of the month. It is valid when payType is `PrePaid`. Valid value:1, 2, 3, 6, 12, 24, 36, Default to 1.
	AutoRenewPeriod pulumi.IntPtrInput
	// Specifies whether to enable or disable SQL data collector. Valid values are `Enable`, `Disabled`.
	CollectorStatus pulumi.StringPtrInput
	// (Available in 1.81.0+) PolarDB cluster connection string. When securityIps is configured, the address of cluster type endpoint will be returned, and if only "127.0.0.1" is configured, it will also be an empty string.
	ConnectionString pulumi.StringPtrInput
	// The dbNodeClass of cluster node.
	DbNodeClass pulumi.StringPtrInput
	// Number of the PolarDB cluster nodes, default is 2(Each cluster must contain at least a primary node and a read-only node). Add/remove nodes by modifying this parameter, valid values: [2~16].
	// **NOTE:** To avoid adding or removing multiple read-only nodes by mistake, the system allows you to add or remove one read-only node at a time.
	DbNodeCount pulumi.IntPtrInput
	// Database type. Value options: MySQL, Oracle, PostgreSQL.
	DbType pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBCluster](https://help.aliyun.com/document_detail/98169.html) `DBVersion`.
	DbVersion pulumi.StringPtrInput
	// The description of cluster.
	Description pulumi.StringPtrInput
	// Maintainable time period format of the instance: HH:MMZ-HH:MMZ (UTC time)
	MaintainTime pulumi.StringPtrInput
	// Use as `dbNodeClass` change class, define upgrade or downgrade. Valid values are `Upgrade`, `Downgrade`, Default to `Upgrade`.
	ModifyType pulumi.StringPtrInput
	// Set of parameters needs to be set after DB cluster was launched. Available parameters can refer to the latest docs [View database parameter templates](https://www.alibabacloud.com/help/doc-detail/98122.htm) .
	Parameters ClusterParameterArrayInput
	// Valid values are `PrePaid`, `PostPaid`, Default to `PostPaid`. Currently, the resource can not supports change pay type.
	PayType pulumi.StringPtrInput
	// The duration that you will buy DB cluster (in month). It is valid when payType is `PrePaid`. Valid values: [1~9], 12, 24, 36. Default to 1.
	Period pulumi.IntPtrInput
	// Valid values are `AutoRenewal`, `Normal`, `NotRenewal`, Default to `NotRenewal`.
	RenewalStatus pulumi.StringPtrInput
	// The ID of resource group which the PolarDB cluster belongs. If not specified, then it belongs to the default resource group.
	ResourceGroupId pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an cluster. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIps pulumi.StringArrayInput
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags pulumi.MapInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB cluster. it supports multiple zone.
	ZoneId pulumi.StringPtrInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type Database

type Database struct {
	pulumi.CustomResourceState

	// Character set. The value range is limited to the following: [ utf8, gbk, latin1, utf8mb4, Chinese_PRC_CI_AS, Chinese_PRC_CS_AS, SQL_Latin1_General_CP1_CI_AS, SQL_Latin1_General_CP1_CS_AS, Chinese_PRC_BIN ], default is "utf8" \(`utf8mb4` only supports versions 5.5 and 5.6\).
	CharacterSetName pulumi.StringPtrOutput `pulumi:"characterSetName"`
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringOutput `pulumi:"dbClusterId"`
	// Database description. It must start with a Chinese character or English letter, cannot start with "http://" or "https://". It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length must be 2-256 characters.
	DbDescription pulumi.StringPtrOutput `pulumi:"dbDescription"`
	// Name of the database requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letterand have no more than 64 characters.
	DbName pulumi.StringOutput `pulumi:"dbName"`
}

Provides a PolarDB database resource. A database deployed in a PolarDB cluster. A PolarDB cluster can own multiple databases.

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

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/polardb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "polardbClusterconfig"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		creation := "PolarDB"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		cluster, err := polardb.NewCluster(ctx, "cluster", &polardb.ClusterArgs{
			DbType:      pulumi.String("MySQL"),
			DbVersion:   pulumi.String("8.0"),
			PayType:     pulumi.String("PostPaid"),
			DbNodeClass: pulumi.String("polar.mysql.x4.large"),
			VswitchId:   defaultSwitch.ID(),
			Description: pulumi.String("testDB"),
		})
		if err != nil {
			return err
		}
		_, err = polardb.NewDatabase(ctx, "defaultDatabase", &polardb.DatabaseArgs{
			DbClusterId: cluster.ID(),
			DbName:      pulumi.String("tftestdatabase"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

PolarDB database can be imported using the id, e.g.

```sh

$ pulumi import alicloud:polardb/database:Database example "pc-12345:tf_database"

```

func GetDatabase

func GetDatabase(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatabaseState, opts ...pulumi.ResourceOption) (*Database, error)

GetDatabase gets an existing Database 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 NewDatabase

func NewDatabase(ctx *pulumi.Context,
	name string, args *DatabaseArgs, opts ...pulumi.ResourceOption) (*Database, error)

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

func (*Database) ElementType added in v2.25.1

func (*Database) ElementType() reflect.Type

func (*Database) ToDatabaseOutput added in v2.25.1

func (i *Database) ToDatabaseOutput() DatabaseOutput

func (*Database) ToDatabaseOutputWithContext added in v2.25.1

func (i *Database) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (*Database) ToDatabasePtrOutput added in v2.35.1

func (i *Database) ToDatabasePtrOutput() DatabasePtrOutput

func (*Database) ToDatabasePtrOutputWithContext added in v2.35.1

func (i *Database) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseArgs

type DatabaseArgs struct {
	// Character set. The value range is limited to the following: [ utf8, gbk, latin1, utf8mb4, Chinese_PRC_CI_AS, Chinese_PRC_CS_AS, SQL_Latin1_General_CP1_CI_AS, SQL_Latin1_General_CP1_CS_AS, Chinese_PRC_BIN ], default is "utf8" \(`utf8mb4` only supports versions 5.5 and 5.6\).
	CharacterSetName pulumi.StringPtrInput
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringInput
	// Database description. It must start with a Chinese character or English letter, cannot start with "http://" or "https://". It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length must be 2-256 characters.
	DbDescription pulumi.StringPtrInput
	// Name of the database requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letterand have no more than 64 characters.
	DbName pulumi.StringInput
}

The set of arguments for constructing a Database resource.

func (DatabaseArgs) ElementType

func (DatabaseArgs) ElementType() reflect.Type

type DatabaseArray added in v2.35.1

type DatabaseArray []DatabaseInput

func (DatabaseArray) ElementType added in v2.35.1

func (DatabaseArray) ElementType() reflect.Type

func (DatabaseArray) ToDatabaseArrayOutput added in v2.35.1

func (i DatabaseArray) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArray) ToDatabaseArrayOutputWithContext added in v2.35.1

func (i DatabaseArray) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseArrayInput added in v2.35.1

type DatabaseArrayInput interface {
	pulumi.Input

	ToDatabaseArrayOutput() DatabaseArrayOutput
	ToDatabaseArrayOutputWithContext(context.Context) DatabaseArrayOutput
}

DatabaseArrayInput is an input type that accepts DatabaseArray and DatabaseArrayOutput values. You can construct a concrete instance of `DatabaseArrayInput` via:

DatabaseArray{ DatabaseArgs{...} }

type DatabaseArrayOutput added in v2.35.1

type DatabaseArrayOutput struct{ *pulumi.OutputState }

func (DatabaseArrayOutput) ElementType added in v2.35.1

func (DatabaseArrayOutput) ElementType() reflect.Type

func (DatabaseArrayOutput) Index added in v2.35.1

func (DatabaseArrayOutput) ToDatabaseArrayOutput added in v2.35.1

func (o DatabaseArrayOutput) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArrayOutput) ToDatabaseArrayOutputWithContext added in v2.35.1

func (o DatabaseArrayOutput) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseInput added in v2.25.1

type DatabaseInput interface {
	pulumi.Input

	ToDatabaseOutput() DatabaseOutput
	ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
}

type DatabaseMap added in v2.35.1

type DatabaseMap map[string]DatabaseInput

func (DatabaseMap) ElementType added in v2.35.1

func (DatabaseMap) ElementType() reflect.Type

func (DatabaseMap) ToDatabaseMapOutput added in v2.35.1

func (i DatabaseMap) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMap) ToDatabaseMapOutputWithContext added in v2.35.1

func (i DatabaseMap) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseMapInput added in v2.35.1

type DatabaseMapInput interface {
	pulumi.Input

	ToDatabaseMapOutput() DatabaseMapOutput
	ToDatabaseMapOutputWithContext(context.Context) DatabaseMapOutput
}

DatabaseMapInput is an input type that accepts DatabaseMap and DatabaseMapOutput values. You can construct a concrete instance of `DatabaseMapInput` via:

DatabaseMap{ "key": DatabaseArgs{...} }

type DatabaseMapOutput added in v2.35.1

type DatabaseMapOutput struct{ *pulumi.OutputState }

func (DatabaseMapOutput) ElementType added in v2.35.1

func (DatabaseMapOutput) ElementType() reflect.Type

func (DatabaseMapOutput) MapIndex added in v2.35.1

func (DatabaseMapOutput) ToDatabaseMapOutput added in v2.35.1

func (o DatabaseMapOutput) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMapOutput) ToDatabaseMapOutputWithContext added in v2.35.1

func (o DatabaseMapOutput) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseOutput added in v2.25.1

type DatabaseOutput struct {
	*pulumi.OutputState
}

func (DatabaseOutput) ElementType added in v2.25.1

func (DatabaseOutput) ElementType() reflect.Type

func (DatabaseOutput) ToDatabaseOutput added in v2.25.1

func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput

func (DatabaseOutput) ToDatabaseOutputWithContext added in v2.25.1

func (o DatabaseOutput) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (DatabaseOutput) ToDatabasePtrOutput added in v2.35.1

func (o DatabaseOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabaseOutput) ToDatabasePtrOutputWithContext added in v2.35.1

func (o DatabaseOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabasePtrInput added in v2.35.1

type DatabasePtrInput interface {
	pulumi.Input

	ToDatabasePtrOutput() DatabasePtrOutput
	ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
}

type DatabasePtrOutput added in v2.35.1

type DatabasePtrOutput struct {
	*pulumi.OutputState
}

func (DatabasePtrOutput) ElementType added in v2.35.1

func (DatabasePtrOutput) ElementType() reflect.Type

func (DatabasePtrOutput) ToDatabasePtrOutput added in v2.35.1

func (o DatabasePtrOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabasePtrOutput) ToDatabasePtrOutputWithContext added in v2.35.1

func (o DatabasePtrOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseState

type DatabaseState struct {
	// Character set. The value range is limited to the following: [ utf8, gbk, latin1, utf8mb4, Chinese_PRC_CI_AS, Chinese_PRC_CS_AS, SQL_Latin1_General_CP1_CI_AS, SQL_Latin1_General_CP1_CS_AS, Chinese_PRC_BIN ], default is "utf8" \(`utf8mb4` only supports versions 5.5 and 5.6\).
	CharacterSetName pulumi.StringPtrInput
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringPtrInput
	// Database description. It must start with a Chinese character or English letter, cannot start with "http://" or "https://". It can include Chinese and English characters, underlines (_), hyphens (-), and numbers. The length must be 2-256 characters.
	DbDescription pulumi.StringPtrInput
	// Name of the database requiring a uniqueness check. It may consist of lower case letters, numbers, and underlines, and must start with a letterand have no more than 64 characters.
	DbName pulumi.StringPtrInput
}

func (DatabaseState) ElementType

func (DatabaseState) ElementType() reflect.Type

type Endpoint added in v2.1.0

type Endpoint struct {
	pulumi.CustomResourceState

	AutoAddNewNodes pulumi.StringOutput `pulumi:"autoAddNewNodes"`
	DbClusterId     pulumi.StringOutput `pulumi:"dbClusterId"`
	EndpointConfig  pulumi.MapOutput    `pulumi:"endpointConfig"`
	// Type of endpoint.
	EndpointType  pulumi.StringPtrOutput   `pulumi:"endpointType"`
	NetType       pulumi.StringPtrOutput   `pulumi:"netType"`
	Nodes         pulumi.StringArrayOutput `pulumi:"nodes"`
	ReadWriteMode pulumi.StringOutput      `pulumi:"readWriteMode"`
	// (Available in v1.121.0+) The SSL connection string.
	SslConnectionString pulumi.StringOutput    `pulumi:"sslConnectionString"`
	SslEnabled          pulumi.StringPtrOutput `pulumi:"sslEnabled"`
	// (Available in v1.121.0+) The time when the SSL certificate expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	SslExpireTime pulumi.StringOutput `pulumi:"sslExpireTime"`
}

Provides a PolarDB endpoint resource to manage endpoint of PolarDB cluster.

> **NOTE:** After v1.80.0 and before v1.121.0, you can only use this resource to manage the custom endpoint. Since v1.121.0, you also can import the primary endpoint and the cluster endpoint, to modify their ssl status and so on.

> **NOTE:** The primary endpoint and the default cluster endpoint can not be created or deleted manually.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/polardb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "PolarDB"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "polardbconnectionbasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		defaultCluster, err := polardb.NewCluster(ctx, "defaultCluster", &polardb.ClusterArgs{
			DbType:      pulumi.String("MySQL"),
			DbVersion:   pulumi.String("8.0"),
			PayType:     pulumi.String("PostPaid"),
			DbNodeClass: pulumi.String("polar.mysql.x4.large"),
			VswitchId:   defaultSwitch.ID(),
			Description: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = polardb.NewEndpoint(ctx, "endpoint", &polardb.EndpointArgs{
			DbClusterId:  defaultCluster.ID(),
			EndpointType: pulumi.String("Custom"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Argument Reference

The following arguments are supported:

  • `dbClusterId` - (Required, ForceNew) The Id of cluster that can run database.
  • `endpointType` - (Required & ForceNew before v1.121.0, Optional in v1.121.0+) Type of the endpoint. Before v1.121.0, it only can be `Custom`. since v1.121.0, `Custom`, `Cluster`, `Primary` are valid, default to `Custom`. However when creating a new endpoint, it also only can be `Custom`.
  • `readWriteMode` - (Optional) Read or write mode. Valid values are `ReadWrite`, `ReadOnly`. When creating a new custom endpoint, default to `ReadOnly`.
  • `nodes` - (Optional) Node id list for endpoint configuration. At least 2 nodes if specified, or if the cluster has more than 3 nodes, read-only endpoint is allowed to mount only one node. Default is all nodes.
  • `autoAddNewNodes` - (Optional) Whether the new node automatically joins the default cluster address. Valid values are `Enable`, `Disable`. When creating a new custom endpoint, default to `Disable`.
  • `endpointConfig` - (Optional) The advanced settings of the endpoint of Apsara PolarDB clusters are in JSON format. Including the settings of consistency level, transaction splitting, connection pool, and offload reads from primary node. For more details, see the [description of EndpointConfig in the Request parameters table for details](https://www.alibabacloud.com/help/doc-detail/116593.htm).
  • `sslEnabled` - (Optional, Available in v1.121.0+) Specifies how to modify the SSL encryption status. Valid values: `Disable`, `Enable`, `Update`.
  • `netType` - (Optional, Available in v1.121.0+) The network type of the endpoint address.\ **NOTE:** For a PolarDB for MySQL cluster, this parameter is required, and only one connection string in each endpoint can enable the ssl, for other notes, see [Configure SSL encryption](https://www.alibabacloud.com/help/doc-detail/153182.htm).\ For a PolarDB for PostgreSQL cluster or a PolarDB-O cluster, this parameter is not required, by default, SSL encryption is enabled for all endpoints.

## Import

PolarDB endpoint can be imported using the id, e.g.

```sh

$ pulumi import alicloud:polardb/endpoint:Endpoint example pc-abc123456:pe-abc123456

```

func GetEndpoint added in v2.1.0

func GetEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EndpointState, opts ...pulumi.ResourceOption) (*Endpoint, error)

GetEndpoint gets an existing Endpoint 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 NewEndpoint added in v2.1.0

func NewEndpoint(ctx *pulumi.Context,
	name string, args *EndpointArgs, opts ...pulumi.ResourceOption) (*Endpoint, error)

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

func (*Endpoint) ElementType added in v2.25.1

func (*Endpoint) ElementType() reflect.Type

func (*Endpoint) ToEndpointOutput added in v2.25.1

func (i *Endpoint) ToEndpointOutput() EndpointOutput

func (*Endpoint) ToEndpointOutputWithContext added in v2.25.1

func (i *Endpoint) ToEndpointOutputWithContext(ctx context.Context) EndpointOutput

func (*Endpoint) ToEndpointPtrOutput added in v2.35.1

func (i *Endpoint) ToEndpointPtrOutput() EndpointPtrOutput

func (*Endpoint) ToEndpointPtrOutputWithContext added in v2.35.1

func (i *Endpoint) ToEndpointPtrOutputWithContext(ctx context.Context) EndpointPtrOutput

type EndpointAddress

type EndpointAddress struct {
	pulumi.CustomResourceState

	// Prefix of the specified endpoint. The prefix must be 6 to 30 characters in length, and can contain lowercase letters, digits, and hyphens (-), must start with a letter and end with a digit or letter.
	ConnectionPrefix pulumi.StringOutput `pulumi:"connectionPrefix"`
	// Connection cluster or endpoint string.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringOutput `pulumi:"dbClusterId"`
	// The Id of endpoint that can run database.
	DbEndpointId pulumi.StringOutput `pulumi:"dbEndpointId"`
	// The ip address of connection string.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// Internet connection net type. Valid value: `Public`. Default to `Public`. Currently supported only `Public`.
	NetType pulumi.StringPtrOutput `pulumi:"netType"`
	// Connection cluster or endpoint port.
	Port pulumi.StringOutput `pulumi:"port"`
}

Provides a PolarDB endpoint address resource to allocate an Internet endpoint address string for PolarDB instance.

> **NOTE:** Available in v1.68.0+. Each PolarDB instance will allocate a intranet connection string automatically and its prefix is Cluster ID.

To avoid unnecessary conflict, please specified a internet connection prefix before applying the resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/polardb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "PolarDB"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "polardbconnectionbasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			VswitchName:      pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultCluster, err := polardb.NewCluster(ctx, "defaultCluster", &polardb.ClusterArgs{
			DbType:      pulumi.String("MySQL"),
			DbVersion:   pulumi.String("8.0"),
			PayType:     pulumi.String("PostPaid"),
			DbNodeClass: pulumi.String("polar.mysql.x4.large"),
			VswitchId:   defaultSwitch.ID(),
			Description: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = polardb.NewEndpointAddress(ctx, "endpoint", &polardb.EndpointAddressArgs{
			DbClusterId: defaultCluster.ID(),
			DbEndpointId: defaultEndpoints.ApplyT(func(defaultEndpoints polardb.GetEndpointsResult) (string, error) {
				return defaultEndpoints.Endpoints[0].DbEndpointId, nil
			}).(pulumi.StringOutput),
			ConnectionPrefix: pulumi.String("testpolardbconn"),
			NetType:          pulumi.String("Public"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

PolarDB endpoint address can be imported using the id, e.g.

```sh

$ pulumi import alicloud:polardb/endpointAddress:EndpointAddress example pc-abc123456:pe-abc123456

```

func GetEndpointAddress

func GetEndpointAddress(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EndpointAddressState, opts ...pulumi.ResourceOption) (*EndpointAddress, error)

GetEndpointAddress gets an existing EndpointAddress 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 NewEndpointAddress

func NewEndpointAddress(ctx *pulumi.Context,
	name string, args *EndpointAddressArgs, opts ...pulumi.ResourceOption) (*EndpointAddress, error)

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

func (*EndpointAddress) ElementType added in v2.25.1

func (*EndpointAddress) ElementType() reflect.Type

func (*EndpointAddress) ToEndpointAddressOutput added in v2.25.1

func (i *EndpointAddress) ToEndpointAddressOutput() EndpointAddressOutput

func (*EndpointAddress) ToEndpointAddressOutputWithContext added in v2.25.1

func (i *EndpointAddress) ToEndpointAddressOutputWithContext(ctx context.Context) EndpointAddressOutput

func (*EndpointAddress) ToEndpointAddressPtrOutput added in v2.35.1

func (i *EndpointAddress) ToEndpointAddressPtrOutput() EndpointAddressPtrOutput

func (*EndpointAddress) ToEndpointAddressPtrOutputWithContext added in v2.35.1

func (i *EndpointAddress) ToEndpointAddressPtrOutputWithContext(ctx context.Context) EndpointAddressPtrOutput

type EndpointAddressArgs

type EndpointAddressArgs struct {
	// Prefix of the specified endpoint. The prefix must be 6 to 30 characters in length, and can contain lowercase letters, digits, and hyphens (-), must start with a letter and end with a digit or letter.
	ConnectionPrefix pulumi.StringPtrInput
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringInput
	// The Id of endpoint that can run database.
	DbEndpointId pulumi.StringInput
	// Internet connection net type. Valid value: `Public`. Default to `Public`. Currently supported only `Public`.
	NetType pulumi.StringPtrInput
}

The set of arguments for constructing a EndpointAddress resource.

func (EndpointAddressArgs) ElementType

func (EndpointAddressArgs) ElementType() reflect.Type

type EndpointAddressArray added in v2.35.1

type EndpointAddressArray []EndpointAddressInput

func (EndpointAddressArray) ElementType added in v2.35.1

func (EndpointAddressArray) ElementType() reflect.Type

func (EndpointAddressArray) ToEndpointAddressArrayOutput added in v2.35.1

func (i EndpointAddressArray) ToEndpointAddressArrayOutput() EndpointAddressArrayOutput

func (EndpointAddressArray) ToEndpointAddressArrayOutputWithContext added in v2.35.1

func (i EndpointAddressArray) ToEndpointAddressArrayOutputWithContext(ctx context.Context) EndpointAddressArrayOutput

type EndpointAddressArrayInput added in v2.35.1

type EndpointAddressArrayInput interface {
	pulumi.Input

	ToEndpointAddressArrayOutput() EndpointAddressArrayOutput
	ToEndpointAddressArrayOutputWithContext(context.Context) EndpointAddressArrayOutput
}

EndpointAddressArrayInput is an input type that accepts EndpointAddressArray and EndpointAddressArrayOutput values. You can construct a concrete instance of `EndpointAddressArrayInput` via:

EndpointAddressArray{ EndpointAddressArgs{...} }

type EndpointAddressArrayOutput added in v2.35.1

type EndpointAddressArrayOutput struct{ *pulumi.OutputState }

func (EndpointAddressArrayOutput) ElementType added in v2.35.1

func (EndpointAddressArrayOutput) ElementType() reflect.Type

func (EndpointAddressArrayOutput) Index added in v2.35.1

func (EndpointAddressArrayOutput) ToEndpointAddressArrayOutput added in v2.35.1

func (o EndpointAddressArrayOutput) ToEndpointAddressArrayOutput() EndpointAddressArrayOutput

func (EndpointAddressArrayOutput) ToEndpointAddressArrayOutputWithContext added in v2.35.1

func (o EndpointAddressArrayOutput) ToEndpointAddressArrayOutputWithContext(ctx context.Context) EndpointAddressArrayOutput

type EndpointAddressInput added in v2.25.1

type EndpointAddressInput interface {
	pulumi.Input

	ToEndpointAddressOutput() EndpointAddressOutput
	ToEndpointAddressOutputWithContext(ctx context.Context) EndpointAddressOutput
}

type EndpointAddressMap added in v2.35.1

type EndpointAddressMap map[string]EndpointAddressInput

func (EndpointAddressMap) ElementType added in v2.35.1

func (EndpointAddressMap) ElementType() reflect.Type

func (EndpointAddressMap) ToEndpointAddressMapOutput added in v2.35.1

func (i EndpointAddressMap) ToEndpointAddressMapOutput() EndpointAddressMapOutput

func (EndpointAddressMap) ToEndpointAddressMapOutputWithContext added in v2.35.1

func (i EndpointAddressMap) ToEndpointAddressMapOutputWithContext(ctx context.Context) EndpointAddressMapOutput

type EndpointAddressMapInput added in v2.35.1

type EndpointAddressMapInput interface {
	pulumi.Input

	ToEndpointAddressMapOutput() EndpointAddressMapOutput
	ToEndpointAddressMapOutputWithContext(context.Context) EndpointAddressMapOutput
}

EndpointAddressMapInput is an input type that accepts EndpointAddressMap and EndpointAddressMapOutput values. You can construct a concrete instance of `EndpointAddressMapInput` via:

EndpointAddressMap{ "key": EndpointAddressArgs{...} }

type EndpointAddressMapOutput added in v2.35.1

type EndpointAddressMapOutput struct{ *pulumi.OutputState }

func (EndpointAddressMapOutput) ElementType added in v2.35.1

func (EndpointAddressMapOutput) ElementType() reflect.Type

func (EndpointAddressMapOutput) MapIndex added in v2.35.1

func (EndpointAddressMapOutput) ToEndpointAddressMapOutput added in v2.35.1

func (o EndpointAddressMapOutput) ToEndpointAddressMapOutput() EndpointAddressMapOutput

func (EndpointAddressMapOutput) ToEndpointAddressMapOutputWithContext added in v2.35.1

func (o EndpointAddressMapOutput) ToEndpointAddressMapOutputWithContext(ctx context.Context) EndpointAddressMapOutput

type EndpointAddressOutput added in v2.25.1

type EndpointAddressOutput struct {
	*pulumi.OutputState
}

func (EndpointAddressOutput) ElementType added in v2.25.1

func (EndpointAddressOutput) ElementType() reflect.Type

func (EndpointAddressOutput) ToEndpointAddressOutput added in v2.25.1

func (o EndpointAddressOutput) ToEndpointAddressOutput() EndpointAddressOutput

func (EndpointAddressOutput) ToEndpointAddressOutputWithContext added in v2.25.1

func (o EndpointAddressOutput) ToEndpointAddressOutputWithContext(ctx context.Context) EndpointAddressOutput

func (EndpointAddressOutput) ToEndpointAddressPtrOutput added in v2.35.1

func (o EndpointAddressOutput) ToEndpointAddressPtrOutput() EndpointAddressPtrOutput

func (EndpointAddressOutput) ToEndpointAddressPtrOutputWithContext added in v2.35.1

func (o EndpointAddressOutput) ToEndpointAddressPtrOutputWithContext(ctx context.Context) EndpointAddressPtrOutput

type EndpointAddressPtrInput added in v2.35.1

type EndpointAddressPtrInput interface {
	pulumi.Input

	ToEndpointAddressPtrOutput() EndpointAddressPtrOutput
	ToEndpointAddressPtrOutputWithContext(ctx context.Context) EndpointAddressPtrOutput
}

type EndpointAddressPtrOutput added in v2.35.1

type EndpointAddressPtrOutput struct {
	*pulumi.OutputState
}

func (EndpointAddressPtrOutput) ElementType added in v2.35.1

func (EndpointAddressPtrOutput) ElementType() reflect.Type

func (EndpointAddressPtrOutput) ToEndpointAddressPtrOutput added in v2.35.1

func (o EndpointAddressPtrOutput) ToEndpointAddressPtrOutput() EndpointAddressPtrOutput

func (EndpointAddressPtrOutput) ToEndpointAddressPtrOutputWithContext added in v2.35.1

func (o EndpointAddressPtrOutput) ToEndpointAddressPtrOutputWithContext(ctx context.Context) EndpointAddressPtrOutput

type EndpointAddressState

type EndpointAddressState struct {
	// Prefix of the specified endpoint. The prefix must be 6 to 30 characters in length, and can contain lowercase letters, digits, and hyphens (-), must start with a letter and end with a digit or letter.
	ConnectionPrefix pulumi.StringPtrInput
	// Connection cluster or endpoint string.
	ConnectionString pulumi.StringPtrInput
	// The Id of cluster that can run database.
	DbClusterId pulumi.StringPtrInput
	// The Id of endpoint that can run database.
	DbEndpointId pulumi.StringPtrInput
	// The ip address of connection string.
	IpAddress pulumi.StringPtrInput
	// Internet connection net type. Valid value: `Public`. Default to `Public`. Currently supported only `Public`.
	NetType pulumi.StringPtrInput
	// Connection cluster or endpoint port.
	Port pulumi.StringPtrInput
}

func (EndpointAddressState) ElementType

func (EndpointAddressState) ElementType() reflect.Type

type EndpointArgs added in v2.1.0

type EndpointArgs struct {
	AutoAddNewNodes pulumi.StringPtrInput
	DbClusterId     pulumi.StringInput
	EndpointConfig  pulumi.MapInput
	// Type of endpoint.
	EndpointType  pulumi.StringPtrInput
	NetType       pulumi.StringPtrInput
	Nodes         pulumi.StringArrayInput
	ReadWriteMode pulumi.StringPtrInput
	SslEnabled    pulumi.StringPtrInput
}

The set of arguments for constructing a Endpoint resource.

func (EndpointArgs) ElementType added in v2.1.0

func (EndpointArgs) ElementType() reflect.Type

type EndpointArray added in v2.35.1

type EndpointArray []EndpointInput

func (EndpointArray) ElementType added in v2.35.1

func (EndpointArray) ElementType() reflect.Type

func (EndpointArray) ToEndpointArrayOutput added in v2.35.1

func (i EndpointArray) ToEndpointArrayOutput() EndpointArrayOutput

func (EndpointArray) ToEndpointArrayOutputWithContext added in v2.35.1

func (i EndpointArray) ToEndpointArrayOutputWithContext(ctx context.Context) EndpointArrayOutput

type EndpointArrayInput added in v2.35.1

type EndpointArrayInput interface {
	pulumi.Input

	ToEndpointArrayOutput() EndpointArrayOutput
	ToEndpointArrayOutputWithContext(context.Context) EndpointArrayOutput
}

EndpointArrayInput is an input type that accepts EndpointArray and EndpointArrayOutput values. You can construct a concrete instance of `EndpointArrayInput` via:

EndpointArray{ EndpointArgs{...} }

type EndpointArrayOutput added in v2.35.1

type EndpointArrayOutput struct{ *pulumi.OutputState }

func (EndpointArrayOutput) ElementType added in v2.35.1

func (EndpointArrayOutput) ElementType() reflect.Type

func (EndpointArrayOutput) Index added in v2.35.1

func (EndpointArrayOutput) ToEndpointArrayOutput added in v2.35.1

func (o EndpointArrayOutput) ToEndpointArrayOutput() EndpointArrayOutput

func (EndpointArrayOutput) ToEndpointArrayOutputWithContext added in v2.35.1

func (o EndpointArrayOutput) ToEndpointArrayOutputWithContext(ctx context.Context) EndpointArrayOutput

type EndpointInput added in v2.25.1

type EndpointInput interface {
	pulumi.Input

	ToEndpointOutput() EndpointOutput
	ToEndpointOutputWithContext(ctx context.Context) EndpointOutput
}

type EndpointMap added in v2.35.1

type EndpointMap map[string]EndpointInput

func (EndpointMap) ElementType added in v2.35.1

func (EndpointMap) ElementType() reflect.Type

func (EndpointMap) ToEndpointMapOutput added in v2.35.1

func (i EndpointMap) ToEndpointMapOutput() EndpointMapOutput

func (EndpointMap) ToEndpointMapOutputWithContext added in v2.35.1

func (i EndpointMap) ToEndpointMapOutputWithContext(ctx context.Context) EndpointMapOutput

type EndpointMapInput added in v2.35.1

type EndpointMapInput interface {
	pulumi.Input

	ToEndpointMapOutput() EndpointMapOutput
	ToEndpointMapOutputWithContext(context.Context) EndpointMapOutput
}

EndpointMapInput is an input type that accepts EndpointMap and EndpointMapOutput values. You can construct a concrete instance of `EndpointMapInput` via:

EndpointMap{ "key": EndpointArgs{...} }

type EndpointMapOutput added in v2.35.1

type EndpointMapOutput struct{ *pulumi.OutputState }

func (EndpointMapOutput) ElementType added in v2.35.1

func (EndpointMapOutput) ElementType() reflect.Type

func (EndpointMapOutput) MapIndex added in v2.35.1

func (EndpointMapOutput) ToEndpointMapOutput added in v2.35.1

func (o EndpointMapOutput) ToEndpointMapOutput() EndpointMapOutput

func (EndpointMapOutput) ToEndpointMapOutputWithContext added in v2.35.1

func (o EndpointMapOutput) ToEndpointMapOutputWithContext(ctx context.Context) EndpointMapOutput

type EndpointOutput added in v2.25.1

type EndpointOutput struct {
	*pulumi.OutputState
}

func (EndpointOutput) ElementType added in v2.25.1

func (EndpointOutput) ElementType() reflect.Type

func (EndpointOutput) ToEndpointOutput added in v2.25.1

func (o EndpointOutput) ToEndpointOutput() EndpointOutput

func (EndpointOutput) ToEndpointOutputWithContext added in v2.25.1

func (o EndpointOutput) ToEndpointOutputWithContext(ctx context.Context) EndpointOutput

func (EndpointOutput) ToEndpointPtrOutput added in v2.35.1

func (o EndpointOutput) ToEndpointPtrOutput() EndpointPtrOutput

func (EndpointOutput) ToEndpointPtrOutputWithContext added in v2.35.1

func (o EndpointOutput) ToEndpointPtrOutputWithContext(ctx context.Context) EndpointPtrOutput

type EndpointPtrInput added in v2.35.1

type EndpointPtrInput interface {
	pulumi.Input

	ToEndpointPtrOutput() EndpointPtrOutput
	ToEndpointPtrOutputWithContext(ctx context.Context) EndpointPtrOutput
}

type EndpointPtrOutput added in v2.35.1

type EndpointPtrOutput struct {
	*pulumi.OutputState
}

func (EndpointPtrOutput) ElementType added in v2.35.1

func (EndpointPtrOutput) ElementType() reflect.Type

func (EndpointPtrOutput) ToEndpointPtrOutput added in v2.35.1

func (o EndpointPtrOutput) ToEndpointPtrOutput() EndpointPtrOutput

func (EndpointPtrOutput) ToEndpointPtrOutputWithContext added in v2.35.1

func (o EndpointPtrOutput) ToEndpointPtrOutputWithContext(ctx context.Context) EndpointPtrOutput

type EndpointState added in v2.1.0

type EndpointState struct {
	AutoAddNewNodes pulumi.StringPtrInput
	DbClusterId     pulumi.StringPtrInput
	EndpointConfig  pulumi.MapInput
	// Type of endpoint.
	EndpointType  pulumi.StringPtrInput
	NetType       pulumi.StringPtrInput
	Nodes         pulumi.StringArrayInput
	ReadWriteMode pulumi.StringPtrInput
	// (Available in v1.121.0+) The SSL connection string.
	SslConnectionString pulumi.StringPtrInput
	SslEnabled          pulumi.StringPtrInput
	// (Available in v1.121.0+) The time when the SSL certificate expires. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
	SslExpireTime pulumi.StringPtrInput
}

func (EndpointState) ElementType added in v2.1.0

func (EndpointState) ElementType() reflect.Type

type GetAccountsAccount

type GetAccountsAccount struct {
	// Account description.
	AccountDescription string `pulumi:"accountDescription"`
	// Account lock state, Valid values are `Lock`, `UnLock`.
	AccountLockState string `pulumi:"accountLockState"`
	// Account name.
	AccountName string `pulumi:"accountName"`
	// Cluster address type.`Cluster`: the default address of the Cluster.`Primary`: Primary address.`Custom`: Custom cluster addresses.
	AccountStatus string `pulumi:"accountStatus"`
	// Account type, Valid values are `Normal`, `Super`.
	AccountType string `pulumi:"accountType"`
	// A list of database privilege. Each element contains the following attributes.
	DatabasePrivileges []GetAccountsAccountDatabasePrivilege `pulumi:"databasePrivileges"`
}

type GetAccountsAccountArgs

type GetAccountsAccountArgs struct {
	// Account description.
	AccountDescription pulumi.StringInput `pulumi:"accountDescription"`
	// Account lock state, Valid values are `Lock`, `UnLock`.
	AccountLockState pulumi.StringInput `pulumi:"accountLockState"`
	// Account name.
	AccountName pulumi.StringInput `pulumi:"accountName"`
	// Cluster address type.`Cluster`: the default address of the Cluster.`Primary`: Primary address.`Custom`: Custom cluster addresses.
	AccountStatus pulumi.StringInput `pulumi:"accountStatus"`
	// Account type, Valid values are `Normal`, `Super`.
	AccountType pulumi.StringInput `pulumi:"accountType"`
	// A list of database privilege. Each element contains the following attributes.
	DatabasePrivileges GetAccountsAccountDatabasePrivilegeArrayInput `pulumi:"databasePrivileges"`
}

func (GetAccountsAccountArgs) ElementType

func (GetAccountsAccountArgs) ElementType() reflect.Type

func (GetAccountsAccountArgs) ToGetAccountsAccountOutput

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext

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

type GetAccountsAccountArray

type GetAccountsAccountArray []GetAccountsAccountInput

func (GetAccountsAccountArray) ElementType

func (GetAccountsAccountArray) ElementType() reflect.Type

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutput

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext

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

type GetAccountsAccountArrayInput

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

type GetAccountsAccountArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountArrayOutput) ElementType

func (GetAccountsAccountArrayOutput) Index

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext

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

type GetAccountsAccountDatabasePrivilege

type GetAccountsAccountDatabasePrivilege struct {
	// Account privilege of database
	AccountPrivilege string `pulumi:"accountPrivilege"`
	// The account owned database name
	DbName string `pulumi:"dbName"`
}

type GetAccountsAccountDatabasePrivilegeArgs

type GetAccountsAccountDatabasePrivilegeArgs struct {
	// Account privilege of database
	AccountPrivilege pulumi.StringInput `pulumi:"accountPrivilege"`
	// The account owned database name
	DbName pulumi.StringInput `pulumi:"dbName"`
}

func (GetAccountsAccountDatabasePrivilegeArgs) ElementType

func (GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutput

func (i GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutput() GetAccountsAccountDatabasePrivilegeOutput

func (GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutputWithContext

func (i GetAccountsAccountDatabasePrivilegeArgs) ToGetAccountsAccountDatabasePrivilegeOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeOutput

type GetAccountsAccountDatabasePrivilegeArray

type GetAccountsAccountDatabasePrivilegeArray []GetAccountsAccountDatabasePrivilegeInput

func (GetAccountsAccountDatabasePrivilegeArray) ElementType

func (GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutput

func (i GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutput() GetAccountsAccountDatabasePrivilegeArrayOutput

func (GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext

func (i GetAccountsAccountDatabasePrivilegeArray) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeArrayOutput

type GetAccountsAccountDatabasePrivilegeArrayInput

type GetAccountsAccountDatabasePrivilegeArrayInput interface {
	pulumi.Input

	ToGetAccountsAccountDatabasePrivilegeArrayOutput() GetAccountsAccountDatabasePrivilegeArrayOutput
	ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext(context.Context) GetAccountsAccountDatabasePrivilegeArrayOutput
}

GetAccountsAccountDatabasePrivilegeArrayInput is an input type that accepts GetAccountsAccountDatabasePrivilegeArray and GetAccountsAccountDatabasePrivilegeArrayOutput values. You can construct a concrete instance of `GetAccountsAccountDatabasePrivilegeArrayInput` via:

GetAccountsAccountDatabasePrivilegeArray{ GetAccountsAccountDatabasePrivilegeArgs{...} }

type GetAccountsAccountDatabasePrivilegeArrayOutput

type GetAccountsAccountDatabasePrivilegeArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountDatabasePrivilegeArrayOutput) ElementType

func (GetAccountsAccountDatabasePrivilegeArrayOutput) Index

func (GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutput

func (o GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutput() GetAccountsAccountDatabasePrivilegeArrayOutput

func (GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext

func (o GetAccountsAccountDatabasePrivilegeArrayOutput) ToGetAccountsAccountDatabasePrivilegeArrayOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeArrayOutput

type GetAccountsAccountDatabasePrivilegeInput

type GetAccountsAccountDatabasePrivilegeInput interface {
	pulumi.Input

	ToGetAccountsAccountDatabasePrivilegeOutput() GetAccountsAccountDatabasePrivilegeOutput
	ToGetAccountsAccountDatabasePrivilegeOutputWithContext(context.Context) GetAccountsAccountDatabasePrivilegeOutput
}

GetAccountsAccountDatabasePrivilegeInput is an input type that accepts GetAccountsAccountDatabasePrivilegeArgs and GetAccountsAccountDatabasePrivilegeOutput values. You can construct a concrete instance of `GetAccountsAccountDatabasePrivilegeInput` via:

GetAccountsAccountDatabasePrivilegeArgs{...}

type GetAccountsAccountDatabasePrivilegeOutput

type GetAccountsAccountDatabasePrivilegeOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountDatabasePrivilegeOutput) AccountPrivilege

Account privilege of database

func (GetAccountsAccountDatabasePrivilegeOutput) DbName

The account owned database name

func (GetAccountsAccountDatabasePrivilegeOutput) ElementType

func (GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutput

func (o GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutput() GetAccountsAccountDatabasePrivilegeOutput

func (GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutputWithContext

func (o GetAccountsAccountDatabasePrivilegeOutput) ToGetAccountsAccountDatabasePrivilegeOutputWithContext(ctx context.Context) GetAccountsAccountDatabasePrivilegeOutput

type GetAccountsAccountInput

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

type GetAccountsAccountOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountOutput) AccountDescription

func (o GetAccountsAccountOutput) AccountDescription() pulumi.StringOutput

Account description.

func (GetAccountsAccountOutput) AccountLockState

func (o GetAccountsAccountOutput) AccountLockState() pulumi.StringOutput

Account lock state, Valid values are `Lock`, `UnLock`.

func (GetAccountsAccountOutput) AccountName

Account name.

func (GetAccountsAccountOutput) AccountStatus

func (o GetAccountsAccountOutput) AccountStatus() pulumi.StringOutput

Cluster address type.`Cluster`: the default address of the Cluster.`Primary`: Primary address.`Custom`: Custom cluster addresses.

func (GetAccountsAccountOutput) AccountType

Account type, Valid values are `Normal`, `Super`.

func (GetAccountsAccountOutput) DatabasePrivileges

A list of database privilege. Each element contains the following attributes.

func (GetAccountsAccountOutput) ElementType

func (GetAccountsAccountOutput) ElementType() reflect.Type

func (GetAccountsAccountOutput) ToGetAccountsAccountOutput

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext

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

type GetAccountsArgs

type GetAccountsArgs struct {
	// The polarDB cluster ID.
	DbClusterId string `pulumi:"dbClusterId"`
	// A regex string to filter results by account name.
	NameRegex *string `pulumi:"nameRegex"`
}

A collection of arguments for invoking getAccounts.

type GetAccountsResult

type GetAccountsResult struct {
	// A list of PolarDB cluster accounts. Each element contains the following attributes:
	Accounts    []GetAccountsAccount `pulumi:"accounts"`
	DbClusterId string               `pulumi:"dbClusterId"`
	// The provider-assigned unique ID for this managed resource.
	Id        string  `pulumi:"id"`
	NameRegex *string `pulumi:"nameRegex"`
	// Account name of the cluster.
	Names []string `pulumi:"names"`
}

A collection of values returned by getAccounts.

func GetAccounts

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

The `polardb.getAccounts` data source provides a collection of PolarDB cluster database account available in Alibaba Cloud account. Filters support regular expression for the account name, searches by clusterId.

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "pc-\\w+"
		opt1 := "Running"
		polardbClustersDs, err := polardb.GetClusters(ctx, &polardb.GetClustersArgs{
			DescriptionRegex: &opt0,
			Status:           &opt1,
		}, nil)
		if err != nil {
			return err
		}
		_default, err := polardb.GetAccounts(ctx, &polardb.GetAccountsArgs{
			DbClusterId: polardbClustersDs.Clusters[0].Id,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("account", _default.Accounts[0].AccountName)
		return nil
	})
}

```

type GetClustersArgs

type GetClustersArgs struct {
	// Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.
	DbType *string `pulumi:"dbType"`
	// A regex string to filter results by cluster description.
	DescriptionRegex *string `pulumi:"descriptionRegex"`
	// A list of PolarDB cluster IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// status of the cluster.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	// - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
	// - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getClusters.

type GetClustersCluster

type GetClustersCluster struct {
	// Billing method. Value options: `PostPaid` for Pay-As-You-Go and `PrePaid` for subscription.
	ChargeType string `pulumi:"chargeType"`
	// The createTime of the db_nodes.
	CreateTime string `pulumi:"createTime"`
	// The dbNodeClass of the db_nodes.
	DbNodeClass string `pulumi:"dbNodeClass"`
	// The DBNodeNumber of the PolarDB cluster.
	DbNodeNumber int `pulumi:"dbNodeNumber"`
	// The DBNodes of the PolarDB cluster.
	DbNodes []GetClustersClusterDbNode `pulumi:"dbNodes"`
	// Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.
	DbType string `pulumi:"dbType"`
	// The DBVersion of the PolarDB cluster.
	DbVersion string `pulumi:"dbVersion"`
	// The DeleteLock of the PolarDB cluster.
	DeleteLock int `pulumi:"deleteLock"`
	// The description of the PolarDB cluster.
	Description string `pulumi:"description"`
	// Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.
	Engine string `pulumi:"engine"`
	// Expiration time. Pay-As-You-Go clusters never expire.
	ExpireTime string `pulumi:"expireTime"`
	// The expired of the PolarDB cluster.
	Expired string `pulumi:"expired"`
	// The ID of the PolarDB cluster.
	Id string `pulumi:"id"`
	// The LockMode of the PolarDB cluster.
	LockMode string `pulumi:"lockMode"`
	// The DBClusterNetworkType of the PolarDB cluster.
	NetworkType string `pulumi:"networkType"`
	// The regionId of the db_nodes.
	RegionId string `pulumi:"regionId"`
	// status of the cluster.
	Status string `pulumi:"status"`
	// The StorageUsed of the PolarDB cluster.
	StorageUsed int `pulumi:"storageUsed"`
	// ID of the VPC the cluster belongs to.
	VpcId string `pulumi:"vpcId"`
	// The zoneId of the db_nodes.
	ZoneId string `pulumi:"zoneId"`
}

type GetClustersClusterArgs

type GetClustersClusterArgs struct {
	// Billing method. Value options: `PostPaid` for Pay-As-You-Go and `PrePaid` for subscription.
	ChargeType pulumi.StringInput `pulumi:"chargeType"`
	// The createTime of the db_nodes.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The dbNodeClass of the db_nodes.
	DbNodeClass pulumi.StringInput `pulumi:"dbNodeClass"`
	// The DBNodeNumber of the PolarDB cluster.
	DbNodeNumber pulumi.IntInput `pulumi:"dbNodeNumber"`
	// The DBNodes of the PolarDB cluster.
	DbNodes GetClustersClusterDbNodeArrayInput `pulumi:"dbNodes"`
	// Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.
	DbType pulumi.StringInput `pulumi:"dbType"`
	// The DBVersion of the PolarDB cluster.
	DbVersion pulumi.StringInput `pulumi:"dbVersion"`
	// The DeleteLock of the PolarDB cluster.
	DeleteLock pulumi.IntInput `pulumi:"deleteLock"`
	// The description of the PolarDB cluster.
	Description pulumi.StringInput `pulumi:"description"`
	// Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Expiration time. Pay-As-You-Go clusters never expire.
	ExpireTime pulumi.StringInput `pulumi:"expireTime"`
	// The expired of the PolarDB cluster.
	Expired pulumi.StringInput `pulumi:"expired"`
	// The ID of the PolarDB cluster.
	Id pulumi.StringInput `pulumi:"id"`
	// The LockMode of the PolarDB cluster.
	LockMode pulumi.StringInput `pulumi:"lockMode"`
	// The DBClusterNetworkType of the PolarDB cluster.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// The regionId of the db_nodes.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// status of the cluster.
	Status pulumi.StringInput `pulumi:"status"`
	// The StorageUsed of the PolarDB cluster.
	StorageUsed pulumi.IntInput `pulumi:"storageUsed"`
	// ID of the VPC the cluster belongs to.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The zoneId of the db_nodes.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetClustersClusterArgs) ElementType

func (GetClustersClusterArgs) ElementType() reflect.Type

func (GetClustersClusterArgs) ToGetClustersClusterOutput

func (i GetClustersClusterArgs) ToGetClustersClusterOutput() GetClustersClusterOutput

func (GetClustersClusterArgs) ToGetClustersClusterOutputWithContext

func (i GetClustersClusterArgs) ToGetClustersClusterOutputWithContext(ctx context.Context) GetClustersClusterOutput

type GetClustersClusterArray

type GetClustersClusterArray []GetClustersClusterInput

func (GetClustersClusterArray) ElementType

func (GetClustersClusterArray) ElementType() reflect.Type

func (GetClustersClusterArray) ToGetClustersClusterArrayOutput

func (i GetClustersClusterArray) ToGetClustersClusterArrayOutput() GetClustersClusterArrayOutput

func (GetClustersClusterArray) ToGetClustersClusterArrayOutputWithContext

func (i GetClustersClusterArray) ToGetClustersClusterArrayOutputWithContext(ctx context.Context) GetClustersClusterArrayOutput

type GetClustersClusterArrayInput

type GetClustersClusterArrayInput interface {
	pulumi.Input

	ToGetClustersClusterArrayOutput() GetClustersClusterArrayOutput
	ToGetClustersClusterArrayOutputWithContext(context.Context) GetClustersClusterArrayOutput
}

GetClustersClusterArrayInput is an input type that accepts GetClustersClusterArray and GetClustersClusterArrayOutput values. You can construct a concrete instance of `GetClustersClusterArrayInput` via:

GetClustersClusterArray{ GetClustersClusterArgs{...} }

type GetClustersClusterArrayOutput

type GetClustersClusterArrayOutput struct{ *pulumi.OutputState }

func (GetClustersClusterArrayOutput) ElementType

func (GetClustersClusterArrayOutput) Index

func (GetClustersClusterArrayOutput) ToGetClustersClusterArrayOutput

func (o GetClustersClusterArrayOutput) ToGetClustersClusterArrayOutput() GetClustersClusterArrayOutput

func (GetClustersClusterArrayOutput) ToGetClustersClusterArrayOutputWithContext

func (o GetClustersClusterArrayOutput) ToGetClustersClusterArrayOutputWithContext(ctx context.Context) GetClustersClusterArrayOutput

type GetClustersClusterDbNode

type GetClustersClusterDbNode struct {
	// The createTime of the db_nodes.
	CreateTime string `pulumi:"createTime"`
	// The dbNodeClass of the db_nodes.
	DbNodeClass string `pulumi:"dbNodeClass"`
	// The dbNodeId of the db_nodes.
	DbNodeId string `pulumi:"dbNodeId"`
	// The dbNodeRole of the db_nodes.
	DbNodeRole string `pulumi:"dbNodeRole"`
	// The dbNodeStatus of the db_nodes.
	DbNodeStatus string `pulumi:"dbNodeStatus"`
	// The maxConnections of the db_nodes.
	MaxConnections int `pulumi:"maxConnections"`
	// The maxIops of the db_nodes.
	MaxIops int `pulumi:"maxIops"`
	// The regionId of the db_nodes.
	RegionId string `pulumi:"regionId"`
	// The zoneId of the db_nodes.
	ZoneId string `pulumi:"zoneId"`
}

type GetClustersClusterDbNodeArgs

type GetClustersClusterDbNodeArgs struct {
	// The createTime of the db_nodes.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The dbNodeClass of the db_nodes.
	DbNodeClass pulumi.StringInput `pulumi:"dbNodeClass"`
	// The dbNodeId of the db_nodes.
	DbNodeId pulumi.StringInput `pulumi:"dbNodeId"`
	// The dbNodeRole of the db_nodes.
	DbNodeRole pulumi.StringInput `pulumi:"dbNodeRole"`
	// The dbNodeStatus of the db_nodes.
	DbNodeStatus pulumi.StringInput `pulumi:"dbNodeStatus"`
	// The maxConnections of the db_nodes.
	MaxConnections pulumi.IntInput `pulumi:"maxConnections"`
	// The maxIops of the db_nodes.
	MaxIops pulumi.IntInput `pulumi:"maxIops"`
	// The regionId of the db_nodes.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// The zoneId of the db_nodes.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetClustersClusterDbNodeArgs) ElementType

func (GetClustersClusterDbNodeArgs) ToGetClustersClusterDbNodeOutput

func (i GetClustersClusterDbNodeArgs) ToGetClustersClusterDbNodeOutput() GetClustersClusterDbNodeOutput

func (GetClustersClusterDbNodeArgs) ToGetClustersClusterDbNodeOutputWithContext

func (i GetClustersClusterDbNodeArgs) ToGetClustersClusterDbNodeOutputWithContext(ctx context.Context) GetClustersClusterDbNodeOutput

type GetClustersClusterDbNodeArray

type GetClustersClusterDbNodeArray []GetClustersClusterDbNodeInput

func (GetClustersClusterDbNodeArray) ElementType

func (GetClustersClusterDbNodeArray) ToGetClustersClusterDbNodeArrayOutput

func (i GetClustersClusterDbNodeArray) ToGetClustersClusterDbNodeArrayOutput() GetClustersClusterDbNodeArrayOutput

func (GetClustersClusterDbNodeArray) ToGetClustersClusterDbNodeArrayOutputWithContext

func (i GetClustersClusterDbNodeArray) ToGetClustersClusterDbNodeArrayOutputWithContext(ctx context.Context) GetClustersClusterDbNodeArrayOutput

type GetClustersClusterDbNodeArrayInput

type GetClustersClusterDbNodeArrayInput interface {
	pulumi.Input

	ToGetClustersClusterDbNodeArrayOutput() GetClustersClusterDbNodeArrayOutput
	ToGetClustersClusterDbNodeArrayOutputWithContext(context.Context) GetClustersClusterDbNodeArrayOutput
}

GetClustersClusterDbNodeArrayInput is an input type that accepts GetClustersClusterDbNodeArray and GetClustersClusterDbNodeArrayOutput values. You can construct a concrete instance of `GetClustersClusterDbNodeArrayInput` via:

GetClustersClusterDbNodeArray{ GetClustersClusterDbNodeArgs{...} }

type GetClustersClusterDbNodeArrayOutput

type GetClustersClusterDbNodeArrayOutput struct{ *pulumi.OutputState }

func (GetClustersClusterDbNodeArrayOutput) ElementType

func (GetClustersClusterDbNodeArrayOutput) Index

func (GetClustersClusterDbNodeArrayOutput) ToGetClustersClusterDbNodeArrayOutput

func (o GetClustersClusterDbNodeArrayOutput) ToGetClustersClusterDbNodeArrayOutput() GetClustersClusterDbNodeArrayOutput

func (GetClustersClusterDbNodeArrayOutput) ToGetClustersClusterDbNodeArrayOutputWithContext

func (o GetClustersClusterDbNodeArrayOutput) ToGetClustersClusterDbNodeArrayOutputWithContext(ctx context.Context) GetClustersClusterDbNodeArrayOutput

type GetClustersClusterDbNodeInput

type GetClustersClusterDbNodeInput interface {
	pulumi.Input

	ToGetClustersClusterDbNodeOutput() GetClustersClusterDbNodeOutput
	ToGetClustersClusterDbNodeOutputWithContext(context.Context) GetClustersClusterDbNodeOutput
}

GetClustersClusterDbNodeInput is an input type that accepts GetClustersClusterDbNodeArgs and GetClustersClusterDbNodeOutput values. You can construct a concrete instance of `GetClustersClusterDbNodeInput` via:

GetClustersClusterDbNodeArgs{...}

type GetClustersClusterDbNodeOutput

type GetClustersClusterDbNodeOutput struct{ *pulumi.OutputState }

func (GetClustersClusterDbNodeOutput) CreateTime

The createTime of the db_nodes.

func (GetClustersClusterDbNodeOutput) DbNodeClass

The dbNodeClass of the db_nodes.

func (GetClustersClusterDbNodeOutput) DbNodeId

The dbNodeId of the db_nodes.

func (GetClustersClusterDbNodeOutput) DbNodeRole

The dbNodeRole of the db_nodes.

func (GetClustersClusterDbNodeOutput) DbNodeStatus

The dbNodeStatus of the db_nodes.

func (GetClustersClusterDbNodeOutput) ElementType

func (GetClustersClusterDbNodeOutput) MaxConnections

func (o GetClustersClusterDbNodeOutput) MaxConnections() pulumi.IntOutput

The maxConnections of the db_nodes.

func (GetClustersClusterDbNodeOutput) MaxIops

The maxIops of the db_nodes.

func (GetClustersClusterDbNodeOutput) RegionId

The regionId of the db_nodes.

func (GetClustersClusterDbNodeOutput) ToGetClustersClusterDbNodeOutput

func (o GetClustersClusterDbNodeOutput) ToGetClustersClusterDbNodeOutput() GetClustersClusterDbNodeOutput

func (GetClustersClusterDbNodeOutput) ToGetClustersClusterDbNodeOutputWithContext

func (o GetClustersClusterDbNodeOutput) ToGetClustersClusterDbNodeOutputWithContext(ctx context.Context) GetClustersClusterDbNodeOutput

func (GetClustersClusterDbNodeOutput) ZoneId

The zoneId of the db_nodes.

type GetClustersClusterInput

type GetClustersClusterInput interface {
	pulumi.Input

	ToGetClustersClusterOutput() GetClustersClusterOutput
	ToGetClustersClusterOutputWithContext(context.Context) GetClustersClusterOutput
}

GetClustersClusterInput is an input type that accepts GetClustersClusterArgs and GetClustersClusterOutput values. You can construct a concrete instance of `GetClustersClusterInput` via:

GetClustersClusterArgs{...}

type GetClustersClusterOutput

type GetClustersClusterOutput struct{ *pulumi.OutputState }

func (GetClustersClusterOutput) ChargeType

Billing method. Value options: `PostPaid` for Pay-As-You-Go and `PrePaid` for subscription.

func (GetClustersClusterOutput) CreateTime

The createTime of the db_nodes.

func (GetClustersClusterOutput) DbNodeClass

The dbNodeClass of the db_nodes.

func (GetClustersClusterOutput) DbNodeNumber

func (o GetClustersClusterOutput) DbNodeNumber() pulumi.IntOutput

The DBNodeNumber of the PolarDB cluster.

func (GetClustersClusterOutput) DbNodes

The DBNodes of the PolarDB cluster.

func (GetClustersClusterOutput) DbType

Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.

func (GetClustersClusterOutput) DbVersion

The DBVersion of the PolarDB cluster.

func (GetClustersClusterOutput) DeleteLock

func (o GetClustersClusterOutput) DeleteLock() pulumi.IntOutput

The DeleteLock of the PolarDB cluster.

func (GetClustersClusterOutput) Description

The description of the PolarDB cluster.

func (GetClustersClusterOutput) ElementType

func (GetClustersClusterOutput) ElementType() reflect.Type

func (GetClustersClusterOutput) Engine

Database type. Options are `MySQL`, `Oracle` and `PostgreSQL`. If no value is specified, all types are returned.

func (GetClustersClusterOutput) ExpireTime

Expiration time. Pay-As-You-Go clusters never expire.

func (GetClustersClusterOutput) Expired

The expired of the PolarDB cluster.

func (GetClustersClusterOutput) Id

The ID of the PolarDB cluster.

func (GetClustersClusterOutput) LockMode

The LockMode of the PolarDB cluster.

func (GetClustersClusterOutput) NetworkType

The DBClusterNetworkType of the PolarDB cluster.

func (GetClustersClusterOutput) RegionId

The regionId of the db_nodes.

func (GetClustersClusterOutput) Status

status of the cluster.

func (GetClustersClusterOutput) StorageUsed

func (o GetClustersClusterOutput) StorageUsed() pulumi.IntOutput

The StorageUsed of the PolarDB cluster.

func (GetClustersClusterOutput) ToGetClustersClusterOutput

func (o GetClustersClusterOutput) ToGetClustersClusterOutput() GetClustersClusterOutput

func (GetClustersClusterOutput) ToGetClustersClusterOutputWithContext

func (o GetClustersClusterOutput) ToGetClustersClusterOutputWithContext(ctx context.Context) GetClustersClusterOutput

func (GetClustersClusterOutput) VpcId

ID of the VPC the cluster belongs to.

func (GetClustersClusterOutput) ZoneId

The zoneId of the db_nodes.

type GetClustersResult

type GetClustersResult struct {
	// A list of PolarDB clusters. Each element contains the following attributes:
	Clusters []GetClustersCluster `pulumi:"clusters"`
	// `Primary` for primary cluster, `ReadOnly` for read-only cluster, `Guard` for disaster recovery cluster, and `Temp` for temporary cluster.
	DbType           *string `pulumi:"dbType"`
	DescriptionRegex *string `pulumi:"descriptionRegex"`
	// A list of RDS cluster descriptions.
	Descriptions []string `pulumi:"descriptions"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of RDS cluster IDs.
	Ids        []string `pulumi:"ids"`
	OutputFile *string  `pulumi:"outputFile"`
	// Status of the cluster.
	Status *string                `pulumi:"status"`
	Tags   map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getClusters.

func GetClusters

func GetClusters(ctx *pulumi.Context, args *GetClustersArgs, opts ...pulumi.InvokeOption) (*GetClustersResult, error)

The `polardb.getClusters` data source provides a collection of PolarDB clusters available in Alibaba Cloud account. Filters support regular expression for the cluster description, searches by tags, and other filters which are listed below.

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "pc-\\w+"
		opt1 := "Running"
		polardbClustersDs, err := polardb.GetClusters(ctx, &polardb.GetClustersArgs{
			DescriptionRegex: &opt0,
			Status:           &opt1,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstPolardbClusterId", polardbClustersDs.Clusters[0].Id)
		return nil
	})
}

```

type GetDatabasesArgs

type GetDatabasesArgs struct {
	// The polarDB cluster ID.
	DbClusterId string `pulumi:"dbClusterId"`
	// A regex string to filter results by database name.
	NameRegex *string `pulumi:"nameRegex"`
}

A collection of arguments for invoking getDatabases.

type GetDatabasesDatabase

type GetDatabasesDatabase struct {
	// A list of accounts of database. Each element contains the following attributes.
	Accounts []GetDatabasesDatabaseAccount `pulumi:"accounts"`
	// The character set name of database.
	CharacterSetName string `pulumi:"characterSetName"`
	// Database description.
	DbDescription string `pulumi:"dbDescription"`
	// Database name.
	DbName string `pulumi:"dbName"`
	// The status of database.
	DbStatus string `pulumi:"dbStatus"`
	// The engine of database.
	Engine string `pulumi:"engine"`
}

type GetDatabasesDatabaseAccount

type GetDatabasesDatabaseAccount struct {
	// Account name.
	AccountName string `pulumi:"accountName"`
	// Account status.
	AccountStatus string `pulumi:"accountStatus"`
	// The privilege status of account.
	PrivilegeStatus string `pulumi:"privilegeStatus"`
}

type GetDatabasesDatabaseAccountArgs

type GetDatabasesDatabaseAccountArgs struct {
	// Account name.
	AccountName pulumi.StringInput `pulumi:"accountName"`
	// Account status.
	AccountStatus pulumi.StringInput `pulumi:"accountStatus"`
	// The privilege status of account.
	PrivilegeStatus pulumi.StringInput `pulumi:"privilegeStatus"`
}

func (GetDatabasesDatabaseAccountArgs) ElementType

func (GetDatabasesDatabaseAccountArgs) ToGetDatabasesDatabaseAccountOutput

func (i GetDatabasesDatabaseAccountArgs) ToGetDatabasesDatabaseAccountOutput() GetDatabasesDatabaseAccountOutput

func (GetDatabasesDatabaseAccountArgs) ToGetDatabasesDatabaseAccountOutputWithContext

func (i GetDatabasesDatabaseAccountArgs) ToGetDatabasesDatabaseAccountOutputWithContext(ctx context.Context) GetDatabasesDatabaseAccountOutput

type GetDatabasesDatabaseAccountArray

type GetDatabasesDatabaseAccountArray []GetDatabasesDatabaseAccountInput

func (GetDatabasesDatabaseAccountArray) ElementType

func (GetDatabasesDatabaseAccountArray) ToGetDatabasesDatabaseAccountArrayOutput

func (i GetDatabasesDatabaseAccountArray) ToGetDatabasesDatabaseAccountArrayOutput() GetDatabasesDatabaseAccountArrayOutput

func (GetDatabasesDatabaseAccountArray) ToGetDatabasesDatabaseAccountArrayOutputWithContext

func (i GetDatabasesDatabaseAccountArray) ToGetDatabasesDatabaseAccountArrayOutputWithContext(ctx context.Context) GetDatabasesDatabaseAccountArrayOutput

type GetDatabasesDatabaseAccountArrayInput

type GetDatabasesDatabaseAccountArrayInput interface {
	pulumi.Input

	ToGetDatabasesDatabaseAccountArrayOutput() GetDatabasesDatabaseAccountArrayOutput
	ToGetDatabasesDatabaseAccountArrayOutputWithContext(context.Context) GetDatabasesDatabaseAccountArrayOutput
}

GetDatabasesDatabaseAccountArrayInput is an input type that accepts GetDatabasesDatabaseAccountArray and GetDatabasesDatabaseAccountArrayOutput values. You can construct a concrete instance of `GetDatabasesDatabaseAccountArrayInput` via:

GetDatabasesDatabaseAccountArray{ GetDatabasesDatabaseAccountArgs{...} }

type GetDatabasesDatabaseAccountArrayOutput

type GetDatabasesDatabaseAccountArrayOutput struct{ *pulumi.OutputState }

func (GetDatabasesDatabaseAccountArrayOutput) ElementType

func (GetDatabasesDatabaseAccountArrayOutput) Index

func (GetDatabasesDatabaseAccountArrayOutput) ToGetDatabasesDatabaseAccountArrayOutput

func (o GetDatabasesDatabaseAccountArrayOutput) ToGetDatabasesDatabaseAccountArrayOutput() GetDatabasesDatabaseAccountArrayOutput

func (GetDatabasesDatabaseAccountArrayOutput) ToGetDatabasesDatabaseAccountArrayOutputWithContext

func (o GetDatabasesDatabaseAccountArrayOutput) ToGetDatabasesDatabaseAccountArrayOutputWithContext(ctx context.Context) GetDatabasesDatabaseAccountArrayOutput

type GetDatabasesDatabaseAccountInput

type GetDatabasesDatabaseAccountInput interface {
	pulumi.Input

	ToGetDatabasesDatabaseAccountOutput() GetDatabasesDatabaseAccountOutput
	ToGetDatabasesDatabaseAccountOutputWithContext(context.Context) GetDatabasesDatabaseAccountOutput
}

GetDatabasesDatabaseAccountInput is an input type that accepts GetDatabasesDatabaseAccountArgs and GetDatabasesDatabaseAccountOutput values. You can construct a concrete instance of `GetDatabasesDatabaseAccountInput` via:

GetDatabasesDatabaseAccountArgs{...}

type GetDatabasesDatabaseAccountOutput

type GetDatabasesDatabaseAccountOutput struct{ *pulumi.OutputState }

func (GetDatabasesDatabaseAccountOutput) AccountName

Account name.

func (GetDatabasesDatabaseAccountOutput) AccountStatus

Account status.

func (GetDatabasesDatabaseAccountOutput) ElementType

func (GetDatabasesDatabaseAccountOutput) PrivilegeStatus

The privilege status of account.

func (GetDatabasesDatabaseAccountOutput) ToGetDatabasesDatabaseAccountOutput

func (o GetDatabasesDatabaseAccountOutput) ToGetDatabasesDatabaseAccountOutput() GetDatabasesDatabaseAccountOutput

func (GetDatabasesDatabaseAccountOutput) ToGetDatabasesDatabaseAccountOutputWithContext

func (o GetDatabasesDatabaseAccountOutput) ToGetDatabasesDatabaseAccountOutputWithContext(ctx context.Context) GetDatabasesDatabaseAccountOutput

type GetDatabasesDatabaseArgs

type GetDatabasesDatabaseArgs struct {
	// A list of accounts of database. Each element contains the following attributes.
	Accounts GetDatabasesDatabaseAccountArrayInput `pulumi:"accounts"`
	// The character set name of database.
	CharacterSetName pulumi.StringInput `pulumi:"characterSetName"`
	// Database description.
	DbDescription pulumi.StringInput `pulumi:"dbDescription"`
	// Database name.
	DbName pulumi.StringInput `pulumi:"dbName"`
	// The status of database.
	DbStatus pulumi.StringInput `pulumi:"dbStatus"`
	// The engine of database.
	Engine pulumi.StringInput `pulumi:"engine"`
}

func (GetDatabasesDatabaseArgs) ElementType

func (GetDatabasesDatabaseArgs) ElementType() reflect.Type

func (GetDatabasesDatabaseArgs) ToGetDatabasesDatabaseOutput

func (i GetDatabasesDatabaseArgs) ToGetDatabasesDatabaseOutput() GetDatabasesDatabaseOutput

func (GetDatabasesDatabaseArgs) ToGetDatabasesDatabaseOutputWithContext

func (i GetDatabasesDatabaseArgs) ToGetDatabasesDatabaseOutputWithContext(ctx context.Context) GetDatabasesDatabaseOutput

type GetDatabasesDatabaseArray

type GetDatabasesDatabaseArray []GetDatabasesDatabaseInput

func (GetDatabasesDatabaseArray) ElementType

func (GetDatabasesDatabaseArray) ElementType() reflect.Type

func (GetDatabasesDatabaseArray) ToGetDatabasesDatabaseArrayOutput

func (i GetDatabasesDatabaseArray) ToGetDatabasesDatabaseArrayOutput() GetDatabasesDatabaseArrayOutput

func (GetDatabasesDatabaseArray) ToGetDatabasesDatabaseArrayOutputWithContext

func (i GetDatabasesDatabaseArray) ToGetDatabasesDatabaseArrayOutputWithContext(ctx context.Context) GetDatabasesDatabaseArrayOutput

type GetDatabasesDatabaseArrayInput

type GetDatabasesDatabaseArrayInput interface {
	pulumi.Input

	ToGetDatabasesDatabaseArrayOutput() GetDatabasesDatabaseArrayOutput
	ToGetDatabasesDatabaseArrayOutputWithContext(context.Context) GetDatabasesDatabaseArrayOutput
}

GetDatabasesDatabaseArrayInput is an input type that accepts GetDatabasesDatabaseArray and GetDatabasesDatabaseArrayOutput values. You can construct a concrete instance of `GetDatabasesDatabaseArrayInput` via:

GetDatabasesDatabaseArray{ GetDatabasesDatabaseArgs{...} }

type GetDatabasesDatabaseArrayOutput

type GetDatabasesDatabaseArrayOutput struct{ *pulumi.OutputState }

func (GetDatabasesDatabaseArrayOutput) ElementType

func (GetDatabasesDatabaseArrayOutput) Index

func (GetDatabasesDatabaseArrayOutput) ToGetDatabasesDatabaseArrayOutput

func (o GetDatabasesDatabaseArrayOutput) ToGetDatabasesDatabaseArrayOutput() GetDatabasesDatabaseArrayOutput

func (GetDatabasesDatabaseArrayOutput) ToGetDatabasesDatabaseArrayOutputWithContext

func (o GetDatabasesDatabaseArrayOutput) ToGetDatabasesDatabaseArrayOutputWithContext(ctx context.Context) GetDatabasesDatabaseArrayOutput

type GetDatabasesDatabaseInput

type GetDatabasesDatabaseInput interface {
	pulumi.Input

	ToGetDatabasesDatabaseOutput() GetDatabasesDatabaseOutput
	ToGetDatabasesDatabaseOutputWithContext(context.Context) GetDatabasesDatabaseOutput
}

GetDatabasesDatabaseInput is an input type that accepts GetDatabasesDatabaseArgs and GetDatabasesDatabaseOutput values. You can construct a concrete instance of `GetDatabasesDatabaseInput` via:

GetDatabasesDatabaseArgs{...}

type GetDatabasesDatabaseOutput

type GetDatabasesDatabaseOutput struct{ *pulumi.OutputState }

func (GetDatabasesDatabaseOutput) Accounts

A list of accounts of database. Each element contains the following attributes.

func (GetDatabasesDatabaseOutput) CharacterSetName

func (o GetDatabasesDatabaseOutput) CharacterSetName() pulumi.StringOutput

The character set name of database.

func (GetDatabasesDatabaseOutput) DbDescription

Database description.

func (GetDatabasesDatabaseOutput) DbName

Database name.

func (GetDatabasesDatabaseOutput) DbStatus

The status of database.

func (GetDatabasesDatabaseOutput) ElementType

func (GetDatabasesDatabaseOutput) ElementType() reflect.Type

func (GetDatabasesDatabaseOutput) Engine

The engine of database.

func (GetDatabasesDatabaseOutput) ToGetDatabasesDatabaseOutput

func (o GetDatabasesDatabaseOutput) ToGetDatabasesDatabaseOutput() GetDatabasesDatabaseOutput

func (GetDatabasesDatabaseOutput) ToGetDatabasesDatabaseOutputWithContext

func (o GetDatabasesDatabaseOutput) ToGetDatabasesDatabaseOutputWithContext(ctx context.Context) GetDatabasesDatabaseOutput

type GetDatabasesResult

type GetDatabasesResult struct {
	// A list of PolarDB cluster databases. Each element contains the following attributes:
	Databases   []GetDatabasesDatabase `pulumi:"databases"`
	DbClusterId string                 `pulumi:"dbClusterId"`
	// The provider-assigned unique ID for this managed resource.
	Id        string  `pulumi:"id"`
	NameRegex *string `pulumi:"nameRegex"`
	// database name of the cluster.
	Names []string `pulumi:"names"`
}

A collection of values returned by getDatabases.

func GetDatabases

func GetDatabases(ctx *pulumi.Context, args *GetDatabasesArgs, opts ...pulumi.InvokeOption) (*GetDatabasesResult, error)

The `polardb.getDatabases` data source provides a collection of PolarDB cluster database available in Alibaba Cloud account. Filters support regular expression for the database name, searches by clusterId.

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "pc-\\w+"
		opt1 := "Running"
		polardbClustersDs, err := polardb.GetClusters(ctx, &polardb.GetClustersArgs{
			DescriptionRegex: &opt0,
			Status:           &opt1,
		}, nil)
		if err != nil {
			return err
		}
		_default, err := polardb.GetDatabases(ctx, &polardb.GetDatabasesArgs{
			DbClusterId: polardbClustersDs.Clusters[0].Id,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("database", _default.Databases[0].DbName)
		return nil
	})
}

```

type GetEndpointsArgs

type GetEndpointsArgs struct {
	// PolarDB cluster ID.
	DbClusterId string `pulumi:"dbClusterId"`
	// endpoint of the cluster.
	DbEndpointId *string `pulumi:"dbEndpointId"`
}

A collection of arguments for invoking getEndpoints.

type GetEndpointsEndpoint

type GetEndpointsEndpoint struct {
	// A list of endpoint addresses. Each element contains the following attributes.
	AddressItems []GetEndpointsEndpointAddressItem `pulumi:"addressItems"`
	// Whether the new node is automatically added to the default cluster address.Options are `Enable` and `Disable`.
	AutoAddNewNodes string `pulumi:"autoAddNewNodes"`
	// endpoint of the cluster.
	DbEndpointId string `pulumi:"dbEndpointId"`
	// The Endpoint configuration. `ConsistLevel`: session consistency level, value:`0`: final consistency,`1`: session consistency;`LoadBalanceStrategy`: load balancing strategy. Based on the automatic scheduling of load, the value is: `load`.
	EndpointConfig string `pulumi:"endpointConfig"`
	// Cluster address type.`Cluster`: the default address of the Cluster.`Primary`: Primary address.`Custom`: Custom cluster addresses.
	EndpointType string `pulumi:"endpointType"`
	// A list of nodes that connect to the address configuration.
	Nodes string `pulumi:"nodes"`
	// Read-write mode:`ReadWrite`: readable and writable (automatic read-write separation).`ReadOnly`: ReadOnly.
	ReadWriteMode string `pulumi:"readWriteMode"`
}

type GetEndpointsEndpointAddressItem

type GetEndpointsEndpointAddressItem struct {
	// Connection instance string.
	ConnectionString string `pulumi:"connectionString"`
	// The ip address of connection string.
	IpAddress string `pulumi:"ipAddress"`
	// IP network type:`Public` or `Private`.
	NetType string `pulumi:"netType"`
	// Intranet connection port.
	Port string `pulumi:"port"`
	// ID of the VPC the instance belongs to.
	VpcId string `pulumi:"vpcId"`
	// ID of the VSwitch the cluster belongs to.
	VswitchId string `pulumi:"vswitchId"`
}

type GetEndpointsEndpointAddressItemArgs

type GetEndpointsEndpointAddressItemArgs struct {
	// Connection instance string.
	ConnectionString pulumi.StringInput `pulumi:"connectionString"`
	// The ip address of connection string.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// IP network type:`Public` or `Private`.
	NetType pulumi.StringInput `pulumi:"netType"`
	// Intranet connection port.
	Port pulumi.StringInput `pulumi:"port"`
	// ID of the VPC the instance belongs to.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// ID of the VSwitch the cluster belongs to.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetEndpointsEndpointAddressItemArgs) ElementType

func (GetEndpointsEndpointAddressItemArgs) ToGetEndpointsEndpointAddressItemOutput

func (i GetEndpointsEndpointAddressItemArgs) ToGetEndpointsEndpointAddressItemOutput() GetEndpointsEndpointAddressItemOutput

func (GetEndpointsEndpointAddressItemArgs) ToGetEndpointsEndpointAddressItemOutputWithContext

func (i GetEndpointsEndpointAddressItemArgs) ToGetEndpointsEndpointAddressItemOutputWithContext(ctx context.Context) GetEndpointsEndpointAddressItemOutput

type GetEndpointsEndpointAddressItemArray

type GetEndpointsEndpointAddressItemArray []GetEndpointsEndpointAddressItemInput

func (GetEndpointsEndpointAddressItemArray) ElementType

func (GetEndpointsEndpointAddressItemArray) ToGetEndpointsEndpointAddressItemArrayOutput

func (i GetEndpointsEndpointAddressItemArray) ToGetEndpointsEndpointAddressItemArrayOutput() GetEndpointsEndpointAddressItemArrayOutput

func (GetEndpointsEndpointAddressItemArray) ToGetEndpointsEndpointAddressItemArrayOutputWithContext

func (i GetEndpointsEndpointAddressItemArray) ToGetEndpointsEndpointAddressItemArrayOutputWithContext(ctx context.Context) GetEndpointsEndpointAddressItemArrayOutput

type GetEndpointsEndpointAddressItemArrayInput

type GetEndpointsEndpointAddressItemArrayInput interface {
	pulumi.Input

	ToGetEndpointsEndpointAddressItemArrayOutput() GetEndpointsEndpointAddressItemArrayOutput
	ToGetEndpointsEndpointAddressItemArrayOutputWithContext(context.Context) GetEndpointsEndpointAddressItemArrayOutput
}

GetEndpointsEndpointAddressItemArrayInput is an input type that accepts GetEndpointsEndpointAddressItemArray and GetEndpointsEndpointAddressItemArrayOutput values. You can construct a concrete instance of `GetEndpointsEndpointAddressItemArrayInput` via:

GetEndpointsEndpointAddressItemArray{ GetEndpointsEndpointAddressItemArgs{...} }

type GetEndpointsEndpointAddressItemArrayOutput

type GetEndpointsEndpointAddressItemArrayOutput struct{ *pulumi.OutputState }

func (GetEndpointsEndpointAddressItemArrayOutput) ElementType

func (GetEndpointsEndpointAddressItemArrayOutput) Index

func (GetEndpointsEndpointAddressItemArrayOutput) ToGetEndpointsEndpointAddressItemArrayOutput

func (o GetEndpointsEndpointAddressItemArrayOutput) ToGetEndpointsEndpointAddressItemArrayOutput() GetEndpointsEndpointAddressItemArrayOutput

func (GetEndpointsEndpointAddressItemArrayOutput) ToGetEndpointsEndpointAddressItemArrayOutputWithContext

func (o GetEndpointsEndpointAddressItemArrayOutput) ToGetEndpointsEndpointAddressItemArrayOutputWithContext(ctx context.Context) GetEndpointsEndpointAddressItemArrayOutput

type GetEndpointsEndpointAddressItemInput

type GetEndpointsEndpointAddressItemInput interface {
	pulumi.Input

	ToGetEndpointsEndpointAddressItemOutput() GetEndpointsEndpointAddressItemOutput
	ToGetEndpointsEndpointAddressItemOutputWithContext(context.Context) GetEndpointsEndpointAddressItemOutput
}

GetEndpointsEndpointAddressItemInput is an input type that accepts GetEndpointsEndpointAddressItemArgs and GetEndpointsEndpointAddressItemOutput values. You can construct a concrete instance of `GetEndpointsEndpointAddressItemInput` via:

GetEndpointsEndpointAddressItemArgs{...}

type GetEndpointsEndpointAddressItemOutput

type GetEndpointsEndpointAddressItemOutput struct{ *pulumi.OutputState }

func (GetEndpointsEndpointAddressItemOutput) ConnectionString

Connection instance string.

func (GetEndpointsEndpointAddressItemOutput) ElementType

func (GetEndpointsEndpointAddressItemOutput) IpAddress

The ip address of connection string.

func (GetEndpointsEndpointAddressItemOutput) NetType

IP network type:`Public` or `Private`.

func (GetEndpointsEndpointAddressItemOutput) Port

Intranet connection port.

func (GetEndpointsEndpointAddressItemOutput) ToGetEndpointsEndpointAddressItemOutput

func (o GetEndpointsEndpointAddressItemOutput) ToGetEndpointsEndpointAddressItemOutput() GetEndpointsEndpointAddressItemOutput

func (GetEndpointsEndpointAddressItemOutput) ToGetEndpointsEndpointAddressItemOutputWithContext

func (o GetEndpointsEndpointAddressItemOutput) ToGetEndpointsEndpointAddressItemOutputWithContext(ctx context.Context) GetEndpointsEndpointAddressItemOutput

func (GetEndpointsEndpointAddressItemOutput) VpcId

ID of the VPC the instance belongs to.

func (GetEndpointsEndpointAddressItemOutput) VswitchId

ID of the VSwitch the cluster belongs to.

type GetEndpointsEndpointArgs

type GetEndpointsEndpointArgs struct {
	// A list of endpoint addresses. Each element contains the following attributes.
	AddressItems GetEndpointsEndpointAddressItemArrayInput `pulumi:"addressItems"`
	// Whether the new node is automatically added to the default cluster address.Options are `Enable` and `Disable`.
	AutoAddNewNodes pulumi.StringInput `pulumi:"autoAddNewNodes"`
	// endpoint of the cluster.
	DbEndpointId pulumi.StringInput `pulumi:"dbEndpointId"`
	// The Endpoint configuration. `ConsistLevel`: session consistency level, value:`0`: final consistency,`1`: session consistency;`LoadBalanceStrategy`: load balancing strategy. Based on the automatic scheduling of load, the value is: `load`.
	EndpointConfig pulumi.StringInput `pulumi:"endpointConfig"`
	// Cluster address type.`Cluster`: the default address of the Cluster.`Primary`: Primary address.`Custom`: Custom cluster addresses.
	EndpointType pulumi.StringInput `pulumi:"endpointType"`
	// A list of nodes that connect to the address configuration.
	Nodes pulumi.StringInput `pulumi:"nodes"`
	// Read-write mode:`ReadWrite`: readable and writable (automatic read-write separation).`ReadOnly`: ReadOnly.
	ReadWriteMode pulumi.StringInput `pulumi:"readWriteMode"`
}

func (GetEndpointsEndpointArgs) ElementType

func (GetEndpointsEndpointArgs) ElementType() reflect.Type

func (GetEndpointsEndpointArgs) ToGetEndpointsEndpointOutput

func (i GetEndpointsEndpointArgs) ToGetEndpointsEndpointOutput() GetEndpointsEndpointOutput

func (GetEndpointsEndpointArgs) ToGetEndpointsEndpointOutputWithContext

func (i GetEndpointsEndpointArgs) ToGetEndpointsEndpointOutputWithContext(ctx context.Context) GetEndpointsEndpointOutput

type GetEndpointsEndpointArray

type GetEndpointsEndpointArray []GetEndpointsEndpointInput

func (GetEndpointsEndpointArray) ElementType

func (GetEndpointsEndpointArray) ElementType() reflect.Type

func (GetEndpointsEndpointArray) ToGetEndpointsEndpointArrayOutput

func (i GetEndpointsEndpointArray) ToGetEndpointsEndpointArrayOutput() GetEndpointsEndpointArrayOutput

func (GetEndpointsEndpointArray) ToGetEndpointsEndpointArrayOutputWithContext

func (i GetEndpointsEndpointArray) ToGetEndpointsEndpointArrayOutputWithContext(ctx context.Context) GetEndpointsEndpointArrayOutput

type GetEndpointsEndpointArrayInput

type GetEndpointsEndpointArrayInput interface {
	pulumi.Input

	ToGetEndpointsEndpointArrayOutput() GetEndpointsEndpointArrayOutput
	ToGetEndpointsEndpointArrayOutputWithContext(context.Context) GetEndpointsEndpointArrayOutput
}

GetEndpointsEndpointArrayInput is an input type that accepts GetEndpointsEndpointArray and GetEndpointsEndpointArrayOutput values. You can construct a concrete instance of `GetEndpointsEndpointArrayInput` via:

GetEndpointsEndpointArray{ GetEndpointsEndpointArgs{...} }

type GetEndpointsEndpointArrayOutput

type GetEndpointsEndpointArrayOutput struct{ *pulumi.OutputState }

func (GetEndpointsEndpointArrayOutput) ElementType

func (GetEndpointsEndpointArrayOutput) Index

func (GetEndpointsEndpointArrayOutput) ToGetEndpointsEndpointArrayOutput

func (o GetEndpointsEndpointArrayOutput) ToGetEndpointsEndpointArrayOutput() GetEndpointsEndpointArrayOutput

func (GetEndpointsEndpointArrayOutput) ToGetEndpointsEndpointArrayOutputWithContext

func (o GetEndpointsEndpointArrayOutput) ToGetEndpointsEndpointArrayOutputWithContext(ctx context.Context) GetEndpointsEndpointArrayOutput

type GetEndpointsEndpointInput

type GetEndpointsEndpointInput interface {
	pulumi.Input

	ToGetEndpointsEndpointOutput() GetEndpointsEndpointOutput
	ToGetEndpointsEndpointOutputWithContext(context.Context) GetEndpointsEndpointOutput
}

GetEndpointsEndpointInput is an input type that accepts GetEndpointsEndpointArgs and GetEndpointsEndpointOutput values. You can construct a concrete instance of `GetEndpointsEndpointInput` via:

GetEndpointsEndpointArgs{...}

type GetEndpointsEndpointOutput

type GetEndpointsEndpointOutput struct{ *pulumi.OutputState }

func (GetEndpointsEndpointOutput) AddressItems

A list of endpoint addresses. Each element contains the following attributes.

func (GetEndpointsEndpointOutput) AutoAddNewNodes

func (o GetEndpointsEndpointOutput) AutoAddNewNodes() pulumi.StringOutput

Whether the new node is automatically added to the default cluster address.Options are `Enable` and `Disable`.

func (GetEndpointsEndpointOutput) DbEndpointId

endpoint of the cluster.

func (GetEndpointsEndpointOutput) ElementType

func (GetEndpointsEndpointOutput) ElementType() reflect.Type

func (GetEndpointsEndpointOutput) EndpointConfig

func (o GetEndpointsEndpointOutput) EndpointConfig() pulumi.StringOutput

The Endpoint configuration. `ConsistLevel`: session consistency level, value:`0`: final consistency,`1`: session consistency;`LoadBalanceStrategy`: load balancing strategy. Based on the automatic scheduling of load, the value is: `load`.

func (GetEndpointsEndpointOutput) EndpointType

Cluster address type.`Cluster`: the default address of the Cluster.`Primary`: Primary address.`Custom`: Custom cluster addresses.

func (GetEndpointsEndpointOutput) Nodes

A list of nodes that connect to the address configuration.

func (GetEndpointsEndpointOutput) ReadWriteMode

Read-write mode:`ReadWrite`: readable and writable (automatic read-write separation).`ReadOnly`: ReadOnly.

func (GetEndpointsEndpointOutput) ToGetEndpointsEndpointOutput

func (o GetEndpointsEndpointOutput) ToGetEndpointsEndpointOutput() GetEndpointsEndpointOutput

func (GetEndpointsEndpointOutput) ToGetEndpointsEndpointOutputWithContext

func (o GetEndpointsEndpointOutput) ToGetEndpointsEndpointOutputWithContext(ctx context.Context) GetEndpointsEndpointOutput

type GetEndpointsResult

type GetEndpointsResult struct {
	DbClusterId string `pulumi:"dbClusterId"`
	// The endpoint ID.
	DbEndpointId *string `pulumi:"dbEndpointId"`
	// A list of PolarDB cluster endpoints. Each element contains the following attributes:
	Endpoints []GetEndpointsEndpoint `pulumi:"endpoints"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
}

A collection of values returned by getEndpoints.

func GetEndpoints

func GetEndpoints(ctx *pulumi.Context, args *GetEndpointsArgs, opts ...pulumi.InvokeOption) (*GetEndpointsResult, error)

The `polardb.getEndpoints` data source provides a collection of PolarDB endpoints available in Alibaba Cloud account. Filters support regular expression for the cluster name, searches by clusterId, and other filters which are listed below.

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "pc-\\w+"
		opt1 := "Running"
		polardbClustersDs, err := polardb.GetClusters(ctx, &polardb.GetClustersArgs{
			DescriptionRegex: &opt0,
			Status:           &opt1,
		}, nil)
		if err != nil {
			return err
		}
		_default, err := polardb.GetEndpoints(ctx, &polardb.GetEndpointsArgs{
			DbClusterId: polardbClustersDs.Clusters[0].Id,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("endpoint", _default.Endpoints[0].DbEndpointId)
		return nil
	})
}

```

type GetNodeClassesArgs added in v2.3.3

type GetNodeClassesArgs struct {
	// The PolarDB node class type by the user.
	DbNodeClass *string `pulumi:"dbNodeClass"`
	// Database type. Options are `MySQL`, `PostgreSQL`, `Oracle`. If dbType is set, dbVersion also needs to be set.
	DbType *string `pulumi:"dbType"`
	// Database version required by the user. Value options can refer to the latest docs [detail info](https://www.alibabacloud.com/help/doc-detail/98169.htm) `DBVersion`. If dbVersion is set, dbType also needs to be set.
	DbVersion  *string `pulumi:"dbVersion"`
	OutputFile *string `pulumi:"outputFile"`
	// Filter the results by charge type. Valid values: `PrePaid` and `PostPaid`.
	PayType string `pulumi:"payType"`
	// The Region to launch the PolarDB cluster.
	RegionId *string `pulumi:"regionId"`
	// The Zone to launch the PolarDB cluster.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getNodeClasses.

type GetNodeClassesClass added in v2.3.3

type GetNodeClassesClass struct {
	// A list of PolarDB node classes in the zone.
	SupportedEngines []GetNodeClassesClassSupportedEngine `pulumi:"supportedEngines"`
	// The Zone to launch the PolarDB cluster.
	ZoneId string `pulumi:"zoneId"`
}

type GetNodeClassesClassArgs added in v2.3.3

type GetNodeClassesClassArgs struct {
	// A list of PolarDB node classes in the zone.
	SupportedEngines GetNodeClassesClassSupportedEngineArrayInput `pulumi:"supportedEngines"`
	// The Zone to launch the PolarDB cluster.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetNodeClassesClassArgs) ElementType added in v2.3.3

func (GetNodeClassesClassArgs) ElementType() reflect.Type

func (GetNodeClassesClassArgs) ToGetNodeClassesClassOutput added in v2.3.3

func (i GetNodeClassesClassArgs) ToGetNodeClassesClassOutput() GetNodeClassesClassOutput

func (GetNodeClassesClassArgs) ToGetNodeClassesClassOutputWithContext added in v2.3.3

func (i GetNodeClassesClassArgs) ToGetNodeClassesClassOutputWithContext(ctx context.Context) GetNodeClassesClassOutput

type GetNodeClassesClassArray added in v2.3.3

type GetNodeClassesClassArray []GetNodeClassesClassInput

func (GetNodeClassesClassArray) ElementType added in v2.3.3

func (GetNodeClassesClassArray) ElementType() reflect.Type

func (GetNodeClassesClassArray) ToGetNodeClassesClassArrayOutput added in v2.3.3

func (i GetNodeClassesClassArray) ToGetNodeClassesClassArrayOutput() GetNodeClassesClassArrayOutput

func (GetNodeClassesClassArray) ToGetNodeClassesClassArrayOutputWithContext added in v2.3.3

func (i GetNodeClassesClassArray) ToGetNodeClassesClassArrayOutputWithContext(ctx context.Context) GetNodeClassesClassArrayOutput

type GetNodeClassesClassArrayInput added in v2.3.3

type GetNodeClassesClassArrayInput interface {
	pulumi.Input

	ToGetNodeClassesClassArrayOutput() GetNodeClassesClassArrayOutput
	ToGetNodeClassesClassArrayOutputWithContext(context.Context) GetNodeClassesClassArrayOutput
}

GetNodeClassesClassArrayInput is an input type that accepts GetNodeClassesClassArray and GetNodeClassesClassArrayOutput values. You can construct a concrete instance of `GetNodeClassesClassArrayInput` via:

GetNodeClassesClassArray{ GetNodeClassesClassArgs{...} }

type GetNodeClassesClassArrayOutput added in v2.3.3

type GetNodeClassesClassArrayOutput struct{ *pulumi.OutputState }

func (GetNodeClassesClassArrayOutput) ElementType added in v2.3.3

func (GetNodeClassesClassArrayOutput) Index added in v2.3.3

func (GetNodeClassesClassArrayOutput) ToGetNodeClassesClassArrayOutput added in v2.3.3

func (o GetNodeClassesClassArrayOutput) ToGetNodeClassesClassArrayOutput() GetNodeClassesClassArrayOutput

func (GetNodeClassesClassArrayOutput) ToGetNodeClassesClassArrayOutputWithContext added in v2.3.3

func (o GetNodeClassesClassArrayOutput) ToGetNodeClassesClassArrayOutputWithContext(ctx context.Context) GetNodeClassesClassArrayOutput

type GetNodeClassesClassInput added in v2.3.3

type GetNodeClassesClassInput interface {
	pulumi.Input

	ToGetNodeClassesClassOutput() GetNodeClassesClassOutput
	ToGetNodeClassesClassOutputWithContext(context.Context) GetNodeClassesClassOutput
}

GetNodeClassesClassInput is an input type that accepts GetNodeClassesClassArgs and GetNodeClassesClassOutput values. You can construct a concrete instance of `GetNodeClassesClassInput` via:

GetNodeClassesClassArgs{...}

type GetNodeClassesClassOutput added in v2.3.3

type GetNodeClassesClassOutput struct{ *pulumi.OutputState }

func (GetNodeClassesClassOutput) ElementType added in v2.3.3

func (GetNodeClassesClassOutput) ElementType() reflect.Type

func (GetNodeClassesClassOutput) SupportedEngines added in v2.3.3

A list of PolarDB node classes in the zone.

func (GetNodeClassesClassOutput) ToGetNodeClassesClassOutput added in v2.3.3

func (o GetNodeClassesClassOutput) ToGetNodeClassesClassOutput() GetNodeClassesClassOutput

func (GetNodeClassesClassOutput) ToGetNodeClassesClassOutputWithContext added in v2.3.3

func (o GetNodeClassesClassOutput) ToGetNodeClassesClassOutputWithContext(ctx context.Context) GetNodeClassesClassOutput

func (GetNodeClassesClassOutput) ZoneId added in v2.3.3

The Zone to launch the PolarDB cluster.

type GetNodeClassesClassSupportedEngine added in v2.3.3

type GetNodeClassesClassSupportedEngine struct {
	// A list of PolarDB node available classes.
	AvailableResources []GetNodeClassesClassSupportedEngineAvailableResource `pulumi:"availableResources"`
	// In the zone, the database type supports classes in the following available_resources.
	Engine string `pulumi:"engine"`
}

type GetNodeClassesClassSupportedEngineArgs added in v2.3.3

type GetNodeClassesClassSupportedEngineArgs struct {
	// A list of PolarDB node available classes.
	AvailableResources GetNodeClassesClassSupportedEngineAvailableResourceArrayInput `pulumi:"availableResources"`
	// In the zone, the database type supports classes in the following available_resources.
	Engine pulumi.StringInput `pulumi:"engine"`
}

func (GetNodeClassesClassSupportedEngineArgs) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineArgs) ToGetNodeClassesClassSupportedEngineOutput added in v2.3.3

func (i GetNodeClassesClassSupportedEngineArgs) ToGetNodeClassesClassSupportedEngineOutput() GetNodeClassesClassSupportedEngineOutput

func (GetNodeClassesClassSupportedEngineArgs) ToGetNodeClassesClassSupportedEngineOutputWithContext added in v2.3.3

func (i GetNodeClassesClassSupportedEngineArgs) ToGetNodeClassesClassSupportedEngineOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineOutput

type GetNodeClassesClassSupportedEngineArray added in v2.3.3

type GetNodeClassesClassSupportedEngineArray []GetNodeClassesClassSupportedEngineInput

func (GetNodeClassesClassSupportedEngineArray) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineArray) ToGetNodeClassesClassSupportedEngineArrayOutput added in v2.3.3

func (i GetNodeClassesClassSupportedEngineArray) ToGetNodeClassesClassSupportedEngineArrayOutput() GetNodeClassesClassSupportedEngineArrayOutput

func (GetNodeClassesClassSupportedEngineArray) ToGetNodeClassesClassSupportedEngineArrayOutputWithContext added in v2.3.3

func (i GetNodeClassesClassSupportedEngineArray) ToGetNodeClassesClassSupportedEngineArrayOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineArrayOutput

type GetNodeClassesClassSupportedEngineArrayInput added in v2.3.3

type GetNodeClassesClassSupportedEngineArrayInput interface {
	pulumi.Input

	ToGetNodeClassesClassSupportedEngineArrayOutput() GetNodeClassesClassSupportedEngineArrayOutput
	ToGetNodeClassesClassSupportedEngineArrayOutputWithContext(context.Context) GetNodeClassesClassSupportedEngineArrayOutput
}

GetNodeClassesClassSupportedEngineArrayInput is an input type that accepts GetNodeClassesClassSupportedEngineArray and GetNodeClassesClassSupportedEngineArrayOutput values. You can construct a concrete instance of `GetNodeClassesClassSupportedEngineArrayInput` via:

GetNodeClassesClassSupportedEngineArray{ GetNodeClassesClassSupportedEngineArgs{...} }

type GetNodeClassesClassSupportedEngineArrayOutput added in v2.3.3

type GetNodeClassesClassSupportedEngineArrayOutput struct{ *pulumi.OutputState }

func (GetNodeClassesClassSupportedEngineArrayOutput) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineArrayOutput) Index added in v2.3.3

func (GetNodeClassesClassSupportedEngineArrayOutput) ToGetNodeClassesClassSupportedEngineArrayOutput added in v2.3.3

func (o GetNodeClassesClassSupportedEngineArrayOutput) ToGetNodeClassesClassSupportedEngineArrayOutput() GetNodeClassesClassSupportedEngineArrayOutput

func (GetNodeClassesClassSupportedEngineArrayOutput) ToGetNodeClassesClassSupportedEngineArrayOutputWithContext added in v2.3.3

func (o GetNodeClassesClassSupportedEngineArrayOutput) ToGetNodeClassesClassSupportedEngineArrayOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineArrayOutput

type GetNodeClassesClassSupportedEngineAvailableResource added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResource struct {
	// The PolarDB node class type by the user.
	DbNodeClass string `pulumi:"dbNodeClass"`
}

type GetNodeClassesClassSupportedEngineAvailableResourceArgs added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResourceArgs struct {
	// The PolarDB node class type by the user.
	DbNodeClass pulumi.StringInput `pulumi:"dbNodeClass"`
}

func (GetNodeClassesClassSupportedEngineAvailableResourceArgs) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceArgs) ToGetNodeClassesClassSupportedEngineAvailableResourceOutput added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceArgs) ToGetNodeClassesClassSupportedEngineAvailableResourceOutputWithContext added in v2.3.3

func (i GetNodeClassesClassSupportedEngineAvailableResourceArgs) ToGetNodeClassesClassSupportedEngineAvailableResourceOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineAvailableResourceOutput

type GetNodeClassesClassSupportedEngineAvailableResourceArray added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResourceArray []GetNodeClassesClassSupportedEngineAvailableResourceInput

func (GetNodeClassesClassSupportedEngineAvailableResourceArray) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceArray) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutput added in v2.3.3

func (i GetNodeClassesClassSupportedEngineAvailableResourceArray) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutput() GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput

func (GetNodeClassesClassSupportedEngineAvailableResourceArray) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutputWithContext added in v2.3.3

func (i GetNodeClassesClassSupportedEngineAvailableResourceArray) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput

type GetNodeClassesClassSupportedEngineAvailableResourceArrayInput added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResourceArrayInput interface {
	pulumi.Input

	ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutput() GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput
	ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutputWithContext(context.Context) GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput
}

GetNodeClassesClassSupportedEngineAvailableResourceArrayInput is an input type that accepts GetNodeClassesClassSupportedEngineAvailableResourceArray and GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput values. You can construct a concrete instance of `GetNodeClassesClassSupportedEngineAvailableResourceArrayInput` via:

GetNodeClassesClassSupportedEngineAvailableResourceArray{ GetNodeClassesClassSupportedEngineAvailableResourceArgs{...} }

type GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput struct{ *pulumi.OutputState }

func (GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput) Index added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutput added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutputWithContext added in v2.3.3

func (o GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput) ToGetNodeClassesClassSupportedEngineAvailableResourceArrayOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineAvailableResourceArrayOutput

type GetNodeClassesClassSupportedEngineAvailableResourceInput added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResourceInput interface {
	pulumi.Input

	ToGetNodeClassesClassSupportedEngineAvailableResourceOutput() GetNodeClassesClassSupportedEngineAvailableResourceOutput
	ToGetNodeClassesClassSupportedEngineAvailableResourceOutputWithContext(context.Context) GetNodeClassesClassSupportedEngineAvailableResourceOutput
}

GetNodeClassesClassSupportedEngineAvailableResourceInput is an input type that accepts GetNodeClassesClassSupportedEngineAvailableResourceArgs and GetNodeClassesClassSupportedEngineAvailableResourceOutput values. You can construct a concrete instance of `GetNodeClassesClassSupportedEngineAvailableResourceInput` via:

GetNodeClassesClassSupportedEngineAvailableResourceArgs{...}

type GetNodeClassesClassSupportedEngineAvailableResourceOutput added in v2.3.3

type GetNodeClassesClassSupportedEngineAvailableResourceOutput struct{ *pulumi.OutputState }

func (GetNodeClassesClassSupportedEngineAvailableResourceOutput) DbNodeClass added in v2.3.3

The PolarDB node class type by the user.

func (GetNodeClassesClassSupportedEngineAvailableResourceOutput) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceOutput) ToGetNodeClassesClassSupportedEngineAvailableResourceOutput added in v2.3.3

func (GetNodeClassesClassSupportedEngineAvailableResourceOutput) ToGetNodeClassesClassSupportedEngineAvailableResourceOutputWithContext added in v2.3.3

func (o GetNodeClassesClassSupportedEngineAvailableResourceOutput) ToGetNodeClassesClassSupportedEngineAvailableResourceOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineAvailableResourceOutput

type GetNodeClassesClassSupportedEngineInput added in v2.3.3

type GetNodeClassesClassSupportedEngineInput interface {
	pulumi.Input

	ToGetNodeClassesClassSupportedEngineOutput() GetNodeClassesClassSupportedEngineOutput
	ToGetNodeClassesClassSupportedEngineOutputWithContext(context.Context) GetNodeClassesClassSupportedEngineOutput
}

GetNodeClassesClassSupportedEngineInput is an input type that accepts GetNodeClassesClassSupportedEngineArgs and GetNodeClassesClassSupportedEngineOutput values. You can construct a concrete instance of `GetNodeClassesClassSupportedEngineInput` via:

GetNodeClassesClassSupportedEngineArgs{...}

type GetNodeClassesClassSupportedEngineOutput added in v2.3.3

type GetNodeClassesClassSupportedEngineOutput struct{ *pulumi.OutputState }

func (GetNodeClassesClassSupportedEngineOutput) AvailableResources added in v2.3.3

A list of PolarDB node available classes.

func (GetNodeClassesClassSupportedEngineOutput) ElementType added in v2.3.3

func (GetNodeClassesClassSupportedEngineOutput) Engine added in v2.3.3

In the zone, the database type supports classes in the following available_resources.

func (GetNodeClassesClassSupportedEngineOutput) ToGetNodeClassesClassSupportedEngineOutput added in v2.3.3

func (o GetNodeClassesClassSupportedEngineOutput) ToGetNodeClassesClassSupportedEngineOutput() GetNodeClassesClassSupportedEngineOutput

func (GetNodeClassesClassSupportedEngineOutput) ToGetNodeClassesClassSupportedEngineOutputWithContext added in v2.3.3

func (o GetNodeClassesClassSupportedEngineOutput) ToGetNodeClassesClassSupportedEngineOutputWithContext(ctx context.Context) GetNodeClassesClassSupportedEngineOutput

type GetNodeClassesResult added in v2.3.3

type GetNodeClassesResult struct {
	// A list of PolarDB node classes. Each element contains the following attributes:
	Classes []GetNodeClassesClass `pulumi:"classes"`
	// PolarDB node available class.
	DbNodeClass *string `pulumi:"dbNodeClass"`
	DbType      *string `pulumi:"dbType"`
	DbVersion   *string `pulumi:"dbVersion"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	OutputFile *string `pulumi:"outputFile"`
	PayType    string  `pulumi:"payType"`
	RegionId   *string `pulumi:"regionId"`
	// The Zone to launch the PolarDB cluster.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of values returned by getNodeClasses.

func GetNodeClasses added in v2.3.3

func GetNodeClasses(ctx *pulumi.Context, args *GetNodeClassesArgs, opts ...pulumi.InvokeOption) (*GetNodeClassesResult, error)

This data source provides the PolarDB node classes resource available info of Alibaba Cloud.

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "PolarDB"
		resourcesZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		opt1 := resourcesZones.Zones[0].Id
		opt2 := "MySQL"
		opt3 := "5.6"
		resourcesNodeClasses, err := polardb.GetNodeClasses(ctx, &polardb.GetNodeClassesArgs{
			ZoneId:    &opt1,
			PayType:   "PostPaid",
			DbType:    &opt2,
			DbVersion: &opt3,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("polardbNodeClasses", resourcesNodeClasses.Classes)
		return nil
	})
}

```

type GetZonesArgs

type GetZonesArgs struct {
	// Indicate whether the zones can be used in a multi AZ configuration. Default to `false`. Multi AZ is usually used to launch PolarDB instances.
	Multi      *bool   `pulumi:"multi"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

type GetZonesResult

type GetZonesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of zone IDs.
	Ids        []string `pulumi:"ids"`
	Multi      *bool    `pulumi:"multi"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of availability zones. Each element contains the following attributes:
	Zones []GetZonesZone `pulumi:"zones"`
}

A collection of values returned by getZones.

func GetZones

func GetZones(ctx *pulumi.Context, args *GetZonesArgs, opts ...pulumi.InvokeOption) (*GetZonesResult, error)

This data source provides availability zones for PolarDB that can be accessed by an Alibaba Cloud account within the region configured in the provider.

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

## Example Usage

```go package main

import (

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

)

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

```

type GetZonesZone

type GetZonesZone struct {
	// ID of the zone.
	Id string `pulumi:"id"`
	// A list of zone ids in which the multi zone.
	MultiZoneIds []string `pulumi:"multiZoneIds"`
}

type GetZonesZoneArgs

type GetZonesZoneArgs struct {
	// ID of the zone.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of zone ids in which the multi zone.
	MultiZoneIds pulumi.StringArrayInput `pulumi:"multiZoneIds"`
}

func (GetZonesZoneArgs) ElementType

func (GetZonesZoneArgs) ElementType() reflect.Type

func (GetZonesZoneArgs) ToGetZonesZoneOutput

func (i GetZonesZoneArgs) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneArgs) ToGetZonesZoneOutputWithContext

func (i GetZonesZoneArgs) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

type GetZonesZoneArray

type GetZonesZoneArray []GetZonesZoneInput

func (GetZonesZoneArray) ElementType

func (GetZonesZoneArray) ElementType() reflect.Type

func (GetZonesZoneArray) ToGetZonesZoneArrayOutput

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneArrayInput

type GetZonesZoneArrayInput interface {
	pulumi.Input

	ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput
	ToGetZonesZoneArrayOutputWithContext(context.Context) GetZonesZoneArrayOutput
}

GetZonesZoneArrayInput is an input type that accepts GetZonesZoneArray and GetZonesZoneArrayOutput values. You can construct a concrete instance of `GetZonesZoneArrayInput` via:

GetZonesZoneArray{ GetZonesZoneArgs{...} }

type GetZonesZoneArrayOutput

type GetZonesZoneArrayOutput struct{ *pulumi.OutputState }

func (GetZonesZoneArrayOutput) ElementType

func (GetZonesZoneArrayOutput) ElementType() reflect.Type

func (GetZonesZoneArrayOutput) Index

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneInput

type GetZonesZoneInput interface {
	pulumi.Input

	ToGetZonesZoneOutput() GetZonesZoneOutput
	ToGetZonesZoneOutputWithContext(context.Context) GetZonesZoneOutput
}

GetZonesZoneInput is an input type that accepts GetZonesZoneArgs and GetZonesZoneOutput values. You can construct a concrete instance of `GetZonesZoneInput` via:

GetZonesZoneArgs{...}

type GetZonesZoneOutput

type GetZonesZoneOutput struct{ *pulumi.OutputState }

func (GetZonesZoneOutput) ElementType

func (GetZonesZoneOutput) ElementType() reflect.Type

func (GetZonesZoneOutput) Id

ID of the zone.

func (GetZonesZoneOutput) MultiZoneIds

func (o GetZonesZoneOutput) MultiZoneIds() pulumi.StringArrayOutput

A list of zone ids in which the multi zone.

func (GetZonesZoneOutput) ToGetZonesZoneOutput

func (o GetZonesZoneOutput) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneOutput) ToGetZonesZoneOutputWithContext

func (o GetZonesZoneOutput) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

Jump to

Keyboard shortcuts

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