]> git.proxmox.com Git - pve-manager.git/log
pve-manager.git
4 years agogui: let users choose the number of columns
Dominik Csapak [Wed, 4 Dec 2019 12:41:36 +0000 (13:41 +0100)]
gui: let users choose the number of columns

introduce a new browser setting, with which the users can choose between
the automatic mode of choosing columns, or always using 1/2/3 columns

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agogui: {dc, node}/Summary: choose columns by panel size
Dominik Csapak [Wed, 4 Dec 2019 12:41:35 +0000 (13:41 +0100)]
gui: {dc, node}/Summary: choose columns by panel size

instead of viewport size, similar to the guest summary

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agogui: GuestSummary: choose columns based on container width
Dominik Csapak [Wed, 4 Dec 2019 12:41:34 +0000 (13:41 +0100)]
gui: GuestSummary: choose columns based on container width

instead of the viewport width. This means that the number of columns can
change when the tree width changes, not only on browser window resize

for this to work reliably, we have to change the structure of the first
two panels, so that they are in one container for non-templates. if
we do not do this, there are some weird glitches on resizing with the
scrollbar

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agogui: refactor {lxc, qemu}/Summary to panel/GuestSummary
Dominik Csapak [Wed, 4 Dec 2019 12:41:33 +0000 (13:41 +0100)]
gui: refactor {lxc, qemu}/Summary to panel/GuestSummary

they are both similar enough to have it only once

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agoceph: Create symlink on standalone MGR creation
Alwin Antreich [Tue, 3 Dec 2019 10:52:26 +0000 (11:52 +0100)]
ceph: Create symlink on standalone MGR creation

Ceph MGR fails to start when installed on a node without existing
symlink to /etc/pve/ceph.conf.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
4 years agobulk migration: only pass 'with-local-disks' along if defined
Thomas Lamprecht [Thu, 5 Dec 2019 12:50:21 +0000 (13:50 +0100)]
bulk migration: only pass 'with-local-disks' along if defined

To make it backward compaitble. NBo real harm without this, but lots
of ugly undefiend $val warnings...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agomigration worker: move params to own variable
Thomas Lamprecht [Thu, 5 Dec 2019 12:49:55 +0000 (13:49 +0100)]
migration worker: move params to own variable

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: window/Restore: fixup unit conversion for bwlimit
Dominik Csapak [Thu, 5 Dec 2019 09:43:38 +0000 (10:43 +0100)]
ui: window/Restore: fixup unit conversion for bwlimit

vzdumps bwlimit is in KiB, so we have to tell our component that
and also remove the unnecessary multiplication with 1024
(the field previously returned the value in MiB)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agoui: backup restore: add start-after-restore checkbox
Thomas Lamprecht [Tue, 3 Dec 2019 09:51:10 +0000 (10:51 +0100)]
ui: backup restore: add start-after-restore checkbox

Restore may be a long running operation, as it goes over the common
create API path we can reuse the "start after create" for a "start
after restore" for free.

Add this as hbox layout, as else it looks like a lot of wasted space
in the right side of the window, especially when restoring a CT
backup (were the "unprivileged" checkbox is additionally there).

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: backup restore: use new bandwith limit component
Thomas Lamprecht [Tue, 3 Dec 2019 09:51:09 +0000 (10:51 +0100)]
ui: backup restore: use new bandwith limit component

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: add date column for backups in storage content view
Thomas Lamprecht [Tue, 3 Dec 2019 08:27:19 +0000 (09:27 +0100)]
ui: add date column for backups in storage content view

main use case is to sort by date, e.g., I just re-created a cluster,
did some VM/CT backups on a NFS dump of mine which already had quite
some backups. Now, on restore I knew that only the backups made
yesterday were interesting, so a sort by date would allow me to find
them all easily, thus this patch was born.

Simple frontend extraction of information from the volid, for now
only for backups as there's the only case were we have the info at
all. Called the model entry "vdate" for "virtual date".

