@pulumi/nomad
Version:
A Pulumi package for creating and managing nomad cloud resources.
251 lines (250 loc) • 10.7 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
export declare class CsiVolume extends pulumi.CustomResource {
/**
* Get an existing CsiVolume resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CsiVolumeState, opts?: pulumi.CustomResourceOptions): CsiVolume;
/**
* Returns true if the given object is an instance of CsiVolume. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is CsiVolume;
/**
* `(``Capability``: <required>)` - Options for validating the capability of a volume.
*/
readonly capabilities: pulumi.Output<outputs.CsiVolumeCapability[]>;
readonly capacity: pulumi.Output<number>;
/**
* `(string: <optional>)` - Option to signal a maximum volume size. This may not be supported by all storage providers.
*/
readonly capacityMax: pulumi.Output<string | undefined>;
readonly capacityMaxBytes: pulumi.Output<number>;
/**
* `(string: <optional>)` - Option to signal a minimum volume size. This may not be supported by all storage providers.
*/
readonly capacityMin: pulumi.Output<string | undefined>;
readonly capacityMinBytes: pulumi.Output<number>;
/**
* `(string: <optional>)` - The external ID of an existing volume to restore. If ommited, the volume will be created from scratch. Conflicts with `snapshotId`.
*/
readonly cloneId: pulumi.Output<string | undefined>;
/**
* The volume context provided by the storage provider
*/
readonly context: pulumi.Output<{
[key: string]: string;
}>;
readonly controllerRequired: pulumi.Output<boolean>;
readonly controllersExpected: pulumi.Output<number>;
readonly controllersHealthy: pulumi.Output<number>;
/**
* The ID of the physical volume from the storage provider.
*/
readonly externalId: pulumi.Output<string>;
/**
* `(block: optional)` Options for mounting `block-device` volumes without a pre-formatted file system.
*/
readonly mountOptions: pulumi.Output<outputs.CsiVolumeMountOptions | undefined>;
/**
* `(string: <required>)` - The display name for the volume.
*/
readonly name: pulumi.Output<string>;
/**
* `(string: "default")` - The namespace in which to register the volume.
*/
readonly namespace: pulumi.Output<string | undefined>;
readonly nodesExpected: pulumi.Output<number>;
readonly nodesHealthy: pulumi.Output<number>;
/**
* `(map[string]string: optional)` An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
*/
readonly parameters: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
*/
readonly pluginId: pulumi.Output<string>;
readonly pluginProvider: pulumi.Output<string>;
readonly pluginProviderVersion: pulumi.Output<string>;
readonly schedulable: pulumi.Output<boolean>;
/**
* `(map[string]string: optional)` An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
*/
readonly secrets: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* `(string: <optional>)` - The external ID of a snapshot to restore. If ommited, the volume will be created from scratch. Conflicts with `cloneId`.
*/
readonly snapshotId: pulumi.Output<string | undefined>;
readonly topologies: pulumi.Output<outputs.CsiVolumeTopology[]>;
/**
* `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
*/
readonly topologyRequest: pulumi.Output<outputs.CsiVolumeTopologyRequest | undefined>;
/**
* `(string: <required>)` - The unique ID of the volume.
*/
readonly volumeId: pulumi.Output<string>;
/**
* Create a CsiVolume resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: CsiVolumeArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering CsiVolume resources.
*/
export interface CsiVolumeState {
/**
* `(``Capability``: <required>)` - Options for validating the capability of a volume.
*/
capabilities?: pulumi.Input<pulumi.Input<inputs.CsiVolumeCapability>[]>;
capacity?: pulumi.Input<number>;
/**
* `(string: <optional>)` - Option to signal a maximum volume size. This may not be supported by all storage providers.
*/
capacityMax?: pulumi.Input<string>;
capacityMaxBytes?: pulumi.Input<number>;
/**
* `(string: <optional>)` - Option to signal a minimum volume size. This may not be supported by all storage providers.
*/
capacityMin?: pulumi.Input<string>;
capacityMinBytes?: pulumi.Input<number>;
/**
* `(string: <optional>)` - The external ID of an existing volume to restore. If ommited, the volume will be created from scratch. Conflicts with `snapshotId`.
*/
cloneId?: pulumi.Input<string>;
/**
* The volume context provided by the storage provider
*/
context?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
controllerRequired?: pulumi.Input<boolean>;
controllersExpected?: pulumi.Input<number>;
controllersHealthy?: pulumi.Input<number>;
/**
* The ID of the physical volume from the storage provider.
*/
externalId?: pulumi.Input<string>;
/**
* `(block: optional)` Options for mounting `block-device` volumes without a pre-formatted file system.
*/
mountOptions?: pulumi.Input<inputs.CsiVolumeMountOptions>;
/**
* `(string: <required>)` - The display name for the volume.
*/
name?: pulumi.Input<string>;
/**
* `(string: "default")` - The namespace in which to register the volume.
*/
namespace?: pulumi.Input<string>;
nodesExpected?: pulumi.Input<number>;
nodesHealthy?: pulumi.Input<number>;
/**
* `(map[string]string: optional)` An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
*/
parameters?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
*/
pluginId?: pulumi.Input<string>;
pluginProvider?: pulumi.Input<string>;
pluginProviderVersion?: pulumi.Input<string>;
schedulable?: pulumi.Input<boolean>;
/**
* `(map[string]string: optional)` An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
*/
secrets?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* `(string: <optional>)` - The external ID of a snapshot to restore. If ommited, the volume will be created from scratch. Conflicts with `cloneId`.
*/
snapshotId?: pulumi.Input<string>;
topologies?: pulumi.Input<pulumi.Input<inputs.CsiVolumeTopology>[]>;
/**
* `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
*/
topologyRequest?: pulumi.Input<inputs.CsiVolumeTopologyRequest>;
/**
* `(string: <required>)` - The unique ID of the volume.
*/
volumeId?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a CsiVolume resource.
*/
export interface CsiVolumeArgs {
/**
* `(``Capability``: <required>)` - Options for validating the capability of a volume.
*/
capabilities: pulumi.Input<pulumi.Input<inputs.CsiVolumeCapability>[]>;
/**
* `(string: <optional>)` - Option to signal a maximum volume size. This may not be supported by all storage providers.
*/
capacityMax?: pulumi.Input<string>;
/**
* `(string: <optional>)` - Option to signal a minimum volume size. This may not be supported by all storage providers.
*/
capacityMin?: pulumi.Input<string>;
/**
* `(string: <optional>)` - The external ID of an existing volume to restore. If ommited, the volume will be created from scratch. Conflicts with `snapshotId`.
*/
cloneId?: pulumi.Input<string>;
/**
* `(block: optional)` Options for mounting `block-device` volumes without a pre-formatted file system.
*/
mountOptions?: pulumi.Input<inputs.CsiVolumeMountOptions>;
/**
* `(string: <required>)` - The display name for the volume.
*/
name?: pulumi.Input<string>;
/**
* `(string: "default")` - The namespace in which to register the volume.
*/
namespace?: pulumi.Input<string>;
/**
* `(map[string]string: optional)` An optional key-value map of strings passed directly to the CSI plugin to configure the volume.
*/
parameters?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* `(string: <required>)` - The ID of the Nomad plugin for registering this volume.
*/
pluginId: pulumi.Input<string>;
/**
* `(map[string]string: optional)` An optional key-value map of strings used as credentials for publishing and unpublishing volumes.
*/
secrets?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* `(string: <optional>)` - The external ID of a snapshot to restore. If ommited, the volume will be created from scratch. Conflicts with `cloneId`.
*/
snapshotId?: pulumi.Input<string>;
/**
* `(``TopologyRequest``: <optional>)` - Specify locations (region, zone, rack, etc.) where the provisioned volume is accessible from.
*/
topologyRequest?: pulumi.Input<inputs.CsiVolumeTopologyRequest>;
/**
* `(string: <required>)` - The unique ID of the volume.
*/
volumeId: pulumi.Input<string>;
}