]> git.proxmox.com Git - pve-manager.git/log
pve-manager.git
11 months agoui: ceph install: add hints depending on selected repo and subscriptions
Thomas Lamprecht [Mon, 5 Jun 2023 16:03:46 +0000 (18:03 +0200)]
ui: ceph install: add hints depending on selected repo and subscriptions

None hint required if all nodes have subscriptions and enterprise
repo is selected, but otherwise give some hints for better UX and to
(hopefully) reduce the chance for mishaps.

We might want to highlight the label to improve visibility tough.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoui: ceph install wizard: allow selecting repository
Thomas Lamprecht [Mon, 5 Jun 2023 16:02:41 +0000 (18:02 +0200)]
ui: ceph install wizard: allow selecting repository

provide a second combo box that allows one to select which specific
repository out of enterprise, no-subscription or test one would like
to use.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoui: ceph install: increase dimension of window with 4:3 ratio
Thomas Lamprecht [Mon, 5 Jun 2023 16:12:02 +0000 (18:12 +0200)]
ui: ceph install: increase dimension of window with 4:3 ratio

especially the console window is rather on the small side otherwise..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoui: ceph: fix code indentation in onShow of wizard
Thomas Lamprecht [Mon, 5 Jun 2023 11:42:47 +0000 (13:42 +0200)]
ui: ceph: fix code indentation in onShow of wizard

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoceph install: output some hints depending repo choice and subscription
Thomas Lamprecht [Mon, 5 Jun 2023 11:23:38 +0000 (13:23 +0200)]
ceph install: output some hints depending repo choice and subscription

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopveceph: support new enterprise repository
Thomas Lamprecht [Mon, 5 Jun 2023 11:07:48 +0000 (13:07 +0200)]
pveceph: support new enterprise repository

With Proxmox VE 8, we'll have support for a enterprise ceph repo,
accessed through Proxmox VE subscriptions, to provide more broadly
tested ceph updates for production setups.

Replace the test-repository parameter with an actual enum of
selectable repo types for:

- test (same as previously selected through setting test-repository)
- no-subscription (the previous default, then named "main")
- enterprise (new and the default now, recommended for production)

Note that writing the auth-part is a bit hacky and might/should be
improved.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agocli: subscription: simplify printing output in get command
Thomas Lamprecht [Mon, 5 Jun 2023 11:27:01 +0000 (13:27 +0200)]
cli: subscription: simplify printing output in get command

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoapi: subscription: factor out check for cache being valid
Thomas Lamprecht [Mon, 5 Jun 2023 11:25:42 +0000 (13:25 +0200)]
api: subscription: factor out check for cache being valid

multi-line post-if's are against our style guide.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoapi: subscription: style cleanups
Thomas Lamprecht [Mon, 5 Jun 2023 11:25:17 +0000 (13:25 +0200)]
api: subscription: style cleanups

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoui: USB selector: fix typo
Thomas Lamprecht [Mon, 5 Jun 2023 10:15:09 +0000 (12:15 +0200)]
ui: USB selector: fix typo

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobump version to 8.0.0~6
Wolfgang Bumiller [Mon, 5 Jun 2023 08:05:38 +0000 (10:05 +0200)]
bump version to 8.0.0~6

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
11 months agovzdump: add comment about why we still split_args for arrays
Wolfgang Bumiller [Mon, 5 Jun 2023 08:02:58 +0000 (10:02 +0200)]
vzdump: add comment about why we still split_args for arrays

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
11 months agovzdump: prepare 'exclude-path' for array format
Dominik Csapak [Fri, 12 May 2023 12:23:51 +0000 (14:23 +0200)]
vzdump: prepare 'exclude-path' for array format

