Releases: enix/pvecontrol
Release list
v0.8.0
v0.8.0 (2026-06-12)
Bug Fixes
Chores
-
Typo in tests (
409d6cf) -
doc: Update README (
96b93e1) -
README: Update PVECONTROL_CONFIG variable description (
831405c)
Features
Detailed Changes: v0.7.0...v0.8.0
v0.7.0
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
-
black: Update linting (
6ea6d43) -
lint: Black formatting (
783d785) -
lint: Fix linting issue (
083aa94) -
lint: Fix linting issue (
c9e4314) -
lint: Fix linting warnings (
2fe866f) -
lint: Fix pylint (
cbccf8b) -
lint: Fix pylint (
24dbd4e) -
lint: Run black (
07f2d41) -
README: Add permissions (
f9c439e) -
README: Limit the ACLs (
733967a) -
README: Update pvecontrol user configuration (
a807ce6)
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
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
- Update README.md (
0eb4fc9)
Detailed Changes: v0.6.0...v0.6.1
v0.6.0
v0.6.0 (2025-05-12)
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...
v0.5.0
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
v0.4.0
v0.3.1
v0.3.0
v0.3.0 (2024-10-01)
Chore
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
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
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)