1. Packages
  2. Alibaba Cloud Provider
  3. API Docs
  4. kvstore
  5. getInstanceEngines
Alibaba Cloud v3.76.0 published on Tuesday, Apr 8, 2025 by Pulumi

alicloud.kvstore.getInstanceEngines

Explore with Pulumi AI

Alibaba Cloud v3.76.0 published on Tuesday, Apr 8, 2025 by Pulumi

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);
Copy
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)
Copy
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
	})
}
Copy
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),
    };
});
Copy
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.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
            .instanceChargeType("PrePaid")
            .engine("Redis")
            .engineVersion("5.0")
            .outputFile("./engines.txt")
            .build());

        ctx.export("firstKvstoreInstanceClass", resourcesGetInstanceEngines.applyValue(getInstanceEnginesResult -> getInstanceEnginesResult.instanceEngines()[0].engine()));
    }
}
Copy
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}
Copy

Using getInstanceEngines

Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

function getInstanceEngines(args: GetInstanceEnginesArgs, opts?: InvokeOptions): Promise<GetInstanceEnginesResult>
function getInstanceEnginesOutput(args: GetInstanceEnginesOutputArgs, opts?: InvokeOptions): Output<GetInstanceEnginesResult>
Copy
def get_instance_engines(engine: Optional[str] = None,
                         engine_version: Optional[str] = None,
                         instance_charge_type: Optional[str] = None,
                         output_file: Optional[str] = None,
                         zone_id: Optional[str] = None,
                         opts: Optional[InvokeOptions] = None) -> GetInstanceEnginesResult
def get_instance_engines_output(engine: Optional[pulumi.Input[str]] = None,
                         engine_version: Optional[pulumi.Input[str]] = None,
                         instance_charge_type: Optional[pulumi.Input[str]] = None,
                         output_file: Optional[pulumi.Input[str]] = None,
                         zone_id: Optional[pulumi.Input[str]] = None,
                         opts: Optional[InvokeOptions] = None) -> Output[GetInstanceEnginesResult]
Copy
func GetInstanceEngines(ctx *Context, args *GetInstanceEnginesArgs, opts ...InvokeOption) (*GetInstanceEnginesResult, error)
func GetInstanceEnginesOutput(ctx *Context, args *GetInstanceEnginesOutputArgs, opts ...InvokeOption) GetInstanceEnginesResultOutput
Copy

> Note: This function is named GetInstanceEngines in the Go SDK.

public static class GetInstanceEngines 
{
    public static Task<GetInstanceEnginesResult> InvokeAsync(GetInstanceEnginesArgs args, InvokeOptions? opts = null)
    public static Output<GetInstanceEnginesResult> Invoke(GetInstanceEnginesInvokeArgs args, InvokeOptions? opts = null)
}
Copy
public static CompletableFuture<GetInstanceEnginesResult> getInstanceEngines(GetInstanceEnginesArgs args, InvokeOptions options)
public static Output<GetInstanceEnginesResult> getInstanceEngines(GetInstanceEnginesArgs args, InvokeOptions options)
Copy
fn::invoke:
  function: alicloud:kvstore/getInstanceEngines:getInstanceEngines
  arguments:
    # arguments dictionary
Copy

The following arguments are supported:

ZoneId
This property is required.
Changes to this property will trigger replacement.
string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
Engine Changes to this property will trigger replacement. string
Database type. Options are Redis, Memcache. Default to Redis.
EngineVersion Changes to this property will trigger replacement. string
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.
InstanceChargeType Changes to this property will trigger replacement. string
Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.
OutputFile string
File name where to save data source results (after running pulumi up).
ZoneId
This property is required.
Changes to this property will trigger replacement.
string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
Engine Changes to this property will trigger replacement. string
Database type. Options are Redis, Memcache. Default to Redis.
EngineVersion Changes to this property will trigger replacement. string
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.
InstanceChargeType Changes to this property will trigger replacement. string
Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.
OutputFile string
File name where to save data source results (after running pulumi up).
zoneId
This property is required.
Changes to this property will trigger replacement.
String
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine Changes to this property will trigger replacement. String
Database type. Options are Redis, Memcache. Default to Redis.
engineVersion Changes to this property will trigger replacement. String
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.
instanceChargeType Changes to this property will trigger replacement. String
Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.
outputFile String
File name where to save data source results (after running pulumi up).
zoneId
This property is required.
Changes to this property will trigger replacement.
string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine Changes to this property will trigger replacement. string
Database type. Options are Redis, Memcache. Default to Redis.
engineVersion Changes to this property will trigger replacement. string
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.
instanceChargeType Changes to this property will trigger replacement. string
Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.
outputFile string
File name where to save data source results (after running pulumi up).
zone_id
This property is required.
Changes to this property will trigger replacement.
str
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine Changes to this property will trigger replacement. str
Database type. Options are Redis, Memcache. Default to Redis.
engine_version Changes to this property will trigger replacement. str
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.
instance_charge_type Changes to this property will trigger replacement. str
Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.
output_file str
File name where to save data source results (after running pulumi up).
zoneId
This property is required.
Changes to this property will trigger replacement.
String
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine Changes to this property will trigger replacement. String
Database type. Options are Redis, Memcache. Default to Redis.
engineVersion Changes to this property will trigger replacement. String
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.
instanceChargeType Changes to this property will trigger replacement. String
Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PrePaid.
outputFile String
File name where to save data source results (after running pulumi up).