we want to move the 'exclude-path' to an array format (from 'string-alist')
prepare the code that it can be either a string or a list

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
11 months agobump version to 8.0.0~5
Thomas Lamprecht [Wed, 31 May 2023 16:19:51 +0000 (18:19 +0200)]
bump version to 8.0.0~5

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopve7to8: cope with native version of proxmox-ve package
Thomas Lamprecht [Wed, 31 May 2023 16:19:21 +0000 (18:19 +0200)]
pve7to8: cope with native version of proxmox-ve package

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobump version to 8.0.0~4
Thomas Lamprecht [Wed, 31 May 2023 16:10:20 +0000 (18:10 +0200)]
bump version to 8.0.0~4

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agodrop outdated pve6to7 upgrade checker script for bookworm
Thomas Lamprecht [Wed, 31 May 2023 16:02:39 +0000 (18:02 +0200)]
drop outdated pve6to7 upgrade checker script for bookworm

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoupdate source of pve7to8 upgrade checker script
Thomas Lamprecht [Wed, 31 May 2023 08:16:15 +0000 (10:16 +0200)]
update source of  pve7to8 upgrade checker script

squashed from the respective commits of the stable-7 branch, which is
the canonical source for this specific script.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: split list of CLI sources over multiple lines
Thomas Lamprecht [Wed, 31 May 2023 07:16:55 +0000 (09:16 +0200)]
buildsys: split list of CLI sources over multiple lines

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobump version to 8.0.0~3
Thomas Lamprecht [Tue, 30 May 2023 13:32:35 +0000 (15:32 +0200)]
bump version to 8.0.0~3

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoui: ceph install wizard: drop releases not supported for Proxmox VE 8
Thomas Lamprecht [Tue, 30 May 2023 13:31:46 +0000 (15:31 +0200)]
ui: ceph install wizard: drop releases not supported for Proxmox VE 8

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobump version to 8.0.0~2
Thomas Lamprecht [Tue, 30 May 2023 13:19:29 +0000 (15:19 +0200)]
bump version to 8.0.0~2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopveceph: drop special for octopus and pacific, unsupported in 8.x
Thomas Lamprecht [Tue, 30 May 2023 13:17:05 +0000 (15:17 +0200)]
pveceph: drop special for octopus and pacific, unsupported in 8.x

sort the package list while at it

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopveceph: update Ceph releases and repo dist for Bookworm
Thomas Lamprecht [Tue, 30 May 2023 13:15:30 +0000 (15:15 +0200)]
pveceph: update Ceph releases and repo dist for Bookworm

We'll only support Quincy and newer in Bookworm, and Reef isn't yet
released.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopve sources: update dist to bookworm
Thomas Lamprecht [Tue, 30 May 2023 13:15:06 +0000 (15:15 +0200)]
pve sources: update dist to bookworm

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobump version to 8.0.0~1
Thomas Lamprecht [Mon, 29 May 2023 15:04:59 +0000 (17:04 +0200)]
bump version to 8.0.0~1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/control: define compat level via build-depends and raise to 13
Thomas Lamprecht [Mon, 29 May 2023 15:40:03 +0000 (17:40 +0200)]
d/control: define compat level via build-depends and raise to 13

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoupdate/extend lintian-overrides for debhelper 13+
Thomas Lamprecht [Mon, 29 May 2023 14:15:57 +0000 (16:15 +0200)]
update/extend lintian-overrides for debhelper 13+

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: derive upload dist automatically and avoid bogus check
Thomas Lamprecht [Mon, 29 May 2023 16:23:40 +0000 (18:23 +0200)]
buildsys: derive upload dist automatically and avoid bogus check

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: adapt extracting release to native versioning
Thomas Lamprecht [Mon, 29 May 2023 16:15:11 +0000 (18:15 +0200)]
buildsys: adapt extracting release to native versioning

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/control: do not depend on obsolete lsb-base
Thomas Lamprecht [Mon, 29 May 2023 13:49:44 +0000 (15:49 +0200)]
d/control: do not depend on obsolete lsb-base

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/control: don't depend on libc, just use debhelper ${shlib:Depends}
Thomas Lamprecht [Mon, 29 May 2023 13:49:27 +0000 (15:49 +0200)]
d/control: don't depend on libc, just use debhelper ${shlib:Depends}

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/control: apt-transport-https as separate package is gone
Thomas Lamprecht [Mon, 29 May 2023 13:44:22 +0000 (15:44 +0200)]
d/control: apt-transport-https as separate package is gone

