Skip to content

Adds snapshot creation and recovery support for linked and full VMs#25

Merged
dkmstr merged 1 commit intomasterfrom
dev/andres/master-proxmox
Mar 18, 2026
Merged

Adds snapshot creation and recovery support for linked and full VMs#25
dkmstr merged 1 commit intomasterfrom
dev/andres/master-proxmox

Conversation

@aschumann-virtualcable
Copy link
Contributor

This pull request introduces improvements and fixes across the Proxmox service implementation and its test suite. The most significant changes include enhancements to snapshot management, stricter validation for clone types, improved test fixture consistency, and modernization of type annotations.

Enhancements to Proxmox service functionality:

  • Added snapshot_creation and snapshot_recovery methods to ProxmoxService for automatic snapshot management, including background snapshot creation and recovery for linked user services.
  • Improved validation logic in initialize to correctly check storage support for linked clones and raise errors when unsupported clone types are requested.

Test suite improvements and fixture consistency:

  • Updated test fixtures and test cases to ensure consistent use of provider and service instances, improving reliability and accuracy of tests by explicitly passing provider instances. [1] [2] [3] [4] [5]
  • Fixed test fixture creation to use the correct UUID and storage values, and modernized generator and mapping type annotations for better compatibility and clarity. [1] [2] [3] [4] [5]

Modernization and code cleanup:

  • Refactored type annotations in both service and test code to use Python 3.9+ syntax (e.g., list[...], dict[...], str | None) and replaced typing with collections.abc where appropriate. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]

Exception handling improvements:

  • Added new exception classes and improved exception handling in snapshot-related operations to provide clearer error logging and handling for missing snapshots and VM restoration failures. [1] [2]

Logging improvements:

  • Enhanced logging in VM cloning to provide clearer parameter output and better debugging information.

These changes collectively improve the robustness, maintainability, and clarity of the Proxmox service codebase and its associated tests.

Introduces methods to handle VM snapshot creation and restoration,
enabling improved backup and recovery workflows.

Refactors type hints for better clarity and modern Python usage.
Enhances test setup to ensure consistent provider injection.

Improves clone validation logic to correctly handle linked clone
requirements and storage capabilities.
@dkmstr dkmstr merged commit 23b36a2 into master Mar 18, 2026
5 of 6 checks passed
@aschumann-virtualcable aschumann-virtualcable deleted the dev/andres/master-proxmox branch March 18, 2026 17:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants