getInstances

The alicloud.rds.getInstances data source provides a collection of RDS instances available in Alibaba Cloud account. Filters support regular expression for the instance name, searches by tags, and other filters which are listed below.

NOTE: Available since v1.7.0+

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const dbInstancesDs = alicloud.rds.getInstances({
nameRegex: "data-\\d+",
status: "Running",
tags: {
type: "database",
size: "tiny",
},
});
export const firstDbInstanceId = dbInstancesDs.then(dbInstancesDs => dbInstancesDs.instances?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
db_instances_ds = alicloud.rds.get_instances(name_regex="data-\\d+",
status="Running",
tags={
"type": "database",
"size": "tiny",
})
pulumi.export("firstDbInstanceId", db_instances_ds.instances[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var dbInstancesDs = AliCloud.Rds.GetInstances.Invoke(new()
{
NameRegex = "data-\\d+",
Status = "Running",
Tags =
{
{ "type", "database" },
{ "size", "tiny" },
},
});
return new Dictionary<string, object?>
{
["firstDbInstanceId"] = dbInstancesDs&#46;Apply(getInstancesResult => getInstancesResult&#46;Instances[0]?.Id),
};
});
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 {
dbInstancesDs, err := rds.GetInstances(ctx, &rds.GetInstancesArgs{
NameRegex: pulumi.StringRef("data-\\d+"),
Status: pulumi.StringRef("Running"),
Tags: map[string]interface{}{
"type": "database",
"size": "tiny",
},
}, nil)
if err != nil {
return err
}
ctx.Export("firstDbInstanceId", dbInstancesDs.Instances[0].Id)
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.GetInstancesArgs;
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 dbInstancesDs = RdsFunctions.getInstances(GetInstancesArgs.builder()
.nameRegex("data-\\d+")
.status("Running")
.tags(Map.ofEntries(
Map.entry("type", "database"),
Map.entry("size", "tiny")
))
.build());
ctx.export("firstDbInstanceId", dbInstancesDs.applyValue(getInstancesResult -> getInstancesResult.instances()[0].id()));
}
}
variables:
dbInstancesDs:
fn::invoke:
function: alicloud:rds:getInstances
arguments:
nameRegex: data-\d+
status: Running
tags:
type: database
size: tiny
outputs:
firstDbInstanceId: ${dbInstancesDs.instances[0].id}

Return

A collection of values returned by getInstances.

Parameters

argument

A collection of arguments for invoking getInstances.


suspend fun getInstances(connectionMode: String? = null, dbType: String? = null, enableDetails: Boolean? = null, engine: String? = null, ids: List<String>? = null, nameRegex: String? = null, outputFile: String? = null, pageNumber: Int? = null, pageSize: Int? = null, status: String? = null, tags: Map<String, String>? = null, vpcId: String? = null, vswitchId: String? = null): GetInstancesResult

Return

A collection of values returned by getInstances.

Parameters

connectionMode

Standard for standard access mode and Safe for high security access mode.

dbType

Primary for primary instance, Readonly for read-only instance, Guard for disaster recovery instance, and Temp for temporary instance.

enableDetails

Default to false. Set it to true can output parameter template about resource attributes.

engine

Database type. Options are MySQL, SQLServer, PostgreSQL, MariaDB. If no value is specified, all types are returned.

ids

A list of RDS instance IDs.

nameRegex

A regex string to filter results by instance name.

outputFile

File name where to save data source results (after running pulumi preview).

pageNumber
pageSize
status

Status of the instance.

tags

A map of tags assigned to the DB instances. Note: Before 1.60.0, the value's format is a json string which including TagKey and TagValue. TagKey cannot be null, and TagValue can be empty. Format example "{\"key1\":\"value1\"}"

vpcId

Used to retrieve instances belong to specified VPC.

vswitchId

Used to retrieve instances belong to specified vswitch resources.

See also


Return

A collection of values returned by getInstances.

Parameters

argument

Builder for com.pulumi.alicloud.rds.kotlin.inputs.GetInstancesPlainArgs.

See also