just keep the versioned apt dependency, that alone ensures it and apt
1.5 got released on 24 Sep 2017, so just keep it for (or to avoid)
the real messed up installations

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/postinst: fix version format for apt auth config migration check
Thomas Lamprecht [Mon, 29 May 2023 13:41:35 +0000 (15:41 +0200)]
d/postinst: fix version format for apt auth config migration check

The mistake wasn't that bad, as we mostly checked for the migration
to often, i.e., for any update to the 7.2-X releases, not just until
7.2-11 was crossed (but with 7.3-X the check worked again as
indented).

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/control: add missing Standards-Version fields
Thomas Lamprecht [Mon, 29 May 2023 13:41:07 +0000 (15:41 +0200)]
d/control: add missing Standards-Version fields

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/control: avoid versioned build-dependencies with a -1 revision
Thomas Lamprecht [Mon, 29 May 2023 13:40:10 +0000 (15:40 +0200)]
d/control: avoid versioned build-dependencies with a -1 revision

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agod/changelog: fix typos
Thomas Lamprecht [Mon, 29 May 2023 13:39:24 +0000 (15:39 +0200)]
d/changelog: fix typos

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: add DSC & sbuild convenience target
Thomas Lamprecht [Mon, 29 May 2023 13:33:38 +0000 (15:33 +0200)]
buildsys: add DSC & sbuild convenience target

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: make build-dir generation atomic and versioned
Thomas Lamprecht [Mon, 29 May 2023 13:32:58 +0000 (15:32 +0200)]
buildsys: make build-dir generation atomic and versioned

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: use correct DEB_HOST_ARCH
Thomas Lamprecht [Mon, 29 May 2023 13:05:25 +0000 (15:05 +0200)]
buildsys: use correct DEB_HOST_ARCH

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobuildsys: rework doc-gen cleanup and makefile inclusion
Thomas Lamprecht [Mon, 29 May 2023 12:56:23 +0000 (14:56 +0200)]
buildsys: rework doc-gen cleanup and makefile inclusion

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoexpand repoid to 16 chars and avoid querying git for it twice
Thomas Lamprecht [Mon, 29 May 2023 12:44:24 +0000 (14:44 +0200)]
expand repoid to 16 chars and avoid querying git for it twice

i.e., just reuse GITVERSION, and FWIW, the current ID length git
auto chooses is 9 chars, suggesting that 8 really was getting to
small. With 16 we got now 64 bits, that's plenty for the next few
years.

Document the format also (roughly) in the API schema

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agomakefile: convert to use simple parenthesis
Thomas Lamprecht [Mon, 29 May 2023 12:11:36 +0000 (14:11 +0200)]
makefile: convert to use simple parenthesis

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoaplinfo: add bookworm release key to trusted ones
Thomas Lamprecht [Mon, 29 May 2023 12:02:45 +0000 (14:02 +0200)]
aplinfo: add bookworm release key to trusted ones

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agoaplinfo: use sequioa for key ring generation
Thomas Lamprecht [Mon, 29 May 2023 12:01:22 +0000 (14:01 +0200)]
aplinfo: use sequioa for key ring generation

The sq CLI tool's UX is such a fresh breath of air compared to gpg...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agobump version to 7.4-4
Thomas Lamprecht [Sun, 28 May 2023 17:58:41 +0000 (19:58 +0200)]
bump version to 7.4-4

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agomobile ui: statically import widget toolkit
Thomas Lamprecht [Sun, 28 May 2023 17:19:53 +0000 (19:19 +0200)]
mobile ui: statically import widget toolkit

as loading the whole wtk breaks the mobile ui and is
- not always trivial to fix
- a sisyphean task (in the future)
- we don't check this often, so breakage is likely to go unnoticed

