UNPKG

@volcengine/pulumi

Version:

A Pulumi package for creating and managing volcengine cloud resources.

176 lines (175 loc) 5.49 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Use this data source to query detailed information of scaling groups * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcengine from "@pulumi/volcengine"; * import * as volcengine from "@volcengine/pulumi"; * * const fooZones = volcengine.ecs.getZones({}); * const fooVpc = new volcengine.vpc.Vpc("fooVpc", { * vpcName: "acc-test-vpc", * cidrBlock: "172.16.0.0/16", * }); * const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", { * subnetName: "acc-test-subnet", * cidrBlock: "172.16.0.0/24", * zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id), * vpcId: fooVpc.id, * }); * const fooScalingGroup: volcengine.autoscaling.ScalingGroup[] = []; * for (const range = {value: 0}; range.value < 3; range.value++) { * fooScalingGroup.push(new volcengine.autoscaling.ScalingGroup(`fooScalingGroup-${range.value}`, { * scalingGroupName: `acc-test-scaling-group-${range.value}`, * subnetIds: [fooSubnet.id], * multiAzPolicy: "BALANCE", * desireInstanceNumber: 0, * minInstanceNumber: 0, * maxInstanceNumber: 10, * instanceTerminatePolicy: "OldestInstance", * defaultCooldown: 30, * tags: [ * { * key: "k2", * value: "v2", * }, * { * key: "k1", * value: "v1", * }, * ], * })); * } * const default = volcengine.autoscaling.getScalingGroupsOutput({ * ids: fooScalingGroup.map(__item => __item.id), * }); * ``` */ export declare function getScalingGroups(args?: GetScalingGroupsArgs, opts?: pulumi.InvokeOptions): Promise<GetScalingGroupsResult>; /** * A collection of arguments for invoking getScalingGroups. */ export interface GetScalingGroupsArgs { /** * A list of scaling group ids. */ ids?: string[]; /** * A Name Regex of scaling group. */ nameRegex?: string; /** * File name where to save data source results. */ outputFile?: string; /** * The project name of the scaling group. */ projectName?: string; /** * A list of scaling group names. */ scalingGroupNames?: string[]; } /** * A collection of values returned by getScalingGroups. */ export interface GetScalingGroupsResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly ids?: string[]; readonly nameRegex?: string; readonly outputFile?: string; /** * The ProjectName of scaling group. */ readonly projectName?: string; readonly scalingGroupNames?: string[]; /** * The collection of scaling group query. */ readonly scalingGroups: outputs.autoscaling.GetScalingGroupsScalingGroup[]; /** * The total count of scaling group query. */ readonly totalCount: number; } /** * Use this data source to query detailed information of scaling groups * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as volcengine from "@pulumi/volcengine"; * import * as volcengine from "@volcengine/pulumi"; * * const fooZones = volcengine.ecs.getZones({}); * const fooVpc = new volcengine.vpc.Vpc("fooVpc", { * vpcName: "acc-test-vpc", * cidrBlock: "172.16.0.0/16", * }); * const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", { * subnetName: "acc-test-subnet", * cidrBlock: "172.16.0.0/24", * zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id), * vpcId: fooVpc.id, * }); * const fooScalingGroup: volcengine.autoscaling.ScalingGroup[] = []; * for (const range = {value: 0}; range.value < 3; range.value++) { * fooScalingGroup.push(new volcengine.autoscaling.ScalingGroup(`fooScalingGroup-${range.value}`, { * scalingGroupName: `acc-test-scaling-group-${range.value}`, * subnetIds: [fooSubnet.id], * multiAzPolicy: "BALANCE", * desireInstanceNumber: 0, * minInstanceNumber: 0, * maxInstanceNumber: 10, * instanceTerminatePolicy: "OldestInstance", * defaultCooldown: 30, * tags: [ * { * key: "k2", * value: "v2", * }, * { * key: "k1", * value: "v1", * }, * ], * })); * } * const default = volcengine.autoscaling.getScalingGroupsOutput({ * ids: fooScalingGroup.map(__item => __item.id), * }); * ``` */ export declare function getScalingGroupsOutput(args?: GetScalingGroupsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetScalingGroupsResult>; /** * A collection of arguments for invoking getScalingGroups. */ export interface GetScalingGroupsOutputArgs { /** * A list of scaling group ids. */ ids?: pulumi.Input<pulumi.Input<string>[]>; /** * A Name Regex of scaling group. */ nameRegex?: pulumi.Input<string>; /** * File name where to save data source results. */ outputFile?: pulumi.Input<string>; /** * The project name of the scaling group. */ projectName?: pulumi.Input<string>; /** * A list of scaling group names. */ scalingGroupNames?: pulumi.Input<pulumi.Input<string>[]>; }