get Instance Engines
This data source provides the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance engines resource available info of Alibaba Cloud.
NOTE: Available since v1.51.0
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const resources = alicloud.getZones({
availableResourceCreation: "KVStore",
});
const resourcesGetInstanceEngines = resources.then(resources => alicloud.kvstore.getInstanceEngines({
zoneId: resources.zones?.[0]?.id,
instanceChargeType: "PrePaid",
engine: "Redis",
engineVersion: "5.0",
outputFile: "./engines.txt",
}));
export const firstKvstoreInstanceClass = resourcesGetInstanceEngines.then(resourcesGetInstanceEngines => resourcesGetInstanceEngines.instanceEngines?.[0]?.engine);
import pulumi
import pulumi_alicloud as alicloud
resources = alicloud.get_zones(available_resource_creation="KVStore")
resources_get_instance_engines = alicloud.kvstore.get_instance_engines(zone_id=resources.zones[0].id,
instance_charge_type="PrePaid",
engine="Redis",
engine_version="5.0",
output_file="./engines.txt")
pulumi.export("firstKvstoreInstanceClass", resources_get_instance_engines.instance_engines[0].engine)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var resources = AliCloud.GetZones.Invoke(new()
{
AvailableResourceCreation = "KVStore",
});
var resourcesGetInstanceEngines = AliCloud.KVStore.GetInstanceEngines.Invoke(new()
{
ZoneId = resources.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
InstanceChargeType = "PrePaid",
Engine = "Redis",
EngineVersion = "5.0",
OutputFile = "./engines.txt",
});
return new Dictionary<string, object?>
{
["firstKvstoreInstanceClass"] = resourcesGetInstanceEngines.Apply(getInstanceEnginesResult => getInstanceEnginesResult.InstanceEngines[0]?.Engine),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/kvstore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
resources, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
AvailableResourceCreation: pulumi.StringRef("KVStore"),
}, nil)
if err != nil {
return err
}
resourcesGetInstanceEngines, err := kvstore.GetInstanceEngines(ctx, &kvstore.GetInstanceEnginesArgs{
ZoneId: resources.Zones[0].Id,
InstanceChargeType: pulumi.StringRef("PrePaid"),
Engine: pulumi.StringRef("Redis"),
EngineVersion: pulumi.StringRef("5.0"),
OutputFile: pulumi.StringRef("./engines.txt"),
}, nil)
if err != nil {
return err
}
ctx.Export("firstKvstoreInstanceClass", resourcesGetInstanceEngines.InstanceEngines[0].Engine)
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.kvstore.KvstoreFunctions;
import com.pulumi.alicloud.kvstore.inputs.GetInstanceEnginesArgs;
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 = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("KVStore")
.build());
final var resourcesGetInstanceEngines = KvstoreFunctions.getInstanceEngines(GetInstanceEnginesArgs.builder()
.zoneId(resources.zones()[0].id())
.instanceChargeType("PrePaid")
.engine("Redis")
.engineVersion("5.0")
.outputFile("./engines.txt")
.build());
ctx.export("firstKvstoreInstanceClass", resourcesGetInstanceEngines.instanceEngines()[0].engine());
}
}
variables:
resources:
fn::invoke:
function: alicloud:getZones
arguments:
availableResourceCreation: KVStore
resourcesGetInstanceEngines:
fn::invoke:
function: alicloud:kvstore:getInstanceEngines
arguments:
zoneId: ${resources.zones[0].id}
instanceChargeType: PrePaid
engine: Redis
engineVersion: '5.0'
outputFile: ./engines.txt
outputs:
firstKvstoreInstanceClass: ${resourcesGetInstanceEngines.instanceEngines[0].engine}
Return
A collection of values returned by getInstanceEngines.
Parameters
A collection of arguments for invoking getInstanceEngines.
Return
A collection of values returned by getInstanceEngines.
Parameters
Database type. Options are Redis
, Memcache
. Default to Redis
.
Database version required by the user. Value options of Redis can refer to the latest docs detail info EngineVersion
. Value of Memcache should be empty.
Filter the results by charge type. Valid values: PrePaid
and PostPaid
. Default to PrePaid
.
File name where to save data source results (after running pulumi up
).
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
See also
Return
A collection of values returned by getInstanceEngines.
Parameters
Builder for com.pulumi.alicloud.kvstore.kotlin.inputs.GetInstanceEnginesPlainArgs.