public inbox for pdm-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pdm-devel] [PATCH datacenter-manager 00/21] improve remote wizard
@ 2025-05-16 13:35 Dominik Csapak
  2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 01/21] server/ui: pve: change 'realm list' api call to GET Dominik Csapak
                   ` (20 more replies)
  0 siblings, 21 replies; 22+ messages in thread
From: Dominik Csapak @ 2025-05-16 13:35 UTC (permalink / raw)
  To: pdm-devel

# Summary

This series improves the remote wizard in various points:
* improved wording and texts
* moved seperate buttons on pages into the next button
* probing of entered nodes
* confirmation dialog for missing fingerprints
* better realm selector

# Notes

I'm not super sure about the API call structure. I think two seperate
API calls (one for tls probing, one for scanning) might make more sense.
If that's wanted, I'll do so in a v2 of the series.

## Probing on the server side

I tried to determine if we need a fingerprint for nodes inside the
API call, by probing each node. Since we currently only get the
nodenames and not FQDNs in the nodelist, this will currently not
result in a valid connection in most cases and return the fingerprint.

My plan would be to include FQDNs of the nodes on the PVE side API call,
so we can return here a list of nodename, ip and FQDNs, which the user
then can select from. (which of those I'd probe on first check is yet
to be determined)

## Fingerprint confirmation dialogs

Not sure if we want to be able to let the user confirm the fingerprint
so easily. On one hand it's very convenient, but maybe leads to users
simply clicking yes without understanding what's happening.

If it's deemed too dangerous, I'd rework the series without this.

# Future work

The next step for the wizard is to have some kind of quick copy&paste
info. After discussing off-list with Fabian a bit, I think it would be
best for this to contain the hostname (FQDN?) + fingerprint (if just a
self-signed certificate) + a list of nodes with their respective
nodename + FQDNs (maybe requires api change on PVE side to generate
this). The user would then still have to do most of the steps currently
necessary in the wizard, except the manual copy & pasting of
fingerprints and maybe entering of FQDNs.


Dominik Csapak (21):
  server/ui: pve: change 'realm list' api call to GET
  api types: RemoteType: put default port info to the type
  server: connection: add probe_tls_connection helper
  server/ui: pve api: extend 'scan' so it can probe the tls connection
  pdm-client: add scan_remote and probe_tls methods
  ui: remotes: node url list: add placeholder and clear trigger
  ui: rmeotes: node url list: make column header clearer
  ui: remotes: node url list: handle changing default
  ui: pve wizard: rename 'realm' variable to 'info'
  ui: pve wizard: summary: add default text for fingerprint
  ui: pve wizard: nodes: improve info text
  ui: pve wizard: nodes: probe hosts to verify fingerprint settings
  ui: pve wizard: info: use pdm_client for scanning
  ui: pve wizard: info: detect hostname and fingerprint
  ui: pve wizard: info: remove manual scan button
  ui: widget: add pve realm selector
  ui: pve wizard: info: use pve realm selector
  ui: pve wizard: connect: factor out normalize_hostname
  ui: pve wizard: connect: move connection logic to next button
  ui: pve wizard: connect: use scan api endpoint instead of realms
  ui: pve wizard: connect: add certificate confirmation dialog

 lib/pdm-api-types/Cargo.toml          |   1 +
 lib/pdm-api-types/src/lib.rs          |   2 +
 lib/pdm-api-types/src/remotes.rs      |  16 ++
 lib/pdm-client/src/lib.rs             |  45 ++++
 server/src/api/pve/mod.rs             |  62 ++++--
 server/src/connection.rs              |  87 +++++++-
 ui/Cargo.toml                         |   1 +
 ui/src/remotes/add_wizard.rs          |   8 +-
 ui/src/remotes/node_url_list.rs       |  33 ++-
 ui/src/remotes/wizard_page_connect.rs | 308 ++++++++++++++++----------
 ui/src/remotes/wizard_page_info.rs    | 127 ++++++-----
 ui/src/remotes/wizard_page_nodes.rs   | 241 +++++++++++++++++++-
 ui/src/remotes/wizard_page_summary.rs |   5 +-
 ui/src/widget/mod.rs                  |   3 +
 ui/src/widget/pve_realm_selector.rs   | 125 +++++++++++
 15 files changed, 853 insertions(+), 211 deletions(-)
 create mode 100644 ui/src/widget/pve_realm_selector.rs

-- 
2.39.5



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


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2025-05-16 13:36 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-05-16 13:35 [pdm-devel] [PATCH datacenter-manager 00/21] improve remote wizard Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 01/21] server/ui: pve: change 'realm list' api call to GET Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 02/21] api types: RemoteType: put default port info to the type Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 03/21] server: connection: add probe_tls_connection helper Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 04/21] server/ui: pve api: extend 'scan' so it can probe the tls connection Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 05/21] pdm-client: add scan_remote and probe_tls methods Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 06/21] ui: remotes: node url list: add placeholder and clear trigger Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 07/21] ui: rmeotes: node url list: make column header clearer Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 08/21] ui: remotes: node url list: handle changing default Dominik Csapak
2025-05-16 13:35 ` [pdm-devel] [PATCH datacenter-manager 09/21] ui: pve wizard: rename 'realm' variable to 'info' Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 10/21] ui: pve wizard: summary: add default text for fingerprint Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 11/21] ui: pve wizard: nodes: improve info text Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 12/21] ui: pve wizard: nodes: probe hosts to verify fingerprint settings Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 13/21] ui: pve wizard: info: use pdm_client for scanning Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 14/21] ui: pve wizard: info: detect hostname and fingerprint Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 15/21] ui: pve wizard: info: remove manual scan button Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 16/21] ui: widget: add pve realm selector Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 17/21] ui: pve wizard: info: use " Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 18/21] ui: pve wizard: connect: factor out normalize_hostname Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 19/21] ui: pve wizard: connect: move connection logic to next button Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 20/21] ui: pve wizard: connect: use scan api endpoint instead of realms Dominik Csapak
2025-05-16 13:36 ` [pdm-devel] [PATCH datacenter-manager 21/21] ui: pve wizard: connect: add certificate confirmation dialog Dominik Csapak

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