]> git.proxmox.com Git - pve-manager.git/log
pve-manager.git
5 years agoimplement basic wake on LAN functionality
Christian Ebner [Thu, 17 Jan 2019 10:01:36 +0000 (11:01 +0100)]
implement basic wake on LAN functionality

Provides the basic functionality to provide a wake on LAN feature implementation
to start nodes in a cluster from other nodes.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
5 years agoNodeConfig: support patterns in check_type
Thomas Lamprecht [Wed, 16 Jan 2019 12:40:24 +0000 (13:40 +0100)]
NodeConfig: support patterns in check_type

Add pattern support for the check_type method used by the
parse_config method. It would be much better to integrate the missing
stuff into either the JSONSchema check_prop or parse_config methods,
should be mostly the "description" assembly anyway, and if that is
not possible or to hacky it'd be still nice to have a common single
of those parser, not multiple ones (pve-container, qemu-server, ...)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoFix #1982: pvesh: check if a handler exists for path
Christian Ebner [Tue, 15 Jan 2019 09:32:47 +0000 (10:32 +0100)]
Fix #1982: pvesh: check if a handler exists for path

Checks that the handler for the API call even exists before verifying the
parameter schema. By this the reported error message is more descriptive.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
5 years agoNodeConfig: simplify description parsing
Thomas Lamprecht [Tue, 15 Jan 2019 17:34:17 +0000 (18:34 +0100)]
NodeConfig: simplify description parsing

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version to 5.3-8
Thomas Lamprecht [Fri, 11 Jan 2019 09:24:58 +0000 (10:24 +0100)]
bump version to 5.3-8

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoallow 8-way NUMA systems
Thomas Lamprecht [Thu, 10 Jan 2019 13:47:13 +0000 (14:47 +0100)]
allow 8-way NUMA systems

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoceph: change check if installed to ceph mon binary
Tim Marx [Thu, 10 Jan 2019 12:54:30 +0000 (13:54 +0100)]
ceph: change check if installed to ceph mon binary

Signed-off-by: Tim Marx <t.marx@proxmox.com>
5 years agofix #2030: use looks_like_number for number check
Dominik Csapak [Mon, 7 Jan 2019 12:59:47 +0000 (13:59 +0100)]
fix #2030: use looks_like_number for number check

since numbers can also be in '1.e-10' format, we have to change
how we check for a number

Scalar::Util is already core and we use it in PVE::Tools, so
no new dependecy.

in case of "NaN" or "Infinity" we omit the key/value pair

else we quote like before

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agofix #1997: set taskid for single-guest backups
Fabian Grünbichler [Wed, 28 Nov 2018 09:51:40 +0000 (10:51 +0100)]
fix #1997: set taskid for single-guest backups

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
5 years agobump version to 5.3-7
Thomas Lamprecht [Thu, 20 Dec 2018 09:59:35 +0000 (10:59 +0100)]
bump version to 5.3-7

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agod/control: bump libpve-storage-perl version dependency to 5.0-35
Thomas Lamprecht [Thu, 20 Dec 2018 09:53:50 +0000 (10:53 +0100)]
d/control: bump libpve-storage-perl version dependency to 5.0-35

to ensure that the new PVE::CephConfig module is available

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoceph: move Monitor API calls to API2/Ceph/MON.pm
Dominik Csapak [Wed, 19 Dec 2018 10:24:47 +0000 (11:24 +0100)]
ceph: move Monitor API calls to API2/Ceph/MON.pm

and adapt the paths

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: move MGR API calls to API2/Ceph/MGR.pm
Dominik Csapak [Wed, 19 Dec 2018 10:24:46 +0000 (11:24 +0100)]
ceph: move MGR API calls to API2/Ceph/MGR.pm

and adapt the paths

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: move mgr create/destroy to Ceph::Services
Dominik Csapak [Wed, 19 Dec 2018 10:24:45 +0000 (11:24 +0100)]
ceph: move mgr create/destroy to Ceph::Services

and adapt the paths and callers

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: move API2::CephOSD to API2::Ceph::OSD
Dominik Csapak [Wed, 19 Dec 2018 10:24:44 +0000 (11:24 +0100)]
ceph: move API2::CephOSD to API2::Ceph::OSD

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: move service_cmd and MDS related code to Services.pm
Dominik Csapak [Wed, 19 Dec 2018 10:24:43 +0000 (11:24 +0100)]
ceph: move service_cmd and MDS related code to Services.pm