I.e., just much simple to freeze this also in time..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agomobile ui: eslint fixes
Thomas Lamprecht [Sun, 28 May 2023 17:03:20 +0000 (19:03 +0200)]
mobile ui: eslint fixes

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agomobile ui: adhere debug flag when loading sencha touch
Thomas Lamprecht [Sun, 28 May 2023 16:42:09 +0000 (18:42 +0200)]
mobile ui: adhere debug flag when loading sencha touch

not that this UI has _that_ much use, but mobile users might be happy
to only load 931 KB and not 3.6 MB (3.85 times as many)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agomobile ui: implement dummy message box and scrip loader
Thomas Lamprecht [Sun, 28 May 2023 16:37:37 +0000 (18:37 +0200)]
mobile ui: implement dummy message box and scrip loader

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agowww: merge remaining touch files into mobile
Thomas Lamprecht [Sun, 28 May 2023 16:36:03 +0000 (18:36 +0200)]
www: merge remaining touch files into mobile

only the index and (empty) css files left-over, so just merge this to
where it belongs

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agodrop local hosted sencha-touch source, depend on libjs-sencha-touch
Thomas Lamprecht [Sun, 28 May 2023 16:22:56 +0000 (18:22 +0200)]
drop local hosted sencha-touch source, depend on libjs-sencha-touch

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopveproxy: sort base dir mappings
Thomas Lamprecht [Sun, 28 May 2023 15:09:28 +0000 (17:09 +0200)]
pveproxy: sort base dir mappings

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopvereport: add missing newline for style
Thomas Lamprecht [Fri, 26 May 2023 09:01:14 +0000 (11:01 +0200)]
pvereport: add missing newline for style

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
11 months agopveproxy: fix detecting mobile if enforced
Thomas Lamprecht [Sun, 28 May 2023 16:24:53 +0000 (18:24 +0200)]
pveproxy: fix detecting mobile if enforced

Fixes: f16342f37 ("proxy: cleanup getting index method")
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
12 months agoui: backup restore: validate name
Fiona Ebner [Mon, 17 Apr 2023 07:09:14 +0000 (09:09 +0200)]
ui: backup restore: validate name

Use the same validation as the guest creation wizards do to catch
errors early, before sending the API request.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
12 months agoui: clone: validate name
Fiona Ebner [Mon, 17 Apr 2023 07:09:13 +0000 (09:09 +0200)]
ui: clone: validate name

As reported in the community forum[0], as opposed to VM/LXC creation,
there is no validation for the name in the clone dialog. Use the same
validation as the guest creation wizards do to catch errors early,
before sending the API request.

[0]: https://forum.proxmox.com/threads/125883/#post-549304

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
12 months agoui: enable gettext localisation for more user exposed strings
Daniel Koć [Sun, 16 Apr 2023 03:29:39 +0000 (05:29 +0200)]
ui: enable gettext localisation for more user exposed strings

