@pulumi/linode
Version:
A Pulumi package for creating and managing linode cloud resources.
116 lines (115 loc) • 3.4 kB
TypeScript
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>[]>;
}