Also adapts the calls to the relevant subs.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: move CephTools into Ceph/Tools.pm
Dominik Csapak [Wed, 19 Dec 2018 10:24:42 +0000 (11:24 +0100)]
ceph: move CephTools into Ceph/Tools.pm

It makes more sense to have it there, especially since we want to
split out the service parts into a seperate file.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: use cfs_read/write_file for ceph.conf
Dominik Csapak [Wed, 19 Dec 2018 10:24:41 +0000 (11:24 +0100)]
ceph: use cfs_read/write_file for ceph.conf

The parser is now registered, and ceph.conf is a tracked file in pmxcfs.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agobump version to 5.3-6
Thomas Lamprecht [Fri, 14 Dec 2018 11:25:43 +0000 (12:25 +0100)]
bump version to 5.3-6

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agofixup: whitespace cleanup
Thomas Lamprecht [Thu, 13 Dec 2018 09:15:46 +0000 (10:15 +0100)]
fixup: whitespace cleanup

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoceph api: added check for /etc/pve/ceph.conf to remaining/new endpoints
Tim Marx [Tue, 11 Dec 2018 10:08:56 +0000 (11:08 +0100)]
ceph api: added check for /etc/pve/ceph.conf to remaining/new endpoints

Signed-off-by: Tim Marx <t.marx@proxmox.com>
5 years agofix #2017: add help button to storage input panels
Dominik Csapak [Fri, 7 Dec 2018 10:33:41 +0000 (11:33 +0100)]
fix #2017: add help button to storage input panels

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoui: storage/cephfs: fix maxfiles default enable
Thomas Lamprecht [Fri, 7 Dec 2018 13:02:37 +0000 (14:02 +0100)]
ui: storage/cephfs: fix maxfiles default enable

Most other storage types do not have backup in their default content
selection when creating a new storage, so there it make sense to
initially have maxfiles disabled. But with CephFS we have default
_only_ backup as content type, so let it enabled here - as else one
must change something in the content selector to enable the field.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoFix #2019: CephFS storage misses Max Backups
Alwin Antreich [Fri, 7 Dec 2018 08:02:57 +0000 (09:02 +0100)]
Fix #2019: CephFS storage misses Max Backups

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
5 years agoui: fixup jslint warnings
Thomas Lamprecht [Fri, 7 Dec 2018 12:59:31 +0000 (13:59 +0100)]
ui: fixup jslint warnings

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: lxc/features: add fuse
Wolfgang Bumiller [Tue, 4 Dec 2018 09:03:16 +0000 (10:03 +0100)]
ui: lxc/features: add fuse

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoui: lxc/features: disable nfs and cifs for unprivileged
Wolfgang Bumiller [Tue, 4 Dec 2018 09:03:15 +0000 (10:03 +0100)]
ui: lxc/features: disable nfs and cifs for unprivileged

While we can allow them via the apparmor profile, they still
won't be usable as the kernel doesn't have FS_USERNS_MOUNT
set on those.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agodo not send 'undefined' as romfile
Dominik Csapak [Wed, 5 Dec 2018 12:25:25 +0000 (13:25 +0100)]
do not send 'undefined' as romfile

when adding a pcidevice, we added 'romfile=undefined' by accident

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agobump version to 5.3-5
Thomas Lamprecht [Mon, 3 Dec 2018 11:14:06 +0000 (12:14 +0100)]
bump version to 5.3-5

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: CephFS: fix onlineHelp buttons
Thomas Lamprecht [Fri, 30 Nov 2018 17:43:00 +0000 (18:43 +0100)]
ui: CephFS: fix onlineHelp buttons

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version to 5.3-4
Thomas Lamprecht [Thu, 29 Nov 2018 12:02:33 +0000 (13:02 +0100)]
bump version to 5.3-4

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoceph: update all pg_num defaults to 128
Thomas Lamprecht [Thu, 29 Nov 2018 11:36:21 +0000 (12:36 +0100)]
ceph: update all pg_num defaults to 128

As the last patch missed a few places. see pg calc or also:
http://docs.ceph.com/docs/luminous/rados/operations/placement-groups/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoRaise the default pg_num to 128
Alwin Antreich [Wed, 28 Nov 2018 09:26:39 +0000 (10:26 +0100)]
Raise the default pg_num to 128