Link: https://lists.proxmox.com/pipermail/pve-devel/2023-April/056588.html
Signed-off-by: Daniel Koć<daniel@xn--ko-wla.pl>
 [ T: rework subject & add S-o-b supplied by reply ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agoui: utils: monitor_ceph_installed: avoid setting nodename to localhost
Aaron Lauterer [Thu, 20 Apr 2023 12:31:41 +0000 (14:31 +0200)]
ui: utils: monitor_ceph_installed: avoid setting nodename to localhost

If a user is accessing the Ceph panel via Datacenter -> Ceph, then the
install & config wizard might be shown. The nodename that is passed to
the wizard  will decide the ID of the initial MON and MGR services.

Therefore, don't fall back to 'localhost' but the actual name of the
node to which we are connected to. The result will be that the first MON
and MGR will have the expected ID instead of 'localhost'.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
13 months agoproxy: cleanup getting index method
Thomas Lamprecht [Sat, 22 Apr 2023 07:47:29 +0000 (09:47 +0200)]
proxy: cleanup getting index method

- improve variable definition/use locality
- avoid some if's for some (mostly boolean) assignments, just use an
  expression

As long as we don't go overboard with code golfing it to extremely
terse, shorter code is always more readable, especially if
definition/use happens not dozens of lines apart.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agoproxy: sort directory registration calls
Thomas Lamprecht [Tue, 18 Apr 2023 06:21:28 +0000 (08:21 +0200)]
proxy: sort directory registration calls

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agoproxy: group and sort use statements
Thomas Lamprecht [Tue, 18 Apr 2023 06:20:51 +0000 (08:20 +0200)]
proxy: group and sort use statements

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
13 months agofix #4627: ui: backup edit: don't deselect all guests on load
Dominik Csapak [Fri, 31 Mar 2023 10:03:08 +0000 (12:03 +0200)]
fix #4627: ui: backup edit: don't deselect all guests on load

'selectPoolMembers' will be called when the poolid field changes.
(That can even happen when the mode is not even 'pool') Due to how
the fields are set, there is a race condition that this will be
called after the remaining fields were set up, including the VM list
that might have entries selected.

Since the first thing we do here is to deselect all, this wiped the
virtual guest selection sometimes.

To fix it, check if we're actually in the correct mode before doing
anything.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
13 months agoapi: ceph: mon create: remove superfluous verification call
Fiona Ebner [Mon, 3 Apr 2023 09:35:16 +0000 (11:35 +0200)]
api: ceph: mon create: remove superfluous verification call

The pve_verify_cidr{,v4,v6} functions were originally intended for
the /etc/network/interfaces API endpoints and thus are a bit
restrictive. For example, as reported in the community forum[0],
pve_verify_cidr() does not consider '0::/0' and '0::/1' to be valid.

The error message in this scenario being
> value does not look like a valid CIDR network
is also confusing, as the first thought of users will be that it comes
from the passed-in monitor address.

The public networks are not written here and read from the Ceph config
and via a RADOS mon command, so no need to try and verify them. If
something really would go wrong during parsing, the
get_local_ip_from_cidr() call would complain afterwards.

[0]: https://forum.proxmox.com/threads/125226/

Suggested-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
13 months agoconfigs: blacklist: fix typo
Lukas Wagner [Fri, 31 Mar 2023 12:45:15 +0000 (14:45 +0200)]
configs: blacklist: fix typo

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
13 months agoapi: description for 'id' property in /cluster/resources
Wolfgang Bumiller [Tue, 28 Mar 2023 12:25:23 +0000 (14:25 +0200)]
api: description for 'id' property in /cluster/resources

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
13 months agopvereport: add `date -R` to general system info section
Lukas Wagner [Thu, 23 Feb 2023 15:25:59 +0000 (16:25 +0100)]
pvereport: add `date -R` to general system info section

Sometimes it can be quite useful to know when exactly a system report
was generated. Adds the following output quite prominently in the
general system info section:

 # date -R
 Thu, 23 Feb 2023 16:21:12 +0100

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
14 months agobump version to 7.4-3
Thomas Lamprecht [Wed, 22 Mar 2023 14:34:15 +0000 (15:34 +0100)]
bump version to 7.4-3

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: ceph: unmask container after we finished the ceph install
Dominik Csapak [Wed, 22 Mar 2023 14:28:15 +0000 (15:28 +0100)]
ui: ceph: unmask container after we finished the ceph install

otherwise the container stays masked and we cannot interact with it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agoui: ceph osd: fix call to reload in wrong this context
Thomas Lamprecht [Wed, 22 Mar 2023 14:08:06 +0000 (15:08 +0100)]
ui: ceph osd: fix call to reload in wrong this context

If we just pass the me.reload as function reference it won't be
executed with `this` being the view controller, so call it directly
on that instead.

Reported-by: Stefan Hanreich <s.hanreich@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agobump version to 7.4-2
Thomas Lamprecht [Tue, 21 Mar 2023 15:47:52 +0000 (16:47 +0100)]
bump version to 7.4-2

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: rename "Theme" selector to "Color Theme"
Thomas Lamprecht [Tue, 21 Mar 2023 15:22:23 +0000 (16:22 +0100)]
ui: rename "Theme" selector to "Color Theme"

Having "Color" added makes it easier to translate (i.e. Farbschema,
配色) and at least as understandable as Theme, so change it,

Suggested-by: Markus Frank <m.frank@proxmox.com>
 [ T: while Markus suggested Color Scheme, the hive-mind opted for
 this ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoapi: apt: versions: also list Proxmox libraries for interfacing with Rust
Fiona Ebner [Tue, 21 Mar 2023 13:33:29 +0000 (14:33 +0100)]
api: apt: versions: also list Proxmox libraries for interfacing with Rust

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
14 months agoreplication: fix uninitalized warning
Fabian Grünbichler [Tue, 21 Mar 2023 12:43:14 +0000 (13:43 +0100)]
replication: fix uninitalized warning

if a job has no schedule and is executed via "Schedule now" but fails, the
following will be printed to journal/syslog:

Mar 21 13:05:01 host02 pvescheduler[203343]: send/receive failed, cleaning up snapshot(s)..
Mar 21 13:05:01 host02 pvescheduler[203343]: 100-0: got unexpected replication job error - command 'set -o pipefail && pvesm export local-zfs:vm-100-disk-0 zfs - -with-snapshots 1 -snapshot __replicate_100-0_1679400300__ | /usr/bin/ssh -e none -o 'BatchMode=yes' -o 'HostKeyAlias=host03' root@10.0.74.3 -- pvesm import local-zfs:vm-100-disk-0 zfs - -with-snapshots 1 -snapshot __replicate_100-0_1679400300__ -allow-rename 0' failed: exit code 255
Mar 21 13:05:01 host02 pvescheduler[203343]: Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/PVE/API2/Replication.pm line 107.

defaulting to the fallback schedule '*/15' makes the spurious warning go away.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
14 months agod/changelog: fixup released
Thomas Lamprecht [Tue, 21 Mar 2023 13:20:41 +0000 (14:20 +0100)]
d/changelog: fixup released

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoapi: apt versions: report the version of the proxmox-kernel-helper too
Thomas Lamprecht [Tue, 21 Mar 2023 12:45:28 +0000 (13:45 +0100)]
api: apt versions: report the version of the proxmox-kernel-helper too

as optional package for now

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoapi: apt versions: sort package list in code too
Thomas Lamprecht [Tue, 21 Mar 2023 12:44:59 +0000 (13:44 +0100)]
api: apt versions: sort package list in code too

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: lvm-thin: fix not being able to edit the storage
Dominik Csapak [Tue, 21 Mar 2023 09:16:10 +0000 (10:16 +0100)]
ui: lvm-thin: fix not being able to edit the storage

The change handler of the edit config from a displayEditField still
triggers, even if hidden and disabled. This then enables another
editConfig part of a displayEditField, which triggers an error in the
API.

To fix that, simply check if this field is disabled before setting
the other fields value

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: lvm-thin: don't add nodeselector/enable multiple times in edit window
Dominik Csapak [Tue, 21 Mar 2023 09:16:09 +0000 (10:16 +0100)]
ui: lvm-thin: don't add nodeselector/enable multiple times in edit window

Seemingly, an empty array is special for Ext JS, and if we push into
it, we overwrite the class definition of that property.

This does not happen when something is already in the array, so the
other edit windows work as expected

To fix it here, remove the empty array entirely, since we already
create an empty one when we need it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agod/copyright: update years
Thomas Lamprecht [Mon, 20 Mar 2023 20:00:22 +0000 (21:00 +0100)]
d/copyright: update years

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agobump version to 7.4-1
Thomas Lamprecht [Mon, 20 Mar 2023 19:57:11 +0000 (20:57 +0100)]
bump version to 7.4-1

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: datacenter options: add HA 'Rebalance on Start' to CRS options
Thomas Lamprecht [Mon, 20 Mar 2023 19:09:28 +0000 (20:09 +0100)]
ui: datacenter options: add HA 'Rebalance on Start' to CRS options

and make the window wider to avoid many lines for the boxLabel
explanation

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoapi: ceph cfg: drop double definition of permission property for index
Thomas Lamprecht [Mon, 20 Mar 2023 14:34:43 +0000 (15:34 +0100)]
api: ceph cfg: drop double definition of permission property for index

Reported-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: ceph config: use new ceph/cfg/ API endpoints
Aaron Lauterer [Mon, 20 Mar 2023 10:50:55 +0000 (11:50 +0100)]
ui: ceph config: use new ceph/cfg/ API endpoints

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agoapi: ceph: add ceph/cfg path, deprecate ceph/config and ceph/configdb
Aaron Lauterer [Mon, 20 Mar 2023 10:50:54 +0000 (11:50 +0100)]
api: ceph: add ceph/cfg path, deprecate ceph/config and ceph/configdb

Consolidating the different config paths lets us add more as needed
without polluting our API with too many 'configxxx' endpoints.

The config and configdb paths are renamed under the ceph/cfg path:
* config -> raw (returns the ceph.conf file as is)
* configdb -> db (returns the ceph config db contents)

The old paths are still available and need to be dropped at some point.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agopveceph: adapt to new Pool module
Aaron Lauterer [Mon, 20 Mar 2023 10:32:32 +0000 (11:32 +0100)]
pveceph: adapt to new Pool module

The API::Ceph::Pools module is deprecated. Use the new API::Ceph::Pool
(singular) module.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agoui: ceph: adapt urls to new ceph/pool endpoint
Aaron Lauterer [Mon, 20 Mar 2023 10:32:31 +0000 (11:32 +0100)]
ui: ceph: adapt urls to new ceph/pool endpoint

ceph/pools (plural) is deprecated, use the new one.
Since the details / status of a pool has been moved from previously
ceph/pools/{name} to now ceph/pool/{name}/status, we need to pass the
'loadUrl' to the edit window.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agoapi: ceph: deprecate pools in favor of pool
Aaron Lauterer [Mon, 20 Mar 2023 10:32:30 +0000 (11:32 +0100)]
api: ceph: deprecate pools in favor of pool

/nodes/{node}/ceph/pools/{pool} returns the pool details right away on a
GET.  This makes it bad practice to add additional sub API endpoints.

By deprecating it and replacing it with /nodes/{node}/ceph/pool/{pool}
(singular instead of plural) we can turn that into an index GET
response, making it possible to expand it more in the future.

The GET call returning the pool details is moved into
/nodes/{node}/ceph/pool/{pool}/status

The code in the new Pool.pm is basically a copy of Pools.pm to avoid
a close coupling with the old code as it is possible that it will divert
until we can entirely remove the old code.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agofix #4571: ui: ceph: allow adding extra-ID for multiple MDS per node
Thomas Lamprecht [Fri, 17 Mar 2023 10:22:07 +0000 (11:22 +0100)]
fix #4571: ui: ceph: allow adding extra-ID for multiple MDS per node

One MDS can only serve a single CephFS at a time and for redundancy
one wants to have standby's on other nodes.

But with multiple CephFS instances a single MDS per node might not be
enough, e.g., with three FS on a three-node cluster a failure of one
node would mean that on CephFS won't work anymore.

While the API and CLI allowed to set up multiple CephFS per node
already, the UI didn't. Address this by adding an `Extra ID` field
that will be suffixed to the base ID, which always contains the node
as that makes sorting and also associating services to their node
easier.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: make renderEnabledIcon inline for now
Thomas Lamprecht [Fri, 17 Mar 2023 10:36:49 +0000 (11:36 +0100)]
ui: make renderEnabledIcon inline for now

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: backup: replication: replace non-clickable checkbox with icons
Lukas Wagner [Thu, 26 Jan 2023 10:47:11 +0000 (11:47 +0100)]
ui: backup: replication: replace non-clickable checkbox with icons

From a usability view, having a checkbox that is not clickable is pretty
misleading, especially if the visual style is exactly the same as in
other places in the UI where the checkbox is functional.

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
14 months agoui: cert upload: fix private key field sending empty string
Max Carrara [Tue, 14 Mar 2023 15:08:39 +0000 (16:08 +0100)]
ui: cert upload: fix private key field sending empty string

The private key's field is now excluded from the upload form's
JSON data if it's left empty.

Prior to this change, the form still used an empty string for the
private key's field, even if no key was provided by the user.
Because the key's field is marked as optional in the upload cert
API endpoint, JSONSchema validation would therefore fail.

Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Max Carrara <m.carrara@proxmox.com>
14 months agoui: cert upload: use inputpanel for certificate upload
Max Carrara [Tue, 14 Mar 2023 15:08:38 +0000 (16:08 +0100)]
ui: cert upload: use inputpanel for certificate upload

This change replaces the the certificate upload form's items with
a single inputpanel widget. The components for the key and cert fields
are preserved as-is. Hardcoded values are now explicitly set in
`onGetValues` instead of using hidden widgets.

Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Max Carrara <m.carrara@proxmox.com>
14 months agolxc: Add `Disconnect` option for network interfaces
Christoph Heiss [Wed, 22 Feb 2023 12:49:03 +0000 (13:49 +0100)]
lxc: Add `Disconnect` option for network interfaces

Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
14 months agoui: resource tree: correctly reinsert item when name changes
Dominik Csapak [Thu, 16 Mar 2023 09:03:31 +0000 (10:03 +0100)]
ui: resource tree: correctly reinsert item when name changes

if the user has the tree sorted by name, we have to move the items
on a name change, otherwise they'll stay on the old position

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
14 months agobump version to 7.3-7
Thomas Lamprecht [Wed, 15 Mar 2023 17:37:02 +0000 (18:37 +0100)]
bump version to 7.3-7

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
14 months agoui: osd: add details window
Aaron Lauterer [Mon, 12 Dec 2022 12:14:51 +0000 (13:14 +0100)]
ui: osd: add details window

This new windows provides more detailes about an OSD such as:
* PID
* Memory usage
* various metadata that could be of interest
* list of phyiscal disks used for the main disk, db and wal with
  additional infos about the volumes for each

A new 'Details' button is added to the OSD overview and a double click
on an OSD will also open this new window.

The componend defines the items in the initComponent instead of
following a fully declarative approach. This is because we need to pass
the same store to multiple Proxmox.ObjectGrids.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agoui utils: add renderer for ceph osd addresses
Aaron Lauterer [Mon, 12 Dec 2022 12:14:50 +0000 (13:14 +0100)]
ui utils: add renderer for ceph osd addresses

Render the OSD listening addresses a bit nicer and one per line.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agoapi ceph osd: add OSD index, metadata and lv-info
Aaron Lauterer [Mon, 12 Dec 2022 12:14:49 +0000 (13:14 +0100)]
api ceph osd: add OSD index, metadata and lv-info

To get more details for a single OSD, we add two new endpoints:
* nodes/{node}/ceph/osd/{osdid}/metadata
* nodes/{node}/ceph/osd/{osdid}/lv-info

The {osdid} endpoint itself gets a new GET handler to return the index.

The metadata one provides various metadata regarding the OSD.

Such as
* process id
* memory usage
* info about devices used (bdev/block, db, wal)
    * size
    * disks used (sdX)
    ...
* network addresses and ports used
...

Memory usage and PID are retrieved from systemd while the rest can be
retrieved from the metadata provided by Ceph.

The second one (lv-info) returns the following infos for a logical
volume:
* creation time
* lv name
* lv path
* lv size
* lv uuid
* vg name

Possible volumes are:
* block (default value if not provided)
* db
* wal

'ceph-volume' is used to gather the infos, except for the creation time
of the LV which is retrieved via 'lvs'.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by:  Dominik Csapak <d.csapak@proxmox.com>
14 months agoapi: node: bulk actions: allow when user has permission for each guest
Fiona Ebner [Wed, 1 Mar 2023 14:22:20 +0000 (15:22 +0100)]
api: node: bulk actions: allow when user has permission for each guest

Users with permissions for some guests can already start a task for
each sequentially.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>