Stefan Reiter [Tue, 10 Sep 2019 17:11:44 +0000 (19:11 +0200)]
Make CPU Model Selector a searchable grid view
Uses a ComboGrid with search feature and a column for vendor. Can be
sorted by both columns.
Default sort is as given in this file, I tried to align it as
* AMD
* Intel
* Other
alphabetically and in QEMU order (as before, seems to be release date?)
within those "groups".
Doesn't work with value set in widget definition (would need to be
preferredValue), but we always call setValue() anyway (and if we don't,
value will be '', aka the default, which is correct too), so just remove
that from ProcessorEdit.js.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com> Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
mobile: implement login with OTP based TFA enabled
roughly copied over from the full-fledged manager UI, but enough
differences between manager <-> mobile and ExtJS <-> Sencha Touch to
just adapt it here instead of having a force-shared implementation
with lots of corner case checks and even more callback methods..
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 26 Sep 2019 16:00:54 +0000 (18:00 +0200)]
ui: usbselector: refactor USB Speed rendering, add USB 3.1
Fixes also an issue where unregonized (often faster) devices would
get recognized as "USB 1.x" due to the else fallback.
Now, if we do not recognize the speed value, just print the speed
with the MBps unit (it's not exactly megabit per second, but mega
baud (= symbols) per second - the effective rate is dependent on the
used signal encoding)
adapt widths a bit further
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Enable USB3 by default. There are no restrictions anymore that the speed
of the dev must match the USB3 speed. The xhci controller can deal with
USB 2 and 1 devices. USB3 devices can be plugged in a USB2 (ehci)
controller. As discussed in [0]
When using a USB device for SPICE passthrough my tests showed that USB2
devices connecting to the xhci controller work but a USB3 device passed
via Spice cannot connect to an ehci controller (no USB3 enabled).
qemu-server 6.0-9 supports USB3 also for Spice USB passthrough. See
commit 733234b [1].
All this means we can get rid of the separate handling of USB3 and non
USB3 devices and leave the decision to the user if USB3 should be
enabled or not.
Thomas Lamprecht [Mon, 23 Sep 2019 15:06:21 +0000 (17:06 +0200)]
ui: vm/usbedit: don't use getUSBValue to avoid possible duplicate "usb3"
As getUSBValue() always added the "usb3" property if the selected
device was recognized as USB3. But we can now also pass such a device
as USB2 so lift this restriction - which also fixes a bug for USB3
selected devices with the USB3 checkbox set.
The solution also avoids the me.down query, which is nice too.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Add a setting to choose the scale mode of the noVNC pop-up as well as
the embedded console in the content panel to "My Settings". Having both
set to local scaling was the most important use-case for the users. One
setting for both places is the simplest solution making this possible.
The new section (fieldset) makes adding further options such as
"Local Cursor" easy.
Co-developed-by: Thomas Lamprecht <t.lamprecht@proxmox.com> Signed-off-by: Dominic Jäger <d.jaeger@proxmox.com>
Thomas Lamprecht [Fri, 30 Aug 2019 16:55:51 +0000 (18:55 +0200)]
ui: IPRef field: allow all valid IPs, even if not in the store
since commit 1ccb53ecdbd69a0e4c57a6d861da1918d3625e08 from widget
toolkit[0] we enforce by default that an entered value needs to be in
the backing data store, else the field is marked invalid.
But, for the firewall source/destination IP selector we do not care
if it's in the store, which is only loaded for convenience and to
allow selecting defined aliases/ipsets
Dominik Csapak [Thu, 22 Aug 2019 10:26:09 +0000 (12:26 +0200)]
fix #2340: gui: ceph: handle 'null' versions for hosts
the api returns 'null' for a host that is in the crushmap, but
without actual version information, so just check for falsyness instead
of 'undefined', else we run later into javascript exceptions and no
content on the osd page
Stefan Reiter [Wed, 14 Aug 2019 13:36:27 +0000 (15:36 +0200)]
Delete "exclude" when switching a backup job to pool mode
If you updated a job in "exclude" mode with some VMIDs specified to "pool" mode,
the backup job would retain the "exclude" section and thus not back up all VMs.
The GUI misrepresents this, showing that all VMs will be backed up or
straight up break and show "exclude" mode again, with the backend still
being on "pool" - to prevent this, we always delete a jobs "exclude" list
when it's switched to "pool".
Co-authored-by: Tim Marx <t.marx@proxmox.com> Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Stefan Reiter [Mon, 12 Aug 2019 12:50:06 +0000 (14:50 +0200)]
fix #1594: add "Run now" button to cluster backup page
Iterate all (online) nodes client-side and call vzdump with the correct
parameters (according to the job selected) for each one.
Then, show a progress bar in a non-closeable modal-dialog, to ensure the
user stays on the Backup page during the /vzdump API calls. Any errors
that occurred will be displayed in a consolidated message box.
Includes a "confirm" dialog to not accidentally run a potentially large
backup job.
Curiously, the "pve-cluster-backup" data model seems to have been broken
entirely. I'm not sure how it was working before, but the changes in
this patch need it fixed, so include that as well (use "mode" instead of
individual flags + "compress" is not a boolean).
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Stefan Reiter [Mon, 12 Aug 2019 12:50:07 +0000 (14:50 +0200)]
fix #1594: allow skipping VMIDs on other nodes from API
This was previously gated to CLI only, but it causes a vzdump job
started with the newly introduced "Run Now" button to fail if it
includes VMIDs on other nodes.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Dominik Csapak [Thu, 8 Aug 2019 12:28:55 +0000 (14:28 +0200)]
gui: fix html entities in system report file
since the content of the window is encoded with 'Ext.htmlEncode'
we have to decode it with 'Ext.String.htmlDecode' (Ext.htmlDecode is
a deprecated alias for it) before downloading the file
Oguz Bektas [Wed, 24 Jul 2019 15:46:20 +0000 (17:46 +0200)]
ui: login: do not show connection failure as login failure
In case pvedaemon, pveproxy is not running or we get somehow else a
595 response (connection failure), we want to tell this to the user,
since "Login failed" doesn't help.
Handle all connection failures, leave the rest the same. We could go
into more detail (CONNECT_FAILURE, CLIENT_INVALID, LOAD_FAILURE and
SERVER_INVALID), but i didn't see any reason to make all these
distinctions now.
Thomas Lamprecht [Wed, 24 Jul 2019 08:48:15 +0000 (10:48 +0200)]
ui: vm/Hardware: convert more icons from bitmap to font awesome
since commit 03558174ef4f15f542a61584013a195481188e7f we can use the
Font Awesome icons without them being shown in the remove dialog, so
convert more to them - they are vectors and look a bit better.
Also ensure that all icons are rendered as fixed width, with fa-fw
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 23 Jul 2019 14:33:58 +0000 (16:33 +0200)]
ceph: add perl flag GET and PUT call
use PUT for setting or unsetting, as POST/DELETE (like the old node
specific API used) makes no sense. One does not creates or deletes
the flag, they are always here. One just updates their value
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
we want a GET api call where we return all available flags with
description, but the GET 'flags' api call already returns a string
and not an array, so we cannot use that
instead, we add a new api call that returns that feature and
with e.g. pve 7 we can remove the 'flags' api call and
rename 'flags2' to 'flags'
Debian Buster raised the default security level (1 -> 2) for TLS
connections.
This moves from the 80 bit security level to the 112 bit security level
and will require 2048 bit or larger RSA and DHE keys, 224 bit or larger
ECC keys, and SHA-2.