Skip to content

Releases: enix/pvecontrol

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 14:13

v0.8.0 (2026-06-12)

Bug Fixes

  • config: Potential empty filename (96b93e1)

  • help: Fix help inversion wait/follow (882a9a2)

Chores

  • Typo in tests (409d6cf)

  • doc: Update README (96b93e1)

  • README: Update PVECONTROL_CONFIG variable description (831405c)

Features

  • config: Add option --config (96b93e1)

  • config: Autodetect cluster (7d19e59)


Detailed Changes: v0.7.0...v0.8.0

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 11 May 14:43

v0.7.0 (2026-05-11)

Bug Fixes

  • cluster: Remove redundant s3 exception (83ae723)

  • cluster.py: Ha rules (94d590b)

  • rebase: Bad rebase (506fe05)

  • report: Fix output and checks (6a47751)

  • sanitychecks: Fix pytest errors (0fd92e0)

  • sanitychecks: Fix pytest errors (c460920)

  • tests: Add version api mockup (31de9ba)

  • tests: Remove unneded future (fe41bb6)

  • tests: Remove unneded future (854f3c3)

  • user: _default_kwargs usage (267813f)

  • vm.py: Add Unknown status (d3f67ff)

Build System

  • Allow zero version in semantic release and bump its version to v10 (5f2b63c)

Chores

Features

  • Add pvecontrol vm restore command (bc958e1)

  • acls: Add acls informations (1228067)

  • group: Add group listing (8b81045)

  • report: Add report command (c3b3ff4)

  • report: Add user informations to report (8459bd9)

  • report: Refactor report output (9f21a93)

  • user: Add tokens associated to user (0488510)

  • user: Add user list command (a196780)


Detailed Changes: v0.6.1...v0.7.0

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 04 Jun 14:25

v0.6.1 (2025-06-04)

Bug Fixes

  • Better sanity check output (aad6126)

  • Patch terminal display (e86f30d)

  • migration: Change default value of --online option (4b1508b)

Build System

  • Use python-semantic-release v9 instead of master (da11a91)

Chores


Detailed Changes: v0.6.0...v0.6.1

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 12 May 11:56

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)

  • **cl...

Read more

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 30 Jan 17:07
effbefd

v0.5.0 (2025-01-22)

Bug Fixes

  • Cleanup code (dd97cdc)

  • Correct clusterconfig default value overwrite (45fd3c2)

  • Crash on sortby None (default value) (d62164e)

  • Crash when filtering returns 0 results (55bd00b)

  • Harmonize logs when using --wait and --follow (aac7714)

  • Missing method self._initstatus() in task.refresh() (547bdd1)

  • Patch clusterconfig never set to default config (910a7ac)

  • Strenum isn't available for python 3.10 (d32fffc)

  • Transpose existing sanity checks to new class (ea4ac51)

  • clusterstatus: Update cli output (d6fac76)

  • config: Correct PVECluster args node to config (c576f2e)

  • config: Correct PVECluster args node to config (92b030e)

  • config: Rollback node_factors to node (f5f5ec4)

  • evacuate: Change log output (0433c60)

  • evacuate: Make sure targets are unique (9266a25)

  • sanitycheck: In VM config, cpu are not always return by API (7e40e21)

  • sanitycheck: Patch error on if statements in ha_vms check (13f7fd5)

  • sanitycheck: Patch no checks append to sanity checks list (21341f8)

  • sanitycheck: Verify check exists before trying to run it (b83be42)

  • sanitychecks: Add exitcode and correct message criticity code (21f0864)

  • sanitychecks: Add terminal supports verification (utf-8, bold, colors) (1983eca)

  • sanitychecks: Correct check code for ha_group (16aca67)

  • sanitychecks: Patch display issues depending on terminal using curses (f69e07c)

  • sanitychecks: Patch display issues depending on terminal using curses (6a9e93a)

  • sanitychecks: Patch some issues (049d6e6)

  • sanitychecks: Refacto Checks run with classes (660a837)

  • storage: Patch error on PVEStorage.str (9e71daa)

  • storagelist: Add sort-by arg (76337ab)

  • storagelist: Correct shared col (ee9d082)

  • storagelist: Prototype of print_tableoutput has changed (f7e27cc)

  • storagelist: Update PVEStorage kwargs loading (43990a5)

  • tasks: Nicely handle vanished tasks (1fbf112)

Some tasks can deseappear from the API with time. So we must handle this case.

