Skip to content

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 12 May 11:56
· 63 commits to main since this release

v0.6.0 (2025-05-12)

⚠️ BREAKING CHANGES!

This version includes a few breaking changes on the command line interface. Commands were of the form pvecontrol <command>. From now, most of the time it will be pvecontrol <resource> <verb>. So pvecontrol tasklist became pvecontrol task list. The rational was that this form of commands are more in phase with other well-known tools and because it feels more natural that way.

Bug Fixes

  • Bad formatting in "no such cluster" log (8d333d1)

  • Enable ssl_verification from config, catch failures (c82c9e4)

  • Exit 130 without printing stacktrace on sigint (bffe5d1)

  • Get version with help command, README typos (d4ac84f)

  • Rebase click changes, more stuffs broken with json/yaml translator (fbab03a)

  • Rm duped main (pip should gen the executable script) (a5fb557)

  • Set default memoryminimum to 8GB (8589934592 instead of 81928589934592) (c22ec97)

The value was almost good, but prefixed with 8192, which is almost good also. But all together, it wasn't good at all.

  • Set default when assigning resource_* prop (KeyError on faulty nodes) (53e2c2e)

  • Typo, incorrect status ref (afab5ae)

  • Use env in she-bangs (de6a25d)

  • config: Set default timeout to 60 (13a58ad)

  • sanitycheck: Correct disk unused on check (ee32fc1)

  • sanitycheck: Fix wording in backup messages (3e599e1)

  • sanitycheck: Patch VM startonboot option check (1ded8c4)

  • sanitycheck: Reduce complexity on VMStartOnBoot check (591c60f)

  • sanitycheck: Warn when vms don't have any backup (b86ea89)

  • sanitycheck: Wording (fb10b29)

  • test: Correct code repetition (f8f9625)

  • vm: Add tags as vm columns (6a48132)

  • vm: Correctly parse tag list (c6f7e78)

  • vm: Get_backup_jobs when selection mode is "all" or "exclude selected" and filter by node (b10ba25)

  • vm: Get_backup_jobs when selection mode is "pool based" (0cf55ef)

  • vmstatus: Add new VmStatus (fa20415)

Build System

  • Trigger release manually from main branch only (5ff5bbd)

  • ci: Enable pip dependencies caching (7e9a391)

  • ci: Fetch with default depth (1 commit) instead of the whole history (f569685)

  • ci: Install pvecontrol package before running tests (949a85e)

  • ci: Remove flake8 linting and redundant pytest job (8c41a46)

  • ci: Trigger tests on pull requests but not on push (a04dc02)

  • ci: Upgrade actions versions (b72f95a)

Chores

  • Drop python-3.8 support, enable python-3.13 (df51da3)

  • Enable 'diff' option with black formatter (9d1edd5)

  • Move root models to a dedicated folder (71fdc63)

  • black: Fix syntax (394b83e)

  • cluster: Add some logging around backups (ff863f8)

  • README: Update fish completion documentation (c68bb6c)

Documentation

  • A command in README was using the legacy syntax (25cb79e)

Features

  • Add a markdown outputFormat (fd9613f)

  • Add api timeout configuration (d2291ff)

  • Add list of available checks in sanitycheck --help (202eff5)

  • Allow sorting and filtering on hidden columns (ce59a7a)

In render_output, we stopped using filter_keys, in order to be able to sort and filter on hidden columns as well. Instead, we use reorder_keys because filter_keys used to reorder keys and we want the columns to appears in the order given by the arguments. Last but not least: in add_list_resource_command we actually reimplement filter_keys in order to remove columns that should never be rendered (node._api for instance). First because we don't want users to display them, and second because PrettyTable take in account the rendering of hidden columns to calculate the height of each cells, which would produce very high columns in some cases.

  • Allow to configure proxy certificate and key with one unique command (3b2571d)

  • Enable outputFormats (yaml, json) for clusterstatus (eb9262a)

  • Support for proxmox clusters behind a reverse proxy with certificate-based authentication (902c759)

  • cli: Get --cluster flag from env (760c613)

  • sanitycheck: Check if disks are unused (d31752f)

  • sanitycheck: Check vms have a backup job configured (1b8617f)

  • sanitycheck: Check vms have at least one recent backup (db42367)

  • sanitychecks: Check onboot vm option (cda70f8)

  • vm: Parse tags as sets for easier usage (7dda4fe)

Refactoring

  • Add PVEVolume and PVEBackupJob classes (f488dbe)

  • Create a click ResourceGroup class that automatically adds a list subcommand (592b6d0)

  • Move backups and backups_job listing in PVECluster and PVEVm (2cedc7d)

  • Move cli related functions from utils.py to cli.py (67cc27a)

  • Move PVECluster.get_node_resources to PVENode.resources property (5f028ad)

  • Remove dead code in Check (2a24f61)

  • Use property instead of method whenever possible in PVECluster and PVENode (34efd0c)

  • cli: Show help instead of an error when no args is provided (4d2d474)

  • cli: Split subcommands between name and verb and use click instead of argparse (38f28f9)

Co-authored-by: Yoann Lamouroux yoann.lamouroux@enix.fr

  • sanitycheck: Improve vm_backups wording (1ca8721)

  • sanitycheck: Use storage.images instead of storage.get_content("images") (aa6db96)

Testing

  • sanitycheck: Vm backups (5e0fd4e)

Detailed Changes: v0.5.0...v0.6.0