UNPKG

@muhlba91/pulumi-proxmoxve

Version:

A Pulumi package for creating and managing Proxmox Virtual Environment cloud resources.

103 lines 4 kB
import * as pulumi from "@pulumi/pulumi"; /** * > **Experimental.** Schema and behavior may change in future releases. Pin the provider version if stability matters. * * Retrieves Ceph status from Proxmox. Queries the per-node endpoint when `nodeName` is set, otherwise the cluster-wide endpoint. * * When `nodeName` is set, the data source queries `/nodes/{node}/ceph/status` * (the node-local view). When `nodeName` is omitted, it queries * `/cluster/ceph/status` (the cluster-wide view). Both endpoints return the * same payload shape; only the failure modes differ when Ceph is misconfigured * on a specific node. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as proxmoxve from "@muhlba91/pulumi-proxmoxve"; * * // Cluster-wide Ceph status (hits GET /cluster/ceph/status). * const cluster = proxmoxve.ceph.getStatus({}); * // Node-scoped Ceph status (hits GET /nodes/{node}/ceph/status). * const node = proxmoxve.ceph.getStatus({ * nodeName: "pve", * }); * export const cephHealth = cluster.then(cluster => cluster.healthStatus); * export const cephFsid = cluster.then(cluster => cluster.fsid); * export const cephQuorum = cluster.then(cluster => cluster.quorumNames); * ``` */ export declare function getStatus(args?: GetStatusArgs, opts?: pulumi.InvokeOptions): Promise<GetStatusResult>; /** * A collection of arguments for invoking getStatus. */ export interface GetStatusArgs { /** * Optional node name. When set, the data source queries the per-node endpoint; when omitted, it queries the cluster-wide endpoint. */ nodeName?: string; } /** * A collection of values returned by getStatus. */ export interface GetStatusResult { /** * Ceph cluster UUID. */ readonly fsid: string; /** * Overall cluster health: `HEALTH_OK`, `HEALTH_WARN`, or `HEALTH_ERR`. */ readonly healthStatus: string; /** * The Ceph cluster `fsid`. */ readonly id: string; /** * Optional node name. When set, the data source queries the per-node endpoint; when omitted, it queries the cluster-wide endpoint. */ readonly nodeName?: string; /** * Monitor names currently participating in the quorum. */ readonly quorumNames: string[]; } /** * > **Experimental.** Schema and behavior may change in future releases. Pin the provider version if stability matters. * * Retrieves Ceph status from Proxmox. Queries the per-node endpoint when `nodeName` is set, otherwise the cluster-wide endpoint. * * When `nodeName` is set, the data source queries `/nodes/{node}/ceph/status` * (the node-local view). When `nodeName` is omitted, it queries * `/cluster/ceph/status` (the cluster-wide view). Both endpoints return the * same payload shape; only the failure modes differ when Ceph is misconfigured * on a specific node. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as proxmoxve from "@muhlba91/pulumi-proxmoxve"; * * // Cluster-wide Ceph status (hits GET /cluster/ceph/status). * const cluster = proxmoxve.ceph.getStatus({}); * // Node-scoped Ceph status (hits GET /nodes/{node}/ceph/status). * const node = proxmoxve.ceph.getStatus({ * nodeName: "pve", * }); * export const cephHealth = cluster.then(cluster => cluster.healthStatus); * export const cephFsid = cluster.then(cluster => cluster.fsid); * export const cephQuorum = cluster.then(cluster => cluster.quorumNames); * ``` */ export declare function getStatusOutput(args?: GetStatusOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetStatusResult>; /** * A collection of arguments for invoking getStatus. */ export interface GetStatusOutputArgs { /** * Optional node name. When set, the data source queries the per-node endpoint; when omitted, it queries the cluster-wide endpoint. */ nodeName?: pulumi.Input<string | undefined>; } //# sourceMappingURL=getStatus.d.ts.map