Chores

  • Add CI job for black and config in pyproject (6b76a99)

  • Fix ci cancelled jobs (e3c4af0)

  • Optimize cli by reducing HTTP calls (f78a040)

  • Remove Github deployment in CI stage tests (c35723c)

  • Remove Github deployment in CI stage tests (8bdbceb)

  • Run black (12f1045)

  • Run black (f4e5013)

  • auth: Patch tests and lint (3aa20b2)

  • black: Correct style for sanitycheck (62e792e)

  • black: Patch black warnings (800c157)

  • ci: Fix CI execution for PRs (2bf9fe8)

  • ci: Update file requirements-dev.txt (3536c51)

  • pylint: Add CI job for pylint (58d29cd)

  • pylint: Init pylint refacto (2712d88)

  • pylint: Patch last needed (17503b9)

  • pylint: Patch loop on pvecontrol module (6eed68f)

  • pylint: Patch pvecontrol/actions/cluster.py (62eb341)

  • pylint: Patch pvecontrol/actions/storage.py (6669615)

  • pylint: Patch pvecontrol/actions/task.py (3106b23)

  • pylint: Patch pvecontrol/actions/vm.py (d453dfb)

  • pylint: Patch pvecontrol/node.py (2a81710)

  • pylint: Patch src/pvecontrol/cluster.py (d1e1f78)

  • pylint: Patch src/pvecontrol/storage.py (e3582ad)

  • pylint: Patch src/pvecontrol/utils.py (509f911)

  • pylint: Patch typo (6308701)

  • pylint: Rebase to branch black (149ee27)

  • pylint: Remove unnecessary pylint comment (77e8329)

  • README: Add documentation about shell auto completion (239ef7a)

  • README: Complete doc for release (56d2fea)

  • docs: update README

  • chore(README): Add token auth to documentation.

  • docs: merge my token auth docs


Co-authored-by: Laurent Corbes laurent.corbes@enix.fr

  • README: Fix missing newline (53e6924)

  • README: Fix title (5897f2a)

  • README: With pylint modification dev command was updated (d4071f6)

Features

  • --columns flag (ef518d9)

  • Add --filter flag to node, task and vm (65691ae)

  • Add --output option to list commands (supports ...

Read more

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 16:36

v0.4.0 (2024-11-04)

Bug Fixes

  • fix: PEP8 compliance update private method (8d260b3)

  • fix: Patch test (902fd2a)

Features

  • feat: Split actions into mutliple files, add a config.py to resolve issue due to global validconfig (32f4534)

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 02 Oct 09:08

v0.3.1 (2024-10-02)

Chore

  • chore(ci): update python version

Also update action versions
Run ci on dev branch (c79b5a3)

Fix

  • fix(package): Fix module package and install (858d20f)

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 01 Oct 16:27

v0.3.0 (2024-10-01)

Chore

  • chore(README): Update config (4f62fc7)

  • chore(pvecontrol): Add some debug (21d332a)

Feature

  • feat(pvecontrol): Add nodeevacuate feature

This fonction allow to automatically migrate out all the VMs from a node to another ones. (206dc83)

  • feat(task): Add internal decode_log fonction (dad15b2)

  • feat(cluster): Add refresh

Allow to refresh all clusters objects (6b50de5)

  • feat(vm): add vm.migrate

This new fonction take over management of VM migration (9b01237)

  • feat(sanitycheck): Add feature to check for cluster good rules (f649380)

  • feat(tasks): Rewrite task using class (df528be)

  • feat(global): Complete rewrite into classes

Create classes to manage PVECluster, PVENode and PVEVM objects. This will allow
lot more simple operations now. (119b01c)

Fix

  • fix(task): Fix issue with status refresh (43c72c0)

  • fix(node): linter output (5e0bea1)

  • fix(task): Revert fix for not available node (3cbd35a)

  • fix(node): add cast on memory (2298276)

  • fix(PVENode): Fix issue with offline node (a128eb3)

Unknown

  • Merge pull request #3 from enix/dev

Split code using lib and objects (b411d19)

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 15:15

v0.2.0 (2023-10-06)

Chore

  • chore(README): Add badges, fix typos (e51df76)

  • chore(README): More complete documentation (384749c)

  • chore(debug): Add some debug lines (151c31d)

  • chore(setup): Change description (542f9d7)

  • chore(setup): Change README content type (08aabcb)

Feature

  • feat(vmmigrate): Add dry-run (9a5941e)

  • feat(vmmigrate): First version with migration (c908672)

Fix

  • fix(pvecontrol): Update parser help output (4a484f3)

  • fix(requirements): Bump proxmoxer version (09fd1fb)

  • fix(config): Use a more comprehensive default (5b9d4fc)

  • fix(pvecontrol): convert vmid to int (bb493fa)

  • fix(nodelist): add some defaults for optional (f1ece32)

Unknown

  • Merge pull request #2 from enix/dev

New release (98ea199)

  • Merge pull request #1 from enix/rdegez-patch-1

Update README.md (e65bd77)

  • Update README.md

Fix typos (4fb2d47)

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 13 Sep 15:48

v0.1.1 (2023-09-13)

Chore

  • chore(README): update python version (14b4ad1)

  • chore(release): Use unified release workflow (6c481a7)

Fix

  • fix(pvecontrol): Add missing empty line (b825a95)