getInstanceTypes

Provides information about Linode Instance types that match a set of filters.

Attributes

Each Linode Instance type will be stored in the types attribute and will export the following attributes:

  • id - The ID representing the Linode Type.

  • label - The Linode Type’s label is for display purposes only.

  • class - The class of the Linode Type. See all classes here.

  • disk - The Disk size, in MB, of the Linode Type.

  • price.0.hourly - Cost (in US dollars) per hour.

  • price.0.monthly - Cost (in US dollars) per month.

  • addons.0.backups.0.price.0.hourly - The cost (in US dollars) per hour to add Backups service.

  • addons.0.backups.0.price.0.monthly - The cost (in US dollars) per month to add Backups service.

  • network_out - The Mbits outbound bandwidth allocation.

  • memory - The amount of RAM included in this Linode Type.

  • transfer - The monthly outbound transfer amount, in MB.

  • vcpus - The number of VCPU cores this Linode Type offers.

Filterable Fields

  • class

  • disk

  • gpus

  • label

  • memory

  • network_out

  • transfer

  • vcpus

Example Usage

using Pulumi;
using Linode = Pulumi.Linode;

class MyStack : Stack
{
    public MyStack()
    {
        var specific_types = Output.Create(Linode.GetInstanceTypes.InvokeAsync(new Linode.GetInstanceTypesArgs
        {
            Filters = 
            {
                new Linode.Inputs.GetInstanceTypesFilterArgs
                {
                    Name = "vcpus",
                    Values = 
                    {
                        "2",
                    },
                },
            },
        }));
    }

}
package main

import (
	"github.com/pulumi/pulumi-linode/sdk/v3/go/linode"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := linode.GetInstanceTypes(ctx, &GetInstanceTypesArgs{
			Filters: []GetInstanceTypesFilter{
				GetInstanceTypesFilter{
					Name: "vcpus",
					Values: []string{
						"2",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_linode as linode

specific_types = linode.get_instance_types(filters=[linode.GetInstanceTypesFilterArgs(
    name="vcpus",
    values=["2"],
)])
import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const specific_types = pulumi.output(linode.getInstanceTypes({
    filters: [{
        name: "vcpus",
        values: ["2"],
    }],
}));

Using getInstanceTypes

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 getInstanceTypes(args: GetInstanceTypesArgs, opts?: InvokeOptions): Promise<GetInstanceTypesResult>
function getInstanceTypesOutput(args: GetInstanceTypesOutputArgs, opts?: InvokeOptions): Output<GetInstanceTypesResult>
def get_instance_types(filters: Optional[Sequence[GetInstanceTypesFilter]] = None,
                       order: Optional[str] = None,
                       order_by: Optional[str] = None,
                       opts: Optional[InvokeOptions] = None) -> GetInstanceTypesResult
def get_instance_types_output(filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetInstanceTypesFilterArgs]]]] = None,
                       order: Optional[pulumi.Input[str]] = None,
                       order_by: Optional[pulumi.Input[str]] = None,
                       opts: Optional[InvokeOptions] = None) -> Output[GetInstanceTypesResult]
func GetInstanceTypes(ctx *Context, args *GetInstanceTypesArgs, opts ...InvokeOption) (*GetInstanceTypesResult, error)
func GetInstanceTypesOutput(ctx *Context, args *GetInstanceTypesOutputArgs, opts ...InvokeOption) GetInstanceTypesResultOutput

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

public static class GetInstanceTypes 
{
    public static Task<GetInstanceTypesResult> InvokeAsync(GetInstanceTypesArgs args, InvokeOptions? opts = null)
    public static Output<GetInstanceTypesResult> Invoke(GetInstanceTypesInvokeArgs args, InvokeOptions? opts = null)
}

The following arguments are supported:

Filters List<GetInstanceTypesFilter>
Order string
The order in which results should be returned. (asc, desc; default asc)
OrderBy string
The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
Filters []GetInstanceTypesFilter
Order string
The order in which results should be returned. (asc, desc; default asc)
OrderBy string
The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
filters GetInstanceTypesFilter[]
order string
The order in which results should be returned. (asc, desc; default asc)
orderBy string
The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
filters Sequence[GetInstanceTypesFilter]
order str
The order in which results should be returned. (asc, desc; default asc)
order_by str
The attribute to order the results by. See the Filterable Fields section for a list of valid fields.

getInstanceTypes Result

The following output properties are available:

Id string
The provider-assigned unique ID for this managed resource.
Types List<GetInstanceTypesType>
Filters List<GetInstanceTypesFilter>
Order string
OrderBy string
Id string
The provider-assigned unique ID for this managed resource.
Types []GetInstanceTypesType
Filters []GetInstanceTypesFilter
Order string
OrderBy string
id string
The provider-assigned unique ID for this managed resource.
types GetInstanceTypesType[]
filters GetInstanceTypesFilter[]
order string
orderBy string
id str
The provider-assigned unique ID for this managed resource.
types Sequence[GetInstanceTypesType]
filters Sequence[GetInstanceTypesFilter]
order str
order_by str

Supporting Types

GetInstanceTypesFilter

Name string
The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
Values List<string>
A list of values for the filter to allow. These values should all be in string form.
MatchBy string
The method to match the field by. (exact, regex, substring; default exact)
Name string
The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
Values []string
A list of values for the filter to allow. These values should all be in string form.
MatchBy string
The method to match the field by. (exact, regex, substring; default exact)
name string
The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
values string[]
A list of values for the filter to allow. These values should all be in string form.
matchBy string
The method to match the field by. (exact, regex, substring; default exact)
name str
The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
values Sequence[str]
A list of values for the filter to allow. These values should all be in string form.
match_by str
The method to match the field by. (exact, regex, substring; default exact)

GetInstanceTypesType

GetInstanceTypesTypeAddon

GetInstanceTypesTypeAddonBackup

GetInstanceTypesTypeAddonBackupPrice

Hourly double
Monthly double
Hourly float64
Monthly float64
hourly number
monthly number
hourly float
monthly float

GetInstanceTypesTypePrice

Hourly double
Monthly double
Hourly float64
Monthly float64
hourly number
monthly number
hourly float
monthly float

Package Details

Repository
https://github.com/pulumi/pulumi-linode
License
Apache-2.0
Notes
This Pulumi package is based on the linode Terraform Provider.