@volcengine/pulumi
Version:
A Pulumi package for creating and managing volcengine cloud resources.
184 lines (183 loc) • 5.25 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Use this data source to query detailed information of volumes
* ## 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 fooVolume: volcengine.ebs.Volume[] = [];
* for (const range = {value: 0}; range.value < 3; range.value++) {
* fooVolume.push(new volcengine.ebs.Volume(`fooVolume-${range.value}`, {
* volumeName: `acc-test-volume-${range.value}`,
* volumeType: "ESSD_PL0",
* description: "acc-test",
* kind: "data",
* size: 60,
* zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id),
* volumeChargeType: "PostPaid",
* projectName: "default",
* }));
* }
* const fooVolumes = volcengine.ebs.getVolumesOutput({
* ids: fooVolume.map(__item => __item.id),
* });
* ```
*/
/** @deprecated volcengine.ebs.Volumes has been deprecated in favor of volcengine.ebs.getVolumes */
export declare function volumes(args?: VolumesArgs, opts?: pulumi.InvokeOptions): Promise<VolumesResult>;
/**
* A collection of arguments for invoking Volumes.
*/
export interface VolumesArgs {
/**
* A list of Volume IDs.
*/
ids?: string[];
/**
* The Id of instance.
*/
instanceId?: string;
/**
* The Kind of Volume.
*/
kind?: string;
/**
* A Name Regex of Volume.
*/
nameRegex?: string;
/**
* File name where to save data source results.
*/
outputFile?: string;
/**
* Tags.
*/
tags?: inputs.ebs.VolumesTag[];
/**
* The name of Volume.
*/
volumeName?: string;
/**
* The Status of Volume, the value can be `available` or `attaching` or `attached` or `detaching` or `creating` or `deleting` or `error` or `extending`.
*/
volumeStatus?: string;
/**
* The type of Volume.
*/
volumeType?: string;
/**
* The Id of Zone.
*/
zoneId?: string;
}
/**
* A collection of values returned by Volumes.
*/
export interface VolumesResult {
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly ids?: string[];
readonly instanceId?: string;
readonly kind?: string;
readonly nameRegex?: string;
readonly outputFile?: string;
/**
* Tags.
*/
readonly tags?: outputs.ebs.VolumesTag[];
/**
* The total count of Volume query.
*/
readonly totalCount: number;
readonly volumeName?: string;
readonly volumeStatus?: string;
readonly volumeType?: string;
/**
* The collection of Volume query.
*/
readonly volumes: outputs.ebs.VolumesVolume[];
readonly zoneId?: string;
}
/**
* Use this data source to query detailed information of volumes
* ## 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 fooVolume: volcengine.ebs.Volume[] = [];
* for (const range = {value: 0}; range.value < 3; range.value++) {
* fooVolume.push(new volcengine.ebs.Volume(`fooVolume-${range.value}`, {
* volumeName: `acc-test-volume-${range.value}`,
* volumeType: "ESSD_PL0",
* description: "acc-test",
* kind: "data",
* size: 60,
* zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id),
* volumeChargeType: "PostPaid",
* projectName: "default",
* }));
* }
* const fooVolumes = volcengine.ebs.getVolumesOutput({
* ids: fooVolume.map(__item => __item.id),
* });
* ```
*/
/** @deprecated volcengine.ebs.Volumes has been deprecated in favor of volcengine.ebs.getVolumes */
export declare function volumesOutput(args?: VolumesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<VolumesResult>;
/**
* A collection of arguments for invoking Volumes.
*/
export interface VolumesOutputArgs {
/**
* A list of Volume IDs.
*/
ids?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The Id of instance.
*/
instanceId?: pulumi.Input<string>;
/**
* The Kind of Volume.
*/
kind?: pulumi.Input<string>;
/**
* A Name Regex of Volume.
*/
nameRegex?: pulumi.Input<string>;
/**
* File name where to save data source results.
*/
outputFile?: pulumi.Input<string>;
/**
* Tags.
*/
tags?: pulumi.Input<pulumi.Input<inputs.ebs.VolumesTagArgs>[]>;
/**
* The name of Volume.
*/
volumeName?: pulumi.Input<string>;
/**
* The Status of Volume, the value can be `available` or `attaching` or `attached` or `detaching` or `creating` or `deleting` or `error` or `extending`.
*/
volumeStatus?: pulumi.Input<string>;
/**
* The type of Volume.
*/
volumeType?: pulumi.Input<string>;
/**
* The Id of Zone.
*/
zoneId?: pulumi.Input<string>;
}