Files
pulumi-incus/sdk/nodejs/getStorageVolume.ts

208 lines
5.1 KiB
TypeScript
Generated

// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
import * as pulumi from "@pulumi/pulumi";
import * as utilities from "./utilities";
/**
* ## # incus.StorageVolume
*
* Provides information about an Incus storage volume.
* See Incus storage volume [configuration reference](https://linuxcontainers.org/incus/docs/main/howto/storage_volumes/) for more details.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as incus from "@kiterun/incus";
*
* const _this = incus.getStorageVolume({
* name: "default",
* type: "custom",
* storagePool: "parent",
* });
* export const storageVolumeName = _this.then(_this => _this.name);
* ```
*/
export function getStorageVolume(
args: GetStorageVolumeArgs,
opts?: pulumi.InvokeOptions,
): Promise<GetStorageVolumeResult> {
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
return pulumi.runtime.invoke(
"incus:index/getStorageVolume:getStorageVolume",
{
contentType: args.contentType,
description: args.description,
location: args.location,
name: args.name,
project: args.project,
remote: args.remote,
storagePool: args.storagePool,
target: args.target,
type: args.type,
},
opts,
);
}
/**
* A collection of arguments for invoking getStorageVolume.
*/
export interface GetStorageVolumeArgs {
/**
* Storage Volume content type.
*/
contentType?: string;
/**
* Description of the storage volume.
*/
description?: string;
/**
* Location of the storage volume.
*/
location?: string;
/**
* **Required** - Name of the storage volume.
*/
name: string;
/**
* *Optional* - Name of the project where the storage volume is be stored.
*/
project?: string;
/**
* *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used.
*/
remote?: string;
/**
* **Required** - Name of the parent storage pool.
*/
storagePool: string;
/**
* *Optional* - Specify a target node in a cluster.
*/
target?: string;
/**
* **Required** - Storage Volume type.
*/
type: string;
}
/**
* A collection of values returned by getStorageVolume.
*/
export interface GetStorageVolumeResult {
/**
* Map of key/value pairs of config settings.
* [storage volume config settings](https://linuxcontainers.org/incus/docs/main/reference/storage_drivers/)
*/
readonly config: { [key: string]: string };
/**
* Storage Volume content type.
*/
readonly contentType: string;
/**
* Description of the storage volume.
*/
readonly description: string;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* Location of the storage volume.
*/
readonly location: string;
readonly name: string;
readonly project?: string;
readonly remote?: string;
readonly storagePool: string;
readonly target?: string;
readonly type: string;
}
/**
* ## # incus.StorageVolume
*
* Provides information about an Incus storage volume.
* See Incus storage volume [configuration reference](https://linuxcontainers.org/incus/docs/main/howto/storage_volumes/) for more details.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as incus from "@kiterun/incus";
*
* const _this = incus.getStorageVolume({
* name: "default",
* type: "custom",
* storagePool: "parent",
* });
* export const storageVolumeName = _this.then(_this => _this.name);
* ```
*/
export function getStorageVolumeOutput(
args: GetStorageVolumeOutputArgs,
opts?: pulumi.InvokeOutputOptions,
): pulumi.Output<GetStorageVolumeResult> {
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
return pulumi.runtime.invokeOutput(
"incus:index/getStorageVolume:getStorageVolume",
{
contentType: args.contentType,
description: args.description,
location: args.location,
name: args.name,
project: args.project,
remote: args.remote,
storagePool: args.storagePool,
target: args.target,
type: args.type,
},
opts,
);
}
/**
* A collection of arguments for invoking getStorageVolume.
*/
export interface GetStorageVolumeOutputArgs {
/**
* Storage Volume content type.
*/
contentType?: pulumi.Input<string>;
/**
* Description of the storage volume.
*/
description?: pulumi.Input<string>;
/**
* Location of the storage volume.
*/
location?: pulumi.Input<string>;
/**
* **Required** - Name of the storage volume.
*/
name: pulumi.Input<string>;
/**
* *Optional* - Name of the project where the storage volume is be stored.
*/
project?: pulumi.Input<string>;
/**
* *Optional* - The remote in which the resource was created. If
* not provided, the provider's default remote will be used.
*/
remote?: pulumi.Input<string>;
/**
* **Required** - Name of the parent storage pool.
*/
storagePool: pulumi.Input<string>;
/**
* *Optional* - Specify a target node in a cluster.
*/
target?: pulumi.Input<string>;
/**
* **Required** - Storage Volume type.
*/
type: pulumi.Input<string>;
}