it's not used anymore, does not belong into pve-manager (rather in
proxmox-widget-toolkit), does not have a proper alias.
it's simple enough to recreate should we ever need it again
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
it is basically the 'Server View' but with less content, and has often
times lead to confusion when uses accidentally selected it.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This gives us more detailed infos about the problems Ceph currently has.
It is the last command because if PGs have issues, the list can be quite
long. Therefore, we want it at the end of the report.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Some users have a more complicated CRUSH hierarchy, for example with a
stretched cluster. The additional hierarchy steps (datacenter, rack,
room, ...) are shown in the OSD panel. Showing a generic icon for any
CRUSH types that have not a specific icon configured will make it easier
to navigate the tree as it will not look somewhat broken and empty.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
By switching from 'ceph osd tree' to the 'ceph osd df tree' mon API
equivalent , we get the same data structure with more information per
OSD. One of them is the number of PGs stored on that OSD.
The number of PGs per OSD is an important number, for example when
trying to figure out why the performance is not as good as expected.
Therefore, adding it to the OSD overview visible by default should
reduce the number of times, one needs to access the CLI.
Comparing runtime cost on a 3 node ceph cluster with 4 OSDs each doing 50k
iterations gives:
Rate osd-df-tree osd-tree
osd-df-tree 9141/s -- -25%
osd-tree 12136/s 33% --
So, while definitively a bit slower, but it's still in the µs range,
and as such below HTTP in TLS in TCP connection setup for most users,
so worth the extra useful information.
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
[ TL: slight rewording of subject and add benchmark data ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
...when editing LDAP realm sync settings and only a single property is
empty and thus to be deleted (e.g. values.delete = "filter").
If `delete` is a simple string and not an array,
`PVE.Utils.delete_if_default` simply creates a comma-separated list,
(e.g. value.delete = "filter,sync-attributes").
When the properties from the other panel are evaluated and added to the
the `delete` property, comma-separated list format is not considered,
leading to a final value for `delete` that could look like this:
value.delete = {
"server2",
"comment",
"filter,sync-attributes"
}
This commit fixes this by splitting `delete` in case it is a string.
Reported-by: Friedrich Weber <f.weber@proxmox.com>
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Tested-by: Friedrich Weber <f.weber@proxmox.com>
previously the upid would just be used without a file extension when
downloading a task log. this lead to rather strange filenames that
appeared unfamiliar to users as the upid is not very prevalent in the
gui. set a proper file name based on the node name, worker type and a
time stamp instead. also add the ".log" file extension to indicate
that these files contain logs.
Signed-off-by: Stefan Sterz <s.sterz@proxmox.com>
This patch fixes the issue that when the user supplied any non-standard
repositories, the changelogs often wouldn't load. For example, providing
both pve-no-subscription and pbs-no-subscription broke the changelog
API, since the URL built for pbs-no-subscription was invalid.
Signed-off-by: Leo Nunner <l.nunner@proxmox.com>
The top bar normally doesn't hosts form fields, so the height was a
bit off and the lower border of the node selector overflowed and got
hidden, making the whole picker look slightly off.
So set a minimum height of 40 px to ensure the field can be fully
shown, including margins.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
When clicking the toolbar of the ComboGrid, the combobox loses focus,
and instantly hides the picker.
To prevent that, we keep track of the mousedown event on the toolbar
(which happily comes before the focusLeave event), and prevent the
focusLeave propagation in that case.
Then on mouseup, we focus the combobox again, so that the nexct
focusLeave can trigger again.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Ideally we'd offer fingerprint validation, but it's already nice to
allow admins configure the no-cert-verify through the UI, e.g., when
testing the metrics stack pre-deployment or for internally hosted
instances with a trusted DNS.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This text is only displayed when at least one tag is defined in the
User Tag Access editor.
Signed-off-by: Daniel Tschlatscher <d.tschlatscher@proxmox.com>
Based to the suggestion of Wolfgang, in regard to `split_list()`,
I converted the `split_list()` to `split(/\0/, $param->{$key});`
this will split the `$param->{$key}` null characters and push each
element to the `$args` array along with the key value.
changes since v1:
* get rid of the `use PVE::Tools qw(split_list);` since not need it anymore.
* replace the split_list to split(/\0/).
Signed-off-by: Moayad Almalat <m.almalat@proxmox.com>
If one is not familiar with the underlying configuration option,
one might think that one can enable Wake-On-Lan for a node with this
option. It was not really clear (at least without RTFM ;) ) that a
MAC address is supposed to be entered here. The added text should
hopefully make this a bit more clear.
Also increased the label width a bit, so that a full MAC
address can be properly displayed.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
In JS, a `for (const a in <...>)` loop iterates over indices, not
over values. To iterate over values, `for (const a of <..>)` has
to be used. Furthermore, filtering by ID did not work properly, since
the property is called `vmid`, not `id`.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Currently this works in the backup view for containers/VMs, but not in
the storage backup view. Implement that for the latter part too.
Uses the callback functionality of the load() method of the store to
properly update the UI as soon as the loading has finished.
While at it, refactor the same thing in the grid backup view as well,
removing the current hack in the process.
Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
As we got reports that some buttons get cut-off on resolutions close
to our minimal 720p one, especially if the "guest not in backup" jobs
hint is shown.
Link: https://forum.proxmox.com/threads/120714/
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
[ T: resolve merge conflict and reword commit message ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
And switch the title of the "not in any job" info window to title
case, just like the button that opens it.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
We got reports in the forum about accessibility issues, as buttons
where cut-off due to the relatively long warning.
Use the old text as tooltip for the button and add the icon also
there.
Link: https://forum.proxmox.com/threads/120714/#post-526376
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Its only shown sometimes and with this patch it's adjacent to the
selection mode, so quite fitting also from that POV.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
avoids extra vertical space usage due to a long label that's broken
up in multiple lines while not really loosing any relevant info.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
on our minimal display size (1280x720), using height 700 is too large
when considering that the browser + os also need some vertical space.
For good measure, use a maximum of 600 pixels. Since the window is
resizable anyway, users with more space should not have a problem here.
reported in the forum:
https://forum.proxmox.com/threads/web-forms-extend-beyond-web-page-window-in-some-cases.120714
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
using cbin, gettin rid of initComponent
this is a bit more complicated than the other refactorings in storage
recently, since we have a few fields with non trivial dependecies
between the selected mode (existing vgs/base storage) and isCreate
Because of that, using a cbind for the xtype here instead of the
pmxDisplayEditField is much more convenient
(accessing the pmxDisplayEditField and the editField below is currently
not really ideal)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
using cbind + pmxDisplayEditField, getting rid of initComponent
Disables the target selector until a portal is entered. For this, we
currently cannot use the pmxDisplayEditField, since that
disabled/enables the fields automatically based on 'editable'.
Also setting buffer for the portal entry change handler to 500ms (so that
we don't query the backend that often)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
using cbind + pmxDisplayEditField, getting rid of the initComponent
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
by converting the relevant selection boxes to combogrids.
This is done to reduce confusion for how/why to select a node, and
doing it this way it is moved closer to the selection of the actual
value we want. It still restricts the nodes when selecting a specific one.
Show it only when there is more than one node according to the
in-memory PVE.data.ResourceStore info, as for single-node setups
there isn't any other node one could scan anyway.
Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
otherwise it can happen that there as additional change event from
null to '', even though the value did not change
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>