get Instance Classes
This data source provides the RDS instance classes resource available info of Alibaba Cloud.
NOTE: Available in v1.46.0+
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const resources = alicloud.rds.getInstanceClasses({
instanceChargeType: "PostPaid",
engine: "MySQL",
engineVersion: "5.6",
outputFile: "./classes.txt",
});
export const firstDbInstanceClass = resources.then(resources => resources.instanceClasses?.[0]?.instanceClass);
import pulumi
import pulumi_alicloud as alicloud
resources = alicloud.rds.get_instance_classes(instance_charge_type="PostPaid",
engine="MySQL",
engine_version="5.6",
output_file="./classes.txt")
pulumi.export("firstDbInstanceClass", resources.instance_classes[0].instance_class)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var resources = AliCloud.Rds.GetInstanceClasses.Invoke(new()
{
InstanceChargeType = "PostPaid",
Engine = "MySQL",
EngineVersion = "5.6",
OutputFile = "./classes.txt",
});
return new Dictionary<string, object?>
{
["firstDbInstanceClass"] = resources.Apply(getInstanceClassesResult => getInstanceClassesResult.InstanceClasses[0]?.InstanceClass),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
resources, err := rds.GetInstanceClasses(ctx, &rds.GetInstanceClassesArgs{
InstanceChargeType: pulumi.StringRef("PostPaid"),
Engine: pulumi.StringRef("MySQL"),
EngineVersion: pulumi.StringRef("5.6"),
OutputFile: pulumi.StringRef("./classes.txt"),
}, nil)
if err != nil {
return err
}
ctx.Export("firstDbInstanceClass", resources.InstanceClasses[0].InstanceClass)
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.rds.RdsFunctions;
import com.pulumi.alicloud.rds.inputs.GetInstanceClassesArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var resources = RdsFunctions.getInstanceClasses(GetInstanceClassesArgs.builder()
.instanceChargeType("PostPaid")
.engine("MySQL")
.engineVersion("5.6")
.outputFile("./classes.txt")
.build());
ctx.export("firstDbInstanceClass", resources.applyValue(getInstanceClassesResult -> getInstanceClassesResult.instanceClasses()[0].instanceClass()));
}
}
variables:
resources:
fn::invoke:
function: alicloud:rds:getInstanceClasses
arguments:
instanceChargeType: PostPaid
engine: MySQL
engineVersion: '5.6'
outputFile: ./classes.txt
outputs:
firstDbInstanceClass: ${resources.instanceClasses[0].instanceClass}
Return
A collection of values returned by getInstanceClasses.
Parameters
A collection of arguments for invoking getInstanceClasses.
Return
A collection of values returned by getInstanceClasses.
Parameters
DB Instance category. the value like `Basic`, `HighAvailability`, `Finance`, `AlwaysOn`, `serverless_basic`, `serverless_standard`, `serverless_ha`, `cluster`, detail info.
The commodity code of the instance. Valid values:
bards: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
rds: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
rords: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
rds_rordspre_public_cn: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
bards_intl: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
rds_intl: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
rords_intl: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
rds_rordspre_public_intl: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
rds_serverless_public_cn: The instance is a subscription serverless instance. This value is available on the China site (aliyun.com).
rds_serverless_public_intl: The instance is a subscription serverless instance. This value is available on the International site (alibabacloud.com).
NOTE: The field
db_instance_id
will be ignored whencommodity_code
is not a read-only type.
The DB instance class type by the user.
The ID of the instance.
NOTE: The field
db_instance_id
will be ignored whencommodity_code
is not a read-only type.
The DB instance storage space required by the user. Valid values: "cloud_ssd", "local_ssd", "cloud_essd", "cloud_essd2", "cloud_essd3".
Database type. Valid values:"MySQL", "SQLServer", "PostgreSQL", "MariaDB". If not set, it will match all of engines.
Database version required by the user. Value options can refer to the latest docs detail info EngineVersion
.
Filter the results by charge type. Valid values: PrePaid
and PostPaid
and Serverless
. Default to PostPaid
.
Whether to show multi available zone. Default false to not show multi availability zone.
File name where to save data source results (after running pulumi up
).
It has been deprecated from version 1.134.0+ and using db_instance_storage_type
instead.
The Zone to launch the DB instance.
See also
Return
A collection of values returned by getInstanceClasses.
Parameters
Builder for com.pulumi.alicloud.rds.kotlin.inputs.GetInstanceClassesPlainArgs.