Show configured cluster nodes with their addresses, votes, IDs.
Also show cluster name, config_version, and node count.
Prepares for creating and joining a cluster over the WebUI.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This removes *a lot* of code duplication.
I add a base class for the storage edit window and for its containing
input panel, they implement the shared stuff. Especially the window
was mostly a 1:1 copy...
I look hard for a way to split up this patch, but I did not really
found one which would not generate a lot of work for no value added
(value being 'revertability' and better git history here).
nd actually not too much happens, the same thing happens just over
and over again.
Thus, I've thrown in the dynamic creation of the storage add menu
items here too.
I remove all storage specific Edit windows, they where all just >95%
duplicates of each other.
Special functionallity, i.e. some data deletion/transforming before
submitting gets done with onGetValues.
For the RBD external vs PVE plugin I just added a minimal child class
to RBD which only tells it'S parent that it is the pve one, this is
nice for the mapping and should be easy to understand when reading
the code.
Tried to test an add and an edit of all visible storage plugins,
seems to be OK now.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Allows to extend our, in the ext patch introduced, storage base class
to use the controller for all storage plugins without breaking those
which cannot host backups - i.e., all block based storages
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
add a schema describing our storages name, the map for its
InputPanel, the icon we show in the add menu, and if it is available
at all there.
For now just use it to simplify the ugly if/else mess
format_storage_type was, future patches will use the information to
generalise Adding/Editing of those storages.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
resolves a future jslint type confusion and as it's nor standarized
nor used by our code we can just drop it.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Let user input MiB/s as values in the KiB/s range are not that handy
and would make even smaller backups need several hours to restore,
days for bigger ones.
Try to give the user imformation about per-storage bandwidth limits
and how he can disable all of them.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
we have a format list, so just render it as plain text easiest to do
and gives an OK feedback
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
so that we can reuse it for containers
while we do this, we also have to adapt the SnapshotSelector
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this was missing from my original series
also enable deletion of the password field via remove button
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
instead of having 3 server fields, have a single line
which can be ips seperated by ',' ';' or ' '
also now the domain and dns server can be changed seperately
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
let them use a one/two column layout depending on browser width
optimize stylings/padding values
get rid of the (now long) unecessary lazyitems plugin
(this was necessary for performance when we still used tabpanels instead
of our own configpanel with treelist)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
instead of hardcoding the width of the panels,
use a columnlayout and use one column for screens < 1900 width
and two columns for screens >= 1900 width
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this adds a new component 'AgentIPView' which
uses the qemu-agent api call to tries to get the ip information for
the guests
only for vms at the moment, since for containers you already
set it on their network tab
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
also add a helper css class to use the png icons like fontawesome icons
and add the ha state to template summary
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Remove the expand/collapse hack needed for an earlier ExtJS version.
Further do not collapse the rootnode before restoring the state, it
may not be collapsible at this time, as it may be still seen as leaf
node, and thus throws exceptions with ExtJS 6.2.0
we fired the refresh to late for the store, i moved it up to fire
directly after we resume events on the store, i.e. when our store update
window is closed again. So it happens before applying the state and
expanding the rootnode.
see
https://pve.proxmox.com/pipermail/pve-devel/2018-February/030762.html
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>