7930 Commits

Author SHA1 Message Date
Rohit Yadav
c1a02e1697 Merge remote-tracking branch 'origin/4.15'
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-03-29 16:34:22 +05:30
Hoang Nguyen
caa55a5742
ui: fix page size on mobile view (#4765) 2021-03-29 16:20:22 +05:30
Hoang Nguyen
3e8dbc0584
ui: add cancel button missing on dialog (#4763) 2021-03-29 16:19:38 +05:30
Hoang Nguyen
642878063d
ui: Auto-focus input, form (#4762)
* autofocus into the first element (form/dialog)

* add autofocus missing

* add autofocus to missing elements
2021-03-29 16:19:26 +05:30
Pearl Dsilva
97176690b8
server: Fix issue with volume resize on VMWare (deploy as-is templates) (#4829)
This PR fixes the issue pertaining to volume resize on VMWare for deploy as-is templates. VMware deploy as-is templates are those that are deployed as per the specification in the imported OVF. Hence override root disk size will not be adhered to for such templates. Moreover, when we deploy VMs in stopped state and resize the volume, the root disk doesn't get resized but the volume size is merely updated in the DB.
This PR also includes the following (for deploy as-is templates):
- Disables overriding root disk size during VM deployment on the UI
- Disables selection of compute offerings with root disk size specified, at the time of deployment
- Provided users with the option to deploy VM is stopped state via UI (so as to give an option to users to resize the volumes before starting the VM)

Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
2021-03-29 12:54:47 +05:30
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