Changelog

All notable changes to the pve-storpool project will be documented in this file. The format is based on the Keep a changelog guidelines, and this project adheres to the rules described in Semantic versioning.

[0.4.1] - 2024-11-15

Additions

Plugin:

  • Add support for storing cloud-init images as StorPool volumes. This allows cloning a VM with a cloud-init disk to any node in the PVE cluster instead of just its current host.

[0.3.3] - 2024-08-07

Fixes

sp-watchdog-mux:

  • Handle PVE cluster being inaccessible on startup.

[0.3.2] - 2024-06-28

Fixes

sp-watchdog-mux:

  • Handle PVE clusters that have not yet ran HA resources in set-pve-watchdog.

  • Help text and logging fixes in set-pve-watchdog.

Additions

sp-watchdog-mux:

  • Add environment variable (WD_FORCE=1) option to skip checks for currently active watchdog in set-pve-watchdog (mostly for testing purposes).

[0.3.1] - 2024-06-17

Fixes

sp-watchdog-mux:

  • Complete installation.

[0.3.0] - 2024-06-12

Additions

sp-watchdog-mux:

  • Introduced as replacement for PVE’s watchdog-mux service in order to avoid

    host reboots on PVE cluster quorum loss which may negatively impact the StorPool cluster

[0.2.4] - 2024-03-29

Fixes

Documentation:

  • Correct the project’s GitHub repository URL.

Additions

Plugin:

  • When attaching VM-related StorPool volumes to a Proxmox VE hypervisor, force-detach the volumes from any other hypervisors or StorPool clients except during a live migration.

  • Add the PVE::HA::Resources::Custom::StorPoolPlugin module to allow the Proxmox VE HA services to migrate VMs with StorPool-backed volumes.

  • Add a Makefile for easier installation.

Other changes

Documentation:

  • Use mkdocstrings 0.24 with no changes.

  • Add configuration for the publync tool for easier publishing.

Test suite:

  • Add Tox environment tags for use with the tox-stages tool.

[0.2.3] - 2023-12-11

Fixes

Plugin:

  • Grow or shrink a volume as needed when reverting to a snapshot.

[0.2.2] - 2023-09-06

Fixes

Plugin:

  • Ignore already-deleted StorPool snapshots - ones with names starting with the asterisk character.

  • Correct the Perl prototype of the sp_request() internal function.

Additions

Plugin:

  • Log the request method and URL, as well as part of the response, for all requests sent to the StorPool API, to the new /var/log/storpool/pve-storpool-query.log file. For the present this is unconditional, it may be made configurable in the future.

Other changes

Plugin:

  • Correct two typographical errors in source code comments.

Documentation:

  • Point to version 1.1.0 of the “Keep a Changelog” specification.

Config validator:

  • Add SPDX copyright and license tags to all the Rust source files.

  • Also keep the Cargo.lock file under version control.

Test suite:

  • Also run the reuse Tox environment by default.

  • Use reuse 2.x with no changes.

  • Ignore the rust/target/ build directory in the SPDX tags check.

[0.2.1] - 2023-07-12

Fixes

Plugin:

  • Fix a race when resizing a locally-attached volume.

Additions

Config validator:

  • Add an experimental Rust tool, not distributed yet, for validating the current configuration of StorPool volumes attached to Proxmox virtual machines.

Other changes

Documentation:

  • Installation instructions:

    • Note that the pvedaemon, pveproxy, and pvestatd services need to be restarted after installing the StorPool plugin’s Perl source file.

    • Provide installation instructions for the Debian package of the StorPool Proxmox plugin.

    • Drop some sections that did not really serve a useful purpose.

  • Drop the to-do list, it is tracked elsewhere at StorPool.

[0.2.0] - 2023-06-01

Incompatible changes

Plugin:

  • Do not declare support for OpenVZ templates (the vztmpl content type).

  • Use the StorPool VolumeTemplatesStatus (template status) API query to determine the amount of used and free disk space for each storage.

  • Use the Proxmox cluster name (as returned by the pvesh get /cluster/status command) as the value for the pve-loc StorPool volume and snapshot tag; no longer look at the /etc/pve/storpool/proxmox.cfg file.

  • Use the configuration of the StorPool block client (as obtained by the storpool_confget command) for access to the StorPool API; no longer look at the /etc/pve/storpool/api.cfg file.

  • Remove (and do not automatically set) the path property of the storage; this changes the way Proxmox invokes the plugin’s methods in several ways, among them the correct operation of backing a VM up and restoring it.

Additions

Plugin:

  • Partially implement the list_images() plugin method so that for example un-referenced disk images may be found when destroying a VM.

Documentation:

  • Add this changelog file.

Fixes

Plugin:

  • Use the name field of the StorPool volumes instead of their globalId field, since the latter may change when the volume is reverted to a snapshot.

  • When reverting a volume to a snapshot, always detach it from all the hosts it is currently attached to; Proxmox does not do that beforehand for a currently running VM.

  • Validate (untain in Perl-speak) the total size and stored size of a volume so that it may be used when migrating a volume to a different storage from the Web UI.

  • Do not try to parse the internal value “state” for the pve-disk tag when looking for an available number to use as a VM disk “ID”.

Other changes

Documentation:

  • Installation instructions:

    • Remove the mention of the vztmpl content type.

  • Update the to-do list.

[0.1.0] - 2023-05-28

Started

  • Initial pre-release.