PGCalc and the ceph recommendation say 128 PGs for up to 5 OSDs

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
5 years agoui: cluster: require ring0_addr if joinee's ring and node addr differ
Thomas Lamprecht [Tue, 27 Nov 2018 14:22:24 +0000 (15:22 +0100)]
ui: cluster: require ring0_addr if joinee's ring and node addr differ

Pass the ring addresses from the node we use to join a cluster with
the encoded cluster info. Use it to determine if the nodes public
address (i.e., the onei t's node name resolves to) differs from it'S
ring0 address, if that's the case and the cluster was created with
PVE tooling then we know that it's highly probable that the ring0 is
on another network than the public net, so require the ring0_addrss
field in this case. If we have a false positive, it's not to bad
here.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: ceph pools: we now add only one storage, so signular
Thomas Lamprecht [Wed, 28 Nov 2018 11:06:54 +0000 (12:06 +0100)]
ui: ceph pools: we now add only one storage, so signular

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoadd pciutils as dependency
Dominik Csapak [Wed, 28 Nov 2018 10:40:27 +0000 (11:40 +0100)]
add pciutils as dependency

the package is not big, installed by default in the installer,
makes the pci scan much prettier, and we call lspci in the pvereport

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agofixup: values is not needed for iterating a list
Thomas Lamprecht [Wed, 28 Nov 2018 09:31:32 +0000 (10:31 +0100)]
fixup: values is not needed for iterating a list

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agofixup: s/wipe_disk/wipe_disks/ as we can to multiple at once
Thomas Lamprecht [Wed, 28 Nov 2018 09:30:58 +0000 (10:30 +0100)]
fixup: s/wipe_disk/wipe_disks/ as we can to multiple at once

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoFactoring the wipe_disk out into CephTools
Alwin Antreich [Tue, 27 Nov 2018 15:02:56 +0000 (16:02 +0100)]
Factoring the wipe_disk out into CephTools

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
5 years agoceph: fixup s/add_storage/add-storage/
Thomas Lamprecht [Wed, 28 Nov 2018 09:01:56 +0000 (10:01 +0100)]
ceph: fixup s/add_storage/add-storage/

it's just the nicer interface and we want to go away from underscore
usage in new calls

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agofix #1430: ceph init: allow to specify separate cluster network
Thomas Lamprecht [Tue, 27 Nov 2018 14:37:32 +0000 (15:37 +0100)]
fix #1430: ceph init: allow to specify separate cluster network

Allow to specify a separate cluster network when initializing ceph.
Ceph docs[0] imply a possibility for performance increase and
enhanced security in environments where the public network serves not
fully trusted peers, which could else provoke a DOS to the cluster
traffic[0].

Make this optional, but if passed `network` is required too.

[0]: http://docs.ceph.com/docs/luminous/rados/configuration/network-config-ref/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: cephfs: only allow CephFS creation if MDS is configured
Thomas Lamprecht [Mon, 26 Nov 2018 15:56:27 +0000 (16:56 +0100)]
ui: cephfs: only allow CephFS creation if MDS is configured

Introduce the mdsCount again, I know remember again why I had it in
v3 of my CephFS series.. Use this to disable the CephFS create button
if we have no MDS configured, as this is a requirement.
Further change the gettext for 'No XY configure' to a format string
so that it can be reused.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoapi: cephfs: reuse rados connection when polling for active MDS
Thomas Lamprecht [Mon, 26 Nov 2018 15:12:17 +0000 (16:12 +0100)]
api: cephfs: reuse rados connection when polling for active MDS

no point in recreating one, we have an active one from earlier

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agopveceph: ensure ceph-fuse gets uptdated when installing ceph server
Thomas Lamprecht [Mon, 26 Nov 2018 15:11:30 +0000 (16:11 +0100)]
pveceph: ensure ceph-fuse gets uptdated when installing ceph server

as we depend on ceph-fuse elsewhere (pve-storage) this gets installed
from Debians repositories with the Ceph 10 version.
So ensure that an up to date version, from our current supported Ceph
release, gets installed when doing `pveceph install` else you may
fall into certain issues which would have been already resolved with
a newer version.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoupdate shipped aplinfo index
Thomas Lamprecht [Mon, 26 Nov 2018 17:45:55 +0000 (18:45 +0100)]
update shipped aplinfo index

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agopveceph: mds destroy: fixup parameter s/id/name/
Thomas Lamprecht [Mon, 26 Nov 2018 16:07:25 +0000 (17:07 +0100)]
pveceph: mds destroy: fixup parameter s/id/name/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agois_any_mds_active: check if state is correct
Thomas Lamprecht [Mon, 26 Nov 2018 15:52:05 +0000 (16:52 +0100)]
is_any_mds_active: check if state is correct

a MDS gets transferred to the active MDS info once it got selected as
active, not once it really _is_ active, it can be there in the
'up:creating' state. So ensure that a MDS with 'u:active' could be
found

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agogui: refactor render_full_name
Dominik Csapak [Mon, 19 Nov 2018 11:51:38 +0000 (12:51 +0100)]
gui: refactor render_full_name

this also fixes a missing  htmlEncode in UserSelector

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agobump version to 5.1-3
Thomas Lamprecht [Fri, 23 Nov 2018 18:16:40 +0000 (19:16 +0100)]
bump version to 5.1-3

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi: cephfs: wait for MDS to become active
Thomas Lamprecht [Fri, 23 Nov 2018 17:49:46 +0000 (18:49 +0100)]
api: cephfs: wait for MDS to become active

A MDS gets only active once a FS is there, and we need an MDS active
to be able to add a storage, as the CephFS plugin does an immediate
mount check. As an MDS needs some time to get active we had a
problematic time window where this mounting could fail.

Wait for a MDS to get in active state.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi: cephfs: check if SID is free when add_storage is set
Thomas Lamprecht [Fri, 23 Nov 2018 17:35:16 +0000 (18:35 +0100)]
api: cephfs: check if SID is free when add_storage is set

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoupdate bump to 5.3-2
Thomas Lamprecht [Fri, 23 Nov 2018 15:17:46 +0000 (16:17 +0100)]
update bump to 5.3-2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi/ceph: import file_set_contents
Thomas Lamprecht [Fri, 23 Nov 2018 15:17:04 +0000 (16:17 +0100)]
api/ceph: import file_set_contents

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version to 5.3-2
Thomas Lamprecht [Fri, 23 Nov 2018 14:13:31 +0000 (15:13 +0100)]
bump version to 5.3-2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agopveceph: also install ceph-mds for hyper converged install
Thomas Lamprecht [Fri, 23 Nov 2018 14:11:03 +0000 (15:11 +0100)]
pveceph: also install ceph-mds for hyper converged install

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version to 5.3-1
Thomas Lamprecht [Fri, 23 Nov 2018 13:11:27 +0000 (14:11 +0100)]
bump version to 5.3-1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: add CephFS integration
Thomas Lamprecht [Fri, 23 Nov 2018 12:34:26 +0000 (13:34 +0100)]
ui: add CephFS integration

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agopveceph: move to sub commands
Thomas Lamprecht [Fri, 23 Nov 2018 11:01:40 +0000 (12:01 +0100)]
pveceph: move to sub commands

add aliases for the existing ones, ignore the ones for MDS and
CephFS, they did never hit any repo.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoceph: add CephFS create and list API
Thomas Lamprecht [Fri, 23 Nov 2018 11:01:39 +0000 (12:01 +0100)]
ceph: add CephFS create and list API

Allow to create a new CephFS instance and allow to list them.

As deletion requires coordination between the active MDS and all
standby MDS next in line this needs a bit more work. One could mark
the MDS cluster down and stop the active, that should work but as
destroying is quite a sensible operation, in production not often
needed I deemed it better to document this only, and leaving API
endpoints for this to the future.

For index/list I slightly transform the result of an RADOS `fs ls`
monitor command, this would allow relative easy display of a CephFS
and it's backing metadata and data pools in a GUI.

While for now it's not enabled by default and marked as experimental,
this API is designed to host multiple CephFS instances - we may not
need this at all, but I did not want to limit us early. And anybody
liking to experiment can use it after the respective ceph.conf
settings.

When encountering errors try to rollback. As we verified at the
beginning that we did not reused pools, destroy the ones which we
created.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Co-authored-by: Alwin Antreich <a.antreich@proxmox.com>
5 years agoceph: add MDS create/delete/list API
Thomas Lamprecht [Fri, 23 Nov 2018 11:01:38 +0000 (12:01 +0100)]
ceph: add MDS create/delete/list API

Allow to create, list and destroy and Ceph Metadata Server (MDS) over
the API and the CLI `pveceph` tool.

Besides setting up the local systemd service template and the MDS
data directory we also add a reference to the MDS in the ceph.conf
We note the backing host (node) from the respective MDS and set up a
'mds standby for name' = 'pve' so that the PVE created ones are a
single group. If we decide to add integration for rank/path specific
MDS (possible useful for CephFS with quite a bit of load) then this
may help as a starting point.

On create, check early if a reference already exists in ceph.conf and
abort in that case. If we only see existing data directories later
on we abort but do not remove them, they could well be from an older
manual create - where it's possible dangerous to just remove it. Let
the user handle it themself in that case.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Co-authored-by: Alwin Antreich <a.antreich@proxmox.com>
5 years agoceph: move create/destroy pool to CephTools
Thomas Lamprecht [Fri, 23 Nov 2018 11:01:37 +0000 (12:01 +0100)]
ceph: move create/destroy pool to CephTools

We will reuse this in the future, e.g., when creating a data and
metadata pool for CephFS.

Allow to pass a $rados object (to reuse it, as initializing is not
that cheap) but also create it if it's undefined, fro convenience.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi: document default for ceph service start/stop/restart
Thomas Lamprecht [Fri, 23 Nov 2018 11:40:46 +0000 (12:40 +0100)]
api: document default for ceph service start/stop/restart

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agogui: add ceph monitor restart button
Dominik Csapak [Fri, 23 Nov 2018 10:46:45 +0000 (11:46 +0100)]
gui: add ceph monitor restart button

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agogui: add osd restart button
Dominik Csapak [Fri, 23 Nov 2018 10:46:44 +0000 (11:46 +0100)]
gui: add osd restart button

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoceph: add service restart api call
Dominik Csapak [Fri, 23 Nov 2018 10:46:43 +0000 (11:46 +0100)]
ceph: add service restart api call

like start/stop but for restart, this makes maintenance a bit easier

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoui: ZFS: don't use gettext for ZFS specific columuns
Thomas Lamprecht [Fri, 23 Nov 2018 06:09:49 +0000 (07:09 +0100)]
ui: ZFS: don't use gettext for ZFS specific columuns

hard to translate sensible and also better for user to have them in
english as much more can be found when searching those specific
terms. To what would one translate CKSUM for example?

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi/hardware: fixup: add missing file
Thomas Lamprecht [Thu, 22 Nov 2018 14:05:52 +0000 (15:05 +0100)]
api/hardware: fixup: add missing file

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version to 5.2-13
Thomas Lamprecht [Thu, 22 Nov 2018 14:01:31 +0000 (15:01 +0100)]
bump version to 5.2-13

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agofix #1575: use reboot for node reboot
Thomas Lamprecht [Thu, 22 Nov 2018 13:45:42 +0000 (14:45 +0100)]
fix #1575: use reboot for node reboot

As requested by various users and also for Dominik's upcomming
restart Ceph [Mo, Mgr, ...} series where else two buttons just called
reboot would be exacly besides each other.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version dependency of libpve-common-perl to 5.0-43
Thomas Lamprecht [Thu, 22 Nov 2018 13:23:57 +0000 (14:23 +0100)]
bump version dependency of libpve-common-perl to 5.0-43

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi: move PCI from Scan to Hardware path
Thomas Lamprecht [Thu, 22 Nov 2018 13:20:06 +0000 (14:20 +0100)]
api: move PCI from Scan to Hardware path

as discussed[0] lets move this to /nodes/{node}/hardware/pci

Put this in its own subfolder and adapt module names and paths in UI.

[0]: https://pve.proxmox.com/pipermail/pve-devel/2018-November/034694.html
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agogui: let users add PCI devices
Dominik Csapak [Thu, 22 Nov 2018 10:35:46 +0000 (11:35 +0100)]
gui: let users add PCI devices

this enables the gui part to enable the user to add a pci device
via the gui

we disable the button after 4 devices, since that is the maximum
in the backend

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agogui: add qemu/PCIEdit
Dominik Csapak [Thu, 22 Nov 2018 10:35:45 +0000 (11:35 +0100)]
gui: add qemu/PCIEdit

this patch adds the PCIEdit window and InputPanel uses PCISelector
and MDevSelector

when we detect an iommugroup of -1, we put a warning on top to inform
the user that IOMMU is not activated (but let him add the devices
regardless, so that he can use it after IOMMU is activated)

also puts a warning if he selects a device that shares an iommugroup
with a different device (but not the same device with different
function). that detection is not perfect, but we cannot do really
better

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agogui: add MDevSelector
Dominik Csapak [Thu, 22 Nov 2018 10:35:44 +0000 (11:35 +0100)]
gui: add MDevSelector

this is used to select a mediated device type

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agogui: add form/PCISelector
Dominik Csapak [Thu, 22 Nov 2018 10:35:43 +0000 (11:35 +0100)]
gui: add form/PCISelector

this adds a form field for selecting a pci device

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoapi/Scan: allow to get a PCI device's mediated devices
Dominik Csapak [Thu, 22 Nov 2018 10:35:42 +0000 (11:35 +0100)]
api/Scan: allow to get a PCI device's mediated devices

this is for the gui to be able to select mediated devices
path ist /node/NODE/scan/pci/PCIID/mdev

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoapi/Scan: allow to scan a nodes PCI devices
Dominik Csapak [Thu, 22 Nov 2018 10:35:41 +0000 (11:35 +0100)]
api/Scan: allow to scan a nodes PCI devices

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoui: storage/content: reference volid in confirm window and use new task description
Thomas Lamprecht [Thu, 22 Nov 2018 12:27:34 +0000 (13:27 +0100)]
ui: storage/content: reference volid in confirm window and use new task description

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: storage/content: jslint and styling fixups
Thomas Lamprecht [Thu, 22 Nov 2018 12:26:56 +0000 (13:26 +0100)]
ui: storage/content: jslint and styling fixups

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoAdd imageRemoveButton
Wolfgang Link [Thu, 22 Nov 2018 10:49:37 +0000 (11:49 +0100)]
Add imageRemoveButton

If an image has a <vmid>  encoded in the image name
and the guest does not exist in the cluster
we can delete it on the GUI.

Also, if a config exists on another node and the storage is local
we can delete.

In all other cases, it is not allowed to delete it.

For safety reason the safe remove windows are used.

5 years agoCephTools: cleanup module usage
Thomas Lamprecht [Tue, 20 Nov 2018 08:34:39 +0000 (09:34 +0100)]
CephTools: cleanup module usage

as done with the api ceph modules:
most of this was imported by just copying without verifying if all is
actually required. Some lost its purpose as we re-used more from our
existing module code base (e.g., pve-common) but wasn't actually
removed.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi/Ceph: actually use imported file_{g,s}et_contents
Thomas Lamprecht [Tue, 20 Nov 2018 08:07:39 +0000 (09:07 +0100)]
api/Ceph: actually use imported file_{g,s}et_contents

5 years agoapi/Ceph: cleanup module usage
Thomas Lamprecht [Tue, 20 Nov 2018 07:47:09 +0000 (08:47 +0100)]
api/Ceph: cleanup module usage

most of this was imported by just copying without verifying if all is
actually required. Some lost its purpose as we re-used more from our
existing module code base (e.g., pve-common) but wasn't actually
removed.

As this file includes two perl modules you need to take a bit caution
when looking at this, as some things are used in one module but not
the other - simple grep'ing at this may give false positives.

Also add PVE::API2::Storage use which was missing here.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoapi/CephOSD: cleanup and sort module usage
Thomas Lamprecht [Tue, 20 Nov 2018 07:44:04 +0000 (08:44 +0100)]
api/CephOSD: cleanup and sort module usage

most of this was imported by just copying without verifying if all is
actually required. Some lost its purpose as we re-used more from our
existing module code base (e.g., pve-common) but wasn't actually
removed.

As this file includes two perl modules you need to take a bit caution
when looking at this, as some things are used in one module but not
the other - simple grep'ing at this may give false positives.

Also include the missing IO::File use.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoMove removeButton in a variable
Wolfgang Link [Wed, 21 Nov 2018 16:05:38 +0000 (17:05 +0100)]
Move removeButton in a variable

The move is necessary to hide the removeButton.

5 years agoAdd imagedestroy to SafeDestroy
Wolfgang Link [Wed, 21 Nov 2018 16:05:37 +0000 (17:05 +0100)]
Add imagedestroy to SafeDestroy

5 years agoAdd function guestNode
Wolfgang Link [Wed, 21 Nov 2018 16:05:36 +0000 (17:05 +0100)]
Add function guestNode

This function extracts the node where the guest resists.

5 years agoAdd function storageIsShared
Wolfgang Link [Wed, 21 Nov 2018 16:05:35 +0000 (17:05 +0100)]
Add function storageIsShared

This function extracts the shared flag of the storage state.

5 years agoAdd parameter storage shared
Wolfgang Link [Wed, 21 Nov 2018 16:05:34 +0000 (17:05 +0100)]
Add parameter storage shared

So we know in the content call if storage is shared.
This is used by removeImageButton.

5 years agoui: qemu/HW: menu setDisable mustn't ignore caps
Thomas Lamprecht [Thu, 22 Nov 2018 07:40:15 +0000 (08:40 +0100)]
ui: qemu/HW: menu setDisable mustn't ignore caps

We passed a 'disable' config to those menu items on creation, but
promptly ignored that after the first set_button_status call, which
only checked if it's possible to add another device, but not if our
capabilities heuristic is OK.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: lxc/net: s/i.e./e.g./ and transform to emptyText
Thomas Lamprecht [Mon, 19 Nov 2018 11:56:04 +0000 (12:56 +0100)]
ui: lxc/net: s/i.e./e.g./ and transform to emptyText

We want to name an example here, so `e.g.` would be better.

Also show that in the field if empty. No changes to gettext stuff.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agobump version to 5.2-12
Thomas Lamprecht [Mon, 19 Nov 2018 14:11:24 +0000 (15:11 +0100)]
bump version to 5.2-12

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agod/control: bump version dependency for libpve-common-perl
Thomas Lamprecht [Mon, 19 Nov 2018 13:56:59 +0000 (14:56 +0100)]
d/control: bump version dependency for libpve-common-perl

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agorename PVE::API2::Storage::Scan to PVE::API2::Scan
Dominik Csapak [Fri, 16 Nov 2018 15:17:56 +0000 (16:17 +0100)]
rename PVE::API2::Storage::Scan to PVE::API2::Scan

and use it in the API

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoAPI/Scan: use scan_usb from PVE::SysFSTools
Dominik Csapak [Fri, 16 Nov 2018 15:17:55 +0000 (16:17 +0100)]
API/Scan: use scan_usb from PVE::SysFSTools

the code moved from PVE::Storage there

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoAPI/Scan: remove unused HTTP::Status module
Dominik Csapak [Fri, 16 Nov 2018 15:17:54 +0000 (16:17 +0100)]
API/Scan: remove unused HTTP::Status module

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoScan: whitespace fixes
Dominik Csapak [Fri, 16 Nov 2018 15:17:53 +0000 (16:17 +0100)]
Scan: whitespace fixes

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agocopy storage scan API from pve-storage
Dominik Csapak [Fri, 16 Nov 2018 15:17:52 +0000 (16:17 +0100)]
copy storage scan API from pve-storage

this will be used for the api endpoints in the future as
PVE::API2::Scan instead of PVE::API2::Storage::Scan since it will
contain endpoints to other modules (like qemu-server for pci/usb
scanning)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
5 years agoui: dc/storage: allow to add CephFS
Thomas Lamprecht [Thu, 15 Nov 2018 12:20:11 +0000 (13:20 +0100)]
ui: dc/storage: allow to add CephFS

Allow to add CephFS storage over GUI. Reuse viewcontroller and model from RBD
to detect if we can do a "hyper-converged" addition (with PVE maintained Ceph)
or if only external is possible.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
5 years agoui: rbd: storage: obsolete strange getBinds binding assembly
Thomas Lamprecht [Thu, 15 Nov 2018 12:20:10 +0000 (13:20 +0100)]
ui: rbd: storage: obsolete strange getBinds binding assembly

this was added for our (also in other places used):
> xtype: me.isCreate ? 'pveCephPoolSelector' : 'displayfield',
construct. But as displayfield does not has a submitValue setter we
cannot bind it generally.

So add such a setter with a small override and declare the bindings
direct when declaring the items, less side effects and all the
configurations for an item stays in the same place.

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