Mayb adding the creation date to all entries could be a nice addition
for the API someday.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapt-transport-https was integrated in apt >= 1.5
Thomas Lamprecht [Wed, 4 Dec 2019 09:20:51 +0000 (10:20 +0100)]
apt-transport-https was integrated in apt >= 1.5

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agobump version to 6.1-3
Thomas Lamprecht [Tue, 3 Dec 2019 13:34:45 +0000 (14:34 +0100)]
bump version to 6.1-3

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: ha: drop unused pve-ha-resources model
Thomas Lamprecht [Tue, 3 Dec 2019 13:29:50 +0000 (14:29 +0100)]
ui: ha: drop unused pve-ha-resources model

we only have the unified pve-ha-status model now

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: ha: calculate service name in model to fix sorting
Thomas Lamprecht [Tue, 3 Dec 2019 13:29:36 +0000 (14:29 +0100)]
ui: ha: calculate service name in model to fix sorting

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agopveversion: fix removed packages with residual configs
Thomas Lamprecht [Tue, 3 Dec 2019 12:50:16 +0000 (13:50 +0100)]
pveversion: fix removed packages with residual configs

Those ain't 'not correctly installed', so do not suggest the user
that.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi: apt versions: handle packages without filename info
Thomas Lamprecht [Tue, 3 Dec 2019 12:49:03 +0000 (13:49 +0100)]
api: apt versions: handle packages without filename info

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: ha: add name of service to resource grid
Thomas Lamprecht [Sat, 30 Nov 2019 19:03:53 +0000 (20:03 +0100)]
ui: ha: add name of service to resource grid

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agobump version to 6.1-2
Thomas Lamprecht [Sat, 30 Nov 2019 17:41:25 +0000 (18:41 +0100)]
bump version to 6.1-2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: vm/hw: be more specific what VM state this is
Thomas Lamprecht [Sat, 30 Nov 2019 17:14:33 +0000 (18:14 +0100)]
ui: vm/hw: be more specific what VM state this is

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: vm/hw: order VM state last and add extra warning
Thomas Lamprecht [Sat, 30 Nov 2019 17:12:28 +0000 (18:12 +0100)]
ui: vm/hw: order VM state last and add extra warning

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: vm/hw: make extra message from deletion flexible
Thomas Lamprecht [Sat, 30 Nov 2019 17:12:08 +0000 (18:12 +0100)]
ui: vm/hw: make extra message from deletion flexible

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agogui: qemu/HardwareView: show vmstate and allow removal
Dominik Csapak [Fri, 29 Nov 2019 10:06:50 +0000 (11:06 +0100)]
gui: qemu/HardwareView: show vmstate and allow removal

so that a user can remove the 'suspended' state without resuming it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agoapi/bulk migrate: add comment regarding PID re-used
Thomas Lamprecht [Sat, 30 Nov 2019 16:06:00 +0000 (17:06 +0100)]
api/bulk migrate: add comment regarding PID re-used

this needs to be fixed, maybe with pidfd's...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi/bulk migrate: warn if vmlist was empty, die if no worker got spawned
Thomas Lamprecht [Sat, 30 Nov 2019 16:05:31 +0000 (17:05 +0100)]
api/bulk migrate: warn if vmlist was empty, die if no worker got spawned

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi/bulk migrate: split long param list in multiple lines
Thomas Lamprecht [Sat, 30 Nov 2019 16:04:49 +0000 (17:04 +0100)]
api/bulk migrate: split long param list in multiple lines

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi/bulk migrate: rework pre-condition check outputs
Thomas Lamprecht [Sat, 30 Nov 2019 16:04:17 +0000 (17:04 +0100)]
api/bulk migrate: rework pre-condition check outputs

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofollow bulk-migrate gui adaptions
Thomas Lamprecht [Sat, 30 Nov 2019 15:24:47 +0000 (16:24 +0100)]
follow bulk-migrate gui adaptions

show both, checkbox and hint in one row, there more horizontal space
than vertical.

s/Warning/Note/

default to on for convenience

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: add checkbox to bulk migrate window to allow migration with local disks
Tim Marx [Fri, 29 Nov 2019 14:10:16 +0000 (15:10 +0100)]
ui: add checkbox to bulk migrate window to allow migration with local disks

Signed-off-by: Tim Marx <t.marx@proxmox.com>
4 years agoapi: add migrate precondition checks to bulk migrate api
Tim Marx [Fri, 29 Nov 2019 14:10:15 +0000 (15:10 +0100)]
api: add migrate precondition checks to bulk migrate api

Signed-off-by: Tim Marx <t.marx@proxmox.com>
4 years agoapi: add migrate with local disks to bulk migrate api
Tim Marx [Fri, 29 Nov 2019 14:10:14 +0000 (15:10 +0100)]
api: add migrate with local disks to bulk migrate api

Signed-off-by: Tim Marx <t.marx@proxmox.com>
4 years agoui: lxc: fix cmd menu separator hiding
Thomas Lamprecht [Sat, 30 Nov 2019 13:39:24 +0000 (14:39 +0100)]
ui: lxc: fix cmd menu separator hiding

use same condition boolean line as VMs have

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoadd reboot button to right-click menu for VMs
Oguz Bektas [Fri, 29 Nov 2019 16:44:44 +0000 (17:44 +0100)]
add reboot button to right-click menu for VMs

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
4 years agoapi: apt/versions: track ifupdown and ifupdown2 as optional package
Thomas Lamprecht [Sat, 30 Nov 2019 13:30:58 +0000 (14:30 +0100)]
api: apt/versions: track ifupdown and ifupdown2 as optional package

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: dc/options: fix capabillities for u2f, bwlimits, ha settings
Thomas Lamprecht [Fri, 29 Nov 2019 14:20:32 +0000 (15:20 +0100)]
ui: dc/options: fix capabillities for u2f, bwlimits, ha settings

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoLXC: Disable resize button when volume is unusued
Fabian Ebner [Wed, 27 Nov 2019 12:01:48 +0000 (13:01 +0100)]
LXC: Disable resize button when volume is unusued

The size of an unused volume is not visible to the user and trying to resize
an unused volume runs into a 'parameter verification failed' anyways.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
Tested-by: Oguz Bektas <o.bektas@proxmox.com>
4 years agopvesr service: order after pve-cluster
Thomas Lamprecht [Thu, 28 Nov 2019 09:52:51 +0000 (10:52 +0100)]
pvesr service: order after pve-cluster

avoids errors from this service on boot as it could be started before
pve-cluster.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agod/control: build depend on newes doc-gen 6.1-1
Thomas Lamprecht [Wed, 27 Nov 2019 18:36:02 +0000 (19:36 +0100)]
d/control: build depend on newes doc-gen 6.1-1

to ensure we have all the online references available

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: dc/options: add onlineHelp to u2f and ha edit window
Thomas Lamprecht [Wed, 27 Nov 2019 18:35:08 +0000 (19:35 +0100)]
ui: dc/options: add onlineHelp to u2f and ha edit window

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agogui: Bandwidth limits: increase labelWidth to 120
Dominik Csapak [Wed, 27 Nov 2019 16:31:44 +0000 (17:31 +0100)]
gui: Bandwidth limits: increase labelWidth to 120

in some languages (e.g. German) the default (100) is too short for some labels,
resulting in cut-off text. We often use 120 in such cases, so we should
do here as well

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agogui: UserView: show api call errors
Dominik Csapak [Wed, 27 Nov 2019 15:27:34 +0000 (16:27 +0100)]
gui: UserView: show api call errors

otherwise, an api error leads to an empty UserView, and the user
wonders why no users show up

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agobump version to 6.1-1
Thomas Lamprecht [Wed, 27 Nov 2019 10:37:39 +0000 (11:37 +0100)]
bump version to 6.1-1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofixup whitespace error
Thomas Lamprecht [Wed, 27 Nov 2019 10:36:19 +0000 (11:36 +0100)]
fixup whitespace error

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: dc/options: add bandwidth limit editor
Thomas Lamprecht [Wed, 27 Nov 2019 10:25:51 +0000 (11:25 +0100)]
ui: dc/options: add bandwidth limit editor

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: add Bandwidth selector widget
Thomas Lamprecht [Wed, 27 Nov 2019 10:24:46 +0000 (11:24 +0100)]
ui: add Bandwidth selector widget

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofollowup: add intermediate directory index for sdn/zones
Thomas Lamprecht [Tue, 26 Nov 2019 16:58:01 +0000 (17:58 +0100)]
followup: add intermediate directory index for sdn/zones

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi2 : nodes : use zones api status
Alexandre Derumier [Tue, 26 Nov 2019 14:20:11 +0000 (15:20 +0100)]
api2 : nodes : use zones api status

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
4 years agoapi2 : reload : use zones/controllers sdn plugins
Alexandre Derumier [Tue, 26 Nov 2019 14:20:10 +0000 (15:20 +0100)]
api2 : reload : use zones/controllers sdn plugins

4 years agopvestatd: fix require PVE::Network::SDN
Alexandre Derumier [Tue, 26 Nov 2019 14:20:09 +0000 (15:20 +0100)]
pvestatd: fix require PVE::Network::SDN

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
4 years agolxc: disable remove button for pending resource changes
Oguz Bektas [Tue, 26 Nov 2019 15:37:07 +0000 (16:37 +0100)]
lxc: disable remove button for pending resource changes

for a pending change, it's 'revert's job to do this. pressing remove
doesn't do anything and it might be confusing for users.

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
4 years agoui: dc/options: allow to set U2F
Thomas Lamprecht [Tue, 26 Nov 2019 15:59:25 +0000 (16:59 +0100)]
ui: dc/options: allow to set U2F

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: printPropertyString: skip empty string values
Thomas Lamprecht [Tue, 26 Nov 2019 15:58:18 +0000 (16:58 +0100)]
ui: printPropertyString: skip empty string values

This cannot work anyway, and it simplifies some editors for
format-string backed properties, like the upcoming u2f settings
integration.

If such a value was passed to the backend one would get:
> invalid format - missing key in comma-separated list property

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi mon: allow full-mesh routed setup for monitor IP
Thomas Lamprecht [Tue, 26 Nov 2019 14:42:24 +0000 (15:42 +0100)]
api mon: allow full-mesh routed setup for monitor IP

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agonode config: allow - in config property keys
Thomas Lamprecht [Tue, 26 Nov 2019 12:27:30 +0000 (13:27 +0100)]
node config: allow - in config property keys

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofollowup: be slightly more verbose on error or renew
Thomas Lamprecht [Tue, 26 Nov 2019 12:23:45 +0000 (13:23 +0100)]
followup: be slightly more verbose on error or renew

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agorenew pve-ssl.pem when it nearly expires
Dominik Csapak [Tue, 26 Nov 2019 10:01:22 +0000 (11:01 +0100)]
renew pve-ssl.pem when it nearly expires

but only if the cert is issued by the ca in /etc/pve/pve-root-ca.pem
(by checking the issuer and openssl verify)

this way we can reduce the lifetime of the certs without having
to worry that they ran out

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agoapi: network reload: more granular OVS change check
Thomas Lamprecht [Tue, 26 Nov 2019 10:43:39 +0000 (11:43 +0100)]
api: network reload: more granular OVS change check

Just because OVS is installed it doesn't mean that OVS interface
(changes) are configured - so check for that.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agogui: node network: enable apply config button
Dominik Csapak [Tue, 29 Oct 2019 11:08:49 +0000 (12:08 +0100)]
gui: node network: enable apply config button

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agoallow to set 'migrate' shutdown policy in datacenter options
Thomas Lamprecht [Mon, 25 Nov 2019 18:54:44 +0000 (19:54 +0100)]
allow to set 'migrate' shutdown policy in datacenter options

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: lxc: switch reboot and stop button to match VMs
Thomas Lamprecht [Mon, 25 Nov 2019 05:40:50 +0000 (06:40 +0100)]
ui: lxc: switch reboot and stop button to match VMs

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoceph tools: adapt version to accept -pveX too
Thomas Lamprecht [Sat, 23 Nov 2019 16:59:16 +0000 (17:59 +0100)]
ceph tools: adapt version to accept -pveX too

this is a precautional measure

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofix #2462: ACMEAccount: make tos in get_tos optional
Dominik Csapak [Wed, 13 Nov 2019 09:15:57 +0000 (10:15 +0100)]
fix #2462: ACMEAccount: make tos in get_tos optional

the code returns undef in case there is no 'tos', and the code
calling this api call handles a non-existing tos already, but
fails in that case becasue of the failing return value verification

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agobump version to 6.0-15
Thomas Lamprecht [Thu, 21 Nov 2019 14:16:33 +0000 (15:16 +0100)]
bump version to 6.0-15

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoFix #2476: Fix auto-ballooning QMP command
Stefan Reiter [Thu, 21 Nov 2019 12:22:16 +0000 (13:22 +0100)]
Fix #2476: Fix auto-ballooning QMP command

Commit 0dd73a7fec (statd: refactor update_node_status) changed $target
in pvestatd's auto_balloning sub into a variable:

    my $target = int($res->{$vmid});

but then uses it in a string as a parameter to the $log function:

    $log->("BALLOON $vmid to $target (%d)\n", $target - $current);

This surprisingly causes the variable to be incorrectly converted into a
JSON string by perl's to_json (called in QMPClient after mon_cmd):

    {"value":"1234"}

instead of

    {"value":1234}

which causes QEMU to report the parameter as invalid:

    "Invalid parameter type for 'value', expected: integer"

This behaviour is made even trickier, since $target internally is still
considered more of an 'int' (although that's a weak claim in perl
anyway), showing up without quotes in Dumper et. al. - but the perldoc
for to_json scheds some light:

    simple scalars
        Simple Perl scalars (any scalar that is not a reference) are the
        most difficult objects to encode: this module will encode undefined
        scalars as JSON "null" values, scalars that have last been used in a
        string context before encoding as JSON strings, and anything else as
        number value

So coerce to_json to treat $target as an integer by using it as one and
everything is fine again.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
4 years agoapi/ceph: skip merging metadata if hostname is undefined
Thomas Lamprecht [Thu, 21 Nov 2019 09:57:49 +0000 (10:57 +0100)]
api/ceph: skip merging metadata if hostname is undefined

It's a bit hard to figure out the exact constellation required for
this to happen, but we saw it in live systems when one node was dead
in a three node cluster.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoceph/api: cleanup comment on extra line
Thomas Lamprecht [Thu, 21 Nov 2019 09:57:21 +0000 (10:57 +0100)]
ceph/api: cleanup comment on extra line

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agobump version to 6.0-14
Thomas Lamprecht [Wed, 20 Nov 2019 19:23:37 +0000 (20:23 +0100)]
bump version to 6.0-14

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofollowup: vm QGA type: handle a explicit set virtio type
Thomas Lamprecht [Wed, 20 Nov 2019 19:44:33 +0000 (20:44 +0100)]
followup: vm QGA type: handle a explicit set virtio type

as else we'd show "Unknown" if one set the type explicitly to
"virtio", either over API/CLI or editing the configuration directly

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoAdd 'type' option to AgentFeatureSelector
Matt Dunwoodie [Tue, 19 Nov 2019 14:25:55 +0000 (01:25 +1100)]
Add 'type' option to AgentFeatureSelector

This adds an extra field to the AgentFeatureSelector that reflects the
change in qemu-server.

Changes since previous version:

 * Use map rather than if/else if/else for type display string.
 * Use Proxmox.Utils.unknownText for unknown type (should not occur with
   regular use).
 * Keep existing fields as boxLabel rather than fieldLabel, as they
   look crammed with fieldLabel.
 * Use __default__ for default option, to save space and replicate
   behaviour in other places.
 * Store option in advancedItems as it is a special case.

Even though the map only contains one item, it will be easily added to
in the future. There is only one item as there is no need to have a
string for "virtio" as it is not displayed because of __default__.

Signed-off-by: Matt Dunwoodie <ncon@noconroy.net>
4 years agolxc: add reboot button
Oguz Bektas [Wed, 20 Nov 2019 14:49:41 +0000 (15:49 +0100)]
lxc: add reboot button

to right-click menu and dropdown menu

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
4 years agolxc: refactor stop button
Oguz Bektas [Wed, 20 Nov 2019 14:49:40 +0000 (15:49 +0100)]
lxc: refactor stop button

move stopBtn into shutdownBtn as a menu item.

we can remove the setDisabled() call for stopBtn near the end, since when
shutdownBtn is disabled, so is stopBtn.

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
4 years agofix #844: allow to pre-delay start-all-marked guests on boot
Thomas Lamprecht [Tue, 19 Nov 2019 12:15:27 +0000 (13:15 +0100)]
fix #844: allow to pre-delay start-all-marked guests on boot

Add a simple ExecStartPre command which reads the local node config,
and if a delay is set the helper sleeps that long then exists.

The systemd-unit approach was chosen as this ensures that we really
only delay when doing the startall on node boot. The pve-guests
service does not allows manual stops, starts or restarts, it can only
be pulled in by the multi-user.target

Mark this command with "-" to tell systemd that errors of it should
not cause an abort, it's a best-effort approach.

The journal from a 2 second delay would look like:
> Nov 19 13:13:48 dev6 systemd[1]: Starting PVE guests...
> Nov 19 13:13:48 dev6 pve-startall-delay[2318]: Delaying on-boot 'startall' command for 2 second(s).
> ...
> Nov 19 13:13:50 dev6 pve-guests[2339]: <root@pam> starting task UPID:dev6:00000924:00000529:5DD3DC7E:startall::root@pam:

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agogui: pci passthrough: consider domain in PCISelector
Dominik Csapak [Tue, 12 Nov 2019 13:23:04 +0000 (14:23 +0100)]
gui: pci passthrough: consider domain in PCISelector

but remove the default domain '0000' before sending to the backend,
and add it if no domain is given in the config

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
4 years agod/control: bump version dependency to qemu-server
Thomas Lamprecht [Wed, 20 Nov 2019 18:33:22 +0000 (19:33 +0100)]
d/control: bump version dependency to qemu-server

for mon_cmd refactoring

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agorefactor: vm_mon_cmd is now Monitor::mon_cmd
Stefan Reiter [Tue, 19 Nov 2019 11:23:51 +0000 (12:23 +0100)]
refactor: vm_mon_cmd is now Monitor::mon_cmd

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
4 years agoallow to run some tests in parallel
Thomas Lamprecht [Tue, 19 Nov 2019 14:01:37 +0000 (15:01 +0100)]
allow to run some tests in parallel

the replication test are not yet ready for that, but the others can
be run in parallel

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofollowup: cleanup/refactor mail test
Thomas Lamprecht [Tue, 19 Nov 2019 14:01:12 +0000 (15:01 +0100)]
followup: cleanup/refactor mail test

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoFix #352: Limit the length of backup logs for mails
Dominic Jäger [Tue, 21 May 2019 11:16:13 +0000 (13:16 +0200)]
Fix #352: Limit the length of backup logs for mails

When creating a backup the log part can make the mail too big to be
transferred. To ensure delivery, two measures are taken:
1. Always omit the status lines
2. Omit the whole log part if a mail becomes (too) big

Additionally, add a check for missing log files.

Co-developed-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Dominic Jäger <d.jaeger@proxmox.com>
4 years agoapi: node/config: allow to return only a specific config property
Thomas Lamprecht [Tue, 19 Nov 2019 11:04:52 +0000 (12:04 +0100)]
api: node/config: allow to return only a specific config property

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agostatus/graphite: fix memory leak, avoid cyclic closure reference
Thomas Lamprecht [Tue, 19 Nov 2019 08:11:45 +0000 (09:11 +0100)]
status/graphite: fix memory leak, avoid cyclic closure reference

The data passed to this closure was never free'd, depending on the
count of VM/CTs one could get >1 MB of RSS (!) memory leaked per
statd status cycle update run...

We could also use Scalar::Util's weaken, to weak a copy of this
variable, but as a simple undef works lets do that with a comment..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agofixup: graphite: use correct variable in closure
Thomas Lamprecht [Tue, 19 Nov 2019 08:10:16 +0000 (09:10 +0100)]
fixup: graphite: use correct variable in closure

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoExt. Metrics: module global variable does not help with memory leak
Thomas Lamprecht [Mon, 18 Nov 2019 18:15:13 +0000 (19:15 +0100)]
Ext. Metrics: module global variable does not help with memory leak

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agostatd: increase RSS difference required for restart
Thomas Lamprecht [Mon, 18 Nov 2019 18:07:19 +0000 (19:07 +0100)]
statd: increase RSS difference required for restart

