Commit Graph

7925 Commits

Author SHA1 Message Date
Daan Hoogland 8903647187 Merge branch '4.15' 2021-03-25 17:48:45 +01:00
Hoang Nguyen 5df1337f27
ui: fix update template permission (#4744) 2021-03-24 17:02:48 +05:30
Rohit Yadav 9f730eabfa Merge remote-tracking branch 'origin/4.15' 2021-03-24 12:46:24 +05:30
Pearl Dsilva 546bf3d5a2
server: Update vm_template table to set template as removed on deletion (#4748)
* Update vm_template table removed field when template is deleted

* Update method name

* address comment

* Extracted code to separate methods

* Address test failure

* refactor test cleanup

Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
2021-03-24 12:41:03 +05:30
davidjumani 61de2371ab
ui: Disable login button until redirected (#4857) 2021-03-24 12:18:19 +05:30
Daan Hoogland 64f792bd7c Merge release branch 4.15 to master
* 4.15:
  ui: Consider overprovisioning factor when displaying allocated progress bar (#4850)
  ui: Fix the styles action button (#4856)
  ui: Fill out the search filter form field after performing a filter (#4855)
  ui: fix add cluster form for vmware (#4841)
  ui: Fix add primary store during Zone Deployment for PreSetup protocol (#4845)
  tests: Extend wait time after interrupt (#4815)
2021-03-23 15:36:30 +01:00
davidjumani bd79e1a9d4
ui: Consider overprovisioning factor when displaying allocated progress bar (#4850) 2021-03-23 19:24:50 +05:30
Hoang Nguyen eaefc2a69f
ui: Fix the styles action button (#4856) 2021-03-23 19:22:59 +05:30
Hoang Nguyen a53ecacf41
ui: Fill out the search filter form field after performing a filter (#4855)
* Fill out the search filter form field after performing a filter

* fix button reset not work when refresh page
2021-03-23 19:21:44 +05:30
Abhishek Kumar 83b568ecde
ui: fix add cluster form for vmware (#4841)
Filter null values else API returns error.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2021-03-22 12:14:29 +05:30
Pearl Dsilva 6262366d85
ui: Fix add primary store during Zone Deployment for PreSetup protocol (#4845)
Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
2021-03-22 12:13:21 +05:30
Rohit Yadav 850ea61dc9 Merge remote-tracking branch 'origin/4.15' 2021-03-18 13:33:15 +05:30
Hoang Nguyen faf27e2b39
listview: goto account info instead of list account (#4767) 2021-03-18 13:18:38 +05:30
Hoang Nguyen 6836a94b0e
ui: create a new component and display the instance group as autocomplete (#4820) 2021-03-18 13:13:31 +05:30
Hoang Nguyen d105d6a770
ui: Show display text instead of name (#4831) 2021-03-18 13:13:18 +05:30
sureshanaparti b658cf12d0
ui: Added info / tooltip for add role and import role dialogs in the UI (#4836) 2021-03-18 13:13:08 +05:30
Pearl Dsilva 45e6800501
ui: Fix route to ISO From VM's Info Card / Detail View (#4839)
* ui: Correct route to ISO on Info Card

* Change label based on template/iso

Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
2021-03-18 13:11:32 +05:30
Rohit Yadav 775de36688 Merge remote-tracking branch 'origin/4.15' 2021-03-17 17:46:16 +05:30
davidjumani f07e4d347e
ui: Show vm name along with password (#4821) 2021-03-17 17:44:47 +05:30
davidjumani a291dea26a
ui: Fixes for action messages and forms (#4824)
* ui: Fixes for storage

* ui: fixes for compute

* ui: Fixes for network and accounts

* ui: Fixes for domain

* ui: Fixes for infra
2021-03-17 17:38:26 +05:30
davidjumani 9caa535eb6
ui: Show label for view console action (#4823) 2021-03-17 17:37:38 +05:30
davidjumani abcd07c93f
ui: change createAccount to use post (#4812) 2021-03-17 17:35:19 +05:30
Pearl Dsilva d81141ed37
Project Role Permission: Change default permission type to 'Deny' (#4832)
Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
2021-03-17 17:33:30 +05:30
Rohit Yadav c8f7c0d823 Merge remote-tracking branch 'origin/4.15'
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-03-11 13:33:44 +05:30
Abhishek Kumar a691e87f0c
ui: fix update vm details wrt backend changes (#4670)
PR #4629 made changes in updateVirtualMachine behaviour wrt readonly details.
This change updates UI wrt new behaviour.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2021-03-11 13:17:23 +05:30
davidjumani 9454edd0f3
ui: Show memory allocated percentage when migrating vm (#4784) 2021-03-11 13:06:11 +05:30
davidjumani 8510344129
ui: Show vm name in info card in deployvm (#4786) 2021-03-11 13:04:28 +05:30
davidjumani c6e8b8c4d5
ui: Show displayname in compute list view (#4787) 2021-03-11 13:03:56 +05:30
davidjumani 314baec444
ui: Fix breadcrumb discrepancy (#4788) 2021-03-11 13:03:36 +05:30
Rohit Yadav 843dfaf942 Merge remote-tracking branch 'origin/4.15' 2021-03-10 10:58:33 +05:30
j-porsche 5d36724638
UI: German translation corrections (#4759) 2021-03-09 14:55:28 +01:00
Hoang Nguyen 54853aa7c5
UI: Fix upload SSL certificate failed in the project view (#4761) 2021-03-09 14:52:33 +01:00
Rohit Yadav a1be9b02a6 Merge remote-tracking branch 'origin/4.15' 2021-03-06 16:02:09 +05:30
Rohit Yadav 41c2e944a6 ui: Remove make redundant option for isolated networks
Fixes #4052

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-03-06 15:59:02 +05:30
Hoang Nguyen 03bfe9a2a3
ui: FIX error in "Port forward" and "Load Balancing" (#4746)
* fix error show in fetching port forwarding tab

* clear all list vm when tier empty
2021-03-06 15:10:07 +05:30
sureshanaparti 81dfcbb5f5
server: Use ACPI event to reboot VM on KVM, and Use 'forced' reboot option to stop and start the VM(s) (#4681)
* Updated libvirt's native reboot operation for VM on KVM using ACPI event, and Added 'forced' reboot option to stop and start the VM (using rebootVirtualMachine API)

* Added 'forced' reboot option for System VM and Router

- New parameter 'forced' in rebootSystemVm API, to stop and then start System VM
- New parameter 'forced' in rebootRouter API, to force stop and then start Router

* Added force reboot tests for User VM, System VM and Router
2021-03-06 14:58:56 +05:30
Rohit Yadav 77290df0d5 Merge remote-tracking branch 'origin/4.15'
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-02-26 12:09:11 +05:30
Greg Goodrich af0f6422ec
kvm: Suspending the VM prior to deleting snapshots to avoid corruption, th… (#4032)
These changes are related to PR #3194, but include suspending/resuming the VM when doing a VM snapshot as well, when deleting a VM snapshot, as it is performing the same operations via Libvirt. Also, there was an issue with the UI/localization changes in the prior PR, as that PR was altering the Volume snapshot behavior, but was altering the VM snapshot wording. Both have been altered in this PR.

Issuing this in response to the work happening in PR #4029.
2021-02-25 22:11:00 +05:30
Abhishek Kumar fef0e66764
ui: fix add Vmware cluster (#4663)
When adding a cluster from existing host-datacenter UI shoudl list and autofill host, DC name while making addCluster API call.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2021-02-25 22:04:00 +05:30
Hoang Nguyen a234501172
ui: Add guest IP ranges (#4716)
Fixes #4697
2021-02-25 22:01:40 +05:30
Hoang Nguyen 1545bf8dac
ui: add missing antd component use (#4728)
Fixes #4724
2021-02-25 21:58:42 +05:30
sureshanaparti eba186aa40
storage: New Dell EMC PowerFlex Plugin (formerly ScaleIO, VxFlexOS) (#4304)
Added support for PowerFlex/ScaleIO (v3.5 onwards) storage pool as a primary storage in CloudStack (for KVM hypervisor) and enabled VM/Volume operations on that pool (using pool tag).
Please find more details in the FS here:
https://cwiki.apache.org/confluence/x/cDl4CQ

Documentation PR: apache/cloudstack-documentation#169

This enables support for PowerFlex/ScaleIO (v3.5 onwards) storage pool as a primary storage in CloudStack

Other improvements addressed in addition to PowerFlex/ScaleIO support:

- Added support for config drives in host cache for KVM
	=> Changed configuration "vm.configdrive.primarypool.enabled" scope from Global to Zone level
	=> Introduced new zone level configuration "vm.configdrive.force.host.cache.use" (default: false) to force host cache for config drives
	=> Introduced new zone level configuration "vm.configdrive.use.host.cache.on.unsupported.pool" (default: true) to use host cache for config drives when storage pool doesn't support config drive
	=> Added new parameter "host.cache.location" (default: /var/cache/cloud) in KVM agent.properties for specifying the host cache path and create config drives on the "/config" directory on the host cache path
	=> Maintain the config drive location and use it when required on any config drive operation (migrate, delete)

- Detect virtual size from the template URL while registering direct download qcow2 (of KVM hypervisor) templates

- Updated full deployment destination for preparing the network(s) on VM start

- Propagate the direct download certificates uploaded to the newly added KVM hosts

- Discover the template size for direct download templates using any available host from the zones specified on template registration
	=> When zones are not specified while registering template, template size discovery is performed using any available host, which is picked up randomly from one of the available zones

- Release the VM resources when VM is sync-ed to Stopped state on PowerReportMissing (after graceful period)

- Retry VM deployment/start when the host cannot grant access to volume/template

- Mark never-used or downloaded templates as Destroyed on deletion, without sending any DeleteCommand
	=> Do not trigger any DeleteCommand for never-used or downloaded templates as these doesn't exist and cannot be deleted from the datastore

- Check the router filesystem is writable or not, before performing health checks
	=> Introduce a new test "filesystem.writable.test" to check the filesystem is writable or not
	=> The router health checks keeps the config info at "/var/cache/cloud" and updates the monitor results at "/root" for health checks, both are different partitions. So, test at both the locations.
	=> Added new script: "filesystem_writable_check.py" at /opt/cloud/bin/ to check the filesystem is writable or not

- Fixed NPE issue, template is null for DATA disks. Copy template to target storage for ROOT disk (with template id), skip DATA disk(s)

* Addressed some issues for few operations on PowerFlex storage pool.

- Updated migration volume operation to sync the status and wait for migration to complete.

- Updated VM Snapshot naming, for uniqueness in ScaleIO volume name when more than one volume exists in the VM.

- Added sync lock while spooling managed storage template before volume creation from the template (non-direct download).

- Updated resize volume error message string.

- Blocked the below operations on PowerFlex storage pool:
  -> Extract Volume
  -> Create Snapshot for VMSnapshot

* Added the PowerFlex/ScaleIO client connection pool to manage the ScaleIO gateway clients, which uses a single gateway client per Powerflex/ScaleIO storage pool and renews it when the session token expires.

- The token is valid for 8 hours from the time it was created, unless there has been no activity for 10 minutes.
  Reference: https://cpsdocs.dellemc.com/bundle/PF_REST_API_RG/page/GUID-92430F19-9F44-42B6-B898-87D5307AE59B.html

Other fixes included:

- Fail the VM deployment when the host specified in the deployVirtualMachine cmd is not in the right state (i.e. either Resource State is not Enabled or Status is not Up)

- Use the physical file size of the template to check the free space availability on the host, while downloading the direct download templates.

- Perform basic tests (for connectivity and file system) on router before updating the health check config data
	=> Validate the basic tests (connectivity and file system check) on router
	=> Cleanup the health check results when router is destroyed

* Updated PowerFlex/ScaleIO storage plugin version to 4.16.0.0

* UI Changes to support storage plugin for PowerFlex/ScaleIO storage pool.
- PowerFlex pool URL generated from the UI inputs(Gateway, Username, Password, Storage Pool) when adding "PowerFlex" Primary Storage
- Updated protocol to "custom" for PowerFlex provider
- Allow VM Snapshot for stopped VM on KVM hypervisor and PowerFlex/ScaleIO storage pool

and Minor improvements in PowerFlex/ScaleIO storage plugin code

* Added support for PowerFlex/ScaleIO volume migration across different PowerFlex storage instances.

- findStoragePoolsForMigration API returns PowerFlex pool(s) of different instance as suitable pool(s), for volume(s) on PowerFlex storage pool.
- Volume(s) with snapshots are not allowed to migrate to different PowerFlex instance.
- Volume(s) of running VM are not allowed to migrate to other PowerFlex storage pools.
- Volume migration from PowerFlex pool to Non-PowerFlex pool, and vice versa are not supported.

* Fixed change service offering smoke tests in test_service_offerings.py, test_vm_snapshots.py

* Added the PowerFlex/ScaleIO volume/snapshot name to the paths of respective CloudStack resources (Templates, Volumes, Snapshots and VM Snapshots)

* Added new response parameter “supportsStorageSnapshot” (true/false) to volume response, and Updated UI to hide the async backup option while taking snapshot for volume(s) with storage snapshot support.

* Fix to remove the duplicate zone wide pools listed while finding storage pools for migration

* Updated PowerFlex/ScaleIO volume migration checks and rollback migration on failure

* Fixed the PowerFlex/ScaleIO volume name inconsistency issue in the volume path after migration, due to rename failure
2021-02-24 14:58:33 +05:30
Hoang Nguyen 90885730ad
ui: Fix UI unit test failures in master (#4719) 2021-02-24 14:42:50 +05:30
Rohit Yadav 7b2724a0e3 Merge remote-tracking branch 'origin/4.15' 2021-02-24 14:40:53 +05:30
Hoang Nguyen ba43825a9b
ui: Fix npm unit test failures in 4.15 (#4718)
* Edit the test to match the latest code

* fix travis build failures

* correct wrong comparison conditions

* fix travis build
2021-02-24 14:39:55 +05:30
Rohit Yadav 0b67e16730 Merge remote-tracking branch 'origin/4.15' 2021-02-23 16:31:58 +05:30
Abhishek Kumar 06c16ac8f4
ui: fix systevmtype for create service offering form (#4683)
Fixes #4682

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2021-02-23 09:39:43 +00:00
Rohit Yadav 6634382f69 Merge remote-tracking branch 'origin/4.15'
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-02-19 15:30:21 +05:30
Rohit Yadav 186ac69c49 Merge remote-tracking branch 'origin/4.14' into 4.15
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-02-19 15:24:48 +05:30
Rakesh 06b5bd2966
ui: display account name only if its not null (#4667)
If account is null then "undefined" is displayed in ui
2021-02-19 14:07:38 +05:30