public inbox for pdm-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Lukas Wagner <l.wagner@proxmox.com>
To: pdm-devel@lists.proxmox.com
Subject: [pdm-devel] [PATCH datacenter-manager v3 00/12] add global remote update view
Date: Thu, 23 Oct 2025 14:44:08 +0200	[thread overview]
Message-ID: <20251023124420.244585-1-l.wagner@proxmox.com> (raw)

This series adds a new tab under "Remotes" called "Updates". It provides a
summary regarding the system update availability for all managed remotes.

Potential follow-up work: 
  - The "Refresh all" button, powered by the '/remote-updates/refresh' API
    only retrieves a fresh list of available updates at the moment, but does not
    invoke 'apt update' on the remote. The latter could be useful, either
    always or if explicitly requested, but we probably should 'stream'
    the node's task log to the PDM task log, so one can see the actual
    progress and/or any problems.

  - Remote task cache / task tracking needs a bit of work to correctly handle
    PBS tasks, therefore the 'Update' (which *does* invoke 'apt update' on the
    remote node) button for a *SINGLE* node does not work yet for PBS.

Changes since v2:
  In the UI:
  - Show text for collapsed remote tree item
    - "All nodes up-to-date"
    - "Some nodes nodes have pending updates"
    - "Some nodes have pending updates, some nodes unavailable"
    - ...
  - Collapse single-node PVE remotes and PBS remotes into a single item
    to reduce clicks needed
  - Show remote and node in the header of the right-hand update list
  - Some refactoring to make the code a tiny bit nicer

Changes since v1:
  - Incorporated review feedback from Shannon - see commits for details


proxmox-datacenter-manager:

Lukas Wagner (12):
  pdm-api-types: add types for remote upgrade summary
  remote updates: add cache for remote update availability
  api: add API for retrieving/refreshing the remote update summary
  unprivileged api daemon: tasks: add remote update refresh task
  pdm-client: add API methods for remote update summaries
  pbs-client: add bindings for APT-related API calls
  task cache: use separate functions for tracking PVE and PBS tasks
  remote updates: add support for PBS remotes
  api: add APT endpoints for PBS remotes
  ui: add remote update view
  ui: show new remote update view in the 'Remotes' section
  remote updates: avoid unnecessary clone

 lib/pdm-api-types/src/lib.rs                  |   2 +
 lib/pdm-api-types/src/remote_updates.rs       | 119 ++++
 lib/pdm-client/src/lib.rs                     |  22 +
 server/src/api/mod.rs                         |   3 +
 server/src/api/pbs/mod.rs                     |  19 +-
 server/src/api/pbs/node.rs                    |   9 +
 server/src/api/pve/apt.rs                     | 119 ----
 server/src/api/pve/mod.rs                     |   4 +-
 server/src/api/pve/node.rs                    |   2 +-
 server/src/api/remote_updates.rs              | 222 ++++++++
 server/src/bin/proxmox-datacenter-api/main.rs |   1 +
 .../bin/proxmox-datacenter-api/tasks/mod.rs   |   1 +
 .../tasks/remote_updates.rs                   |  44 ++
 server/src/pbs_client.rs                      |  51 ++
 server/src/remote_tasks/mod.rs                |  45 +-
 server/src/remote_updates.rs                  | 236 +++++++-
 ui/src/remotes/mod.rs                         |  10 +
 ui/src/remotes/updates.rs                     | 530 ++++++++++++++++++
 18 files changed, 1295 insertions(+), 144 deletions(-)
 create mode 100644 lib/pdm-api-types/src/remote_updates.rs
 create mode 100644 server/src/api/pbs/node.rs
 delete mode 100644 server/src/api/pve/apt.rs
 create mode 100644 server/src/api/remote_updates.rs
 create mode 100644 server/src/bin/proxmox-datacenter-api/tasks/remote_updates.rs
 create mode 100644 ui/src/remotes/updates.rs


Summary over all repositories:
  18 files changed, 1295 insertions(+), 144 deletions(-)

-- 
Generated by murpp 0.9.0


_______________________________________________
pdm-devel mailing list
pdm-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pdm-devel


             reply	other threads:[~2025-10-23 12:44 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-23 12:44 Lukas Wagner [this message]
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 01/12] pdm-api-types: add types for remote upgrade summary Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 02/12] remote updates: add cache for remote update availability Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 03/12] api: add API for retrieving/refreshing the remote update summary Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 04/12] unprivileged api daemon: tasks: add remote update refresh task Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 05/12] pdm-client: add API methods for remote update summaries Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 06/12] pbs-client: add bindings for APT-related API calls Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 07/12] task cache: use separate functions for tracking PVE and PBS tasks Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 08/12] remote updates: add support for PBS remotes Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 09/12] api: add APT endpoints " Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 10/12] ui: add remote update view Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 11/12] ui: show new remote update view in the 'Remotes' section Lukas Wagner
2025-10-23 12:44 ` [pdm-devel] [PATCH datacenter-manager v3 12/12] remote updates: avoid unnecessary clone Lukas Wagner
2025-10-23 20:30 ` [pdm-devel] applied-series: [PATCH datacenter-manager v3 00/12] add global remote update view Thomas Lamprecht

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251023124420.244585-1-l.wagner@proxmox.com \
    --to=l.wagner@proxmox.com \
    --cc=pdm-devel@lists.proxmox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal