@homeflare/distilled-proxmox 0.3.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -5
- package/dist/config-not-found.test.js +29 -0
- package/dist/config-not-found.test.js.map +1 -1
- package/dist/lxc-config-errors.test.d.ts +2 -0
- package/dist/lxc-config-errors.test.d.ts.map +1 -0
- package/dist/lxc-config-errors.test.js +48 -0
- package/dist/lxc-config-errors.test.js.map +1 -0
- package/dist/network-changes.test.d.ts +2 -0
- package/dist/network-changes.test.d.ts.map +1 -0
- package/dist/network-changes.test.js +42 -0
- package/dist/network-changes.test.js.map +1 -0
- package/dist/protocol.d.ts.map +1 -1
- package/dist/protocol.js +24 -9
- package/dist/protocol.js.map +1 -1
- package/dist/qemu-config-absence.test.d.ts +2 -0
- package/dist/qemu-config-absence.test.d.ts.map +1 -0
- package/dist/qemu-config-absence.test.js +41 -0
- package/dist/qemu-config-absence.test.js.map +1 -0
- package/dist/replication-firewall-errors.test.d.ts +2 -0
- package/dist/replication-firewall-errors.test.d.ts.map +1 -0
- package/dist/replication-firewall-errors.test.js +76 -0
- package/dist/replication-firewall-errors.test.js.map +1 -0
- package/dist/services/cluster.d.ts +25 -5
- package/dist/services/cluster.d.ts.map +1 -1
- package/dist/services/cluster.js +24 -5
- package/dist/services/cluster.js.map +1 -1
- package/dist/services/nodes.d.ts +44 -8
- package/dist/services/nodes.d.ts.map +1 -1
- package/dist/services/nodes.js +49 -8
- package/dist/services/nodes.js.map +1 -1
- package/package.json +1 -1
- package/src/config-not-found.test.ts +49 -0
- package/src/lxc-config-errors.test.ts +100 -0
- package/src/network-changes.test.ts +60 -0
- package/src/protocol.ts +26 -9
- package/src/qemu-config-absence.test.ts +75 -0
- package/src/replication-firewall-errors.test.ts +126 -0
- package/src/services/cluster.ts +51 -10
- package/src/services/nodes.ts +81 -16
package/dist/services/nodes.d.ts
CHANGED
|
@@ -32,6 +32,36 @@ declare const ClusterNodeUnreachable_base: S.Class<ClusterNodeUnreachable, S.Tag
|
|
|
32
32
|
/** PVE forwarded this call to another cluster member and could not reach it (pveproxy/pvedaemon's own connection-failure status, not a standard HTTP code). Transient — the target node may be mid-reboot or between cluster-membership changes. */
|
|
33
33
|
export declare class ClusterNodeUnreachable extends /*@__PURE__*/ ClusterNodeUnreachable_base {
|
|
34
34
|
}
|
|
35
|
+
declare const LxcConfigNotFound_base: S.Class<LxcConfigNotFound, S.TaggedStruct<"LxcConfigNotFound", {
|
|
36
|
+
readonly message: any;
|
|
37
|
+
}>, import("effect/Cause").YieldableError> & (new (...args: any[]) => {
|
|
38
|
+
"@distilled.cloud/error/categories": {
|
|
39
|
+
BadRequestError: true;
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
/** The requested container config is absent on this node. VM IDs are cluster-wide: callers must still check whether another node or QEMU guest holds the ID before creating. Also raised by PUT (update_vm) and DELETE (destroy_vm), which both call the same load_config first. This GET requires VM.Audit on /vms/{vmid}; retain its credential for any permission-filtered cluster index read. */
|
|
43
|
+
export declare class LxcConfigNotFound extends /*@__PURE__*/ LxcConfigNotFound_base {
|
|
44
|
+
}
|
|
45
|
+
declare const QemuConfigNotFound_base: S.Class<QemuConfigNotFound, S.TaggedStruct<"QemuConfigNotFound", {
|
|
46
|
+
readonly message: any;
|
|
47
|
+
}>, import("effect/Cause").YieldableError> & (new (...args: any[]) => {
|
|
48
|
+
"@distilled.cloud/error/categories": {
|
|
49
|
+
BadRequestError: true;
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
/** qemu-server PVE/API2/Qemu.pm vm_config GET and destroy_vm both call QemuConfig->load_config. pve-guest-common AbstractConfig.pm load_config dies when the cfs file is missing: Configuration file '$cfspath' does not exist. QemuConfig's path is nodes/$node/qemu-server/$vmid.conf, HTTP 500. A missing file on this node is not a free cluster-wide vmid. */
|
|
53
|
+
export declare class QemuConfigNotFound extends /*@__PURE__*/ QemuConfigNotFound_base {
|
|
54
|
+
}
|
|
55
|
+
declare const NetworkInterfaceNotFound_base: S.Class<NetworkInterfaceNotFound, S.TaggedStruct<"NetworkInterfaceNotFound", {
|
|
56
|
+
readonly message: any;
|
|
57
|
+
}>, import("effect/Cause").YieldableError> & (new (...args: any[]) => {
|
|
58
|
+
"@distilled.cloud/error/categories": {
|
|
59
|
+
BadRequestError: true;
|
|
60
|
+
};
|
|
61
|
+
});
|
|
62
|
+
/** pve-manager 9.2.11, PVE/API2/Network.pm. GET (network_config) and PUT (update_network) both raise HTTP 400 with exactly errors.iface = interface does not exist -- verified against the live n2 source on 2026-09-25. DELETE (delete_network) raises it too but is left untyped: no generated deleteNodeNetwork2 caller exists yet. Only the exact sole-field detail is normalized for operation matching; all other validation errors remain ParameterVerificationFailed. Attached to GET and PUT. */
|
|
63
|
+
export declare class NetworkInterfaceNotFound extends /*@__PURE__*/ NetworkInterfaceNotFound_base {
|
|
64
|
+
}
|
|
35
65
|
export interface CloneNodesLxcRequest {
|
|
36
66
|
node: string;
|
|
37
67
|
vmid: string;
|
|
@@ -4669,7 +4699,13 @@ export interface ListNodeNetworkResponseBodyItem {
|
|
|
4669
4699
|
export declare const ListNodeNetworkResponseBodyItem: S.Schema<ListNodeNetworkResponseBodyItem>;
|
|
4670
4700
|
export type ListNodeNetworkResponseBodyList = Array<ListNodeNetworkResponseBodyItem>;
|
|
4671
4701
|
export declare const ListNodeNetworkResponseBodyList: S.Schema<ListNodeNetworkResponseBodyList>;
|
|
4672
|
-
|
|
4702
|
+
/** Present only when PVE staged an interfaces diff. The string can contain secrets. */
|
|
4703
|
+
export interface ListNodeNetworkPendingResponse {
|
|
4704
|
+
data: ListNodeNetworkResponseBodyList;
|
|
4705
|
+
changes: string;
|
|
4706
|
+
}
|
|
4707
|
+
export declare const ListNodeNetworkPendingResponse: S.Schema<ListNodeNetworkPendingResponse>;
|
|
4708
|
+
export type ListNodeNetworkResponse = ListNodeNetworkResponseBodyList | ListNodeNetworkPendingResponse;
|
|
4673
4709
|
export declare const ListNodeNetworkResponse: S.Schema<ListNodeNetworkResponse>;
|
|
4674
4710
|
export interface ListNodeQemuRequest {
|
|
4675
4711
|
node: string;
|
|
@@ -7081,7 +7117,7 @@ export declare const deleteNodeDiskZfs: API.OperationMethod<DeleteNodeDiskZfsReq
|
|
|
7081
7117
|
export type DeleteNodeFirewallRuleError = ProxmoxOpError;
|
|
7082
7118
|
/** Delete rule. (root-privileged endpoint) */
|
|
7083
7119
|
export declare const deleteNodeFirewallRule: API.OperationMethod<DeleteNodeFirewallRuleRequest, DeleteNodeFirewallRuleResponse, DeleteNodeFirewallRuleError, ProxmoxOpContext>;
|
|
7084
|
-
export type DeleteNodeLxcError = ProxmoxOpError;
|
|
7120
|
+
export type DeleteNodeLxcError = LxcConfigNotFound | ProxmoxOpError;
|
|
7085
7121
|
/** Destroy the container (also delete all uses files). (root-privileged endpoint) */
|
|
7086
7122
|
export declare const deleteNodeLxc: API.OperationMethod<DeleteNodeLxcRequest, DeleteNodeLxcResponse, DeleteNodeLxcError, ProxmoxOpContext>;
|
|
7087
7123
|
export type DeleteNodeLxcFirewallAliasError = ProxmoxOpError;
|
|
@@ -7105,7 +7141,7 @@ export declare const deleteNodeNetwork: API.OperationMethod<DeleteNodeNetworkReq
|
|
|
7105
7141
|
export type DeleteNodeNetwork2Error = ProxmoxOpError;
|
|
7106
7142
|
/** Delete network device configuration (root-privileged endpoint) */
|
|
7107
7143
|
export declare const deleteNodeNetwork2: API.OperationMethod<DeleteNodeNetwork2Request, DeleteNodeNetwork2Response, DeleteNodeNetwork2Error, ProxmoxOpContext>;
|
|
7108
|
-
export type DeleteNodeQemuError = ProxmoxOpError;
|
|
7144
|
+
export type DeleteNodeQemuError = QemuConfigNotFound | ProxmoxOpError;
|
|
7109
7145
|
/** Destroy the VM and all used/owned volumes. Removes any VM specific permissions and firewall rules (root-privileged endpoint) */
|
|
7110
7146
|
export declare const deleteNodeQemu: API.OperationMethod<DeleteNodeQemuRequest, DeleteNodeQemuResponse, DeleteNodeQemuError, ProxmoxOpContext>;
|
|
7111
7147
|
export type DeleteNodeQemuFirewallAliasError = ProxmoxOpError;
|
|
@@ -7219,7 +7255,7 @@ export declare const getNodeHosts: API.OperationMethod<GetNodeHostsRequest, GetN
|
|
|
7219
7255
|
export type GetNodeLxcError = ProxmoxOpError;
|
|
7220
7256
|
/** Directory index */
|
|
7221
7257
|
export declare const getNodeLxc: API.OperationMethod<GetNodeLxcRequest, GetNodeLxcResponse, GetNodeLxcError, ProxmoxOpContext>;
|
|
7222
|
-
export type GetNodeLxcConfigError = ProxmoxOpError;
|
|
7258
|
+
export type GetNodeLxcConfigError = LxcConfigNotFound | ProxmoxOpError;
|
|
7223
7259
|
/** Get container configuration. */
|
|
7224
7260
|
export declare const getNodeLxcConfig: API.OperationMethod<GetNodeLxcConfigRequest, GetNodeLxcConfigResponse, GetNodeLxcConfigError, ProxmoxOpContext>;
|
|
7225
7261
|
export type GetNodeLxcFeatureError = ProxmoxOpError;
|
|
@@ -7260,7 +7296,7 @@ export declare const getNodeLxcStatusCurrent: API.OperationMethod<GetNodeLxcStat
|
|
|
7260
7296
|
export type GetNodeLxcVncwebsocketError = ProxmoxOpError;
|
|
7261
7297
|
/** Opens a websocket for VNC traffic. */
|
|
7262
7298
|
export declare const getNodeLxcVncwebsocket: API.OperationMethod<GetNodeLxcVncwebsocketRequest, GetNodeLxcVncwebsocketResponse, GetNodeLxcVncwebsocketError, ProxmoxOpContext>;
|
|
7263
|
-
export type GetNodeNetworkError = ProxmoxOpError;
|
|
7299
|
+
export type GetNodeNetworkError = NetworkInterfaceNotFound | ProxmoxOpError;
|
|
7264
7300
|
/** Read network device configuration */
|
|
7265
7301
|
export declare const getNodeNetwork: API.OperationMethod<GetNodeNetworkRequest, GetNodeNetworkResponse, GetNodeNetworkError, ProxmoxOpContext>;
|
|
7266
7302
|
export type GetNodeQemuError = ProxmoxOpError;
|
|
@@ -7308,7 +7344,7 @@ export declare const getNodeQemuAgentNetworkGetInterfaces: API.OperationMethod<G
|
|
|
7308
7344
|
export type GetNodeQemuCloudinitDumpError = ProxmoxOpError;
|
|
7309
7345
|
/** Get automatically generated cloudinit config. */
|
|
7310
7346
|
export declare const getNodeQemuCloudinitDump: API.OperationMethod<GetNodeQemuCloudinitDumpRequest, GetNodeQemuCloudinitDumpResponse, GetNodeQemuCloudinitDumpError, ProxmoxOpContext>;
|
|
7311
|
-
export type GetNodeQemuConfigError = ProxmoxOpError;
|
|
7347
|
+
export type GetNodeQemuConfigError = QemuConfigNotFound | ProxmoxOpError;
|
|
7312
7348
|
/** Get the virtual machine configuration with pending configuration changes applied. Set the 'current' parameter to get the current configuration instead. */
|
|
7313
7349
|
export declare const getNodeQemuConfig: API.OperationMethod<GetNodeQemuConfigRequest, GetNodeQemuConfigResponse, GetNodeQemuConfigError, ProxmoxOpContext>;
|
|
7314
7350
|
export type GetNodeQemuFeatureError = ProxmoxOpError;
|
|
@@ -7745,7 +7781,7 @@ export declare const putNodeFirewallOptions: API.OperationMethod<PutNodeFirewall
|
|
|
7745
7781
|
export type PutNodeFirewallRuleError = ProxmoxOpError;
|
|
7746
7782
|
/** Modify rule data. (root-privileged endpoint) */
|
|
7747
7783
|
export declare const putNodeFirewallRule: API.OperationMethod<PutNodeFirewallRuleRequest, PutNodeFirewallRuleResponse, PutNodeFirewallRuleError, ProxmoxOpContext>;
|
|
7748
|
-
export type PutNodeLxcConfigError = ProxmoxOpError;
|
|
7784
|
+
export type PutNodeLxcConfigError = LxcConfigNotFound | ProxmoxOpError;
|
|
7749
7785
|
/** Set container options. (root-privileged endpoint) */
|
|
7750
7786
|
export declare const putNodeLxcConfig: API.OperationMethod<PutNodeLxcConfigRequest, PutNodeLxcConfigResponse, PutNodeLxcConfigError, ProxmoxOpContext>;
|
|
7751
7787
|
export type PutNodeLxcFirewallAliasError = ProxmoxOpError;
|
|
@@ -7769,7 +7805,7 @@ export declare const putNodeLxcSnapshotConfig: API.OperationMethod<PutNodeLxcSna
|
|
|
7769
7805
|
export type PutNodeNetworkError = ProxmoxOpError;
|
|
7770
7806
|
/** Reload network configuration (root-privileged endpoint) */
|
|
7771
7807
|
export declare const putNodeNetwork: API.OperationMethod<PutNodeNetworkRequest, PutNodeNetworkResponse, PutNodeNetworkError, ProxmoxOpContext>;
|
|
7772
|
-
export type PutNodeNetwork2Error = ProxmoxOpError;
|
|
7808
|
+
export type PutNodeNetwork2Error = NetworkInterfaceNotFound | ProxmoxOpError;
|
|
7773
7809
|
/** Update network device configuration (root-privileged endpoint) */
|
|
7774
7810
|
export declare const putNodeNetwork2: API.OperationMethod<PutNodeNetwork2Request, PutNodeNetwork2Response, PutNodeNetwork2Error, ProxmoxOpContext>;
|
|
7775
7811
|
export type PutNodeQemuCloudinitError = ProxmoxOpError;
|