mirror of
https://github.com/GoodOlClint/PSProxmoxVE.git
synced 2026-08-05 12:27:40 +00:00
a72642d203
Add 35 new cmdlets bringing the total to 118: - Firewall (21): rules, groups, aliases, IP sets, options at cluster/node/VM/container levels - Backup (5): ad-hoc vzdump and scheduled backup job CRUD - SDN IPAM/DNS/Controller (9): plugin management for SDN subsystem Also includes: - Fix: Remove-PveRole now has ConfirmImpact.High - Fix: URL-encode snapshot names in API paths - Refactor: extract auth header strings to constants in PveHttpClient - Add PSGallery version badge to README - Full test coverage: 11 JSON fixtures, xUnit model tests, Pester unit tests, and integration tests for firewall/backup/OVA import - Updated manifest, format file, CHANGELOG, README, API coverage docs Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
3.8 KiB
3.8 KiB
Proxmox VE API Coverage
This document tracks which PVE API areas are implemented in PSProxmoxVE and which are planned for future releases.
Last updated: 2026-03-21 Module version: 0.1.0-preview Total cmdlets: 110
Implemented
| Area | Cmdlets | API Endpoints |
|---|---|---|
| Connection | 3 | POST /access/ticket, DELETE /access/ticket |
| Nodes | 2 | GET /nodes, GET /nodes/{node}/status |
| VMs (QEMU) | 19 | /nodes/{node}/qemu/* (CRUD, lifecycle, clone, migrate, resize, disk import, config, guest agent) |
| Containers (LXC) | 14 | /nodes/{node}/lxc/* (CRUD, lifecycle, clone, migrate, config, snapshots) |
| Storage | 6 | /storage, /nodes/{node}/storage/{storage}/* (CRUD, content, upload, download) |
| Snapshots | 4 | /nodes/{node}/qemu/{vmid}/snapshot/* (CRUD, rollback) |
| Container Snapshots | 4 | /nodes/{node}/lxc/{vmid}/snapshot/* (CRUD, rollback) |
| Networking | 5 | /nodes/{node}/network/* (CRUD, apply) |
| SDN Zones | 3 | /cluster/sdn/zones/* (CRUD) |
| SDN VNets | 3 | /cluster/sdn/vnets/* (CRUD) |
| SDN Subnets | 3 | /cluster/sdn/vnets/{vnet}/subnets/* (CRUD) |
| Users | 4 | /access/users/* (CRUD) |
| Roles | 3 | /access/roles/* (CRUD) |
| Permissions | 2 | /access/acl (get, set) |
| API Tokens | 3 | /access/users/{userid}/tokens/* (CRUD) |
| Templates | 4 | VM template conversion, listing, cloning, removal |
| Cloud-Init | 3 | /nodes/{node}/qemu/{vmid}/config (cloud-init fields), /nodes/{node}/qemu/{vmid}/cloudinit/regenerate |
| Tasks | 2 | /nodes/{node}/tasks/{upid}/status (get, wait) |
| Firewall | 21 | /cluster/firewall/*, /nodes/{node}/firewall/*, /nodes/{node}/qemu/{vmid}/firewall/*, /nodes/{node}/lxc/{vmid}/firewall/* (rules, groups, aliases, IP sets, options, refs) |
| Backup | 5 | /nodes/{node}/vzdump, /cluster/backup/* (ad-hoc backup, scheduled job CRUD) |
| SDN IPAM | 3 | /cluster/sdn/ipams/* (CRUD) |
| SDN DNS | 3 | /cluster/sdn/dns/* (CRUD) |
| SDN Controllers | 3 | /cluster/sdn/controllers/* (CRUD) |
Not Yet Implemented
Gaps
| Area | Key Endpoints | Notes | Priority |
|---|---|---|---|
| Pool Management | /pools/* |
Multi-tenant environments, resource grouping | Medium |
Lower Priority Gaps
| Area | Key Endpoints | Notes |
|---|---|---|
| Ceph | /nodes/{node}/ceph/* |
OSD, monitor, pool, and MDS management |
| HA (High Availability) | /cluster/ha/* |
HA groups, resources, and fencing configuration |
| Replication | /cluster/replication/* |
ZFS replication between nodes |
| Access Groups | /access/groups/* |
User group management |
| Access Domains/Realms | /access/domains/* |
LDAP, AD, OpenID realm configuration |
| PBS Integration | N/A (separate API) | Proxmox Backup Server operations |
| Cluster Config | /cluster/config/* |
Cluster join, node management, totem config |
| ACME / Certificates | /cluster/acme/*, /nodes/{node}/certificates/* |
Let's Encrypt certificate automation |
| Node Management | /nodes/{node}/apt/*, /nodes/{node}/disks/*, /nodes/{node}/services/* |
Package updates, disk management, service control |
| Metrics | /cluster/metrics/* |
External metrics server configuration |
| Additional VM Agent | /nodes/{node}/qemu/{vmid}/agent/* |
File read/write, OS info, suspend/resume via agent |
Contributing New Cmdlets
See CONTRIBUTING.md for the full guide. In short:
- Create service methods in
PSProxmoxVE.Core/Services/ - Create model classes in
PSProxmoxVE.Core/Models/if needed - Create cmdlet classes in
PSProxmoxVE/Cmdlets/ - Add cmdlet names to
CmdletsToExportin the manifest - Add Pester tests
- Update this document and the README cmdlet reference