it seems that we have a reference leak or the like somewhere in the
(graphite?) status plugin, while the recent transaction based update
mechanism made it slightly better, it's still bad with a lot of VMs..

Until we can track that down, or abandon perl for good, avoid to
frequent restarts by allowing statd to grow 15 MB of memory usage
after initial calibration (it's memory usage at the 10th cycle)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agostatd: report memory usage in KB
Thomas Lamprecht [Mon, 18 Nov 2019 17:15:04 +0000 (18:15 +0100)]
statd: report memory usage in KB

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoext. metric: move to a transaction model
Thomas Lamprecht [Mon, 18 Nov 2019 11:18:59 +0000 (12:18 +0100)]
ext. metric: move to a transaction model

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agobump version to 6.0-12
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:42 +0000 (11:28 +0100)]
bump version to 6.0-12

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agod/control: bump versioned b-d on libpve-guest-common-perl
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:41 +0000 (11:28 +0100)]
d/control: bump versioned b-d on libpve-guest-common-perl

otherwise the replication tests fail to load datacenter.cfg

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agod/control: add (build-)depends on libpve-cluster-api-perl
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:40 +0000 (11:28 +0100)]
d/control: add (build-)depends on libpve-cluster-api-perl

it contains PVE::API2::ClusterConfig

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agod/control: add (build-)depends on libpve-cluster-perl
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:39 +0000 (11:28 +0100)]
d/control: add (build-)depends on libpve-cluster-perl

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agotest: also mock cfs_read_file
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:38 +0000 (11:28 +0100)]
test: also mock cfs_read_file

needed for tests to work without a functional running pmxcfs instance.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agopveproxy.service: take over pvecm call from pve-cluster.service
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:37 +0000 (11:28 +0100)]
pveproxy.service: take over pvecm call from pve-cluster.service

to ensure certificate/key is present prior to loading them.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agouse PVE::RRD for RRD data
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:36 +0000 (11:28 +0100)]
use PVE::RRD for RRD data

refactored from PVE::Cluster. same code, same semantics, different file.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agotest: mock PVE::SSHInfo module
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:35 +0000 (11:28 +0100)]
test: mock PVE::SSHInfo module

since it is now used for getting a cluster node's migration IP address.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agouse PVE::DataCenterConfig
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:34 +0000 (11:28 +0100)]
use PVE::DataCenterConfig

to make sure that the corresponding cfs_read_file works() works.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agotakeover CertCache from pve-cluster
Fabian Grünbichler [Mon, 11 Nov 2019 10:28:33 +0000 (11:28 +0100)]
takeover CertCache from pve-cluster

same code, same semantics, different file/module

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
4 years agomove common metric server management part to own module
Thomas Lamprecht [Sat, 16 Nov 2019 15:17:07 +0000 (16:17 +0100)]
move common metric server management part to own module

For now it only handles the plugin registration and the two recently
integrated helpers.
But, this is a prepartation to move the external metrics server
update mechanic from a stateless always-newly-connect-send-disconnect
to a statefull transaction based mechanis; see later patches

keep the PVE::Status::Plugin use in pvestatd, as we read the cfs
hosted status.cfg there, and the parser is defined by the common
status plugin base module.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agomakefile: sort perlsources module list
Thomas Lamprecht [Sat, 16 Nov 2019 15:10:24 +0000 (16:10 +0100)]
makefile: sort perlsources module list

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoui: ceph/Services: do some housekeeping
Thomas Lamprecht [Sat, 16 Nov 2019 13:31:31 +0000 (14:31 +0100)]
ui: ceph/Services: do some housekeeping

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agobump version to 6.0-12
Thomas Lamprecht [Fri, 15 Nov 2019 18:04:53 +0000 (19:04 +0100)]
bump version to 6.0-12

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
4 years agoapi: ceph/metadata: add structured node versions
Thomas Lamprecht [Fri, 15 Nov 2019 16:24:45 +0000 (17:24 +0100)]
api: ceph/metadata: add structured node versions

include the version as string and as parts, as we do the split
already. Also include the build commit, so if we re-release a ceph
version, we can differ here too.

Use node as key, to make the new entry a bit more general, could be
easily expanded with other infos, if required.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>