Commit Graph

3389 Commits

Author SHA1 Message Date
Wolfgang Bumiller
765bba6ca6 doc: spice-example-sh: support special characters in passwords 2017-10-05 13:57:27 +02:00
Wolfgang Bumiller
52a450d619 doc: spice-example-sh: fix ticket/csrf extraction
We extract them from the json data by first deleting all
quotes, then deleting everything up to their entries, then
everything after the next comma. If the entry is at the end
there's no comma, instead there are closing braces, so we
need to strip away these as well.
2017-10-05 13:57:27 +02:00
Wolfgang Bumiller
be4c6ad688 doc: spice-example-sh: add quotes everywhere 2017-10-05 13:57:27 +02:00
Fabian Grünbichler
2b1f3fa87a build: reformat debian/control
using wrap-and-sort -abt
2017-10-04 11:05:32 +02:00
Dominik Csapak
bd9df10b78 fix #1510: do not scroll back to focus when view gets refreshed
this adds a workaround, so that we restore the scroll position
when we restore the focus

with the flag 'jumpToFocus', we can enable the old behaviour

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-10-04 10:57:33 +02:00
Dietmar Maurer
43fc27a4ec PVE/API2/Subscription.pm - use new PVE::Subcription class 2017-10-03 12:54:29 +02:00
Dietmar Maurer
e83795f570 Subscription.js - use enableTextSelection instead of 'selectable' feature
The 'selectable' feature does not work anymore.
2017-09-27 17:23:03 +02:00
Wolfgang Link
0d083f4b27 Clean up unnecessary code.
The jobid is already parsed by the file parser.
2017-09-25 15:45:28 +02:00
Thomas Lamprecht
f2e9079f0d remove obsolete Posix use clause
besides the cleanup purpose this fixes an actual problem, perls POSIX
module has the following caveat:

`Everything is exported by default (with a handful of exceptions).
This is an unfortunate backwards compatibility feature and its use is
strongly discouraged. You should either prevent the exporting (by
saying "use POSIX ();", as usual) and then use fully qualified names
(e.g.  "POSIX::SEEK_END"), or give an explicit import list. If you do
neither and opt for the default (as in "use POSIX;"), you will import
hundreds and hundreds of symbols into your namespace.'

see `perldoc POSIX`

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 15:18:25 +02:00
Thomas Lamprecht
8c054099b2 window.Wizard: increase default size
The current size was choosen with the older, more compact, classic
theme. The Crisp theme, now in use, has a bit more spaces and bigger
font sizes to adapt to the increased pixel density of current
displays.
Increase the size a bit (~13%) but try to keep the aspect ratio.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Thomas Lamprecht
d24064e4d3 PVE.qemu.OSTypeEdit: declare static
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Thomas Lamprecht
5f38c3fc81 wizard: merge CD/DVD and OS panels
We had a single column for the CD/DVD panel, fill the second column
with the now in size reduced OS type selector, as ISO selection and
OS type selection are tied together.

Reduces steps needed for creating a VM.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Thomas Lamprecht
e41bb8b9b6 OSType edit: switch to combobox
Move from the radiogroup to two comboboxes, where the base OS and
then a specific Version can be choosen.

Avoids multiple occurences of strings like "Microsoft Windows" and
saves a lot of space - which will be used to merge this panel with
the ISO selector panel in the create wizard.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Thomas Lamprecht
45d6c71af2 kvm_ostype: move to store-like format
move from the key => value format to one where all versions from a
base OS type can be directly used as data for a store.

We will rely on this in the next patch to allow a easy transition to
combobox UI for the OS type selector.

We also avoid having the base type multiple times.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Thomas Lamprecht
0f421616f1 refactor OSDefaults, OSTypeEdit: add and use getDefaults
encapuslation wise it makes sense to have a helper which assembles a
os specific setting object in the OSDefaults class, where those
settings are defined.

Else we always need to check if the current OSType on the user side
of this class, which is against encapsulation.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-25 14:11:50 +02:00
Thomas Lamprecht
4ad508efc9 ui: reuse ResourceStores default handling for guest description
First, there was an additional space between "'" and ")" which lead
me to this.
I could never trigger the case where vmname is undefined, and saw
that we have a almost same default handling in data/ResourceStore.js

So, just use that one instead here - it misses the single-quotes
inside the parentheses, but as there are already said parentheses
this is visually still very OK, IMO.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-22 10:41:57 +02:00
Thomas Lamprecht
a5c9479705 use log method from base VZDump::Plugin
we copied our log method over there to resolve a cyclic dependency,
now use it here to reduce code duplication.
As we are below pve-guest-common in the dpendency hierachy we may use
it, but it does not may (or at least should) use us.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-22 09:34:09 +02:00
Matthias Urban
8ed196a408 VM.Snapshot.Rollback privilege added
VM.Snapshot.Rollback privilege added

Signed-off-by: Matthias Urban <matthias.urban@pure-systems.com>
2017-09-22 09:24:44 +02:00
Thomas Lamprecht
8555b100bb vzdump/pigz: use ProcFSTools for core count, not sysconf
A "sysconf(84)" is not really descripitve. There is no POSIX const
entry for _SC_NPROCESSORS_ONLN (number of processors online) as its
not standard but an adoption of glibc.
Better just use our proven ProcFSTool's cpuinfo method for getting
the desired information.

This is kept only for backwards compatibillity as we guaranteed that
we use #cpus/2 if 'pigz' is set to 1, else I would have removed this
alltogether and just directly passed 'pigz' to the command...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-20 12:34:22 +02:00
Emmanuel Kasper
1c62fde24d Turn the offline/online checkbox of the Migrate Windows into a displayfield
This checkbox had not effect whatsoever:
 * if the VM was online and offline was selected, the migration would fail
 with the message that the --online flag is needed for running VMs
 * if the the VM was offline and online was selected, the migration would
 happen offline anyway
2017-09-19 11:11:29 +02:00
Emmanuel Kasper
2df7ea9fda Rework Migrate Window with declarative synthax
Also group all qemu vs LXC tests in a single place.
2017-09-19 11:11:29 +02:00
Emmanuel Kasper
f4824f0a69 Allow to set the onlineHelp via a config Object
For cases when we need to set the online help block id of a modal window after the help
button has been configured.
2017-09-19 11:11:29 +02:00
Wolfgang Bumiller
80adf793a8 bump version to 5.0-32 2017-09-12 13:55:49 +02:00
Philip Abernethy
c15e9cd5e4 Disallow quotas for unprivileged containers
Disables the quota checkbox for unprivileged containers in the creation
wizard, as well as when editing or adding mountpoints.
2017-09-12 09:34:48 +02:00
Philip Abernethy
fd776fca18 Whitespace and typo fix 2017-09-12 09:34:48 +02:00
Wolfgang Bumiller
3fc44aca8f init: shorter pve-guests.service Description 2017-09-11 15:53:41 +02:00
Thomas Lamprecht
57de747b0c rename pve-manager.service to pve-guests
the name 'pve-manager' collides with our pve-manager package name,
which - from the user point of view - provides mainly the API and
WebUI.
An user could thus think that restarting 'pve-manager' would restart
the WebUIs server, which is relatable.
But, the pve-manager.service does not controls the WebUI or its
server but is responsible for starting all guest with 'onboot=1' in
their config on system boot and to stop all remaining running guests
on system shutdown.

Thus rename it to pve-guests and adapt its description. This may not
seem as ideal name at first glance, but its better than the current
option. Further it leads to log messages like:
 > Starting PVE guests (Service providing start-on-boot and stop-all-on-shutdown)
 > [...]
 > Started PVE guests (Service providing start-on-boot and stop-all-on-shutdown)
 > [...]
 > Stopping PVE guests (Service providing start-on-boot and stop-all-on-shutdown)

which makes it clearer what happens, or what this service is for.

Alias the new service to the old pve-manager.service for legacy
reasons. While our services do not depend on it an user could have
made an own service which used pve-manager.service as synchronisation
point.

Linitian then complains about init.d/pve-manager not having a related
systemd service file. Instead of renmaning it just drop it.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-11 09:34:02 +02:00
Thomas Lamprecht
e5ea71e1b9 pve-manager.service: move open-iscsi ordering to pve-storage.target
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-11 09:34:02 +02:00
Thomas Lamprecht
685b04b0bb pve-manager.service: allow logging STDERR and STDOUT
The API calls are not to chatty but may give helpfull hints about
what gets tried to be done.

This may help an Admin to figure out which guest delays his host
shutdown.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-11 09:34:02 +02:00
Thomas Lamprecht
0fe0d92471 pve-manager.service: refuse manual start/stop
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-11 09:34:02 +02:00
Thomas Lamprecht
a26ddafe22 pve-manager.service: do not allow stop to timeout
This services is responsible for bringing up 'onboot' marked guests
on host power-on and stop _all_ guests gracefully on host shutdown
(be it reboot, shutdow, halt, ..)

It's type is set to 'oneshot', which implies a TimeoutStartSec of
'infinity', by default. With Jessies Version of Systemd the
TimeoutStopSec defaulted to TimeoutStartSec, if not set – so also
'infinity'.
But, Debian Stretchs Version of Systemd makes TimeoutStopSec defaults
to 'DefaultTimeoutStopSec' if it was not set, which is by default 90
seconds – much less than infinity.

This may cause non-gracefull shutdowns of guests, as after the 90
seconds systemd sends a SIGKILL to the pvesh 'stopall' process.
This may end in a bad guest state then. But besides that it can also
lead to a hanging shutdown in some cirumstancesm, as some guest still
operated on storages, so systemd-shutdown - the binary which gets
exec'ed by systemd to become the new PID 1 cannot finish its
sync/umount/shutdown procedure. It has a watchdog armed on sync, if
that triggers you may even get a fully shut down system.
Else it can possibly hang forever, at least until the power plug gets
pulled or similar actions are taken.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2017-09-11 09:34:02 +02:00
Dominik Csapak
6760ab9248 show 'RBD' instead of 'RBD (external)' on storage summary
we cannot differentiate between external and pve-managed there,
so we just want to show 'RBD'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:53:27 +02:00
Dominik Csapak
8b1ee8ff0d drop unnecessary check for 'local'
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:35:14 +02:00
Dominik Csapak
57da080ece make bluestore the default choice when creating osds
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:35:14 +02:00
Dominik Csapak
3c23c0258b add new "RBD (PVE)" storage choice
this is for adding a pve managed ceph rbd storage, so that the user
just has to select the pool, and does not need to write the monitor
hosts and copy the keyring

the old "RBD" is renamed to "RBD (external)"

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:35:14 +02:00
Dominik Csapak
d6f5549e58 add CephPoolSelector
this allows us to give the user a list of pve managed ceph pools

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:35:14 +02:00
Dominik Csapak
1fb090840d ceph: do not automatically use wal if only journal is given
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 12:35:14 +02:00
Fabian Grünbichler
4358abfdf4 rename 'Remove' ceph pool button to 'Destroy'
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
7244f4bfb6 enable showProgress for create/destroy pool
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
707c28ce80 add showProgress to SafeDestroy
modeled after the mechanism used in window/Edit.js

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Dominik Csapak
cb852a4dcd add remove_storages parameter to the pool destruction
automatically remove the pveceph managed storages when deleting the
pool on the gui

this is ok because we cannot delete the pool anyway when we have images
on it, and recreating them when creating a pool is now trivial

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 11:38:20 +02:00
Dominik Csapak
5947248fac add add storages checkbox to ceph pool creation
to be able to automatically generate the ceph storages when creating a
pool

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Dominik Csapak
1f8a29e804 add a params object to the safedestroy window
we sometimes want to give the api call a parameter,
with this, we don't have to encode it into the url
everytime ourselves, but just give a 'params' object

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
fe15d330c4 add task description for cephcreatepool
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
0a521b6634 ceph/destroypool: move image check into worker
vdisk_list can potentially take very long, and we don't want
the API request to time out.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
8c42620460 ceph: make create/destroypool API paths async
in order to get task log entries and easily accessible
task/error logs.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
c75f019a55 ceph/destroypool: refactor to use get_storages
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
f6144f3493 ceph/destroypool: optionally remove storages
only storages which don't have the 'monhost' option set are removed

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
60811ad7eb ceph/createpool: optionally add storages
introduce new API parameter 'add_storages'. if set, one
storage each is configured using the created pool:
- for containers using KRBD
- for VMs using librbd

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00
Fabian Grünbichler
0c0d43a7cc ceph: create/destroypool: shorten variable name
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2017-09-07 11:38:20 +02:00