getInstanceEngines Result

The following output properties are available:

Id string
The provider-assigned unique ID for this managed resource.
InstanceEngines List<Pulumi.AliCloud.KVStore.Outputs.GetInstanceEnginesInstanceEngine>
A list of Tair (Redis OSS-Compatible) And Memcache (KVStore) available instance engines. Each element contains the following attributes:
ZoneId string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
Engine string
Database type.
EngineVersion string
Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance version.
InstanceChargeType string
OutputFile string
Id string
The provider-assigned unique ID for this managed resource.
InstanceEngines []GetInstanceEnginesInstanceEngine
A list of Tair (Redis OSS-Compatible) And Memcache (KVStore) available instance engines. Each element contains the following attributes:
ZoneId string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
Engine string
Database type.
EngineVersion string
Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance version.
InstanceChargeType string
OutputFile string
id String
The provider-assigned unique ID for this managed resource.
instanceEngines List<GetInstanceEnginesInstanceEngine>
A list of Tair (Redis OSS-Compatible) And Memcache (KVStore) available instance engines. Each element contains the following attributes:
zoneId String
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine String
Database type.
engineVersion String
Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance version.
instanceChargeType String
outputFile String
id string
The provider-assigned unique ID for this managed resource.
instanceEngines GetInstanceEnginesInstanceEngine[]
A list of Tair (Redis OSS-Compatible) And Memcache (KVStore) available instance engines. Each element contains the following attributes:
zoneId string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine string
Database type.
engineVersion string
Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance version.
instanceChargeType string
outputFile string
id str
The provider-assigned unique ID for this managed resource.
instance_engines Sequence[GetInstanceEnginesInstanceEngine]
A list of Tair (Redis OSS-Compatible) And Memcache (KVStore) available instance engines. Each element contains the following attributes:
zone_id str
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine str
Database type.
engine_version str
Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance version.
instance_charge_type str
output_file str
id String
The provider-assigned unique ID for this managed resource.
instanceEngines List<Property Map>
A list of Tair (Redis OSS-Compatible) And Memcache (KVStore) available instance engines. Each element contains the following attributes:
zoneId String
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine String
Database type.
engineVersion String
Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance version.
instanceChargeType String
outputFile String

Supporting Types

GetInstanceEnginesInstanceEngine

Engine This property is required. string
Database type. Options are Redis, Memcache. Default to Redis.
EngineVersion This property is required. string
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.
ZoneId This property is required. string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
Engine This property is required. string
Database type. Options are Redis, Memcache. Default to Redis.
EngineVersion This property is required. string
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.
ZoneId This property is required. string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine This property is required. String
Database type. Options are Redis, Memcache. Default to Redis.
engineVersion This property is required. String
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.
zoneId This property is required. String
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine This property is required. string
Database type. Options are Redis, Memcache. Default to Redis.
engineVersion This property is required. string
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.
zoneId This property is required. string
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine This property is required. str
Database type. Options are Redis, Memcache. Default to Redis.
engine_version This property is required. str
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.
zone_id This property is required. str
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.
engine This property is required. String
Database type. Options are Redis, Memcache. Default to Redis.
engineVersion This property is required. String
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.
zoneId This property is required. String
The Zone to launch the Tair (Redis OSS-Compatible) And Memcache (KVStore) Instance.

Package Details

Repository
Alibaba Cloud pulumi/pulumi-alicloud
License
Apache-2.0
Notes
This Pulumi package is based on the alicloud Terraform Provider.
Alibaba Cloud v3.76.0 published on Tuesday, Apr 8, 2025 by Pulumi