rocketmq

package
v2.35.1 Latest Latest
Warning

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

Go to latest
Published: Feb 16, 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 Acl

type Acl struct {
	pulumi.CustomResourceState

	// The name of the ACL instance. The name can contain 2 to 128 characters including a-z, A-Z, 0-9, periods, underlines, and hyphens. The name must start with an English letter, but cannot start with http:// or https://.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a Sag Acl resource. Smart Access Gateway (SAG) provides the access control list (ACL) function in the form of whitelists and blacklists for different SAG instances.

For information about Sag Acl and how to use it, see [What is access control list (ACL)](https://www.alibabacloud.com/help/doc-detail/111518.htm).

> **NOTE:** Available in 1.60.0+

> **NOTE:** Only the following regions support create Cloud Connect Network. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rocketmq.NewAcl(ctx, "_default", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag Acl can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/acl:Acl example acl-abc123456

```

func GetAcl

func GetAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AclState, opts ...pulumi.ResourceOption) (*Acl, error)

GetAcl gets an existing Acl 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 NewAcl

func NewAcl(ctx *pulumi.Context,
	name string, args *AclArgs, opts ...pulumi.ResourceOption) (*Acl, error)

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

func (*Acl) ElementType added in v2.25.1

func (*Acl) ElementType() reflect.Type

func (*Acl) ToAclOutput added in v2.25.1

func (i *Acl) ToAclOutput() AclOutput

func (*Acl) ToAclOutputWithContext added in v2.25.1

func (i *Acl) ToAclOutputWithContext(ctx context.Context) AclOutput

func (*Acl) ToAclPtrOutput added in v2.35.1

func (i *Acl) ToAclPtrOutput() AclPtrOutput

func (*Acl) ToAclPtrOutputWithContext added in v2.35.1

func (i *Acl) ToAclPtrOutputWithContext(ctx context.Context) AclPtrOutput

type AclArgs

type AclArgs struct {
	// The name of the ACL instance. The name can contain 2 to 128 characters including a-z, A-Z, 0-9, periods, underlines, and hyphens. The name must start with an English letter, but cannot start with http:// or https://.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a Acl resource.

func (AclArgs) ElementType

func (AclArgs) ElementType() reflect.Type

type AclArray added in v2.35.1

type AclArray []AclInput

func (AclArray) ElementType added in v2.35.1

func (AclArray) ElementType() reflect.Type

func (AclArray) ToAclArrayOutput added in v2.35.1

func (i AclArray) ToAclArrayOutput() AclArrayOutput

func (AclArray) ToAclArrayOutputWithContext added in v2.35.1

func (i AclArray) ToAclArrayOutputWithContext(ctx context.Context) AclArrayOutput

type AclArrayInput added in v2.35.1

type AclArrayInput interface {
	pulumi.Input

	ToAclArrayOutput() AclArrayOutput
	ToAclArrayOutputWithContext(context.Context) AclArrayOutput
}

AclArrayInput is an input type that accepts AclArray and AclArrayOutput values. You can construct a concrete instance of `AclArrayInput` via:

AclArray{ AclArgs{...} }

type AclArrayOutput added in v2.35.1

type AclArrayOutput struct{ *pulumi.OutputState }

func (AclArrayOutput) ElementType added in v2.35.1

func (AclArrayOutput) ElementType() reflect.Type

func (AclArrayOutput) Index added in v2.35.1

func (AclArrayOutput) ToAclArrayOutput added in v2.35.1

func (o AclArrayOutput) ToAclArrayOutput() AclArrayOutput

func (AclArrayOutput) ToAclArrayOutputWithContext added in v2.35.1

func (o AclArrayOutput) ToAclArrayOutputWithContext(ctx context.Context) AclArrayOutput

type AclInput added in v2.25.1

type AclInput interface {
	pulumi.Input

	ToAclOutput() AclOutput
	ToAclOutputWithContext(ctx context.Context) AclOutput
}

type AclMap added in v2.35.1

type AclMap map[string]AclInput

func (AclMap) ElementType added in v2.35.1

func (AclMap) ElementType() reflect.Type

func (AclMap) ToAclMapOutput added in v2.35.1

func (i AclMap) ToAclMapOutput() AclMapOutput

func (AclMap) ToAclMapOutputWithContext added in v2.35.1

func (i AclMap) ToAclMapOutputWithContext(ctx context.Context) AclMapOutput

type AclMapInput added in v2.35.1

type AclMapInput interface {
	pulumi.Input

	ToAclMapOutput() AclMapOutput
	ToAclMapOutputWithContext(context.Context) AclMapOutput
}

AclMapInput is an input type that accepts AclMap and AclMapOutput values. You can construct a concrete instance of `AclMapInput` via:

AclMap{ "key": AclArgs{...} }

type AclMapOutput added in v2.35.1

type AclMapOutput struct{ *pulumi.OutputState }

func (AclMapOutput) ElementType added in v2.35.1

func (AclMapOutput) ElementType() reflect.Type

func (AclMapOutput) MapIndex added in v2.35.1

func (o AclMapOutput) MapIndex(k pulumi.StringInput) AclOutput

func (AclMapOutput) ToAclMapOutput added in v2.35.1

func (o AclMapOutput) ToAclMapOutput() AclMapOutput

func (AclMapOutput) ToAclMapOutputWithContext added in v2.35.1

func (o AclMapOutput) ToAclMapOutputWithContext(ctx context.Context) AclMapOutput

type AclOutput added in v2.25.1

type AclOutput struct {
	*pulumi.OutputState
}

func (AclOutput) ElementType added in v2.25.1

func (AclOutput) ElementType() reflect.Type

func (AclOutput) ToAclOutput added in v2.25.1

func (o AclOutput) ToAclOutput() AclOutput

func (AclOutput) ToAclOutputWithContext added in v2.25.1

func (o AclOutput) ToAclOutputWithContext(ctx context.Context) AclOutput

func (AclOutput) ToAclPtrOutput added in v2.35.1

func (o AclOutput) ToAclPtrOutput() AclPtrOutput

func (AclOutput) ToAclPtrOutputWithContext added in v2.35.1

func (o AclOutput) ToAclPtrOutputWithContext(ctx context.Context) AclPtrOutput

type AclPtrInput added in v2.35.1

type AclPtrInput interface {
	pulumi.Input

	ToAclPtrOutput() AclPtrOutput
	ToAclPtrOutputWithContext(ctx context.Context) AclPtrOutput
}

type AclPtrOutput added in v2.35.1

type AclPtrOutput struct {
	*pulumi.OutputState
}

func (AclPtrOutput) ElementType added in v2.35.1

func (AclPtrOutput) ElementType() reflect.Type

func (AclPtrOutput) ToAclPtrOutput added in v2.35.1

func (o AclPtrOutput) ToAclPtrOutput() AclPtrOutput

func (AclPtrOutput) ToAclPtrOutputWithContext added in v2.35.1

func (o AclPtrOutput) ToAclPtrOutputWithContext(ctx context.Context) AclPtrOutput

type AclRule

type AclRule struct {
	pulumi.CustomResourceState

	// The ID of the ACL.
	AclId pulumi.StringOutput `pulumi:"aclId"`
	// The description of the ACL rule. It must be 1 to 512 characters in length.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The destination address. It is an IPv4 address range in CIDR format. Default value: 0.0.0.0/0.
	DestCidr pulumi.StringOutput `pulumi:"destCidr"`
	// The range of the destination port. Valid value: 80/80.
	DestPortRange pulumi.StringOutput `pulumi:"destPortRange"`
	// The direction of the ACL rule. Valid values: in|out.
	Direction pulumi.StringOutput `pulumi:"direction"`
	// The protocol used by the ACL rule. The value is not case sensitive.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The policy used by the ACL rule. Valid values: accept|drop.
	Policy pulumi.StringOutput `pulumi:"policy"`
	// The priority of the ACL rule. Value range: 1 to 100.
	Priority pulumi.IntPtrOutput `pulumi:"priority"`
	// The source address. It is an IPv4 address range in the CIDR format. Default value: 0.0.0.0/0.
	SourceCidr pulumi.StringOutput `pulumi:"sourceCidr"`
	// The range of the source port. Valid value: 80/80.
	SourcePortRange pulumi.StringOutput `pulumi:"sourcePortRange"`
}

Provides a Sag Acl Rule resource. This topic describes how to configure an access control list (ACL) rule for a target Smart Access Gateway instance to permit or deny access to or from specified IP addresses in the ACL rule.

For information about Sag Acl Rule and how to use it, see [What is access control list (ACL) rule](https://www.alibabacloud.com/help/doc-detail/111483.htm).

> **NOTE:** Available in 1.60.0+

> **NOTE:** Only the following regions support create Cloud Connect Network. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Import

The Sag Acl Rule can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/aclRule:AclRule example acr-abc123456

```

func GetAclRule

func GetAclRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AclRuleState, opts ...pulumi.ResourceOption) (*AclRule, error)

GetAclRule gets an existing AclRule 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 NewAclRule

func NewAclRule(ctx *pulumi.Context,
	name string, args *AclRuleArgs, opts ...pulumi.ResourceOption) (*AclRule, error)

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

func (*AclRule) ElementType added in v2.25.1

func (*AclRule) ElementType() reflect.Type

func (*AclRule) ToAclRuleOutput added in v2.25.1

func (i *AclRule) ToAclRuleOutput() AclRuleOutput

func (*AclRule) ToAclRuleOutputWithContext added in v2.25.1

func (i *AclRule) ToAclRuleOutputWithContext(ctx context.Context) AclRuleOutput

func (*AclRule) ToAclRulePtrOutput added in v2.35.1

func (i *AclRule) ToAclRulePtrOutput() AclRulePtrOutput

func (*AclRule) ToAclRulePtrOutputWithContext added in v2.35.1

func (i *AclRule) ToAclRulePtrOutputWithContext(ctx context.Context) AclRulePtrOutput

type AclRuleArgs

type AclRuleArgs struct {
	// The ID of the ACL.
	AclId pulumi.StringInput
	// The description of the ACL rule. It must be 1 to 512 characters in length.
	Description pulumi.StringPtrInput
	// The destination address. It is an IPv4 address range in CIDR format. Default value: 0.0.0.0/0.
	DestCidr pulumi.StringInput
	// The range of the destination port. Valid value: 80/80.
	DestPortRange pulumi.StringInput
	// The direction of the ACL rule. Valid values: in|out.
	Direction pulumi.StringInput
	// The protocol used by the ACL rule. The value is not case sensitive.
	IpProtocol pulumi.StringInput
	// The policy used by the ACL rule. Valid values: accept|drop.
	Policy pulumi.StringInput
	// The priority of the ACL rule. Value range: 1 to 100.
	Priority pulumi.IntPtrInput
	// The source address. It is an IPv4 address range in the CIDR format. Default value: 0.0.0.0/0.
	SourceCidr pulumi.StringInput
	// The range of the source port. Valid value: 80/80.
	SourcePortRange pulumi.StringInput
}

The set of arguments for constructing a AclRule resource.

func (AclRuleArgs) ElementType

func (AclRuleArgs) ElementType() reflect.Type

type AclRuleArray added in v2.35.1

type AclRuleArray []AclRuleInput

func (AclRuleArray) ElementType added in v2.35.1

func (AclRuleArray) ElementType() reflect.Type

func (AclRuleArray) ToAclRuleArrayOutput added in v2.35.1

func (i AclRuleArray) ToAclRuleArrayOutput() AclRuleArrayOutput

func (AclRuleArray) ToAclRuleArrayOutputWithContext added in v2.35.1

func (i AclRuleArray) ToAclRuleArrayOutputWithContext(ctx context.Context) AclRuleArrayOutput

type AclRuleArrayInput added in v2.35.1

type AclRuleArrayInput interface {
	pulumi.Input

	ToAclRuleArrayOutput() AclRuleArrayOutput
	ToAclRuleArrayOutputWithContext(context.Context) AclRuleArrayOutput
}

AclRuleArrayInput is an input type that accepts AclRuleArray and AclRuleArrayOutput values. You can construct a concrete instance of `AclRuleArrayInput` via:

AclRuleArray{ AclRuleArgs{...} }

type AclRuleArrayOutput added in v2.35.1

type AclRuleArrayOutput struct{ *pulumi.OutputState }

func (AclRuleArrayOutput) ElementType added in v2.35.1

func (AclRuleArrayOutput) ElementType() reflect.Type

func (AclRuleArrayOutput) Index added in v2.35.1

func (AclRuleArrayOutput) ToAclRuleArrayOutput added in v2.35.1

func (o AclRuleArrayOutput) ToAclRuleArrayOutput() AclRuleArrayOutput

func (AclRuleArrayOutput) ToAclRuleArrayOutputWithContext added in v2.35.1

func (o AclRuleArrayOutput) ToAclRuleArrayOutputWithContext(ctx context.Context) AclRuleArrayOutput

type AclRuleInput added in v2.25.1

type AclRuleInput interface {
	pulumi.Input

	ToAclRuleOutput() AclRuleOutput
	ToAclRuleOutputWithContext(ctx context.Context) AclRuleOutput
}

type AclRuleMap added in v2.35.1

type AclRuleMap map[string]AclRuleInput

func (AclRuleMap) ElementType added in v2.35.1

func (AclRuleMap) ElementType() reflect.Type

func (AclRuleMap) ToAclRuleMapOutput added in v2.35.1

func (i AclRuleMap) ToAclRuleMapOutput() AclRuleMapOutput

func (AclRuleMap) ToAclRuleMapOutputWithContext added in v2.35.1

func (i AclRuleMap) ToAclRuleMapOutputWithContext(ctx context.Context) AclRuleMapOutput

type AclRuleMapInput added in v2.35.1

type AclRuleMapInput interface {
	pulumi.Input

	ToAclRuleMapOutput() AclRuleMapOutput
	ToAclRuleMapOutputWithContext(context.Context) AclRuleMapOutput
}

AclRuleMapInput is an input type that accepts AclRuleMap and AclRuleMapOutput values. You can construct a concrete instance of `AclRuleMapInput` via:

AclRuleMap{ "key": AclRuleArgs{...} }

type AclRuleMapOutput added in v2.35.1

type AclRuleMapOutput struct{ *pulumi.OutputState }

func (AclRuleMapOutput) ElementType added in v2.35.1

func (AclRuleMapOutput) ElementType() reflect.Type

func (AclRuleMapOutput) MapIndex added in v2.35.1

func (AclRuleMapOutput) ToAclRuleMapOutput added in v2.35.1

func (o AclRuleMapOutput) ToAclRuleMapOutput() AclRuleMapOutput

func (AclRuleMapOutput) ToAclRuleMapOutputWithContext added in v2.35.1

func (o AclRuleMapOutput) ToAclRuleMapOutputWithContext(ctx context.Context) AclRuleMapOutput

type AclRuleOutput added in v2.25.1

type AclRuleOutput struct {
	*pulumi.OutputState
}

func (AclRuleOutput) ElementType added in v2.25.1

func (AclRuleOutput) ElementType() reflect.Type

func (AclRuleOutput) ToAclRuleOutput added in v2.25.1

func (o AclRuleOutput) ToAclRuleOutput() AclRuleOutput

func (AclRuleOutput) ToAclRuleOutputWithContext added in v2.25.1

func (o AclRuleOutput) ToAclRuleOutputWithContext(ctx context.Context) AclRuleOutput

func (AclRuleOutput) ToAclRulePtrOutput added in v2.35.1

func (o AclRuleOutput) ToAclRulePtrOutput() AclRulePtrOutput

func (AclRuleOutput) ToAclRulePtrOutputWithContext added in v2.35.1

func (o AclRuleOutput) ToAclRulePtrOutputWithContext(ctx context.Context) AclRulePtrOutput

type AclRulePtrInput added in v2.35.1

type AclRulePtrInput interface {
	pulumi.Input

	ToAclRulePtrOutput() AclRulePtrOutput
	ToAclRulePtrOutputWithContext(ctx context.Context) AclRulePtrOutput
}

type AclRulePtrOutput added in v2.35.1

type AclRulePtrOutput struct {
	*pulumi.OutputState
}

func (AclRulePtrOutput) ElementType added in v2.35.1

func (AclRulePtrOutput) ElementType() reflect.Type

func (AclRulePtrOutput) ToAclRulePtrOutput added in v2.35.1

func (o AclRulePtrOutput) ToAclRulePtrOutput() AclRulePtrOutput

func (AclRulePtrOutput) ToAclRulePtrOutputWithContext added in v2.35.1

func (o AclRulePtrOutput) ToAclRulePtrOutputWithContext(ctx context.Context) AclRulePtrOutput

type AclRuleState

type AclRuleState struct {
	// The ID of the ACL.
	AclId pulumi.StringPtrInput
	// The description of the ACL rule. It must be 1 to 512 characters in length.
	Description pulumi.StringPtrInput
	// The destination address. It is an IPv4 address range in CIDR format. Default value: 0.0.0.0/0.
	DestCidr pulumi.StringPtrInput
	// The range of the destination port. Valid value: 80/80.
	DestPortRange pulumi.StringPtrInput
	// The direction of the ACL rule. Valid values: in|out.
	Direction pulumi.StringPtrInput
	// The protocol used by the ACL rule. The value is not case sensitive.
	IpProtocol pulumi.StringPtrInput
	// The policy used by the ACL rule. Valid values: accept|drop.
	Policy pulumi.StringPtrInput
	// The priority of the ACL rule. Value range: 1 to 100.
	Priority pulumi.IntPtrInput
	// The source address. It is an IPv4 address range in the CIDR format. Default value: 0.0.0.0/0.
	SourceCidr pulumi.StringPtrInput
	// The range of the source port. Valid value: 80/80.
	SourcePortRange pulumi.StringPtrInput
}

func (AclRuleState) ElementType

func (AclRuleState) ElementType() reflect.Type

type AclState

type AclState struct {
	// The name of the ACL instance. The name can contain 2 to 128 characters including a-z, A-Z, 0-9, periods, underlines, and hyphens. The name must start with an English letter, but cannot start with http:// or https://.
	Name pulumi.StringPtrInput
}

func (AclState) ElementType

func (AclState) ElementType() reflect.Type

type ClientUser

type ClientUser struct {
	pulumi.CustomResourceState

	// The SAG APP bandwidth that the user can use. Unit: Kbit/s. Maximum value: 2000 Kbit/s.
	Bandwidth pulumi.IntOutput `pulumi:"bandwidth"`
	// The IP address of the SAG APP. If you specify this parameter, the current account always uses the specified IP address.Note The IP address must be in the private CIDR block of the SAG client.If you do not specify this parameter, the system automatically allocates an IP address from the private CIDR block of the SAG client. In this case, each re-connection uses a different IP address.
	ClientIp             pulumi.StringPtrOutput `pulumi:"clientIp"`
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	KmsEncryptionContext pulumi.MapOutput       `pulumi:"kmsEncryptionContext"`
	// The password used to log on to the SAG APP.Both the user name and the password must be specified. If you specify the user name, the password must be specified, too.
	Password pulumi.StringOutput `pulumi:"password"`
	// The ID of the SAG instance created for the SAG APP.
	SagId pulumi.StringOutput `pulumi:"sagId"`
	// The email address of the user. The administrator uses this address to send the account information for logging on to the APP to the user.
	UserMail pulumi.StringOutput `pulumi:"userMail"`
	// The user name. User names in the same SAG APP must be unique.Both the user name and the password must be specified. If you specify the user name, the password must be specified, too.
	UserName pulumi.StringOutput `pulumi:"userName"`
}

Provides a Sag ClientUser resource. This topic describes how to manage accounts as an administrator. After you configure the network, you can create multiple accounts and distribute them to end users so that clients can access Alibaba Cloud.

For information about Sag ClientUser and how to use it, see [What is Sag ClientUser](https://www.alibabacloud.com/help/doc-detail/108326.htm).

> **NOTE:** Available in 1.65.0+

> **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rocketmq.NewClientUser(ctx, "_default", &rocketmq.ClientUserArgs{
			Bandwidth: pulumi.Int(20),
			ClientIp:  pulumi.String("192.1.10.0"),
			Password:  pulumi.String("xxxxxxx"),
			SagId:     pulumi.String("sag-xxxxx"),
			UserMail:  pulumi.String("tftest-xxxxx@test.com"),
			UserName:  pulumi.String("th-username-xxxxx"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag ClientUser can be imported using the name, e.g.

```sh

$ pulumi import alicloud:rocketmq/clientUser:ClientUser example sag-abc123456:tf-username-abc123456

```

func GetClientUser

func GetClientUser(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClientUserState, opts ...pulumi.ResourceOption) (*ClientUser, error)

GetClientUser gets an existing ClientUser 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 NewClientUser

func NewClientUser(ctx *pulumi.Context,
	name string, args *ClientUserArgs, opts ...pulumi.ResourceOption) (*ClientUser, error)

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

func (*ClientUser) ElementType added in v2.25.1

func (*ClientUser) ElementType() reflect.Type

func (*ClientUser) ToClientUserOutput added in v2.25.1

func (i *ClientUser) ToClientUserOutput() ClientUserOutput

func (*ClientUser) ToClientUserOutputWithContext added in v2.25.1

func (i *ClientUser) ToClientUserOutputWithContext(ctx context.Context) ClientUserOutput

func (*ClientUser) ToClientUserPtrOutput added in v2.35.1

func (i *ClientUser) ToClientUserPtrOutput() ClientUserPtrOutput

func (*ClientUser) ToClientUserPtrOutputWithContext added in v2.35.1

func (i *ClientUser) ToClientUserPtrOutputWithContext(ctx context.Context) ClientUserPtrOutput

type ClientUserArgs

type ClientUserArgs struct {
	// The SAG APP bandwidth that the user can use. Unit: Kbit/s. Maximum value: 2000 Kbit/s.
	Bandwidth pulumi.IntInput
	// The IP address of the SAG APP. If you specify this parameter, the current account always uses the specified IP address.Note The IP address must be in the private CIDR block of the SAG client.If you do not specify this parameter, the system automatically allocates an IP address from the private CIDR block of the SAG client. In this case, each re-connection uses a different IP address.
	ClientIp             pulumi.StringPtrInput
	KmsEncryptedPassword pulumi.StringPtrInput
	KmsEncryptionContext pulumi.MapInput
	// The password used to log on to the SAG APP.Both the user name and the password must be specified. If you specify the user name, the password must be specified, too.
	Password pulumi.StringPtrInput
	// The ID of the SAG instance created for the SAG APP.
	SagId pulumi.StringInput
	// The email address of the user. The administrator uses this address to send the account information for logging on to the APP to the user.
	UserMail pulumi.StringInput
	// The user name. User names in the same SAG APP must be unique.Both the user name and the password must be specified. If you specify the user name, the password must be specified, too.
	UserName pulumi.StringPtrInput
}

The set of arguments for constructing a ClientUser resource.

func (ClientUserArgs) ElementType

func (ClientUserArgs) ElementType() reflect.Type

type ClientUserArray added in v2.35.1

type ClientUserArray []ClientUserInput

func (ClientUserArray) ElementType added in v2.35.1

func (ClientUserArray) ElementType() reflect.Type

func (ClientUserArray) ToClientUserArrayOutput added in v2.35.1

func (i ClientUserArray) ToClientUserArrayOutput() ClientUserArrayOutput

func (ClientUserArray) ToClientUserArrayOutputWithContext added in v2.35.1

func (i ClientUserArray) ToClientUserArrayOutputWithContext(ctx context.Context) ClientUserArrayOutput

type ClientUserArrayInput added in v2.35.1

type ClientUserArrayInput interface {
	pulumi.Input

	ToClientUserArrayOutput() ClientUserArrayOutput
	ToClientUserArrayOutputWithContext(context.Context) ClientUserArrayOutput
}

ClientUserArrayInput is an input type that accepts ClientUserArray and ClientUserArrayOutput values. You can construct a concrete instance of `ClientUserArrayInput` via:

ClientUserArray{ ClientUserArgs{...} }

type ClientUserArrayOutput added in v2.35.1

type ClientUserArrayOutput struct{ *pulumi.OutputState }

func (ClientUserArrayOutput) ElementType added in v2.35.1

func (ClientUserArrayOutput) ElementType() reflect.Type

func (ClientUserArrayOutput) Index added in v2.35.1

func (ClientUserArrayOutput) ToClientUserArrayOutput added in v2.35.1

func (o ClientUserArrayOutput) ToClientUserArrayOutput() ClientUserArrayOutput

func (ClientUserArrayOutput) ToClientUserArrayOutputWithContext added in v2.35.1

func (o ClientUserArrayOutput) ToClientUserArrayOutputWithContext(ctx context.Context) ClientUserArrayOutput

type ClientUserInput added in v2.25.1

type ClientUserInput interface {
	pulumi.Input

	ToClientUserOutput() ClientUserOutput
	ToClientUserOutputWithContext(ctx context.Context) ClientUserOutput
}

type ClientUserMap added in v2.35.1

type ClientUserMap map[string]ClientUserInput

func (ClientUserMap) ElementType added in v2.35.1

func (ClientUserMap) ElementType() reflect.Type

func (ClientUserMap) ToClientUserMapOutput added in v2.35.1

func (i ClientUserMap) ToClientUserMapOutput() ClientUserMapOutput

func (ClientUserMap) ToClientUserMapOutputWithContext added in v2.35.1

func (i ClientUserMap) ToClientUserMapOutputWithContext(ctx context.Context) ClientUserMapOutput

type ClientUserMapInput added in v2.35.1

type ClientUserMapInput interface {
	pulumi.Input

	ToClientUserMapOutput() ClientUserMapOutput
	ToClientUserMapOutputWithContext(context.Context) ClientUserMapOutput
}

ClientUserMapInput is an input type that accepts ClientUserMap and ClientUserMapOutput values. You can construct a concrete instance of `ClientUserMapInput` via:

ClientUserMap{ "key": ClientUserArgs{...} }

type ClientUserMapOutput added in v2.35.1

type ClientUserMapOutput struct{ *pulumi.OutputState }

func (ClientUserMapOutput) ElementType added in v2.35.1

func (ClientUserMapOutput) ElementType() reflect.Type

func (ClientUserMapOutput) MapIndex added in v2.35.1

func (ClientUserMapOutput) ToClientUserMapOutput added in v2.35.1

func (o ClientUserMapOutput) ToClientUserMapOutput() ClientUserMapOutput

func (ClientUserMapOutput) ToClientUserMapOutputWithContext added in v2.35.1

func (o ClientUserMapOutput) ToClientUserMapOutputWithContext(ctx context.Context) ClientUserMapOutput

type ClientUserOutput added in v2.25.1

type ClientUserOutput struct {
	*pulumi.OutputState
}

func (ClientUserOutput) ElementType added in v2.25.1

func (ClientUserOutput) ElementType() reflect.Type

func (ClientUserOutput) ToClientUserOutput added in v2.25.1

func (o ClientUserOutput) ToClientUserOutput() ClientUserOutput

func (ClientUserOutput) ToClientUserOutputWithContext added in v2.25.1

func (o ClientUserOutput) ToClientUserOutputWithContext(ctx context.Context) ClientUserOutput

func (ClientUserOutput) ToClientUserPtrOutput added in v2.35.1

func (o ClientUserOutput) ToClientUserPtrOutput() ClientUserPtrOutput

func (ClientUserOutput) ToClientUserPtrOutputWithContext added in v2.35.1

func (o ClientUserOutput) ToClientUserPtrOutputWithContext(ctx context.Context) ClientUserPtrOutput

type ClientUserPtrInput added in v2.35.1

type ClientUserPtrInput interface {
	pulumi.Input

	ToClientUserPtrOutput() ClientUserPtrOutput
	ToClientUserPtrOutputWithContext(ctx context.Context) ClientUserPtrOutput
}

type ClientUserPtrOutput added in v2.35.1

type ClientUserPtrOutput struct {
	*pulumi.OutputState
}

func (ClientUserPtrOutput) ElementType added in v2.35.1

func (ClientUserPtrOutput) ElementType() reflect.Type

func (ClientUserPtrOutput) ToClientUserPtrOutput added in v2.35.1

func (o ClientUserPtrOutput) ToClientUserPtrOutput() ClientUserPtrOutput

func (ClientUserPtrOutput) ToClientUserPtrOutputWithContext added in v2.35.1

func (o ClientUserPtrOutput) ToClientUserPtrOutputWithContext(ctx context.Context) ClientUserPtrOutput

type ClientUserState

type ClientUserState struct {
	// The SAG APP bandwidth that the user can use. Unit: Kbit/s. Maximum value: 2000 Kbit/s.
	Bandwidth pulumi.IntPtrInput
	// The IP address of the SAG APP. If you specify this parameter, the current account always uses the specified IP address.Note The IP address must be in the private CIDR block of the SAG client.If you do not specify this parameter, the system automatically allocates an IP address from the private CIDR block of the SAG client. In this case, each re-connection uses a different IP address.
	ClientIp             pulumi.StringPtrInput
	KmsEncryptedPassword pulumi.StringPtrInput
	KmsEncryptionContext pulumi.MapInput
	// The password used to log on to the SAG APP.Both the user name and the password must be specified. If you specify the user name, the password must be specified, too.
	Password pulumi.StringPtrInput
	// The ID of the SAG instance created for the SAG APP.
	SagId pulumi.StringPtrInput
	// The email address of the user. The administrator uses this address to send the account information for logging on to the APP to the user.
	UserMail pulumi.StringPtrInput
	// The user name. User names in the same SAG APP must be unique.Both the user name and the password must be specified. If you specify the user name, the password must be specified, too.
	UserName pulumi.StringPtrInput
}

func (ClientUserState) ElementType

func (ClientUserState) ElementType() reflect.Type

type DnatEntry

type DnatEntry struct {
	pulumi.CustomResourceState

	// The external public IP address.when "type" is "Internet",automatically identify the external ip.
	ExternalIp pulumi.StringPtrOutput `pulumi:"externalIp"`
	// The public port.Value range: 1 to 65535 or "any".
	ExternalPort pulumi.StringOutput `pulumi:"externalPort"`
	// The destination private IP address.
	InternalIp pulumi.StringOutput `pulumi:"internalIp"`
	// The destination private port.Value range: 1 to 65535 or "any".
	InternalPort pulumi.StringOutput `pulumi:"internalPort"`
	// The protocol type. Valid values: TCP: Forwards packets of the TCP protocol. UDP: Forwards packets of the UDP protocol. Any: Forwards packets of all protocols.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The ID of the SAG instance.
	SagId pulumi.StringOutput `pulumi:"sagId"`
	// The DNAT type. Valid values: Intranet: DNAT of private IP addresses. Internet: DNAT of public IP addresses
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a Sag DnatEntry resource. This topic describes how to add a DNAT entry to a Smart Access Gateway (SAG) instance to enable the DNAT function. By using the DNAT function, you can forward requests received by public IP addresses to Alibaba Cloud instances according to custom mapping rules.

For information about Sag DnatEntry and how to use it, see [What is Sag DnatEntry](https://www.alibabacloud.com/help/doc-detail/124312.htm).

> **NOTE:** Available in 1.63.0+

> **NOTE:** Only the following regions suppor. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rocketmq.NewDnatEntry(ctx, "_default", &rocketmq.DnatEntryArgs{
			ExternalIp:   pulumi.String("1.0.0.2"),
			ExternalPort: pulumi.String("1"),
			InternalIp:   pulumi.String("10.0.0.2"),
			InternalPort: pulumi.String("20"),
			IpProtocol:   pulumi.String("tcp"),
			SagId:        pulumi.String("sag-3rb1t3iagy3w0zgwy9"),
			Type:         pulumi.String("Intranet"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag DnatEntry can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/dnatEntry:DnatEntry example sag-abc123456:dnat-abc123456

```

func GetDnatEntry

func GetDnatEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DnatEntryState, opts ...pulumi.ResourceOption) (*DnatEntry, error)

GetDnatEntry gets an existing DnatEntry 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 NewDnatEntry

func NewDnatEntry(ctx *pulumi.Context,
	name string, args *DnatEntryArgs, opts ...pulumi.ResourceOption) (*DnatEntry, error)

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

func (*DnatEntry) ElementType added in v2.25.1

func (*DnatEntry) ElementType() reflect.Type

func (*DnatEntry) ToDnatEntryOutput added in v2.25.1

func (i *DnatEntry) ToDnatEntryOutput() DnatEntryOutput

func (*DnatEntry) ToDnatEntryOutputWithContext added in v2.25.1

func (i *DnatEntry) ToDnatEntryOutputWithContext(ctx context.Context) DnatEntryOutput

func (*DnatEntry) ToDnatEntryPtrOutput added in v2.35.1

func (i *DnatEntry) ToDnatEntryPtrOutput() DnatEntryPtrOutput

func (*DnatEntry) ToDnatEntryPtrOutputWithContext added in v2.35.1

func (i *DnatEntry) ToDnatEntryPtrOutputWithContext(ctx context.Context) DnatEntryPtrOutput

type DnatEntryArgs

type DnatEntryArgs struct {
	// The external public IP address.when "type" is "Internet",automatically identify the external ip.
	ExternalIp pulumi.StringPtrInput
	// The public port.Value range: 1 to 65535 or "any".
	ExternalPort pulumi.StringInput
	// The destination private IP address.
	InternalIp pulumi.StringInput
	// The destination private port.Value range: 1 to 65535 or "any".
	InternalPort pulumi.StringInput
	// The protocol type. Valid values: TCP: Forwards packets of the TCP protocol. UDP: Forwards packets of the UDP protocol. Any: Forwards packets of all protocols.
	IpProtocol pulumi.StringInput
	// The ID of the SAG instance.
	SagId pulumi.StringInput
	// The DNAT type. Valid values: Intranet: DNAT of private IP addresses. Internet: DNAT of public IP addresses
	Type pulumi.StringInput
}

The set of arguments for constructing a DnatEntry resource.

func (DnatEntryArgs) ElementType

func (DnatEntryArgs) ElementType() reflect.Type

type DnatEntryArray added in v2.35.1

type DnatEntryArray []DnatEntryInput

func (DnatEntryArray) ElementType added in v2.35.1

func (DnatEntryArray) ElementType() reflect.Type

func (DnatEntryArray) ToDnatEntryArrayOutput added in v2.35.1

func (i DnatEntryArray) ToDnatEntryArrayOutput() DnatEntryArrayOutput

func (DnatEntryArray) ToDnatEntryArrayOutputWithContext added in v2.35.1

func (i DnatEntryArray) ToDnatEntryArrayOutputWithContext(ctx context.Context) DnatEntryArrayOutput

type DnatEntryArrayInput added in v2.35.1

type DnatEntryArrayInput interface {
	pulumi.Input

	ToDnatEntryArrayOutput() DnatEntryArrayOutput
	ToDnatEntryArrayOutputWithContext(context.Context) DnatEntryArrayOutput
}

DnatEntryArrayInput is an input type that accepts DnatEntryArray and DnatEntryArrayOutput values. You can construct a concrete instance of `DnatEntryArrayInput` via:

DnatEntryArray{ DnatEntryArgs{...} }

type DnatEntryArrayOutput added in v2.35.1

type DnatEntryArrayOutput struct{ *pulumi.OutputState }

func (DnatEntryArrayOutput) ElementType added in v2.35.1

func (DnatEntryArrayOutput) ElementType() reflect.Type

func (DnatEntryArrayOutput) Index added in v2.35.1

func (DnatEntryArrayOutput) ToDnatEntryArrayOutput added in v2.35.1

func (o DnatEntryArrayOutput) ToDnatEntryArrayOutput() DnatEntryArrayOutput

func (DnatEntryArrayOutput) ToDnatEntryArrayOutputWithContext added in v2.35.1

func (o DnatEntryArrayOutput) ToDnatEntryArrayOutputWithContext(ctx context.Context) DnatEntryArrayOutput

type DnatEntryInput added in v2.25.1

type DnatEntryInput interface {
	pulumi.Input

	ToDnatEntryOutput() DnatEntryOutput
	ToDnatEntryOutputWithContext(ctx context.Context) DnatEntryOutput
}

type DnatEntryMap added in v2.35.1

type DnatEntryMap map[string]DnatEntryInput

func (DnatEntryMap) ElementType added in v2.35.1

func (DnatEntryMap) ElementType() reflect.Type

func (DnatEntryMap) ToDnatEntryMapOutput added in v2.35.1

func (i DnatEntryMap) ToDnatEntryMapOutput() DnatEntryMapOutput

func (DnatEntryMap) ToDnatEntryMapOutputWithContext added in v2.35.1

func (i DnatEntryMap) ToDnatEntryMapOutputWithContext(ctx context.Context) DnatEntryMapOutput

type DnatEntryMapInput added in v2.35.1

type DnatEntryMapInput interface {
	pulumi.Input

	ToDnatEntryMapOutput() DnatEntryMapOutput
	ToDnatEntryMapOutputWithContext(context.Context) DnatEntryMapOutput
}

DnatEntryMapInput is an input type that accepts DnatEntryMap and DnatEntryMapOutput values. You can construct a concrete instance of `DnatEntryMapInput` via:

DnatEntryMap{ "key": DnatEntryArgs{...} }

type DnatEntryMapOutput added in v2.35.1

type DnatEntryMapOutput struct{ *pulumi.OutputState }

func (DnatEntryMapOutput) ElementType added in v2.35.1

func (DnatEntryMapOutput) ElementType() reflect.Type

func (DnatEntryMapOutput) MapIndex added in v2.35.1

func (DnatEntryMapOutput) ToDnatEntryMapOutput added in v2.35.1

func (o DnatEntryMapOutput) ToDnatEntryMapOutput() DnatEntryMapOutput

func (DnatEntryMapOutput) ToDnatEntryMapOutputWithContext added in v2.35.1

func (o DnatEntryMapOutput) ToDnatEntryMapOutputWithContext(ctx context.Context) DnatEntryMapOutput

type DnatEntryOutput added in v2.25.1

type DnatEntryOutput struct {
	*pulumi.OutputState
}

func (DnatEntryOutput) ElementType added in v2.25.1

func (DnatEntryOutput) ElementType() reflect.Type

func (DnatEntryOutput) ToDnatEntryOutput added in v2.25.1

func (o DnatEntryOutput) ToDnatEntryOutput() DnatEntryOutput

func (DnatEntryOutput) ToDnatEntryOutputWithContext added in v2.25.1

func (o DnatEntryOutput) ToDnatEntryOutputWithContext(ctx context.Context) DnatEntryOutput

func (DnatEntryOutput) ToDnatEntryPtrOutput added in v2.35.1

func (o DnatEntryOutput) ToDnatEntryPtrOutput() DnatEntryPtrOutput

func (DnatEntryOutput) ToDnatEntryPtrOutputWithContext added in v2.35.1

func (o DnatEntryOutput) ToDnatEntryPtrOutputWithContext(ctx context.Context) DnatEntryPtrOutput

type DnatEntryPtrInput added in v2.35.1

type DnatEntryPtrInput interface {
	pulumi.Input

	ToDnatEntryPtrOutput() DnatEntryPtrOutput
	ToDnatEntryPtrOutputWithContext(ctx context.Context) DnatEntryPtrOutput
}

type DnatEntryPtrOutput added in v2.35.1

type DnatEntryPtrOutput struct {
	*pulumi.OutputState
}

func (DnatEntryPtrOutput) ElementType added in v2.35.1

func (DnatEntryPtrOutput) ElementType() reflect.Type

func (DnatEntryPtrOutput) ToDnatEntryPtrOutput added in v2.35.1

func (o DnatEntryPtrOutput) ToDnatEntryPtrOutput() DnatEntryPtrOutput

func (DnatEntryPtrOutput) ToDnatEntryPtrOutputWithContext added in v2.35.1

func (o DnatEntryPtrOutput) ToDnatEntryPtrOutputWithContext(ctx context.Context) DnatEntryPtrOutput

type DnatEntryState

type DnatEntryState struct {
	// The external public IP address.when "type" is "Internet",automatically identify the external ip.
	ExternalIp pulumi.StringPtrInput
	// The public port.Value range: 1 to 65535 or "any".
	ExternalPort pulumi.StringPtrInput
	// The destination private IP address.
	InternalIp pulumi.StringPtrInput
	// The destination private port.Value range: 1 to 65535 or "any".
	InternalPort pulumi.StringPtrInput
	// The protocol type. Valid values: TCP: Forwards packets of the TCP protocol. UDP: Forwards packets of the UDP protocol. Any: Forwards packets of all protocols.
	IpProtocol pulumi.StringPtrInput
	// The ID of the SAG instance.
	SagId pulumi.StringPtrInput
	// The DNAT type. Valid values: Intranet: DNAT of private IP addresses. Internet: DNAT of public IP addresses
	Type pulumi.StringPtrInput
}

func (DnatEntryState) ElementType

func (DnatEntryState) ElementType() reflect.Type

type GetGroupsArgs

type GetGroupsArgs struct {
	// A regex string to filter results by the group name.
	GroupIdRegex *string `pulumi:"groupIdRegex"`
	// Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.
	GroupType *string `pulumi:"groupType"`
	// A list of group names.
	Ids []string `pulumi:"ids"`
	// ID of the ONS Instance that owns the groups.
	InstanceId string  `pulumi:"instanceId"`
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getGroups.

type GetGroupsGroup

type GetGroupsGroup struct {
	// The name of the group.
	GroupName string `pulumi:"groupName"`
	// Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.
	GroupType string `pulumi:"groupType"`
	// The name of the group.
	Id string `pulumi:"id"`
	// Indicates whether namespaces are available. Read [Fields in SubscribeInfoDo](https://www.alibabacloud.com/help/doc-detail/29619.html) for further details.
	IndependentNaming bool `pulumi:"independentNaming"`
	// ID of the ONS Instance that owns the groups.
	InstanceId string `pulumi:"instanceId"`
	// The ID of the group owner, which is the Alibaba Cloud UID.
	Owner string `pulumi:"owner"`
	// Remark of the group.
	Remark string `pulumi:"remark"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetGroupsGroupArgs

type GetGroupsGroupArgs struct {
	// The name of the group.
	GroupName pulumi.StringInput `pulumi:"groupName"`
	// Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.
	GroupType pulumi.StringInput `pulumi:"groupType"`
	// The name of the group.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicates whether namespaces are available. Read [Fields in SubscribeInfoDo](https://www.alibabacloud.com/help/doc-detail/29619.html) for further details.
	IndependentNaming pulumi.BoolInput `pulumi:"independentNaming"`
	// ID of the ONS Instance that owns the groups.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The ID of the group owner, which is the Alibaba Cloud UID.
	Owner pulumi.StringInput `pulumi:"owner"`
	// Remark of the group.
	Remark pulumi.StringInput `pulumi:"remark"`
	// A map of tags assigned to the Ons instance.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetGroupsGroupArgs) ElementType

func (GetGroupsGroupArgs) ElementType() reflect.Type

func (GetGroupsGroupArgs) ToGetGroupsGroupOutput

func (i GetGroupsGroupArgs) ToGetGroupsGroupOutput() GetGroupsGroupOutput

func (GetGroupsGroupArgs) ToGetGroupsGroupOutputWithContext

func (i GetGroupsGroupArgs) ToGetGroupsGroupOutputWithContext(ctx context.Context) GetGroupsGroupOutput

type GetGroupsGroupArray

type GetGroupsGroupArray []GetGroupsGroupInput

func (GetGroupsGroupArray) ElementType

func (GetGroupsGroupArray) ElementType() reflect.Type

func (GetGroupsGroupArray) ToGetGroupsGroupArrayOutput

func (i GetGroupsGroupArray) ToGetGroupsGroupArrayOutput() GetGroupsGroupArrayOutput

func (GetGroupsGroupArray) ToGetGroupsGroupArrayOutputWithContext

func (i GetGroupsGroupArray) ToGetGroupsGroupArrayOutputWithContext(ctx context.Context) GetGroupsGroupArrayOutput

type GetGroupsGroupArrayInput

type GetGroupsGroupArrayInput interface {
	pulumi.Input

	ToGetGroupsGroupArrayOutput() GetGroupsGroupArrayOutput
	ToGetGroupsGroupArrayOutputWithContext(context.Context) GetGroupsGroupArrayOutput
}

GetGroupsGroupArrayInput is an input type that accepts GetGroupsGroupArray and GetGroupsGroupArrayOutput values. You can construct a concrete instance of `GetGroupsGroupArrayInput` via:

GetGroupsGroupArray{ GetGroupsGroupArgs{...} }

type GetGroupsGroupArrayOutput

type GetGroupsGroupArrayOutput struct{ *pulumi.OutputState }

func (GetGroupsGroupArrayOutput) ElementType

func (GetGroupsGroupArrayOutput) ElementType() reflect.Type

func (GetGroupsGroupArrayOutput) Index

func (GetGroupsGroupArrayOutput) ToGetGroupsGroupArrayOutput

func (o GetGroupsGroupArrayOutput) ToGetGroupsGroupArrayOutput() GetGroupsGroupArrayOutput

func (GetGroupsGroupArrayOutput) ToGetGroupsGroupArrayOutputWithContext

func (o GetGroupsGroupArrayOutput) ToGetGroupsGroupArrayOutputWithContext(ctx context.Context) GetGroupsGroupArrayOutput

type GetGroupsGroupInput

type GetGroupsGroupInput interface {
	pulumi.Input

	ToGetGroupsGroupOutput() GetGroupsGroupOutput
	ToGetGroupsGroupOutputWithContext(context.Context) GetGroupsGroupOutput
}

GetGroupsGroupInput is an input type that accepts GetGroupsGroupArgs and GetGroupsGroupOutput values. You can construct a concrete instance of `GetGroupsGroupInput` via:

GetGroupsGroupArgs{...}

type GetGroupsGroupOutput

type GetGroupsGroupOutput struct{ *pulumi.OutputState }

func (GetGroupsGroupOutput) ElementType

func (GetGroupsGroupOutput) ElementType() reflect.Type

func (GetGroupsGroupOutput) GroupName added in v2.19.0

The name of the group.

func (GetGroupsGroupOutput) GroupType added in v2.19.0

Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.

func (GetGroupsGroupOutput) Id

The name of the group.

func (GetGroupsGroupOutput) IndependentNaming

func (o GetGroupsGroupOutput) IndependentNaming() pulumi.BoolOutput

Indicates whether namespaces are available. Read [Fields in SubscribeInfoDo](https://www.alibabacloud.com/help/doc-detail/29619.html) for further details.

func (GetGroupsGroupOutput) InstanceId added in v2.19.0

func (o GetGroupsGroupOutput) InstanceId() pulumi.StringOutput

ID of the ONS Instance that owns the groups.

func (GetGroupsGroupOutput) Owner

The ID of the group owner, which is the Alibaba Cloud UID.

func (GetGroupsGroupOutput) Remark

Remark of the group.

func (GetGroupsGroupOutput) Tags added in v2.19.0

A map of tags assigned to the Ons instance.

func (GetGroupsGroupOutput) ToGetGroupsGroupOutput

func (o GetGroupsGroupOutput) ToGetGroupsGroupOutput() GetGroupsGroupOutput

func (GetGroupsGroupOutput) ToGetGroupsGroupOutputWithContext

func (o GetGroupsGroupOutput) ToGetGroupsGroupOutputWithContext(ctx context.Context) GetGroupsGroupOutput

type GetGroupsResult

type GetGroupsResult struct {
	GroupIdRegex *string `pulumi:"groupIdRegex"`
	// Specify the protocol applicable to the created Group ID.
	GroupType *string `pulumi:"groupType"`
	// A list of groups. Each element contains the following attributes:
	Groups []GetGroupsGroup `pulumi:"groups"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of group names.
	Ids        []string `pulumi:"ids"`
	InstanceId string   `pulumi:"instanceId"`
	NameRegex  *string  `pulumi:"nameRegex"`
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// A map of tags assigned to the Ons group.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getGroups.

func GetGroups

func GetGroups(ctx *pulumi.Context, args *GetGroupsArgs, opts ...pulumi.InvokeOption) (*GetGroupsResult, error)

This data source provides a list of ONS Groups in an Alibaba Cloud account according to the specified filters.

> **NOTE:** Available in 1.53.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/rocketmq"
"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 := "onsInstanceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		groupName := "GID-onsGroupDatasourceName"
		if param := cfg.Get("groupName"); param != "" {
			groupName = param
		}
		defaultInstance, err := rocketmq.NewInstance(ctx, "defaultInstance", &rocketmq.InstanceArgs{
			InstanceName: pulumi.String(name),
			Remark:       pulumi.String("default_ons_instance_remark"),
		})
		if err != nil {
			return err
		}
		defaultGroup, err := rocketmq.NewGroup(ctx, "defaultGroup", &rocketmq.GroupArgs{
			GroupName:  pulumi.String(groupName),
			InstanceId: defaultInstance.ID(),
			Remark:     pulumi.String("dafault_ons_group_remark"),
		})
		if err != nil {
			return err
		}
		ctx.Export("firstGroupName", groupsDs.ApplyT(func(groupsDs rocketmq.GetGroupsResult) (string, error) {
			return groupsDs.Groups[0].GroupName, nil
		}).(pulumi.StringOutput))
		return nil
	})
}

```

type GetInstancesArgs

type GetInstancesArgs struct {
	// Default to `false`. Set it to true can output more details.
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of instance IDs to filter results.
	Ids []string `pulumi:"ids"`
	// A regex string to filter results by the instance name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// The status of Ons instance. Valid values: `0` deploying, `2` arrears, `5` running, `7` upgrading.
	Status *int `pulumi:"status"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getInstances.

type GetInstancesInstance

type GetInstancesInstance struct {
	// The internal HTTP endpoint for the Message Queue for Apache RocketMQ instance.
	HttpInternalEndpoint string `pulumi:"httpInternalEndpoint"`
	// The public HTTP endpoint for the Message Queue for Apache RocketMQ instance.
	HttpInternetEndpoint string `pulumi:"httpInternetEndpoint"`
	// The public HTTPS endpoint for the Message Queue for Apache RocketMQ instance.
	HttpInternetSecureEndpoint string `pulumi:"httpInternetSecureEndpoint"`
	// ID of the instance.
	Id string `pulumi:"id"`
	// Indicates whether any namespace is configured for the Message Queue for Apache RocketMQ instance.
	IndependentNaming bool `pulumi:"independentNaming"`
	// ID of the instance.
	InstanceId string `pulumi:"instanceId"`
	// Name of the instance.
	InstanceName string `pulumi:"instanceName"`
	// The status of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.
	InstanceStatus int `pulumi:"instanceStatus"`
	// The type of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.
	InstanceType int `pulumi:"instanceType"`
	// The automatic release time of an Enterprise Platinum Edition instance.
	ReleaseTime string `pulumi:"releaseTime"`
	// This attribute is a concise description of instance.
	Remark string `pulumi:"remark"`
	// The status of Ons instance. Valid values: `0` deploying, `2` arrears, `5` running, `7` upgrading.
	Status int `pulumi:"status"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
	// The TCP endpoint for the Message Queue for Apache RocketMQ instance.
	TcpEndpoint string `pulumi:"tcpEndpoint"`
}

type GetInstancesInstanceArgs

type GetInstancesInstanceArgs struct {
	// The internal HTTP endpoint for the Message Queue for Apache RocketMQ instance.
	HttpInternalEndpoint pulumi.StringInput `pulumi:"httpInternalEndpoint"`
	// The public HTTP endpoint for the Message Queue for Apache RocketMQ instance.
	HttpInternetEndpoint pulumi.StringInput `pulumi:"httpInternetEndpoint"`
	// The public HTTPS endpoint for the Message Queue for Apache RocketMQ instance.
	HttpInternetSecureEndpoint pulumi.StringInput `pulumi:"httpInternetSecureEndpoint"`
	// ID of the instance.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicates whether any namespace is configured for the Message Queue for Apache RocketMQ instance.
	IndependentNaming pulumi.BoolInput `pulumi:"independentNaming"`
	// ID of the instance.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// Name of the instance.
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// The status of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.
	InstanceStatus pulumi.IntInput `pulumi:"instanceStatus"`
	// The type of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.
	InstanceType pulumi.IntInput `pulumi:"instanceType"`
	// The automatic release time of an Enterprise Platinum Edition instance.
	ReleaseTime pulumi.StringInput `pulumi:"releaseTime"`
	// This attribute is a concise description of instance.
	Remark pulumi.StringInput `pulumi:"remark"`
	// The status of Ons instance. Valid values: `0` deploying, `2` arrears, `5` running, `7` upgrading.
	Status pulumi.IntInput `pulumi:"status"`
	// A map of tags assigned to the Ons instance.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The TCP endpoint for the Message Queue for Apache RocketMQ instance.
	TcpEndpoint pulumi.StringInput `pulumi:"tcpEndpoint"`
}

func (GetInstancesInstanceArgs) ElementType

func (GetInstancesInstanceArgs) ElementType() reflect.Type

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutput

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceArray

type GetInstancesInstanceArray []GetInstancesInstanceInput

func (GetInstancesInstanceArray) ElementType

func (GetInstancesInstanceArray) ElementType() reflect.Type

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayInput

type GetInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
	ToGetInstancesInstanceArrayOutputWithContext(context.Context) GetInstancesInstanceArrayOutput
}

GetInstancesInstanceArrayInput is an input type that accepts GetInstancesInstanceArray and GetInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceArrayInput` via:

GetInstancesInstanceArray{ GetInstancesInstanceArgs{...} }

type GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceArrayOutput) ElementType

func (GetInstancesInstanceArrayOutput) Index

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceInput

type GetInstancesInstanceInput interface {
	pulumi.Input

	ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
	ToGetInstancesInstanceOutputWithContext(context.Context) GetInstancesInstanceOutput
}

GetInstancesInstanceInput is an input type that accepts GetInstancesInstanceArgs and GetInstancesInstanceOutput values. You can construct a concrete instance of `GetInstancesInstanceInput` via:

GetInstancesInstanceArgs{...}

type GetInstancesInstanceOutput

type GetInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) HttpInternalEndpoint added in v2.18.0

func (o GetInstancesInstanceOutput) HttpInternalEndpoint() pulumi.StringOutput

The internal HTTP endpoint for the Message Queue for Apache RocketMQ instance.

func (GetInstancesInstanceOutput) HttpInternetEndpoint added in v2.18.0

func (o GetInstancesInstanceOutput) HttpInternetEndpoint() pulumi.StringOutput

The public HTTP endpoint for the Message Queue for Apache RocketMQ instance.

func (GetInstancesInstanceOutput) HttpInternetSecureEndpoint added in v2.18.0

func (o GetInstancesInstanceOutput) HttpInternetSecureEndpoint() pulumi.StringOutput

The public HTTPS endpoint for the Message Queue for Apache RocketMQ instance.

func (GetInstancesInstanceOutput) Id

ID of the instance.

func (GetInstancesInstanceOutput) IndependentNaming added in v2.18.0

func (o GetInstancesInstanceOutput) IndependentNaming() pulumi.BoolOutput

Indicates whether any namespace is configured for the Message Queue for Apache RocketMQ instance.

func (GetInstancesInstanceOutput) InstanceId

ID of the instance.

func (GetInstancesInstanceOutput) InstanceName

Name of the instance.

func (GetInstancesInstanceOutput) InstanceStatus

func (o GetInstancesInstanceOutput) InstanceStatus() pulumi.IntOutput

The status of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.

func (GetInstancesInstanceOutput) InstanceType

func (o GetInstancesInstanceOutput) InstanceType() pulumi.IntOutput

The type of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.

func (GetInstancesInstanceOutput) ReleaseTime

The automatic release time of an Enterprise Platinum Edition instance.

func (GetInstancesInstanceOutput) Remark added in v2.18.0

This attribute is a concise description of instance.

func (GetInstancesInstanceOutput) Status added in v2.18.0

The status of Ons instance. Valid values: `0` deploying, `2` arrears, `5` running, `7` upgrading.

func (GetInstancesInstanceOutput) Tags added in v2.18.0

A map of tags assigned to the Ons instance.

func (GetInstancesInstanceOutput) TcpEndpoint added in v2.18.0

The TCP endpoint for the Message Queue for Apache RocketMQ instance.

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesResult

type GetInstancesResult struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of instance IDs.
	Ids []string `pulumi:"ids"`
	// A list of instances. Each element contains the following attributes:
	Instances []GetInstancesInstance `pulumi:"instances"`
	NameRegex *string                `pulumi:"nameRegex"`
	// A list of instance names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// The status of the instance. Read [Fields in InstanceVO](https://www.alibabacloud.com/help/doc-detail/106351.html) for further details.
	Status *int `pulumi:"status"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

This data source provides a list of ONS Instances in an Alibaba Cloud account according to the specified filters.

> **NOTE:** Available in 1.52.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/rocketmq"
"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 := "onsInstanceDatasourceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := rocketmq.NewInstance(ctx, "_default", &rocketmq.InstanceArgs{
			Remark: pulumi.String("default_ons_instance_remark"),
		})
		if err != nil {
			return err
		}
		ctx.Export("firstInstanceId", instancesDs.ApplyT(func(instancesDs rocketmq.GetInstancesResult) (string, error) {
			return instancesDs.Instances[0].InstanceId, nil
		}).(pulumi.StringOutput))
		return nil
	})
}

```

type GetServiceArgs added in v2.30.0

type GetServiceArgs struct {
	// Setting the value to `On` to enable the service. If has been enabled, return the result. Valid values: `On` or `Off`. Default to `Off`.
	Enable *string `pulumi:"enable"`
}

A collection of arguments for invoking getService.

type GetServiceResult added in v2.30.0

type GetServiceResult struct {
	Enable *string `pulumi:"enable"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The current service enable status.
	Status string `pulumi:"status"`
}

A collection of values returned by getService.

func GetService added in v2.30.0

func GetService(ctx *pulumi.Context, args *GetServiceArgs, opts ...pulumi.InvokeOption) (*GetServiceResult, error)

Using this data source can open ONS service automatically. If the service has been opened, it will return opened.

For information about ONS and how to use it, see [What is ONS](https://help.aliyun.com/product/29530.html).

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "On"
		_, err := rocketmq.GetService(ctx, &rocketmq.GetServiceArgs{
			Enable: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetTopicsArgs

type GetTopicsArgs struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of topic IDs to filter results.
	Ids []string `pulumi:"ids"`
	// ID of the ONS Instance that owns the topics.
	InstanceId string `pulumi:"instanceId"`
	// A regex string to filter results by the topic name.
	NameRegex  *string `pulumi:"nameRegex"`
	OutputFile *string `pulumi:"outputFile"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getTopics.

type GetTopicsResult

type GetTopicsResult struct {
	EnableDetails *bool `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id         string   `pulumi:"id"`
	Ids        []string `pulumi:"ids"`
	InstanceId string   `pulumi:"instanceId"`
	NameRegex  *string  `pulumi:"nameRegex"`
	// A list of topic names.
	Names      []string `pulumi:"names"`
	OutputFile *string  `pulumi:"outputFile"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
	// A list of topics. Each element contains the following attributes:
	Topics []GetTopicsTopic `pulumi:"topics"`
}

A collection of values returned by getTopics.

func GetTopics

func GetTopics(ctx *pulumi.Context, args *GetTopicsArgs, opts ...pulumi.InvokeOption) (*GetTopicsResult, error)

This data source provides a list of ONS Topics in an Alibaba Cloud account according to the specified filters.

> **NOTE:** Available in 1.53.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/rocketmq"
"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 := "onsInstanceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		topic := "onsTopicDatasourceName"
		if param := cfg.Get("topic"); param != "" {
			topic = param
		}
		defaultInstance, err := rocketmq.NewInstance(ctx, "defaultInstance", &rocketmq.InstanceArgs{
			InstanceName: pulumi.String(name),
			Remark:       pulumi.String("default_ons_instance_remark"),
		})
		if err != nil {
			return err
		}
		defaultTopic, err := rocketmq.NewTopic(ctx, "defaultTopic", &rocketmq.TopicArgs{
			TopicName:   pulumi.String(topic),
			InstanceId:  defaultInstance.ID(),
			MessageType: pulumi.Int(0),
			Remark:      pulumi.String("dafault_ons_topic_remark"),
		})
		if err != nil {
			return err
		}
		ctx.Export("firstTopicName", topicsDs.ApplyT(func(topicsDs rocketmq.GetTopicsResult) (string, error) {
			return topicsDs.Topics[0].TopicName, nil
		}).(pulumi.StringOutput))
		return nil
	})
}

```

type GetTopicsTopic

type GetTopicsTopic struct {
	// The id of the topic.
	Id string `pulumi:"id"`
	// Indicates whether namespaces are available. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
	IndependentNaming bool `pulumi:"independentNaming"`
	// ID of the ONS Instance that owns the topics.
	InstanceId string `pulumi:"instanceId"`
	// The type of the message. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
	MessageType int `pulumi:"messageType"`
	// The ID of the topic owner, which is the Alibaba Cloud UID.
	Owner string `pulumi:"owner"`
	// This attribute is used to set the read-write mode for the topic.
	Perm int `pulumi:"perm"`
	// The relation ID. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
	Relation int `pulumi:"relation"`
	// The name of the relation, for example, owner, publishable, subscribable, and publishable and subscribable.
	RelationName string `pulumi:"relationName"`
	// Remark of the topic.
	Remark string `pulumi:"remark"`
	// A map of tags assigned to the Ons instance.
	Tags map[string]interface{} `pulumi:"tags"`
	// The name of the topic.
	Topic string `pulumi:"topic"`
	// The name of the topic.
	TopicName string `pulumi:"topicName"`
}

type GetTopicsTopicArgs

type GetTopicsTopicArgs struct {
	// The id of the topic.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicates whether namespaces are available. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
	IndependentNaming pulumi.BoolInput `pulumi:"independentNaming"`
	// ID of the ONS Instance that owns the topics.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The type of the message. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
	MessageType pulumi.IntInput `pulumi:"messageType"`
	// The ID of the topic owner, which is the Alibaba Cloud UID.
	Owner pulumi.StringInput `pulumi:"owner"`
	// This attribute is used to set the read-write mode for the topic.
	Perm pulumi.IntInput `pulumi:"perm"`
	// The relation ID. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
	Relation pulumi.IntInput `pulumi:"relation"`
	// The name of the relation, for example, owner, publishable, subscribable, and publishable and subscribable.
	RelationName pulumi.StringInput `pulumi:"relationName"`
	// Remark of the topic.
	Remark pulumi.StringInput `pulumi:"remark"`
	// A map of tags assigned to the Ons instance.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The name of the topic.
	Topic pulumi.StringInput `pulumi:"topic"`
	// The name of the topic.
	TopicName pulumi.StringInput `pulumi:"topicName"`
}

func (GetTopicsTopicArgs) ElementType

func (GetTopicsTopicArgs) ElementType() reflect.Type

func (GetTopicsTopicArgs) ToGetTopicsTopicOutput

func (i GetTopicsTopicArgs) ToGetTopicsTopicOutput() GetTopicsTopicOutput

func (GetTopicsTopicArgs) ToGetTopicsTopicOutputWithContext

func (i GetTopicsTopicArgs) ToGetTopicsTopicOutputWithContext(ctx context.Context) GetTopicsTopicOutput

type GetTopicsTopicArray

type GetTopicsTopicArray []GetTopicsTopicInput

func (GetTopicsTopicArray) ElementType

func (GetTopicsTopicArray) ElementType() reflect.Type

func (GetTopicsTopicArray) ToGetTopicsTopicArrayOutput

func (i GetTopicsTopicArray) ToGetTopicsTopicArrayOutput() GetTopicsTopicArrayOutput

func (GetTopicsTopicArray) ToGetTopicsTopicArrayOutputWithContext

func (i GetTopicsTopicArray) ToGetTopicsTopicArrayOutputWithContext(ctx context.Context) GetTopicsTopicArrayOutput

type GetTopicsTopicArrayInput

type GetTopicsTopicArrayInput interface {
	pulumi.Input

	ToGetTopicsTopicArrayOutput() GetTopicsTopicArrayOutput
	ToGetTopicsTopicArrayOutputWithContext(context.Context) GetTopicsTopicArrayOutput
}

GetTopicsTopicArrayInput is an input type that accepts GetTopicsTopicArray and GetTopicsTopicArrayOutput values. You can construct a concrete instance of `GetTopicsTopicArrayInput` via:

GetTopicsTopicArray{ GetTopicsTopicArgs{...} }

type GetTopicsTopicArrayOutput

type GetTopicsTopicArrayOutput struct{ *pulumi.OutputState }

func (GetTopicsTopicArrayOutput) ElementType

func (GetTopicsTopicArrayOutput) ElementType() reflect.Type

func (GetTopicsTopicArrayOutput) Index

func (GetTopicsTopicArrayOutput) ToGetTopicsTopicArrayOutput

func (o GetTopicsTopicArrayOutput) ToGetTopicsTopicArrayOutput() GetTopicsTopicArrayOutput

func (GetTopicsTopicArrayOutput) ToGetTopicsTopicArrayOutputWithContext

func (o GetTopicsTopicArrayOutput) ToGetTopicsTopicArrayOutputWithContext(ctx context.Context) GetTopicsTopicArrayOutput

type GetTopicsTopicInput

type GetTopicsTopicInput interface {
	pulumi.Input

	ToGetTopicsTopicOutput() GetTopicsTopicOutput
	ToGetTopicsTopicOutputWithContext(context.Context) GetTopicsTopicOutput
}

GetTopicsTopicInput is an input type that accepts GetTopicsTopicArgs and GetTopicsTopicOutput values. You can construct a concrete instance of `GetTopicsTopicInput` via:

GetTopicsTopicArgs{...}

type GetTopicsTopicOutput

type GetTopicsTopicOutput struct{ *pulumi.OutputState }

func (GetTopicsTopicOutput) ElementType

func (GetTopicsTopicOutput) ElementType() reflect.Type

func (GetTopicsTopicOutput) Id added in v2.18.0

The id of the topic.

func (GetTopicsTopicOutput) IndependentNaming

func (o GetTopicsTopicOutput) IndependentNaming() pulumi.BoolOutput

Indicates whether namespaces are available. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.

func (GetTopicsTopicOutput) InstanceId added in v2.18.0

func (o GetTopicsTopicOutput) InstanceId() pulumi.StringOutput

ID of the ONS Instance that owns the topics.

func (GetTopicsTopicOutput) MessageType

func (o GetTopicsTopicOutput) MessageType() pulumi.IntOutput

The type of the message. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.

func (GetTopicsTopicOutput) Owner

The ID of the topic owner, which is the Alibaba Cloud UID.

func (GetTopicsTopicOutput) Perm added in v2.18.0

This attribute is used to set the read-write mode for the topic.

func (GetTopicsTopicOutput) Relation

func (o GetTopicsTopicOutput) Relation() pulumi.IntOutput

The relation ID. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.

func (GetTopicsTopicOutput) RelationName

func (o GetTopicsTopicOutput) RelationName() pulumi.StringOutput

The name of the relation, for example, owner, publishable, subscribable, and publishable and subscribable.

func (GetTopicsTopicOutput) Remark

Remark of the topic.

func (GetTopicsTopicOutput) Tags added in v2.18.0

A map of tags assigned to the Ons instance.

func (GetTopicsTopicOutput) ToGetTopicsTopicOutput

func (o GetTopicsTopicOutput) ToGetTopicsTopicOutput() GetTopicsTopicOutput

func (GetTopicsTopicOutput) ToGetTopicsTopicOutputWithContext

func (o GetTopicsTopicOutput) ToGetTopicsTopicOutputWithContext(ctx context.Context) GetTopicsTopicOutput

func (GetTopicsTopicOutput) Topic

The name of the topic.

func (GetTopicsTopicOutput) TopicName added in v2.18.0

The name of the topic.

type Group

type Group struct {
	pulumi.CustomResourceState

	// Replaced by `groupName` after version 1.98.0.
	//
	// Deprecated: Field 'group_id' has been deprecated from version 1.98.0. Use 'group_name' instead.
	GroupId pulumi.StringOutput `pulumi:"groupId"`
	// Name of the group. Two groups on a single instance cannot have the same name. A `groupName` starts with "GID_" or "GID-", and contains letters, numbers, hyphens (-), and underscores (_).
	GroupName pulumi.StringOutput `pulumi:"groupName"`
	// Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.
	GroupType pulumi.StringPtrOutput `pulumi:"groupType"`
	// ID of the ONS Instance that owns the groups.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// This attribute is used to set the message reading enabled or disabled. It can only be set after the group is used by the client.
	ReadEnable pulumi.BoolPtrOutput `pulumi:"readEnable"`
	// This attribute is a concise description of group. The length cannot exceed 256.
	Remark pulumi.StringPtrOutput `pulumi:"remark"`
	// 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"`
}

Provides an ONS group resource.

For more information about how to use it, see [RocketMQ Group Management API](https://www.alibabacloud.com/help/doc-detail/29616.html).

> **NOTE:** Available in 1.53.0+

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/rocketmq"
"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 := "onsInstanceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		groupName := "GID-onsGroupDatasourceName"
		if param := cfg.Get("groupName"); param != "" {
			groupName = param
		}
		defaultInstance, err := rocketmq.NewInstance(ctx, "defaultInstance", &rocketmq.InstanceArgs{
			Remark: pulumi.String("default_ons_instance_remark"),
		})
		if err != nil {
			return err
		}
		_, err = rocketmq.NewGroup(ctx, "defaultGroup", &rocketmq.GroupArgs{
			GroupName:  pulumi.String(groupName),
			InstanceId: defaultInstance.ID(),
			Remark:     pulumi.String("dafault_ons_group_remark"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ONS GROUP can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/group:Group group MQ_INST_1234567890_Baso1234567:GID-onsGroupDemo

```

func GetGroup

func GetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupState, opts ...pulumi.ResourceOption) (*Group, error)

GetGroup gets an existing Group 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 NewGroup

func NewGroup(ctx *pulumi.Context,
	name string, args *GroupArgs, opts ...pulumi.ResourceOption) (*Group, error)

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

func (*Group) ElementType added in v2.25.1

func (*Group) ElementType() reflect.Type

func (*Group) ToGroupOutput added in v2.25.1

func (i *Group) ToGroupOutput() GroupOutput

func (*Group) ToGroupOutputWithContext added in v2.25.1

func (i *Group) ToGroupOutputWithContext(ctx context.Context) GroupOutput

func (*Group) ToGroupPtrOutput added in v2.35.1

func (i *Group) ToGroupPtrOutput() GroupPtrOutput

func (*Group) ToGroupPtrOutputWithContext added in v2.35.1

func (i *Group) ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput

type GroupArgs

type GroupArgs struct {
	// Replaced by `groupName` after version 1.98.0.
	//
	// Deprecated: Field 'group_id' has been deprecated from version 1.98.0. Use 'group_name' instead.
	GroupId pulumi.StringPtrInput
	// Name of the group. Two groups on a single instance cannot have the same name. A `groupName` starts with "GID_" or "GID-", and contains letters, numbers, hyphens (-), and underscores (_).
	GroupName pulumi.StringPtrInput
	// Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.
	GroupType pulumi.StringPtrInput
	// ID of the ONS Instance that owns the groups.
	InstanceId pulumi.StringInput
	// This attribute is used to set the message reading enabled or disabled. It can only be set after the group is used by the client.
	ReadEnable pulumi.BoolPtrInput
	// This attribute is a concise description of group. The length cannot exceed 256.
	Remark pulumi.StringPtrInput
	// 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 set of arguments for constructing a Group resource.

func (GroupArgs) ElementType

func (GroupArgs) ElementType() reflect.Type

type GroupArray added in v2.35.1

type GroupArray []GroupInput

func (GroupArray) ElementType added in v2.35.1

func (GroupArray) ElementType() reflect.Type

func (GroupArray) ToGroupArrayOutput added in v2.35.1

func (i GroupArray) ToGroupArrayOutput() GroupArrayOutput

func (GroupArray) ToGroupArrayOutputWithContext added in v2.35.1

func (i GroupArray) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput

type GroupArrayInput added in v2.35.1

type GroupArrayInput interface {
	pulumi.Input

	ToGroupArrayOutput() GroupArrayOutput
	ToGroupArrayOutputWithContext(context.Context) GroupArrayOutput
}

GroupArrayInput is an input type that accepts GroupArray and GroupArrayOutput values. You can construct a concrete instance of `GroupArrayInput` via:

GroupArray{ GroupArgs{...} }

type GroupArrayOutput added in v2.35.1

type GroupArrayOutput struct{ *pulumi.OutputState }

func (GroupArrayOutput) ElementType added in v2.35.1

func (GroupArrayOutput) ElementType() reflect.Type

func (GroupArrayOutput) Index added in v2.35.1

func (GroupArrayOutput) ToGroupArrayOutput added in v2.35.1

func (o GroupArrayOutput) ToGroupArrayOutput() GroupArrayOutput

func (GroupArrayOutput) ToGroupArrayOutputWithContext added in v2.35.1

func (o GroupArrayOutput) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput

type GroupInput added in v2.25.1

type GroupInput interface {
	pulumi.Input

	ToGroupOutput() GroupOutput
	ToGroupOutputWithContext(ctx context.Context) GroupOutput
}

type GroupMap added in v2.35.1

type GroupMap map[string]GroupInput

func (GroupMap) ElementType added in v2.35.1

func (GroupMap) ElementType() reflect.Type

func (GroupMap) ToGroupMapOutput added in v2.35.1

func (i GroupMap) ToGroupMapOutput() GroupMapOutput

func (GroupMap) ToGroupMapOutputWithContext added in v2.35.1

func (i GroupMap) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput

type GroupMapInput added in v2.35.1

type GroupMapInput interface {
	pulumi.Input

	ToGroupMapOutput() GroupMapOutput
	ToGroupMapOutputWithContext(context.Context) GroupMapOutput
}

GroupMapInput is an input type that accepts GroupMap and GroupMapOutput values. You can construct a concrete instance of `GroupMapInput` via:

GroupMap{ "key": GroupArgs{...} }

type GroupMapOutput added in v2.35.1

type GroupMapOutput struct{ *pulumi.OutputState }

func (GroupMapOutput) ElementType added in v2.35.1

func (GroupMapOutput) ElementType() reflect.Type

func (GroupMapOutput) MapIndex added in v2.35.1

func (GroupMapOutput) ToGroupMapOutput added in v2.35.1

func (o GroupMapOutput) ToGroupMapOutput() GroupMapOutput

func (GroupMapOutput) ToGroupMapOutputWithContext added in v2.35.1

func (o GroupMapOutput) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput

type GroupOutput added in v2.25.1

type GroupOutput struct {
	*pulumi.OutputState
}

func (GroupOutput) ElementType added in v2.25.1

func (GroupOutput) ElementType() reflect.Type

func (GroupOutput) ToGroupOutput added in v2.25.1

func (o GroupOutput) ToGroupOutput() GroupOutput

func (GroupOutput) ToGroupOutputWithContext added in v2.25.1

func (o GroupOutput) ToGroupOutputWithContext(ctx context.Context) GroupOutput

func (GroupOutput) ToGroupPtrOutput added in v2.35.1

func (o GroupOutput) ToGroupPtrOutput() GroupPtrOutput

func (GroupOutput) ToGroupPtrOutputWithContext added in v2.35.1

func (o GroupOutput) ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput

type GroupPtrInput added in v2.35.1

type GroupPtrInput interface {
	pulumi.Input

	ToGroupPtrOutput() GroupPtrOutput
	ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput
}

type GroupPtrOutput added in v2.35.1

type GroupPtrOutput struct {
	*pulumi.OutputState
}

func (GroupPtrOutput) ElementType added in v2.35.1

func (GroupPtrOutput) ElementType() reflect.Type

func (GroupPtrOutput) ToGroupPtrOutput added in v2.35.1

func (o GroupPtrOutput) ToGroupPtrOutput() GroupPtrOutput

func (GroupPtrOutput) ToGroupPtrOutputWithContext added in v2.35.1

func (o GroupPtrOutput) ToGroupPtrOutputWithContext(ctx context.Context) GroupPtrOutput

type GroupState

type GroupState struct {
	// Replaced by `groupName` after version 1.98.0.
	//
	// Deprecated: Field 'group_id' has been deprecated from version 1.98.0. Use 'group_name' instead.
	GroupId pulumi.StringPtrInput
	// Name of the group. Two groups on a single instance cannot have the same name. A `groupName` starts with "GID_" or "GID-", and contains letters, numbers, hyphens (-), and underscores (_).
	GroupName pulumi.StringPtrInput
	// Specify the protocol applicable to the created Group ID. Valid values: `tcp`, `http`. Default to `tcp`.
	GroupType pulumi.StringPtrInput
	// ID of the ONS Instance that owns the groups.
	InstanceId pulumi.StringPtrInput
	// This attribute is used to set the message reading enabled or disabled. It can only be set after the group is used by the client.
	ReadEnable pulumi.BoolPtrInput
	// This attribute is a concise description of group. The length cannot exceed 256.
	Remark pulumi.StringPtrInput
	// 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
}

func (GroupState) ElementType

func (GroupState) ElementType() reflect.Type

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// Two instances on a single account in the same region cannot have the same name. The length must be 3 to 64 characters. Chinese characters, English letters digits and hyphen are allowed.
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// The status of instance. 1 represents the platinum edition instance is in deployment. 2 represents the postpaid edition instance are overdue. 5 represents the postpaid or platinum edition instance is in service. 7 represents the platinum version instance is in upgrade and the service is available.
	InstanceStatus pulumi.IntOutput `pulumi:"instanceStatus"`
	// The edition of instance. 1 represents the postPaid edition, and 2 represents the platinum edition.
	InstanceType pulumi.IntOutput `pulumi:"instanceType"`
	// Replaced by `instanceName` after version 1.97.0.
	//
	// Deprecated: Field 'name' has been deprecated from version 1.97.0. Use 'instance_name' instead.
	Name pulumi.StringOutput `pulumi:"name"`
	// Platinum edition instance expiration time.
	ReleaseTime pulumi.StringOutput `pulumi:"releaseTime"`
	// This attribute is a concise description of instance. The length cannot exceed 128.
	Remark pulumi.StringPtrOutput `pulumi:"remark"`
	// The status of instance. 1 represents the platinum edition instance is in deployment. 2 represents the postpaid edition instance are overdue. 5 represents the postpaid or platinum edition instance is in service. 7 represents the platinum version instance is in upgrade and the service is available.
	Status pulumi.IntOutput `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 pulumi.MapOutput `pulumi:"tags"`
}

Provides an ONS instance resource.

For more information about how to use it, see [RocketMQ Instance Management API](https://www.alibabacloud.com/help/doc-detail/106354.html).

> **NOTE:** The number of instances in the same region cannot exceed 8. At present, the resource does not support region "mq-internet-access" and "ap-southeast-5".

> **NOTE:** Available in 1.51.0+

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rocketmq.NewInstance(ctx, "example", &rocketmq.InstanceArgs{
			InstanceName: pulumi.String("tf-example-ons-instance"),
			Remark:       pulumi.String("tf-example-ons-instance-remark"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ONS INSTANCE can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/instance:Instance instance MQ_INST_1234567890_Baso1234567

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance 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 NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

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

func (*Instance) ElementType added in v2.25.1

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput added in v2.25.1

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext added in v2.25.1

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (*Instance) ToInstancePtrOutput added in v2.35.1

func (i *Instance) ToInstancePtrOutput() InstancePtrOutput

func (*Instance) ToInstancePtrOutputWithContext added in v2.35.1

func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceArgs

type InstanceArgs struct {
	// Two instances on a single account in the same region cannot have the same name. The length must be 3 to 64 characters. Chinese characters, English letters digits and hyphen are allowed.
	InstanceName pulumi.StringPtrInput
	// Replaced by `instanceName` after version 1.97.0.
	//
	// Deprecated: Field 'name' has been deprecated from version 1.97.0. Use 'instance_name' instead.
	Name pulumi.StringPtrInput
	// This attribute is a concise description of instance. The length cannot exceed 128.
	Remark pulumi.StringPtrInput
	// 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 set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray added in v2.35.1

type InstanceArray []InstanceInput

func (InstanceArray) ElementType added in v2.35.1

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput added in v2.35.1

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext added in v2.35.1

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput added in v2.35.1

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput added in v2.35.1

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType added in v2.35.1

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index added in v2.35.1

func (InstanceArrayOutput) ToInstanceArrayOutput added in v2.35.1

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext added in v2.35.1

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceInput added in v2.25.1

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap added in v2.35.1

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType added in v2.35.1

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput added in v2.35.1

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext added in v2.35.1

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput added in v2.35.1

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput added in v2.35.1

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType added in v2.35.1

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex added in v2.35.1

func (InstanceMapOutput) ToInstanceMapOutput added in v2.35.1

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext added in v2.35.1

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput added in v2.25.1

type InstanceOutput struct {
	*pulumi.OutputState
}

func (InstanceOutput) ElementType added in v2.25.1

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) ToInstanceOutput added in v2.25.1

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext added in v2.25.1

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) ToInstancePtrOutput added in v2.35.1

func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstanceOutput) ToInstancePtrOutputWithContext added in v2.35.1

func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstancePtrInput added in v2.35.1

type InstancePtrInput interface {
	pulumi.Input

	ToInstancePtrOutput() InstancePtrOutput
	ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
}

type InstancePtrOutput added in v2.35.1

type InstancePtrOutput struct {
	*pulumi.OutputState
}

func (InstancePtrOutput) ElementType added in v2.35.1

func (InstancePtrOutput) ElementType() reflect.Type

func (InstancePtrOutput) ToInstancePtrOutput added in v2.35.1

func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput

func (InstancePtrOutput) ToInstancePtrOutputWithContext added in v2.35.1

func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput

type InstanceState

type InstanceState struct {
	// Two instances on a single account in the same region cannot have the same name. The length must be 3 to 64 characters. Chinese characters, English letters digits and hyphen are allowed.
	InstanceName pulumi.StringPtrInput
	// The status of instance. 1 represents the platinum edition instance is in deployment. 2 represents the postpaid edition instance are overdue. 5 represents the postpaid or platinum edition instance is in service. 7 represents the platinum version instance is in upgrade and the service is available.
	InstanceStatus pulumi.IntPtrInput
	// The edition of instance. 1 represents the postPaid edition, and 2 represents the platinum edition.
	InstanceType pulumi.IntPtrInput
	// Replaced by `instanceName` after version 1.97.0.
	//
	// Deprecated: Field 'name' has been deprecated from version 1.97.0. Use 'instance_name' instead.
	Name pulumi.StringPtrInput
	// Platinum edition instance expiration time.
	ReleaseTime pulumi.StringPtrInput
	// This attribute is a concise description of instance. The length cannot exceed 128.
	Remark pulumi.StringPtrInput
	// The status of instance. 1 represents the platinum edition instance is in deployment. 2 represents the postpaid edition instance are overdue. 5 represents the postpaid or platinum edition instance is in service. 7 represents the platinum version instance is in upgrade and the service is available.
	Status pulumi.IntPtrInput
	// 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
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type Qos

type Qos struct {
	pulumi.CustomResourceState

	// The name of the QoS policy to be created. The name can contain 2 to 128 characters including a-z, A-Z, 0-9, periods, underlines, and hyphens. The name must start with an English letter, but cannot start with http:// or https://.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a Sag Qos resource. Smart Access Gateway (SAG) supports quintuple-based QoS functions to differentiate traffic of different services and ensure high-priority traffic bandwidth.

For information about Sag Qos and how to use it, see [What is Qos](https://www.alibabacloud.com/help/doc-detail/131306.htm).

> **NOTE:** Available in 1.60.0+

> **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rocketmq.NewQos(ctx, "_default", nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag Qos can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/qos:Qos example qos-abc123456

```

func GetQos

func GetQos(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosState, opts ...pulumi.ResourceOption) (*Qos, error)

GetQos gets an existing Qos 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 NewQos

func NewQos(ctx *pulumi.Context,
	name string, args *QosArgs, opts ...pulumi.ResourceOption) (*Qos, error)

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

func (*Qos) ElementType added in v2.25.1

func (*Qos) ElementType() reflect.Type

func (*Qos) ToQosOutput added in v2.25.1

func (i *Qos) ToQosOutput() QosOutput

func (*Qos) ToQosOutputWithContext added in v2.25.1

func (i *Qos) ToQosOutputWithContext(ctx context.Context) QosOutput

func (*Qos) ToQosPtrOutput added in v2.35.1

func (i *Qos) ToQosPtrOutput() QosPtrOutput

func (*Qos) ToQosPtrOutputWithContext added in v2.35.1

func (i *Qos) ToQosPtrOutputWithContext(ctx context.Context) QosPtrOutput

type QosArgs

type QosArgs struct {
	// The name of the QoS policy to be created. The name can contain 2 to 128 characters including a-z, A-Z, 0-9, periods, underlines, and hyphens. The name must start with an English letter, but cannot start with http:// or https://.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a Qos resource.

func (QosArgs) ElementType

func (QosArgs) ElementType() reflect.Type

type QosArray added in v2.35.1

type QosArray []QosInput

func (QosArray) ElementType added in v2.35.1

func (QosArray) ElementType() reflect.Type

func (QosArray) ToQosArrayOutput added in v2.35.1

func (i QosArray) ToQosArrayOutput() QosArrayOutput

func (QosArray) ToQosArrayOutputWithContext added in v2.35.1

func (i QosArray) ToQosArrayOutputWithContext(ctx context.Context) QosArrayOutput

type QosArrayInput added in v2.35.1

type QosArrayInput interface {
	pulumi.Input

	ToQosArrayOutput() QosArrayOutput
	ToQosArrayOutputWithContext(context.Context) QosArrayOutput
}

QosArrayInput is an input type that accepts QosArray and QosArrayOutput values. You can construct a concrete instance of `QosArrayInput` via:

QosArray{ QosArgs{...} }

type QosArrayOutput added in v2.35.1

type QosArrayOutput struct{ *pulumi.OutputState }

func (QosArrayOutput) ElementType added in v2.35.1

func (QosArrayOutput) ElementType() reflect.Type

func (QosArrayOutput) Index added in v2.35.1

func (QosArrayOutput) ToQosArrayOutput added in v2.35.1

func (o QosArrayOutput) ToQosArrayOutput() QosArrayOutput

func (QosArrayOutput) ToQosArrayOutputWithContext added in v2.35.1

func (o QosArrayOutput) ToQosArrayOutputWithContext(ctx context.Context) QosArrayOutput

type QosCar

type QosCar struct {
	pulumi.CustomResourceState

	// The description of the QoS speed limiting rule.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The speed limiting method. Valid values: Absolute, Percent.
	LimitType pulumi.StringOutput `pulumi:"limitType"`
	// The maximum bandwidth allowed for the stream specified in the quintuple rule. This parameter is required when the value of the LimitType is Absolute.
	MaxBandwidthAbs pulumi.IntPtrOutput `pulumi:"maxBandwidthAbs"`
	// The maximum bandwidth percentage allowed for the stream specified in the quintuple rule. It is based on the maximum upstream bandwidth you set for the associated Smart Access Gateway (SAG) instance.This parameter is required when the value of the LimitType parameter is Percent.
	MaxBandwidthPercent pulumi.IntPtrOutput `pulumi:"maxBandwidthPercent"`
	// The minimum bandwidth allowed for the stream specified in the quintuple rule. This parameter is required when the value of the LimitType parameter is Absolute.
	MinBandwidthAbs pulumi.IntPtrOutput `pulumi:"minBandwidthAbs"`
	// The minimum bandwidth percentage allowed for the stream specified in the quintuple rule. It is based on the maximum upstream bandwidth you set for the associated SAG instance.This parameter is required when the value of the LimitType parameter is Percent.
	MinBandwidthPercent pulumi.IntPtrOutput `pulumi:"minBandwidthPercent"`
	// The name of the QoS speed limiting rule..
	Name pulumi.StringOutput `pulumi:"name"`
	// The bandwidth type when the speed is limited based on percentage. Valid values: CcnBandwidth, InternetUpBandwidth.The default value is InternetUpBandwidth.
	PercentSourceType pulumi.StringPtrOutput `pulumi:"percentSourceType"`
	// The priority of the specified stream.
	Priority pulumi.IntOutput `pulumi:"priority"`
	// The instance ID of the QoS.
	QosId pulumi.StringOutput `pulumi:"qosId"`
}

Provides a Sag qos car resource. You need to create a QoS car to set priorities, rate limits, and quintuple rules for different messages.

For information about Sag Qos Car and how to use it, see [What is Qos Car](https://www.alibabacloud.com/help/doc-detail/140065.htm).

> **NOTE:** Available in 1.60.0+

> **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultQos, err := rocketmq.NewQos(ctx, "defaultQos", nil)
		if err != nil {
			return err
		}
		_, err = rocketmq.NewQosCar(ctx, "defaultQosCar", &rocketmq.QosCarArgs{
			QosId:               defaultQos.ID(),
			Description:         pulumi.String("tf-testSagQosCarDescription"),
			Priority:            pulumi.Int(1),
			LimitType:           pulumi.String("Absolute"),
			MinBandwidthAbs:     pulumi.Int(10),
			MaxBandwidthAbs:     pulumi.Int(20),
			MinBandwidthPercent: pulumi.Int(10),
			MaxBandwidthPercent: pulumi.Int(20),
			PercentSourceType:   pulumi.String("InternetUpBandwidth"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag Qos Car can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/qosCar:QosCar example qos-abc123456:qoscar-abc123456

```

func GetQosCar

func GetQosCar(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosCarState, opts ...pulumi.ResourceOption) (*QosCar, error)

GetQosCar gets an existing QosCar 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 NewQosCar

func NewQosCar(ctx *pulumi.Context,
	name string, args *QosCarArgs, opts ...pulumi.ResourceOption) (*QosCar, error)

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

func (*QosCar) ElementType added in v2.25.1

func (*QosCar) ElementType() reflect.Type

func (*QosCar) ToQosCarOutput added in v2.25.1

func (i *QosCar) ToQosCarOutput() QosCarOutput

func (*QosCar) ToQosCarOutputWithContext added in v2.25.1

func (i *QosCar) ToQosCarOutputWithContext(ctx context.Context) QosCarOutput

func (*QosCar) ToQosCarPtrOutput added in v2.35.1

func (i *QosCar) ToQosCarPtrOutput() QosCarPtrOutput

func (*QosCar) ToQosCarPtrOutputWithContext added in v2.35.1

func (i *QosCar) ToQosCarPtrOutputWithContext(ctx context.Context) QosCarPtrOutput

type QosCarArgs

type QosCarArgs struct {
	// The description of the QoS speed limiting rule.
	Description pulumi.StringPtrInput
	// The speed limiting method. Valid values: Absolute, Percent.
	LimitType pulumi.StringInput
	// The maximum bandwidth allowed for the stream specified in the quintuple rule. This parameter is required when the value of the LimitType is Absolute.
	MaxBandwidthAbs pulumi.IntPtrInput
	// The maximum bandwidth percentage allowed for the stream specified in the quintuple rule. It is based on the maximum upstream bandwidth you set for the associated Smart Access Gateway (SAG) instance.This parameter is required when the value of the LimitType parameter is Percent.
	MaxBandwidthPercent pulumi.IntPtrInput
	// The minimum bandwidth allowed for the stream specified in the quintuple rule. This parameter is required when the value of the LimitType parameter is Absolute.
	MinBandwidthAbs pulumi.IntPtrInput
	// The minimum bandwidth percentage allowed for the stream specified in the quintuple rule. It is based on the maximum upstream bandwidth you set for the associated SAG instance.This parameter is required when the value of the LimitType parameter is Percent.
	MinBandwidthPercent pulumi.IntPtrInput
	// The name of the QoS speed limiting rule..
	Name pulumi.StringPtrInput
	// The bandwidth type when the speed is limited based on percentage. Valid values: CcnBandwidth, InternetUpBandwidth.The default value is InternetUpBandwidth.
	PercentSourceType pulumi.StringPtrInput
	// The priority of the specified stream.
	Priority pulumi.IntInput
	// The instance ID of the QoS.
	QosId pulumi.StringInput
}

The set of arguments for constructing a QosCar resource.

func (QosCarArgs) ElementType

func (QosCarArgs) ElementType() reflect.Type

type QosCarArray added in v2.35.1

type QosCarArray []QosCarInput

func (QosCarArray) ElementType added in v2.35.1

func (QosCarArray) ElementType() reflect.Type

func (QosCarArray) ToQosCarArrayOutput added in v2.35.1

func (i QosCarArray) ToQosCarArrayOutput() QosCarArrayOutput

func (QosCarArray) ToQosCarArrayOutputWithContext added in v2.35.1

func (i QosCarArray) ToQosCarArrayOutputWithContext(ctx context.Context) QosCarArrayOutput

type QosCarArrayInput added in v2.35.1

type QosCarArrayInput interface {
	pulumi.Input

	ToQosCarArrayOutput() QosCarArrayOutput
	ToQosCarArrayOutputWithContext(context.Context) QosCarArrayOutput
}

QosCarArrayInput is an input type that accepts QosCarArray and QosCarArrayOutput values. You can construct a concrete instance of `QosCarArrayInput` via:

QosCarArray{ QosCarArgs{...} }

type QosCarArrayOutput added in v2.35.1

type QosCarArrayOutput struct{ *pulumi.OutputState }

func (QosCarArrayOutput) ElementType added in v2.35.1

func (QosCarArrayOutput) ElementType() reflect.Type

func (QosCarArrayOutput) Index added in v2.35.1

func (QosCarArrayOutput) ToQosCarArrayOutput added in v2.35.1

func (o QosCarArrayOutput) ToQosCarArrayOutput() QosCarArrayOutput

func (QosCarArrayOutput) ToQosCarArrayOutputWithContext added in v2.35.1

func (o QosCarArrayOutput) ToQosCarArrayOutputWithContext(ctx context.Context) QosCarArrayOutput

type QosCarInput added in v2.25.1

type QosCarInput interface {
	pulumi.Input

	ToQosCarOutput() QosCarOutput
	ToQosCarOutputWithContext(ctx context.Context) QosCarOutput
}

type QosCarMap added in v2.35.1

type QosCarMap map[string]QosCarInput

func (QosCarMap) ElementType added in v2.35.1

func (QosCarMap) ElementType() reflect.Type

func (QosCarMap) ToQosCarMapOutput added in v2.35.1

func (i QosCarMap) ToQosCarMapOutput() QosCarMapOutput

func (QosCarMap) ToQosCarMapOutputWithContext added in v2.35.1

func (i QosCarMap) ToQosCarMapOutputWithContext(ctx context.Context) QosCarMapOutput

type QosCarMapInput added in v2.35.1

type QosCarMapInput interface {
	pulumi.Input

	ToQosCarMapOutput() QosCarMapOutput
	ToQosCarMapOutputWithContext(context.Context) QosCarMapOutput
}

QosCarMapInput is an input type that accepts QosCarMap and QosCarMapOutput values. You can construct a concrete instance of `QosCarMapInput` via:

QosCarMap{ "key": QosCarArgs{...} }

type QosCarMapOutput added in v2.35.1

type QosCarMapOutput struct{ *pulumi.OutputState }

func (QosCarMapOutput) ElementType added in v2.35.1

func (QosCarMapOutput) ElementType() reflect.Type

func (QosCarMapOutput) MapIndex added in v2.35.1

func (QosCarMapOutput) ToQosCarMapOutput added in v2.35.1

func (o QosCarMapOutput) ToQosCarMapOutput() QosCarMapOutput

func (QosCarMapOutput) ToQosCarMapOutputWithContext added in v2.35.1

func (o QosCarMapOutput) ToQosCarMapOutputWithContext(ctx context.Context) QosCarMapOutput

type QosCarOutput added in v2.25.1

type QosCarOutput struct {
	*pulumi.OutputState
}

func (QosCarOutput) ElementType added in v2.25.1

func (QosCarOutput) ElementType() reflect.Type

func (QosCarOutput) ToQosCarOutput added in v2.25.1

func (o QosCarOutput) ToQosCarOutput() QosCarOutput

func (QosCarOutput) ToQosCarOutputWithContext added in v2.25.1

func (o QosCarOutput) ToQosCarOutputWithContext(ctx context.Context) QosCarOutput

func (QosCarOutput) ToQosCarPtrOutput added in v2.35.1

func (o QosCarOutput) ToQosCarPtrOutput() QosCarPtrOutput

func (QosCarOutput) ToQosCarPtrOutputWithContext added in v2.35.1

func (o QosCarOutput) ToQosCarPtrOutputWithContext(ctx context.Context) QosCarPtrOutput

type QosCarPtrInput added in v2.35.1

type QosCarPtrInput interface {
	pulumi.Input

	ToQosCarPtrOutput() QosCarPtrOutput
	ToQosCarPtrOutputWithContext(ctx context.Context) QosCarPtrOutput
}

type QosCarPtrOutput added in v2.35.1

type QosCarPtrOutput struct {
	*pulumi.OutputState
}

func (QosCarPtrOutput) ElementType added in v2.35.1

func (QosCarPtrOutput) ElementType() reflect.Type

func (QosCarPtrOutput) ToQosCarPtrOutput added in v2.35.1

func (o QosCarPtrOutput) ToQosCarPtrOutput() QosCarPtrOutput

func (QosCarPtrOutput) ToQosCarPtrOutputWithContext added in v2.35.1

func (o QosCarPtrOutput) ToQosCarPtrOutputWithContext(ctx context.Context) QosCarPtrOutput

type QosCarState

type QosCarState struct {
	// The description of the QoS speed limiting rule.
	Description pulumi.StringPtrInput
	// The speed limiting method. Valid values: Absolute, Percent.
	LimitType pulumi.StringPtrInput
	// The maximum bandwidth allowed for the stream specified in the quintuple rule. This parameter is required when the value of the LimitType is Absolute.
	MaxBandwidthAbs pulumi.IntPtrInput
	// The maximum bandwidth percentage allowed for the stream specified in the quintuple rule. It is based on the maximum upstream bandwidth you set for the associated Smart Access Gateway (SAG) instance.This parameter is required when the value of the LimitType parameter is Percent.
	MaxBandwidthPercent pulumi.IntPtrInput
	// The minimum bandwidth allowed for the stream specified in the quintuple rule. This parameter is required when the value of the LimitType parameter is Absolute.
	MinBandwidthAbs pulumi.IntPtrInput
	// The minimum bandwidth percentage allowed for the stream specified in the quintuple rule. It is based on the maximum upstream bandwidth you set for the associated SAG instance.This parameter is required when the value of the LimitType parameter is Percent.
	MinBandwidthPercent pulumi.IntPtrInput
	// The name of the QoS speed limiting rule..
	Name pulumi.StringPtrInput
	// The bandwidth type when the speed is limited based on percentage. Valid values: CcnBandwidth, InternetUpBandwidth.The default value is InternetUpBandwidth.
	PercentSourceType pulumi.StringPtrInput
	// The priority of the specified stream.
	Priority pulumi.IntPtrInput
	// The instance ID of the QoS.
	QosId pulumi.StringPtrInput
}

func (QosCarState) ElementType

func (QosCarState) ElementType() reflect.Type

type QosInput added in v2.25.1

type QosInput interface {
	pulumi.Input

	ToQosOutput() QosOutput
	ToQosOutputWithContext(ctx context.Context) QosOutput
}

type QosMap added in v2.35.1

type QosMap map[string]QosInput

func (QosMap) ElementType added in v2.35.1

func (QosMap) ElementType() reflect.Type

func (QosMap) ToQosMapOutput added in v2.35.1

func (i QosMap) ToQosMapOutput() QosMapOutput

func (QosMap) ToQosMapOutputWithContext added in v2.35.1

func (i QosMap) ToQosMapOutputWithContext(ctx context.Context) QosMapOutput

type QosMapInput added in v2.35.1

type QosMapInput interface {
	pulumi.Input

	ToQosMapOutput() QosMapOutput
	ToQosMapOutputWithContext(context.Context) QosMapOutput
}

QosMapInput is an input type that accepts QosMap and QosMapOutput values. You can construct a concrete instance of `QosMapInput` via:

QosMap{ "key": QosArgs{...} }

type QosMapOutput added in v2.35.1

type QosMapOutput struct{ *pulumi.OutputState }

func (QosMapOutput) ElementType added in v2.35.1

func (QosMapOutput) ElementType() reflect.Type

func (QosMapOutput) MapIndex added in v2.35.1

func (o QosMapOutput) MapIndex(k pulumi.StringInput) QosOutput

func (QosMapOutput) ToQosMapOutput added in v2.35.1

func (o QosMapOutput) ToQosMapOutput() QosMapOutput

func (QosMapOutput) ToQosMapOutputWithContext added in v2.35.1

func (o QosMapOutput) ToQosMapOutputWithContext(ctx context.Context) QosMapOutput

type QosOutput added in v2.25.1

type QosOutput struct {
	*pulumi.OutputState
}

func (QosOutput) ElementType added in v2.25.1

func (QosOutput) ElementType() reflect.Type

func (QosOutput) ToQosOutput added in v2.25.1

func (o QosOutput) ToQosOutput() QosOutput

func (QosOutput) ToQosOutputWithContext added in v2.25.1

func (o QosOutput) ToQosOutputWithContext(ctx context.Context) QosOutput

func (QosOutput) ToQosPtrOutput added in v2.35.1

func (o QosOutput) ToQosPtrOutput() QosPtrOutput

func (QosOutput) ToQosPtrOutputWithContext added in v2.35.1

func (o QosOutput) ToQosPtrOutputWithContext(ctx context.Context) QosPtrOutput

type QosPolicy

type QosPolicy struct {
	pulumi.CustomResourceState

	// The description of the QoS policy.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The destination CIDR block.
	DestCidr pulumi.StringOutput `pulumi:"destCidr"`
	// The destination port range.
	DestPortRange pulumi.StringOutput `pulumi:"destPortRange"`
	// The expiration time of the quintuple rule.
	EndTime pulumi.StringPtrOutput `pulumi:"endTime"`
	// The transport layer protocol.
	IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"`
	// The name of the QoS policy.
	Name pulumi.StringOutput `pulumi:"name"`
	// The priority of the quintuple rule. A smaller value indicates a higher priority. If the priorities of two quintuple rules are the same, the rule created earlier is applied first.Value range: 1 to 7.
	Priority pulumi.IntOutput `pulumi:"priority"`
	// The instance ID of the QoS policy to which the quintuple rule is created.
	QosId pulumi.StringOutput `pulumi:"qosId"`
	// The source CIDR block.
	SourceCidr pulumi.StringOutput `pulumi:"sourceCidr"`
	// The source port range of the transport layer.
	SourcePortRange pulumi.StringOutput `pulumi:"sourcePortRange"`
	// The time when the quintuple rule takes effect.
	StartTime pulumi.StringPtrOutput `pulumi:"startTime"`
}

Provides a Sag qos policy resource. You need to create a QoS policy to set priorities, rate limits, and quintuple rules for different messages.

For information about Sag Qos Policy and how to use it, see [What is Qos Policy](https://www.alibabacloud.com/help/doc-detail/140065.htm).

> **NOTE:** Available in 1.60.0+

> **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultQos, err := rocketmq.NewQos(ctx, "defaultQos", nil)
		if err != nil {
			return err
		}
		_, err = rocketmq.NewQosPolicy(ctx, "defaultQosPolicy", &rocketmq.QosPolicyArgs{
			QosId:           defaultQos.ID(),
			Description:     pulumi.String("tf-testSagQosPolicyDescription"),
			Priority:        pulumi.Int(1),
			IpProtocol:      pulumi.String("ALL"),
			SourceCidr:      pulumi.String("192.168.0.0/24"),
			SourcePortRange: pulumi.String("-1/-1"),
			DestCidr:        pulumi.String("10.10.0.0/24"),
			DestPortRange:   pulumi.String("-1/-1"),
			StartTime:       pulumi.String("2019-10-25T16:41:33+0800"),
			EndTime:         pulumi.String("2019-10-26T16:41:33+0800"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag Qos Policy can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/qosPolicy:QosPolicy example qos-abc123456:qospy-abc123456

```

func GetQosPolicy

func GetQosPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QosPolicyState, opts ...pulumi.ResourceOption) (*QosPolicy, error)

GetQosPolicy gets an existing QosPolicy 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 NewQosPolicy

func NewQosPolicy(ctx *pulumi.Context,
	name string, args *QosPolicyArgs, opts ...pulumi.ResourceOption) (*QosPolicy, error)

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

func (*QosPolicy) ElementType added in v2.25.1

func (*QosPolicy) ElementType() reflect.Type

func (*QosPolicy) ToQosPolicyOutput added in v2.25.1

func (i *QosPolicy) ToQosPolicyOutput() QosPolicyOutput

func (*QosPolicy) ToQosPolicyOutputWithContext added in v2.25.1

func (i *QosPolicy) ToQosPolicyOutputWithContext(ctx context.Context) QosPolicyOutput

func (*QosPolicy) ToQosPolicyPtrOutput added in v2.35.1

func (i *QosPolicy) ToQosPolicyPtrOutput() QosPolicyPtrOutput

func (*QosPolicy) ToQosPolicyPtrOutputWithContext added in v2.35.1

func (i *QosPolicy) ToQosPolicyPtrOutputWithContext(ctx context.Context) QosPolicyPtrOutput

type QosPolicyArgs

type QosPolicyArgs struct {
	// The description of the QoS policy.
	Description pulumi.StringPtrInput
	// The destination CIDR block.
	DestCidr pulumi.StringInput
	// The destination port range.
	DestPortRange pulumi.StringInput
	// The expiration time of the quintuple rule.
	EndTime pulumi.StringPtrInput
	// The transport layer protocol.
	IpProtocol pulumi.StringInput
	// The name of the QoS policy.
	Name pulumi.StringPtrInput
	// The priority of the quintuple rule. A smaller value indicates a higher priority. If the priorities of two quintuple rules are the same, the rule created earlier is applied first.Value range: 1 to 7.
	Priority pulumi.IntInput
	// The instance ID of the QoS policy to which the quintuple rule is created.
	QosId pulumi.StringInput
	// The source CIDR block.
	SourceCidr pulumi.StringInput
	// The source port range of the transport layer.
	SourcePortRange pulumi.StringInput
	// The time when the quintuple rule takes effect.
	StartTime pulumi.StringPtrInput
}

The set of arguments for constructing a QosPolicy resource.

func (QosPolicyArgs) ElementType

func (QosPolicyArgs) ElementType() reflect.Type

type QosPolicyArray added in v2.35.1

type QosPolicyArray []QosPolicyInput

func (QosPolicyArray) ElementType added in v2.35.1

func (QosPolicyArray) ElementType() reflect.Type

func (QosPolicyArray) ToQosPolicyArrayOutput added in v2.35.1

func (i QosPolicyArray) ToQosPolicyArrayOutput() QosPolicyArrayOutput

func (QosPolicyArray) ToQosPolicyArrayOutputWithContext added in v2.35.1

func (i QosPolicyArray) ToQosPolicyArrayOutputWithContext(ctx context.Context) QosPolicyArrayOutput

type QosPolicyArrayInput added in v2.35.1

type QosPolicyArrayInput interface {
	pulumi.Input

	ToQosPolicyArrayOutput() QosPolicyArrayOutput
	ToQosPolicyArrayOutputWithContext(context.Context) QosPolicyArrayOutput
}

QosPolicyArrayInput is an input type that accepts QosPolicyArray and QosPolicyArrayOutput values. You can construct a concrete instance of `QosPolicyArrayInput` via:

QosPolicyArray{ QosPolicyArgs{...} }

type QosPolicyArrayOutput added in v2.35.1

type QosPolicyArrayOutput struct{ *pulumi.OutputState }

func (QosPolicyArrayOutput) ElementType added in v2.35.1

func (QosPolicyArrayOutput) ElementType() reflect.Type

func (QosPolicyArrayOutput) Index added in v2.35.1

func (QosPolicyArrayOutput) ToQosPolicyArrayOutput added in v2.35.1

func (o QosPolicyArrayOutput) ToQosPolicyArrayOutput() QosPolicyArrayOutput

func (QosPolicyArrayOutput) ToQosPolicyArrayOutputWithContext added in v2.35.1

func (o QosPolicyArrayOutput) ToQosPolicyArrayOutputWithContext(ctx context.Context) QosPolicyArrayOutput

type QosPolicyInput added in v2.25.1

type QosPolicyInput interface {
	pulumi.Input

	ToQosPolicyOutput() QosPolicyOutput
	ToQosPolicyOutputWithContext(ctx context.Context) QosPolicyOutput
}

type QosPolicyMap added in v2.35.1

type QosPolicyMap map[string]QosPolicyInput

func (QosPolicyMap) ElementType added in v2.35.1

func (QosPolicyMap) ElementType() reflect.Type

func (QosPolicyMap) ToQosPolicyMapOutput added in v2.35.1

func (i QosPolicyMap) ToQosPolicyMapOutput() QosPolicyMapOutput

func (QosPolicyMap) ToQosPolicyMapOutputWithContext added in v2.35.1

func (i QosPolicyMap) ToQosPolicyMapOutputWithContext(ctx context.Context) QosPolicyMapOutput

type QosPolicyMapInput added in v2.35.1

type QosPolicyMapInput interface {
	pulumi.Input

	ToQosPolicyMapOutput() QosPolicyMapOutput
	ToQosPolicyMapOutputWithContext(context.Context) QosPolicyMapOutput
}

QosPolicyMapInput is an input type that accepts QosPolicyMap and QosPolicyMapOutput values. You can construct a concrete instance of `QosPolicyMapInput` via:

QosPolicyMap{ "key": QosPolicyArgs{...} }

type QosPolicyMapOutput added in v2.35.1

type QosPolicyMapOutput struct{ *pulumi.OutputState }

func (QosPolicyMapOutput) ElementType added in v2.35.1

func (QosPolicyMapOutput) ElementType() reflect.Type

func (QosPolicyMapOutput) MapIndex added in v2.35.1

func (QosPolicyMapOutput) ToQosPolicyMapOutput added in v2.35.1

func (o QosPolicyMapOutput) ToQosPolicyMapOutput() QosPolicyMapOutput

func (QosPolicyMapOutput) ToQosPolicyMapOutputWithContext added in v2.35.1

func (o QosPolicyMapOutput) ToQosPolicyMapOutputWithContext(ctx context.Context) QosPolicyMapOutput

type QosPolicyOutput added in v2.25.1

type QosPolicyOutput struct {
	*pulumi.OutputState
}

func (QosPolicyOutput) ElementType added in v2.25.1

func (QosPolicyOutput) ElementType() reflect.Type

func (QosPolicyOutput) ToQosPolicyOutput added in v2.25.1

func (o QosPolicyOutput) ToQosPolicyOutput() QosPolicyOutput

func (QosPolicyOutput) ToQosPolicyOutputWithContext added in v2.25.1

func (o QosPolicyOutput) ToQosPolicyOutputWithContext(ctx context.Context) QosPolicyOutput

func (QosPolicyOutput) ToQosPolicyPtrOutput added in v2.35.1

func (o QosPolicyOutput) ToQosPolicyPtrOutput() QosPolicyPtrOutput

func (QosPolicyOutput) ToQosPolicyPtrOutputWithContext added in v2.35.1

func (o QosPolicyOutput) ToQosPolicyPtrOutputWithContext(ctx context.Context) QosPolicyPtrOutput

type QosPolicyPtrInput added in v2.35.1

type QosPolicyPtrInput interface {
	pulumi.Input

	ToQosPolicyPtrOutput() QosPolicyPtrOutput
	ToQosPolicyPtrOutputWithContext(ctx context.Context) QosPolicyPtrOutput
}

type QosPolicyPtrOutput added in v2.35.1

type QosPolicyPtrOutput struct {
	*pulumi.OutputState
}

func (QosPolicyPtrOutput) ElementType added in v2.35.1

func (QosPolicyPtrOutput) ElementType() reflect.Type

func (QosPolicyPtrOutput) ToQosPolicyPtrOutput added in v2.35.1

func (o QosPolicyPtrOutput) ToQosPolicyPtrOutput() QosPolicyPtrOutput

func (QosPolicyPtrOutput) ToQosPolicyPtrOutputWithContext added in v2.35.1

func (o QosPolicyPtrOutput) ToQosPolicyPtrOutputWithContext(ctx context.Context) QosPolicyPtrOutput

type QosPolicyState

type QosPolicyState struct {
	// The description of the QoS policy.
	Description pulumi.StringPtrInput
	// The destination CIDR block.
	DestCidr pulumi.StringPtrInput
	// The destination port range.
	DestPortRange pulumi.StringPtrInput
	// The expiration time of the quintuple rule.
	EndTime pulumi.StringPtrInput
	// The transport layer protocol.
	IpProtocol pulumi.StringPtrInput
	// The name of the QoS policy.
	Name pulumi.StringPtrInput
	// The priority of the quintuple rule. A smaller value indicates a higher priority. If the priorities of two quintuple rules are the same, the rule created earlier is applied first.Value range: 1 to 7.
	Priority pulumi.IntPtrInput
	// The instance ID of the QoS policy to which the quintuple rule is created.
	QosId pulumi.StringPtrInput
	// The source CIDR block.
	SourceCidr pulumi.StringPtrInput
	// The source port range of the transport layer.
	SourcePortRange pulumi.StringPtrInput
	// The time when the quintuple rule takes effect.
	StartTime pulumi.StringPtrInput
}

func (QosPolicyState) ElementType

func (QosPolicyState) ElementType() reflect.Type

type QosPtrInput added in v2.35.1

type QosPtrInput interface {
	pulumi.Input

	ToQosPtrOutput() QosPtrOutput
	ToQosPtrOutputWithContext(ctx context.Context) QosPtrOutput
}

type QosPtrOutput added in v2.35.1

type QosPtrOutput struct {
	*pulumi.OutputState
}

func (QosPtrOutput) ElementType added in v2.35.1

func (QosPtrOutput) ElementType() reflect.Type

func (QosPtrOutput) ToQosPtrOutput added in v2.35.1

func (o QosPtrOutput) ToQosPtrOutput() QosPtrOutput

func (QosPtrOutput) ToQosPtrOutputWithContext added in v2.35.1

func (o QosPtrOutput) ToQosPtrOutputWithContext(ctx context.Context) QosPtrOutput

type QosState

type QosState struct {
	// The name of the QoS policy to be created. The name can contain 2 to 128 characters including a-z, A-Z, 0-9, periods, underlines, and hyphens. The name must start with an English letter, but cannot start with http:// or https://.
	Name pulumi.StringPtrInput
}

func (QosState) ElementType

func (QosState) ElementType() reflect.Type

type SnatEntry

type SnatEntry struct {
	pulumi.CustomResourceState

	// The destination CIDR block.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The ID of the SAG instance.
	SagId pulumi.StringOutput `pulumi:"sagId"`
	// The public IP address.
	SnatIp pulumi.StringOutput `pulumi:"snatIp"`
}

Provides a Sag SnatEntry resource. This topic describes how to add a SNAT entry to enable the SNAT function. The SNAT function can hide internal IP addresses and resolve private IP address conflicts. With this function, on-premises sites can access internal IP addresses, but cannot be accessed by internal IP addresses. If you do not add a SNAT entry, on-premises sites can access each other only when all related IP addresses do not conflict.

For information about Sag SnatEntry and how to use it, see [What is Sag SnatEntry](https://www.alibabacloud.com/help/doc-detail/124231.htm).

> **NOTE:** Available in 1.61.0+

> **NOTE:** Only the following regions support. [`cn-shanghai`, `cn-shanghai-finance-1`, `cn-hongkong`, `ap-southeast-1`, `ap-southeast-2`, `ap-southeast-3`, `ap-southeast-5`, `ap-northeast-1`, `eu-central-1`]

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := rocketmq.NewSnatEntry(ctx, "_default", &rocketmq.SnatEntryArgs{
			CidrBlock: pulumi.String("192.168.7.0/24"),
			SagId:     pulumi.String("sag-3rb1t3iagy3w0zgwy9"),
			SnatIp:    pulumi.String("192.0.0.2"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The Sag SnatEntry can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/snatEntry:SnatEntry example sag-abc123456:snat-abc123456

```

func GetSnatEntry

func GetSnatEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnatEntryState, opts ...pulumi.ResourceOption) (*SnatEntry, error)

GetSnatEntry gets an existing SnatEntry 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 NewSnatEntry

func NewSnatEntry(ctx *pulumi.Context,
	name string, args *SnatEntryArgs, opts ...pulumi.ResourceOption) (*SnatEntry, error)

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

func (*SnatEntry) ElementType added in v2.25.1

func (*SnatEntry) ElementType() reflect.Type

func (*SnatEntry) ToSnatEntryOutput added in v2.25.1

func (i *SnatEntry) ToSnatEntryOutput() SnatEntryOutput

func (*SnatEntry) ToSnatEntryOutputWithContext added in v2.25.1

func (i *SnatEntry) ToSnatEntryOutputWithContext(ctx context.Context) SnatEntryOutput

func (*SnatEntry) ToSnatEntryPtrOutput added in v2.35.1

func (i *SnatEntry) ToSnatEntryPtrOutput() SnatEntryPtrOutput

func (*SnatEntry) ToSnatEntryPtrOutputWithContext added in v2.35.1

func (i *SnatEntry) ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput

type SnatEntryArgs

type SnatEntryArgs struct {
	// The destination CIDR block.
	CidrBlock pulumi.StringInput
	// The ID of the SAG instance.
	SagId pulumi.StringInput
	// The public IP address.
	SnatIp pulumi.StringInput
}

The set of arguments for constructing a SnatEntry resource.

func (SnatEntryArgs) ElementType

func (SnatEntryArgs) ElementType() reflect.Type

type SnatEntryArray added in v2.35.1

type SnatEntryArray []SnatEntryInput

func (SnatEntryArray) ElementType added in v2.35.1

func (SnatEntryArray) ElementType() reflect.Type

func (SnatEntryArray) ToSnatEntryArrayOutput added in v2.35.1

func (i SnatEntryArray) ToSnatEntryArrayOutput() SnatEntryArrayOutput

func (SnatEntryArray) ToSnatEntryArrayOutputWithContext added in v2.35.1

func (i SnatEntryArray) ToSnatEntryArrayOutputWithContext(ctx context.Context) SnatEntryArrayOutput

type SnatEntryArrayInput added in v2.35.1

type SnatEntryArrayInput interface {
	pulumi.Input

	ToSnatEntryArrayOutput() SnatEntryArrayOutput
	ToSnatEntryArrayOutputWithContext(context.Context) SnatEntryArrayOutput
}

SnatEntryArrayInput is an input type that accepts SnatEntryArray and SnatEntryArrayOutput values. You can construct a concrete instance of `SnatEntryArrayInput` via:

SnatEntryArray{ SnatEntryArgs{...} }

type SnatEntryArrayOutput added in v2.35.1

type SnatEntryArrayOutput struct{ *pulumi.OutputState }

func (SnatEntryArrayOutput) ElementType added in v2.35.1

func (SnatEntryArrayOutput) ElementType() reflect.Type

func (SnatEntryArrayOutput) Index added in v2.35.1

func (SnatEntryArrayOutput) ToSnatEntryArrayOutput added in v2.35.1

func (o SnatEntryArrayOutput) ToSnatEntryArrayOutput() SnatEntryArrayOutput

func (SnatEntryArrayOutput) ToSnatEntryArrayOutputWithContext added in v2.35.1

func (o SnatEntryArrayOutput) ToSnatEntryArrayOutputWithContext(ctx context.Context) SnatEntryArrayOutput

type SnatEntryInput added in v2.25.1

type SnatEntryInput interface {
	pulumi.Input

	ToSnatEntryOutput() SnatEntryOutput
	ToSnatEntryOutputWithContext(ctx context.Context) SnatEntryOutput
}

type SnatEntryMap added in v2.35.1

type SnatEntryMap map[string]SnatEntryInput

func (SnatEntryMap) ElementType added in v2.35.1

func (SnatEntryMap) ElementType() reflect.Type

func (SnatEntryMap) ToSnatEntryMapOutput added in v2.35.1

func (i SnatEntryMap) ToSnatEntryMapOutput() SnatEntryMapOutput

func (SnatEntryMap) ToSnatEntryMapOutputWithContext added in v2.35.1

func (i SnatEntryMap) ToSnatEntryMapOutputWithContext(ctx context.Context) SnatEntryMapOutput

type SnatEntryMapInput added in v2.35.1

type SnatEntryMapInput interface {
	pulumi.Input

	ToSnatEntryMapOutput() SnatEntryMapOutput
	ToSnatEntryMapOutputWithContext(context.Context) SnatEntryMapOutput
}

SnatEntryMapInput is an input type that accepts SnatEntryMap and SnatEntryMapOutput values. You can construct a concrete instance of `SnatEntryMapInput` via:

SnatEntryMap{ "key": SnatEntryArgs{...} }

type SnatEntryMapOutput added in v2.35.1

type SnatEntryMapOutput struct{ *pulumi.OutputState }

func (SnatEntryMapOutput) ElementType added in v2.35.1

func (SnatEntryMapOutput) ElementType() reflect.Type

func (SnatEntryMapOutput) MapIndex added in v2.35.1

func (SnatEntryMapOutput) ToSnatEntryMapOutput added in v2.35.1

func (o SnatEntryMapOutput) ToSnatEntryMapOutput() SnatEntryMapOutput

func (SnatEntryMapOutput) ToSnatEntryMapOutputWithContext added in v2.35.1

func (o SnatEntryMapOutput) ToSnatEntryMapOutputWithContext(ctx context.Context) SnatEntryMapOutput

type SnatEntryOutput added in v2.25.1

type SnatEntryOutput struct {
	*pulumi.OutputState
}

func (SnatEntryOutput) ElementType added in v2.25.1

func (SnatEntryOutput) ElementType() reflect.Type

func (SnatEntryOutput) ToSnatEntryOutput added in v2.25.1

func (o SnatEntryOutput) ToSnatEntryOutput() SnatEntryOutput

func (SnatEntryOutput) ToSnatEntryOutputWithContext added in v2.25.1

func (o SnatEntryOutput) ToSnatEntryOutputWithContext(ctx context.Context) SnatEntryOutput

func (SnatEntryOutput) ToSnatEntryPtrOutput added in v2.35.1

func (o SnatEntryOutput) ToSnatEntryPtrOutput() SnatEntryPtrOutput

func (SnatEntryOutput) ToSnatEntryPtrOutputWithContext added in v2.35.1

func (o SnatEntryOutput) ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput

type SnatEntryPtrInput added in v2.35.1

type SnatEntryPtrInput interface {
	pulumi.Input

	ToSnatEntryPtrOutput() SnatEntryPtrOutput
	ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput
}

type SnatEntryPtrOutput added in v2.35.1

type SnatEntryPtrOutput struct {
	*pulumi.OutputState
}

func (SnatEntryPtrOutput) ElementType added in v2.35.1

func (SnatEntryPtrOutput) ElementType() reflect.Type

func (SnatEntryPtrOutput) ToSnatEntryPtrOutput added in v2.35.1

func (o SnatEntryPtrOutput) ToSnatEntryPtrOutput() SnatEntryPtrOutput

func (SnatEntryPtrOutput) ToSnatEntryPtrOutputWithContext added in v2.35.1

func (o SnatEntryPtrOutput) ToSnatEntryPtrOutputWithContext(ctx context.Context) SnatEntryPtrOutput

type SnatEntryState

type SnatEntryState struct {
	// The destination CIDR block.
	CidrBlock pulumi.StringPtrInput
	// The ID of the SAG instance.
	SagId pulumi.StringPtrInput
	// The public IP address.
	SnatIp pulumi.StringPtrInput
}

func (SnatEntryState) ElementType

func (SnatEntryState) ElementType() reflect.Type

type Topic

type Topic struct {
	pulumi.CustomResourceState

	// ID of the ONS Instance that owns the topics.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The type of the message. Read [Ons Topic Create](https://www.alibabacloud.com/help/doc-detail/29591.html) for further details.
	MessageType pulumi.IntOutput `pulumi:"messageType"`
	// This attribute is used to set the read-write mode for the topic. Read [Request parameters](https://www.alibabacloud.com/help/doc-detail/56880.html) for further details.
	Perm pulumi.IntPtrOutput `pulumi:"perm"`
	// This attribute is a concise description of topic. The length cannot exceed 128.
	Remark pulumi.StringPtrOutput `pulumi:"remark"`
	// 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"`
	// Replaced by `topicName` after version 1.97.0.
	//
	// Deprecated: Field 'topic' has been deprecated from version 1.97.0. Use 'topic_name' instead.
	Topic pulumi.StringOutput `pulumi:"topic"`
	// Name of the topic. Two topics on a single instance cannot have the same name and the name cannot start with 'GID' or 'CID'. The length cannot exceed 64 characters.
	TopicName pulumi.StringOutput `pulumi:"topicName"`
}

Provides an ONS topic resource.

For more information about how to use it, see [RocketMQ Topic Management API](https://www.alibabacloud.com/help/doc-detail/29591.html).

> **NOTE:** Available in 1.53.0+

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/rocketmq"
"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 := "onsInstanceName"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		topic := "onsTopicName"
		if param := cfg.Get("topic"); param != "" {
			topic = param
		}
		defaultInstance, err := rocketmq.NewInstance(ctx, "defaultInstance", &rocketmq.InstanceArgs{
			Remark: pulumi.String("default_ons_instance_remark"),
		})
		if err != nil {
			return err
		}
		_, err = rocketmq.NewTopic(ctx, "defaultTopic", &rocketmq.TopicArgs{
			TopicName:   pulumi.String(topic),
			InstanceId:  defaultInstance.ID(),
			MessageType: pulumi.Int(0),
			Remark:      pulumi.String("dafault_ons_topic_remark"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ONS TOPIC can be imported using the id, e.g.

```sh

$ pulumi import alicloud:rocketmq/topic:Topic topic MQ_INST_1234567890_Baso1234567:onsTopicDemo

```

func GetTopic

func GetTopic(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TopicState, opts ...pulumi.ResourceOption) (*Topic, error)

GetTopic gets an existing Topic 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 NewTopic

func NewTopic(ctx *pulumi.Context,
	name string, args *TopicArgs, opts ...pulumi.ResourceOption) (*Topic, error)

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

func (*Topic) ElementType added in v2.25.1

func (*Topic) ElementType() reflect.Type

func (*Topic) ToTopicOutput added in v2.25.1

func (i *Topic) ToTopicOutput() TopicOutput

func (*Topic) ToTopicOutputWithContext added in v2.25.1

func (i *Topic) ToTopicOutputWithContext(ctx context.Context) TopicOutput

func (*Topic) ToTopicPtrOutput added in v2.35.1

func (i *Topic) ToTopicPtrOutput() TopicPtrOutput

func (*Topic) ToTopicPtrOutputWithContext added in v2.35.1

func (i *Topic) ToTopicPtrOutputWithContext(ctx context.Context) TopicPtrOutput

type TopicArgs

type TopicArgs struct {
	// ID of the ONS Instance that owns the topics.
	InstanceId pulumi.StringInput
	// The type of the message. Read [Ons Topic Create](https://www.alibabacloud.com/help/doc-detail/29591.html) for further details.
	MessageType pulumi.IntInput
	// This attribute is used to set the read-write mode for the topic. Read [Request parameters](https://www.alibabacloud.com/help/doc-detail/56880.html) for further details.
	Perm pulumi.IntPtrInput
	// This attribute is a concise description of topic. The length cannot exceed 128.
	Remark pulumi.StringPtrInput
	// 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
	// Replaced by `topicName` after version 1.97.0.
	//
	// Deprecated: Field 'topic' has been deprecated from version 1.97.0. Use 'topic_name' instead.
	Topic pulumi.StringPtrInput
	// Name of the topic. Two topics on a single instance cannot have the same name and the name cannot start with 'GID' or 'CID'. The length cannot exceed 64 characters.
	TopicName pulumi.StringPtrInput
}

The set of arguments for constructing a Topic resource.

func (TopicArgs) ElementType

func (TopicArgs) ElementType() reflect.Type

type TopicArray added in v2.35.1

type TopicArray []TopicInput

func (TopicArray) ElementType added in v2.35.1

func (TopicArray) ElementType() reflect.Type

func (TopicArray) ToTopicArrayOutput added in v2.35.1

func (i TopicArray) ToTopicArrayOutput() TopicArrayOutput

func (TopicArray) ToTopicArrayOutputWithContext added in v2.35.1

func (i TopicArray) ToTopicArrayOutputWithContext(ctx context.Context) TopicArrayOutput

type TopicArrayInput added in v2.35.1

type TopicArrayInput interface {
	pulumi.Input

	ToTopicArrayOutput() TopicArrayOutput
	ToTopicArrayOutputWithContext(context.Context) TopicArrayOutput
}

TopicArrayInput is an input type that accepts TopicArray and TopicArrayOutput values. You can construct a concrete instance of `TopicArrayInput` via:

TopicArray{ TopicArgs{...} }

type TopicArrayOutput added in v2.35.1

type TopicArrayOutput struct{ *pulumi.OutputState }

func (TopicArrayOutput) ElementType added in v2.35.1

func (TopicArrayOutput) ElementType() reflect.Type

func (TopicArrayOutput) Index added in v2.35.1

func (TopicArrayOutput) ToTopicArrayOutput added in v2.35.1

func (o TopicArrayOutput) ToTopicArrayOutput() TopicArrayOutput

func (TopicArrayOutput) ToTopicArrayOutputWithContext added in v2.35.1

func (o TopicArrayOutput) ToTopicArrayOutputWithContext(ctx context.Context) TopicArrayOutput

type TopicInput added in v2.25.1

type TopicInput interface {
	pulumi.Input

	ToTopicOutput() TopicOutput
	ToTopicOutputWithContext(ctx context.Context) TopicOutput
}

type TopicMap added in v2.35.1

type TopicMap map[string]TopicInput

func (TopicMap) ElementType added in v2.35.1

func (TopicMap) ElementType() reflect.Type

func (TopicMap) ToTopicMapOutput added in v2.35.1

func (i TopicMap) ToTopicMapOutput() TopicMapOutput

func (TopicMap) ToTopicMapOutputWithContext added in v2.35.1

func (i TopicMap) ToTopicMapOutputWithContext(ctx context.Context) TopicMapOutput

type TopicMapInput added in v2.35.1

type TopicMapInput interface {
	pulumi.Input

	ToTopicMapOutput() TopicMapOutput
	ToTopicMapOutputWithContext(context.Context) TopicMapOutput
}

TopicMapInput is an input type that accepts TopicMap and TopicMapOutput values. You can construct a concrete instance of `TopicMapInput` via:

TopicMap{ "key": TopicArgs{...} }

type TopicMapOutput added in v2.35.1

type TopicMapOutput struct{ *pulumi.OutputState }

func (TopicMapOutput) ElementType added in v2.35.1

func (TopicMapOutput) ElementType() reflect.Type

func (TopicMapOutput) MapIndex added in v2.35.1

func (TopicMapOutput) ToTopicMapOutput added in v2.35.1

func (o TopicMapOutput) ToTopicMapOutput() TopicMapOutput

func (TopicMapOutput) ToTopicMapOutputWithContext added in v2.35.1

func (o TopicMapOutput) ToTopicMapOutputWithContext(ctx context.Context) TopicMapOutput

type TopicOutput added in v2.25.1

type TopicOutput struct {
	*pulumi.OutputState
}

func (TopicOutput) ElementType added in v2.25.1

func (TopicOutput) ElementType() reflect.Type

func (TopicOutput) ToTopicOutput added in v2.25.1

func (o TopicOutput) ToTopicOutput() TopicOutput

func (TopicOutput) ToTopicOutputWithContext added in v2.25.1

func (o TopicOutput) ToTopicOutputWithContext(ctx context.Context) TopicOutput

func (TopicOutput) ToTopicPtrOutput added in v2.35.1

func (o TopicOutput) ToTopicPtrOutput() TopicPtrOutput

func (TopicOutput) ToTopicPtrOutputWithContext added in v2.35.1

func (o TopicOutput) ToTopicPtrOutputWithContext(ctx context.Context) TopicPtrOutput

type TopicPtrInput added in v2.35.1

type TopicPtrInput interface {
	pulumi.Input

	ToTopicPtrOutput() TopicPtrOutput
	ToTopicPtrOutputWithContext(ctx context.Context) TopicPtrOutput
}

type TopicPtrOutput added in v2.35.1

type TopicPtrOutput struct {
	*pulumi.OutputState
}

func (TopicPtrOutput) ElementType added in v2.35.1

func (TopicPtrOutput) ElementType() reflect.Type

func (TopicPtrOutput) ToTopicPtrOutput added in v2.35.1

func (o TopicPtrOutput) ToTopicPtrOutput() TopicPtrOutput

func (TopicPtrOutput) ToTopicPtrOutputWithContext added in v2.35.1

func (o TopicPtrOutput) ToTopicPtrOutputWithContext(ctx context.Context) TopicPtrOutput

type TopicState

type TopicState struct {
	// ID of the ONS Instance that owns the topics.
	InstanceId pulumi.StringPtrInput
	// The type of the message. Read [Ons Topic Create](https://www.alibabacloud.com/help/doc-detail/29591.html) for further details.
	MessageType pulumi.IntPtrInput
	// This attribute is used to set the read-write mode for the topic. Read [Request parameters](https://www.alibabacloud.com/help/doc-detail/56880.html) for further details.
	Perm pulumi.IntPtrInput
	// This attribute is a concise description of topic. The length cannot exceed 128.
	Remark pulumi.StringPtrInput
	// 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
	// Replaced by `topicName` after version 1.97.0.
	//
	// Deprecated: Field 'topic' has been deprecated from version 1.97.0. Use 'topic_name' instead.
	Topic pulumi.StringPtrInput
	// Name of the topic. Two topics on a single instance cannot have the same name and the name cannot start with 'GID' or 'CID'. The length cannot exceed 64 characters.
	TopicName pulumi.StringPtrInput
}

func (TopicState) ElementType

func (TopicState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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