since we do not use tabpanels anymore,
the hide calls and listeners do nothing,
so we can drop them
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this removes all subconfigpanel related code,
since it is not needed anymore
we now have the treelist/cardpanel combo instead of tabpanels
which means we can drop the whole subconfigpanel class
and subclasses
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
instead of having 2 panels,
we have now a splitted panel
with both config and crushmap
also drop the not needed [] around the alias
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
use new tree functionality of configpanel
move options,monitor,console under hardware (now system)
move firewall subpanels into tree
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
use new tree functionality of configpanel
move options,network,dns,console under resources (now system)
move firewall subpanels into tree
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
use new tree functionality of the configpanel
move services,time,syslog and shell under summary
move dns,firewall under network
move subpanels of firewall and ceph in the tree
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
use the new tree functionality of the configpanel
make users,groups,pools,roles and auth
subitems of permissions (expanded by default)
instead of using the subconfigpanel for
ha and firewall, use the panels directly
as subitems of ha-status and firewall-rules
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this patch changes configpanel class,
so that instead of creating a tabpanel,
we now are a card panel which uses a treelist
to choose the active card
this changes how the panel looks:
instead of having countless tabs on the top
we now can have a nice tree structure on the left
how the items will be interpreted by the tree
is commented in www/manager6/panel/ConfigPanel.js
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this was probably missed in a previous refactoring, the
filehandle is only opened and closed here and read_aplinfo()
already opens and closes the file itself.
instead of importing the trusted gpg keys into root's
.gnupg on each appliance list update, install a trusted
keyring generated at build time.
verify signatures with gpgv and the trusted keyring instead
of gpg --verify on root's keyring with output parsing.
adds a help button to the following panels in the lxc wizard
Template (points to: Container Images)
Root Disk (points to: Container Storage)
Network (points to: Container Network)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
when a vzdump script is set and the backup fails early (eg.
when exceeding the number of backups) run_hook_script()
showed an uninitialized value error trying to use
$task->{mode} which is set only after prepare() was called.
This sets $task->{mode} early, still updated later to $stop
if !$running, and changes the condition for whether
cleanup() should be called to not use $task->{mode} (which
makes no real sense anyway) to using the $cleanup hash like
the rest of the code.
The current position inside the Workspace is saved via the StateProvider
separately thus this clearing operation do not lose the previous selection.
As a side effect by calling setContent(null) on logout we also fix the
following bug:
when logging out while the Syslog tab of the Node panel was displayed,
you had to login twice due a to a race condition in the store
load of the Syslog panel. ( The login call could complete successfully
before a backgroup store load, causing the faild store load call
to redisplay a login window)
this implements the new StatusView class for
guests and templates
using the new pveStatusView, we do not split the status
panels per lxc/qemu, but for Template/Guest
this makes more sense, since the information which lxc
and qemu guests have are more similar than what you want
to display for templates/guests
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this adds a component StatusView which is intended to
replace the old statusview panels of qemu/lxc/nodes
(later maybe also pools and storages)
it extends Ext.panel.Panel and expects an rstore and title
it is not intended to be used directly but to be subclassed
it works like this:
on instantiating, it adds a listener to the rstore load,
so that on every rstore load 'updateValues' gets executed
there, if successful, looks for every subcomponent of type
'pveInfoWidget' and calls 'updateField' on it
'updateField' calculates the update text and value for
the info widgets based on the given class variables
using either:
textField -> which gets the value from the store and
displays it simple as text (with renderer and calculator)
or valueField and (optional) maxField
where it determines the usage
(also with a renderer and calculator)
for both there is a default calculator/renderer
but this can be overwritten when instantiating/declaring
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this adds a new component, which is 2 labels
(left the title and right the text) with a
small progressbar
it has a method updateValue, where it takes a string and
a value from 0 to 1 and updates the right label
and the progressbar
the progressbar gets a different css class at >60% and
>90% (i added some css classes to make it yellow and red
respectively)
the warning and critical thresholds are customizable
this will be used in a new version of the statusview
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Instead we will the use the CA certificate provided by the
ca-certificates packages, which is now a mandatory depency of
pve-manager since 067d24db98 and
pve-manager 4.2-17. This change allows us in the future to
use different CA for our https repositories.
This changed has been tested OK with the following combination:
* https repository using a StartCom certificate: works
* https repository using a Let's encrypt certificate: works
User visible changes:
* none : the new configuration file 75pveconf silently
overwrites the olderone, except if local changes were made
in which case you're presented with the traditional debian menu
(keep local/ use packager version/ diff / open a shell)
store.findRecord returns the first match, and by default
matches the beginning of the strings not the whole
without this, with multple realms with the same name, but different
tfa settings, the login window can show the tfa input box even
when the selected realm has no tfa active
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
we assumed that Term::ReadLine does not put
input into the history automatically, but it does this
so if this feature is enabled, we do not have to add
the inputs manually, and we have to delete the password
from the history
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
this patch fixes an issue where we assemble the influxdb
key value pairs to the wrong measurement
and also we did only allow integer fields,
excluding all cpu,load and wait measurements
this patch fixes both issues with a rewrite of the
recursive build_influxdb_payload sub
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
When basic capabilities are missing, don't display the corresponding actions in
the tree menu.
Note that we *hide* the corresponding actions, instead of disabling by greying
out the menu command. Disabling here does not make sense, since a low privilege
user has no way to reenable the menu commands by himself.
This is mainly a usability improvement, as the real capabilities test is done in
the backend.
virtio-blk and virtio-net have been in the kernel since 2.6.25 released in 2008, so
it safe to assume distributions using the l26 type will have these drivers.
this is ExtJS recommended practise, follows most of our
conventions and is necessary for querying
components with Ext.ComponentQuery.query() without escaping the
dots in the component widget name.
on touch devices, the isValid function of forms trigger
a layout event, which the edit window listens to and
executes an isValid on the form -> infinite loop
we now suspend the layout before this and continue afterwards
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>