If a user is accessing the Ceph panel via Datacenter -> Ceph, then the
install & config wizard might be shown. The nodename that is passed to
the wizard will decide the ID of the initial MON and MGR services.
Therefore, don't fall back to 'localhost' but the actual name of the
node to which we are connected to. The result will be that the first MON
and MGR will have the expected ID instead of 'localhost'.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Render the OSD listening addresses a bit nicer and one per line.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
a new singleton like Utils/Parser, intended for holding stuff for
ui options, such as the tag settings/overrides
no behavioural change intended
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
The sort order is analogous to how it behaves in the datastore content
overview in pbs.
This means sorting in ascending order behaves as follows:
Verify State
* failed
* none
* ok
Encryption
* no
* yes
For the encryption state there is theoretically a distinction between
signed and encrypted, but as far as I can tell we do not render this
distinction in PVE, which is why I chose to not make this distinction
for sorting as well.
Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
We want to select a tree element based on the fragment in the url after
a login. For which we must wait for the tree (ResourceStore) to load.
Since we recently introduced the loading of '/cluster/options' to
load the overrides of tags, etc. we fire a 'load' event with the
intention of triggering a rerender of the tree (to include the new
colors). If that triggers before the ResourceStore is loaded,
we try to set the element once (which fails) and nothing is selected.
To fix this, we only trigger it if it was already loaded and is not
currently loading. Otherwise it will be either redrawn after the ongoing
load, or by the first load.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
by sorting the lower cased variants, and only if they are identical
sort the original values with 'localeCompare'
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
things that changed:
* removed 'add Tag' inline button with proper button that adds
empty tag
* don't require to confirm each tag, simply update the color "live"
* set a minimum width for the editing box, so that it's easier to click
* replace cancel/finish icons with proper buttons
* fix tagCharRegex for multichar text (necessary for paste)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
datacenter.cfg returns an 'ordering' option. parse that and
use it to order the tags when viewing. default is alphabetical.
With alphabetical ordering, drag & drop when editing is disabled and the
tags will be inserted at the right place. When saving, the sorted
order will be written into the config
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
namely for 'tag-tree-style' and 'tag-colors'.
display the tag overrides directly as they will appear as tags
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This provides a basic grid to edit a list of tag color overrides.
We'll use this for editing the datacenter.cfg overrides and the
browser storage overrides.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
stores the color-map into a global list of overrides. on update, also parse
the values from the browser localstore. Also emits a GlobalEvent
'loadedUiOptions' so that e.g. the tags can listen to that and refresh their
colors
also saves the list of 'allowed-tags' into PVE.Utils
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
/cluster/options is now the go to place for getting these options
(until we have more options unrelated to the datacenter.cfg)
Also move the use of the console from VersionInfo to here, since
this will be the future place for ui related backend options.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
in the backend, we allow up to 14 usb ports, but only if the vm can
use the qemu-xhci controller which is only possible since machine
version 7.1 and if the ostype is l26 or windows > 7
for this we introduce two helpers:
* qemu_min_version: modeled after the signature of 'min_version' from
qemu-server, expects two arrays of versions and returns true if
the first parameter is equal or greater than the second version
* get_max_usb_count looks at the given ostype and machine string
and returns the proper maximum number
since we don't currently have the actual running version of the vm in
the gui, this is only a heuristic for running vms. but since the actual
running version could only be lower if none is set (e.g. for
migrated/long-running vms) we allow more in the gui and the backend will
do the proper thing (either hotplug it, or make it a pending change)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Fixed a cosmetic issue where in the VM creation wizard the SCSI
controller would not be displayed correctly if the default value
"Default (LSI 53C895A)" was selected. In this case, "__default__"
would be printed for the user after progressing into the next "Disks"
pane.
Signed-off-by: Daniel Tschlatscher <d.tschlatscher@proxmox.com>
with the recent rework of the render/maps/arrays, we now
show 'Default (__default__)'. Since '__default__' is only an internal
value in the gui, don't expose it by explicitely checking for it
in the other render functions it works already because we either construct
the text differently (console_map) or we check the result from
parsing (vga_driver)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
the 'value' here is already the rendered text, passing it through
render again does not make sense
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Using the actual config key instead of the pluralization, makes it
easier in the situations where we need to match against it.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Fabian Ebner <f.ebner@proxmox.com>
We support external storage plugins, e.g., for proprietary
technology, so a "unknown" value here may not actually mean that we
missed anything, so just return the type value 1:1 as fallback, that
gives the user a better idea about such a storage entry.
Reported-by: Joshua Huber <jhuber@blockbridge.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
With this optional setting, it is possible to allow the user to also
select 'unused' as a disk bus type.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Windows 11 requires a TPM and secure boot, so try to auto-enable both.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
This will hopefully help people to find the needed storage as not
everyone will be aware of the fact that CIFS is also a name used for it
(technically it was only SMB v1).
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Inspired by HDEfi for efidisks. Extends the DiskStorageSelector to allow
hiding the format, since tpmstate can only be stored in 'raw' format
(even on directory storages).
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
We had done so already in PBS and PMG since a bit without seeing
anything broken due to it, which makes sense as this was enabled for
*during* the step-by-step upgrade from ExtJS 4 to 5 (and then
directly 6).
Re-enabling could help with some accessibility issues we have some
tangential reports[0].
[0]: https://github.com/nvaccess/nvda/issues/11530
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
As OpenID is the old one, with several security implications/issues
present, so avoid suggesting that its used.
`OpenID Connect` revers to the "third gen" on top of oauth2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>