UNPKG

@pulumi/linode

Version:

A Pulumi package for creating and managing linode cloud resources.

116 lines (115 loc) 3.4 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Provides information about a list of Linode Placement Groups that match a set of filters. * For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-placement-groups). * * ## Example Usage * * The following example shows how one might use this data source to list Placement Groups. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as linode from "@pulumi/linode"; * * export = async () => { * const all = await linode.getPlacementGroups({}); * const filtered = await linode.getPlacementGroups({ * filters: [{ * name: "label", * values: ["my-label"], * }], * }); * return { * "all-pgs": all.placementGroups, * "filtered-pgs": filtered.placementGroups, * }; * } * ``` * * ## Filterable Fields * * * `id` * * * `label` * * * `region` * * * `placementGroupType` * * * `placementGroupPolicy` * * * `isCompliant` */ export declare function getPlacementGroups(args?: GetPlacementGroupsArgs, opts?: pulumi.InvokeOptions): Promise<GetPlacementGroupsResult>; /** * A collection of arguments for invoking getPlacementGroups. */ export interface GetPlacementGroupsArgs { filters?: inputs.GetPlacementGroupsFilter[]; order?: string; orderBy?: string; placementGroups?: inputs.GetPlacementGroupsPlacementGroup[]; } /** * A collection of values returned by getPlacementGroups. */ export interface GetPlacementGroupsResult { readonly filters?: outputs.GetPlacementGroupsFilter[]; readonly id: string; readonly order?: string; readonly orderBy?: string; readonly placementGroups?: outputs.GetPlacementGroupsPlacementGroup[]; } /** * Provides information about a list of Linode Placement Groups that match a set of filters. * For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-placement-groups). * * ## Example Usage * * The following example shows how one might use this data source to list Placement Groups. * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as linode from "@pulumi/linode"; * * export = async () => { * const all = await linode.getPlacementGroups({}); * const filtered = await linode.getPlacementGroups({ * filters: [{ * name: "label", * values: ["my-label"], * }], * }); * return { * "all-pgs": all.placementGroups, * "filtered-pgs": filtered.placementGroups, * }; * } * ``` * * ## Filterable Fields * * * `id` * * * `label` * * * `region` * * * `placementGroupType` * * * `placementGroupPolicy` * * * `isCompliant` */ export declare function getPlacementGroupsOutput(args?: GetPlacementGroupsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetPlacementGroupsResult>; /** * A collection of arguments for invoking getPlacementGroups. */ export interface GetPlacementGroupsOutputArgs { filters?: pulumi.Input<pulumi.Input<inputs.GetPlacementGroupsFilterArgs>[]>; order?: pulumi.Input<string>; orderBy?: pulumi.Input<string>; placementGroups?: pulumi.Input<pulumi.Input<inputs.GetPlacementGroupsPlacementGroupArgs>[]>; }