cloudstack/ui/scripts
Rafael Weingärtner d6cbd774b7
[CLOUDSTACK-10323] Allow changing disk offering during volume migration (#2486)
* [CLOUDSTACK-10323] Allow changing disk offering during volume migration

This is a continuation of work developed on PR #2425 (CLOUDSTACK-10240), which provided root admins an override mechanism to move volumes between storage systems types (local/shared) even when the disk offering would not allow such operation. To complete the work, we will now provide a way for administrators to enter a new disk offering that can reflect the new placement of the volume. We will add an extra parameter to allow the root admin inform a new disk offering for the volume. Therefore, when the volume is being migrated, it will be possible to replace the disk offering to reflect the new placement of the volume.

The API method will have the following parameters:

* storageid (required)
* volumeid (required)
* livemigrate(optional)
* newdiskofferingid (optional) – this is the new parameter

The expected behavior is the following:

* If “newdiskofferingid” is not provided the current behavior is maintained. Override mechanism will also keep working as we have seen so far.
* If the “newdiskofferingid” is provided by the admin, we will execute the following checks
** new disk offering mode (local/shared) must match the target storage mode. If it does not match, an exception will be thrown and the operator will receive a message indicating the problem.
** we will check if the new disk offering tags match the target storage tags. If it does not match, an exception will be thrown and the operator will receive a message indicating the problem.
** check if the target storage has the capacity for the new volume. If it does not have enough space, then an exception is thrown and the operator will receive a message indicating the problem.
** check if the size of the volume is the same as the size of the new disk offering. If it is not the same, we will ALLOW the change of the service offering, and a warning message will be logged.

We execute the change of the Disk offering as soon as the migration of the volume finishes. Therefore, if an error happens during the migration and the volume remains in the original storage system, the disk offering will keep reflecting this situation.

* Code formatting

* Adding a test to cover migration with new disk offering (#4)

* Adding a test to cover migration with new disk offering

* Update test_volumes.py

* Update test_volumes.py

* fix test_11_migrate_volume_and_change_offering

* Fix typo in Java doc
2018-04-26 20:05:55 -03:00
..
ui [CLOUDSTACK-10301] Allow updating the network ACL list name and Description (#2462) 2018-04-10 08:46:52 -03:00
ui-custom CLOUDSTACK-4757: Support OVA files with multiple disks for templates (#2146) 2018-01-10 22:10:41 +05:30
accounts.js Remove 'md5Hashed' variable from Javascript. (#2555) 2018-04-13 10:43:52 +02:00
accountsWizard.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00
affinity.js Removed leading tabs from ui/scripts/*.js 2015-08-07 11:58:13 +02:00
autoscaler.js CLOUDSTACK-9229: Autoscale policy creation failing in VPC due to zoneid missing in createAutoScaleVmProfile 2016-01-13 15:47:06 +05:30
cloud.core.callbacks.js CLOUDSTACK-9408 for the move away from download.cloud.com 2017-04-20 11:35:36 +05:30
cloudStack.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00
configuration.js CLOUDSTACK-9813: Extending Config Drive support (#2097) 2018-01-12 15:14:40 +05:30
dashboard.js CLOUDSTACK-10059: Dashboard ignores resource value that is less than 1% 2017-08-31 16:11:58 +02:00
docs.js CLOUDSTACK-10146: Bypass Secondary Storage for KVM templates (#2379) 2018-01-09 12:22:18 +05:30
domains.js CLOUDSTACK-10117: Account ldap binding (#2381) 2018-01-06 22:58:28 +05:30
events.js CLOUDSTACK-10129: UX improvements and event timeline 2017-12-23 09:22:44 +05:30
globalSettings.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00
installWizard.js Remove 'md5Hashed' variable from Javascript. (#2555) 2018-04-13 10:43:52 +02:00
instanceWizard.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00
instances.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00
lbCertificatePolicy.js CLOUDSTACK-8672 : NCC Integration with CloudStack. 2017-07-20 12:42:43 +05:30
lbStickyPolicy.js CLOUDSTACK-8744 Add missing localization (l10n) for several parts in the UI 2015-08-18 11:16:14 +01:00
metrics.js CLOUDSTACK-10129: UX improvements and event timeline 2017-12-23 09:22:44 +05:30
network.js cleanup commented out code 2018-02-26 11:57:44 +01:00
plugins.js Plugin API: Support multiple JS includes per plugin 2014-01-27 12:39:36 -08:00
projects.js Add to project detail page: cpu,memory,template,storage and VMs count 2016-08-08 20:04:55 -04:00
regions.js CLOUDSTACK-8672 : NCC Integration with CloudStack. 2017-07-20 12:42:43 +05:30
roles.js CLOUDSTACK-10044: Update role permission (#2236) 2017-08-11 12:24:50 +02:00
sharedFunctions.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00
storage.js [CLOUDSTACK-10323] Allow changing disk offering during volume migration (#2486) 2018-04-26 20:05:55 -03:00
system.js Forward merge branch '4.11' to master 2018-04-26 10:14:49 -03:00
templates.js CLOUDSTACK-10227: Stabilization fixes for 4.11.0.0 (#2403) 2018-01-15 00:08:36 +05:30
vpc.js [CLOUDSTACK-10344] bug when moving ACL rules (change order with drag and drop) (#2511) 2018-04-16 13:45:29 +02:00
zoneWizard.js Remove 'todb' in favor of 'encodeURIComponent'. (#2572) 2018-04-16 13:44:27 +02:00