getInstanceTypeFamilies

This data source provides the ECS instance type families of Alibaba Cloud.

NOTE: Available in 1.54.0+

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = alicloud.ecs.getInstanceTypeFamilies({
instanceChargeType: "PrePaid",
});
export const firstInstanceTypeFamilyId = _default.then(_default => _default.families?.[0]?.id);
export const instanceIds = _default.then(_default => _default.ids);
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.ecs.get_instance_type_families(instance_charge_type="PrePaid")
pulumi.export("firstInstanceTypeFamilyId", default.families[0].id)
pulumi.export("instanceIds", default.ids)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = AliCloud.Ecs.GetInstanceTypeFamilies.Invoke(new()
{
InstanceChargeType = "PrePaid",
});
return new Dictionary<string, object?>
{
["firstInstanceTypeFamilyId"] = @default&#46;Apply(@default => @default&#46;Apply(getInstanceTypeFamiliesResult => getInstanceTypeFamiliesResult&#46;Families[0]?.Id)),
["instanceIds"] = @default.Apply(@default => @default.Apply(getInstanceTypeFamiliesResult => getInstanceTypeFamiliesResult.Ids)),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := ecs.GetInstanceTypeFamilies(ctx, &ecs.GetInstanceTypeFamiliesArgs{
InstanceChargeType: pulumi.StringRef("PrePaid"),
}, nil)
if err != nil {
return err
}
ctx.Export("firstInstanceTypeFamilyId", _default.Families[0].Id)
ctx.Export("instanceIds", _default.Ids)
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.ecs.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetInstanceTypeFamiliesArgs;
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 default = EcsFunctions.getInstanceTypeFamilies(GetInstanceTypeFamiliesArgs.builder()
.instanceChargeType("PrePaid")
.build());
ctx.export("firstInstanceTypeFamilyId", default_.families()[0].id());
ctx.export("instanceIds", default_.ids());
}
}
variables:
default:
fn::invoke:
function: alicloud:ecs:getInstanceTypeFamilies
arguments:
instanceChargeType: PrePaid
outputs:
firstInstanceTypeFamilyId: ${default.families[0].id}
instanceIds: ${default.ids}

Return

A collection of values returned by getInstanceTypeFamilies.

Parameters

argument

A collection of arguments for invoking getInstanceTypeFamilies.


suspend fun getInstanceTypeFamilies(generation: String? = null, instanceChargeType: String? = null, outputFile: String? = null, spotStrategy: String? = null, zoneId: String? = null): GetInstanceTypeFamiliesResult

Return

A collection of values returned by getInstanceTypeFamilies.

Parameters

generation

The generation of the instance type family, Valid values: ecs-1, ecs-2, ecs-3, ecs-4, ecs-5, ecs-6. For more information, see Instance type families.

instanceChargeType

Valid values are PrePaid, PostPaid, Default to PostPaid.

outputFile

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

spotStrategy

Filter the results by ECS spot type. Valid values: NoSpot, SpotWithPriceLimit and SpotAsPriceGo. Default to NoSpot.

zoneId

The Zone to launch the instance.

See also


Return

A collection of values returned by getInstanceTypeFamilies.

Parameters

argument

Builder for com.pulumi.alicloud.ecs.kotlin.inputs.GetInstanceTypeFamiliesPlainArgs.

See also