@pulumi/hcloud
Version:
A Pulumi package for creating and managing hcloud cloud resources.
157 lines • 4.65 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Provides details about a Hetzner Cloud volume.
* This resource is useful if you want to use a non-terraform managed volume.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as hcloud from "@pulumi/hcloud";
*
* const volume1 = hcloud.getVolume({
* id: 1234,
* });
* const volume2 = hcloud.getVolume({
* name: "my-volume",
* });
* const volume3 = hcloud.getVolume({
* withSelector: "key=value",
* });
* ```
*/
export declare function getVolume(args?: GetVolumeArgs, opts?: pulumi.InvokeOptions): Promise<GetVolumeResult>;
/**
* A collection of arguments for invoking getVolume.
*/
export interface GetVolumeArgs {
/**
* ID of the volume.
*/
id?: number;
/**
* (string) The location name. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
*/
location?: string;
/**
* Name of the volume.
*/
name?: string;
/**
* @deprecated Please use the withSelector property instead.
*/
selector?: string;
/**
* (Optional, int) Server ID the volume is attached to
*/
serverId?: number;
/**
* Label Selector. For more information about possible values, visit the [Hetzner Cloud Documentation](https://docs.hetzner.cloud/reference/cloud#label-selector).
*/
withSelector?: string;
/**
* List only volumes with the specified status, could contain `creating` or `available`.
*/
withStatuses?: string[];
}
/**
* A collection of values returned by getVolume.
*/
export interface GetVolumeResult {
/**
* (bool) Whether delete protection is enabled.
*/
readonly deleteProtection: boolean;
/**
* (int) Unique ID of the volume.
*/
readonly id: number;
/**
* (map) User-defined labels (key-value pairs).
*/
readonly labels: {
[key: string]: string;
};
/**
* (string) Device path on the file system for the Volume.
*/
readonly linuxDevice: string;
/**
* (string) The location name. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
*/
readonly location?: string;
/**
* (string) Name of the volume.
*/
readonly name: string;
/**
* @deprecated Please use the withSelector property instead.
*/
readonly selector?: string;
/**
* (Optional, int) Server ID the volume is attached to
*/
readonly serverId?: number;
/**
* (int) Size of the volume.
*/
readonly size: number;
readonly withSelector?: string;
readonly withStatuses?: string[];
}
/**
* Provides details about a Hetzner Cloud volume.
* This resource is useful if you want to use a non-terraform managed volume.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as hcloud from "@pulumi/hcloud";
*
* const volume1 = hcloud.getVolume({
* id: 1234,
* });
* const volume2 = hcloud.getVolume({
* name: "my-volume",
* });
* const volume3 = hcloud.getVolume({
* withSelector: "key=value",
* });
* ```
*/
export declare function getVolumeOutput(args?: GetVolumeOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVolumeResult>;
/**
* A collection of arguments for invoking getVolume.
*/
export interface GetVolumeOutputArgs {
/**
* ID of the volume.
*/
id?: pulumi.Input<number | undefined>;
/**
* (string) The location name. See the [Hetzner Docs](https://docs.hetzner.com/cloud/general/locations/#what-locations-are-there) for more details about locations.
*/
location?: pulumi.Input<string | undefined>;
/**
* Name of the volume.
*/
name?: pulumi.Input<string | undefined>;
/**
* @deprecated Please use the withSelector property instead.
*/
selector?: pulumi.Input<string | undefined>;
/**
* (Optional, int) Server ID the volume is attached to
*/
serverId?: pulumi.Input<number | undefined>;
/**
* Label Selector. For more information about possible values, visit the [Hetzner Cloud Documentation](https://docs.hetzner.cloud/reference/cloud#label-selector).
*/
withSelector?: pulumi.Input<string | undefined>;
/**
* List only volumes with the specified status, could contain `creating` or `available`.
*/
withStatuses?: pulumi.Input<pulumi.Input<string>[] | undefined>;
}
//# sourceMappingURL=getVolume.d.ts.map