9162 Commits

Author SHA1 Message Date
Fabricio Duarte
49cd5ba64a
Fix link to removed volumes being shown in info card and list view (#8833)
* Framework for validating links in the front-end

* Rename valid links map in the list view
2024-07-24 09:09:07 -03:00
Rohit Yadav
f24fb20e6b
ui: add new API docs tab (#9409)
* ui: add new API docs tab

This introduces a new API docs table which is enabled by default but
the admin can disable it via config.json. This uses the discovered
APIs for logged in user/account to show them the APIs accessible to them
and generates dynamic API docs based on them which are searchable. Also
introduces some common auto-completed API groups that are available to
most roles.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* Update ui/src/views/plugins/ApiDocsPlugin.vue

* Update ui/src/views/plugins/ApiDocsPlugin.vue

* Update ui/src/views/plugins/ApiDocsPlugin.vue

* Update ui/src/views/plugins/ApiDocsPlugin.vue

* Update ui/src/views/plugins/ApiDocsPlugin.vue

* fix performance issues

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* Update ui/src/views/plugins/ApiDocsPlugin.vue

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* Update ui/public/locales/en.json

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>

* address Suresh's feedback

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* filter example/options as we type

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* Address Joao's comments

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

---------

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2024-07-22 10:46:40 +05:30
Layon
56c661c1df
Icon changed for control-outlined (#9402) 2024-07-17 15:17:35 +02:00
Vishesh
35fd17c62e
Merge branch '4.19' 2024-07-17 17:43:40 +05:30
Vishesh
21c98af13d
Fix backup offering buttons for instances in data view (#9391) 2024-07-15 15:53:00 +05:30
Fabricio Duarte
7db83db3dd
Fix radio buttons in instance migration pop-up (#8836) 2024-07-15 10:30:22 +05:30
Rohit Yadav
50586a9481
UI assorted fixes (#9381)
* config.json: make configuration names consistent with other

Makes login related config param to be consistent with the original
`loginFooter`. Group them together.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

* ui: assorted UI fixes and copy console URL fix

This brings in related buttons across some infra views and new columns
which are missing. Also fixes the copy console URL issue on some
browsers.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

---------

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2024-07-15 09:44:39 +05:30
Fabricio Duarte
77cc75ab02
Fix radio buttons in instance migration pop-up (#8836) 2024-07-13 21:32:19 +02:00
Fabricio Duarte
407990650f
Improvements on information about disk sizes and offerings on VM deployment wizard's InfoCard (#9249) 2024-07-12 15:13:47 +02:00
Wei Zhou
354627a19d
UI: fix CreateIsolatedNetworkForm.vue (#9359) 2024-07-09 13:46:28 +05:30
Vishesh
0af88353fb
Merge branch '4.19' 2024-07-09 10:40:21 +05:30
Henrique Sato
ca66b76cb9
Fix instance & backup resource table columns (#9147)
Co-authored-by: Henrique Sato <henrique.sato@scclouds.com.br>
2024-07-09 10:23:31 +05:30
Abhishek Kumar
c35ba606a1
ui: fix account list on domain change in filterview (#9345)
* ui: fix account list on domain change in filterview

Fixes #9274

* fix

* filter accounts for selected domain

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2024-07-08 17:24:38 +05:30
Pearl Dsilva
f35f3f6a96
UI: create network form constantly tries to list domains - which is not permitted for normal users (#9348) 2024-07-08 08:28:54 +02:00
Abhishek Kumar
3c9bc07d06 Merge remote-tracking branch 'apache/4.19' 2024-07-06 13:01:50 +05:30
Wei Zhou
374ea7d482
UI: fix "Request failed." error when open vnf appliances tab of network (#9334) 2024-07-04 17:32:52 +05:30
Abhishek Kumar
a35d79a681
ui: fix minor issue with webhook forms (#9335)
- Fix width of Test webhook delivery form
- Fix auto execution of test delivery in create webhook form

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2024-07-04 17:31:34 +05:30
Rene Peinthor
94e5ceff7f
linstor-ui: Fix add primary storage if Linstor protocol selected (#9327)
url param wasn't set if protocol Linstor is selected
2024-07-04 15:03:38 +05:30
Gabriel Pordeus Santos
de683a5163
add ownership selection to create volume (#9265) 2024-07-01 10:39:36 +02:00
Vishesh
0ec7c72875
Merge branch '4.19' 2024-07-01 12:41:45 +05:30
Abhisar Sinha
063dc60114
Change storage pool scope from Cluster to Zone and vise versa (#8875)
* New feature: Change storage pool scope

* Added checks for Ceph/RBD

* Update op_host_capacity table on primary storage scope change

* Storage pool scope change integration test

* pull 8875 : Addressed review comments

* Pull 8875: remove storage checks, AbstractPrimayStorageLifeCycleImpl class

* Pull 8875: Fixed integration test failure

* Pull 8875: Review comments

* Pull 8875: review comments + broke changeStoragePoolScope into smaller functions

* Added UT for changeStoragePoolScope

* Rename AbstractPrimaryDataStoreLifeCycleImpl to BasePrimaryDataStoreLifeCycleImpl

* Pull 8875: Dao review comments

* Pull 8875: Rename changeStoragePoolScope.vue to ChangeStoragePoolScope.vue

* Pull 8875: Created a new smokes test file + A single warning msg in ui

* Pull 8875: Added cleanup in test_primary_storage_scope.py

* Pull 8875: Type in en.json

* Pull 8875: cleanup array in test_primary_storage_scope.py

* Pull:8875 Removing extra whitespace at eof of StorageManagerImplTest

* Pull 8875: Added UT for PrimaryDataStoreHelper and BasePrimaryDataStoreLifeCycleImpl

* Pull 8875: Added license header

* Pull 8875: Fixed sql query for vmstates

* Pull 8875: Changed icon plus info on disabled mode in apidoc

* Pull 8875: Change scope should not work for local storage

* Pull 8875: Change scope completion event

* Pull 8875: Added api findAffectedVmsForStorageScopeChange

* Pull 8875: Added UT for findAffectedVmsForStorageScopeChange and removed listByPoolIdVMStatesNotInCluster

* Pull 8875: Review comments + Vm name in response

* Pull 8875: listByVmsNotInClusterUsingPool was returning duplicate VM entries because of multiple volumes in the VM satisfying the criteria

* Pull 8875: fixed listAffectedVmsForStorageScopeChange UT

* listAffectedVmsForStorageScopeChange should work if the pool is not disabled

* Fix listAffectedVmsForStorageScopeChangeTest UT

* Pull 8875: add volume.removed not null check in VmsNotInClusterUsingPool query

* Pull 8875: minor refactoring in changeStoragePoolScopeToCluster

* Update server/src/main/java/com/cloud/storage/StorageManagerImpl.java

* fix eof

* changeStoragePoolScopeToZone should connect pool to all Up hosts

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2024-06-29 10:03:34 +05:30
Vishesh
90fe1d5fdc
Merge branch '4.19' 2024-06-29 03:35:24 +05:30
GaOrtiga
814c8b6a12
differentiate between instalation ISO and attached ISO (#9146)
Co-authored-by: Gabriel <gabriel.fernandes@scclouds.com.br>
2024-06-28 21:01:22 +05:30
Vishesh
94503e687c
UI: improve ux and fix some minor bugs (#9307) 2024-06-28 19:24:33 +05:30
Vishesh
d4446ee09d
Revert listAll behaviour for templates (#9309) 2024-06-28 15:58:44 +05:30
Suresh Kumar Anaparti
46f672563e
Improve migration of external VMware VMs into KVM cluster (#8815)
* Create/Export OVA file of the VM on external vCenter host, to temporary conversion location (NFS)

* Fixed ova issue on untar/extract ovf from ova file
"tar -xf" cmd on ova fails with "ovf: Not found in archive" while extracting ovf file

* Updated VMware to KVM instance migration using OVA

* Refactoring and cleanup

* test fixes

* Consider zone wide pools in the destination cluster for instance conversion

* Remove local storage pool support as temporary conversion location
- OVA export not possible as the pool is not accessible outside host, NFS pools are supported.

* cleanup unused code

* some improvements, and refactoring

* import nic unit tests

* vmware guru unit tests

* Separate clone VM and create template file for VMware migration
- Export OVA (of the cloned VM) to the conversion location takes time.
- Do any validations with cloned VM before creating the template (and fail early).
- Updated unit tests.

* Check conversion support on host before clone vm / create template on vmware (and fail early)

* minor code improvements

* Auto select the host with instance conversion capability

* Skip instance conversion supported response param for non-KVM hosts

* Show supported conversion hosts in the UI

* Skip persistence map update if network doesn't exist

* Added support to export OVA from KVM host, through ovftool (when installed in KVM host)

* Updated importvm api param 'usemsforovaexport' to 'forcemstodownloadvmfiles', to be generic

* Updated hardcoded UI messages with message labels

* Updated UI to support importvm api param - forcemstodownloadvmfiles

* Improved instance conversion support checks on ubuntu hosts, and for windows guest vms

* Use OVF template (VM disks and spec files) for instance conversion from VMware, instead of OVA file
 - this would further increase the migration performance (as it reduces the time for OVA preparation / archiving of the VM files into a single file)

* OVF export tool parallel threads code improvements

* Updated 'convert.vmware.instance.to.kvm.timeout' config default value to 3 hrs

* Config values check & code improvements

* Updated import log, with time taken and vm details

* Support for parallel downloads of VMware VM disk files while exporting OVF from MS, and other changes below.
- Skip clone for powered off VMs
- Fixes to support standalone host (with its default datacenter)
- Some code improvements

* rebase fixes

* rebase fixes

* minor improvement

* code improvements - threads configuration, and api parameter changes to import vm files

* typo fix in error msg
2024-06-27 21:14:13 +05:30
Wei Zhou
121839277b
UI: ignore error host is already in the database when create a zone (#9231) 2024-06-26 13:29:35 +05:30
Vishesh
4f85c3fd23
Honour listall param for list templates api (#9300)
* Honour listall param for list templates api

* Don't show templates from another project inside a project view
2024-06-26 12:09:56 +05:30
Abhisar Sinha
4eb43651e2
Ability to specify NFS mount options while adding a primary storage and modify them on a pre-existing primary storage (#8947)
* Ability to specify NFS mount options while adding a primary storage and modify it later

* Pull 8947: Rename all occurrence of nfsopt to nfsMountOpt and added nfsMountOpts to ApiConstants

* Pull 8947: Refactor code - move into separate methods

* Pull 8947: CollectionsUtils.isNotEmpty and switch statement in LibvirtStoragePoolDef.java

* Pull 8947: UI - cancel maintainenace will remount the storage pool and apply the options

* Pull 8947: UI - moved edit NFS mount options to edit Primary Storage form

* Pull 8947: UI - moved 'NFS Mount Options' to below 'Type' in dataview

* Pull 8947: Fixed message in AddPrimaryStorage.vue

* Pull 8947: Convert _nfsmountOpts to Set in libvirtStoragePoolDef

* Pull 8947: Throw exception and log error if mount fails due to incorrect mount option

* Pull 8947: Added UT and moved integration test to component/maint

* Pull 8947: Review comments

* Pull 8947: Removed password from integration test

* Pull 8947: move details allocation to inside the if loop in getStoragePoolNFSMountOpts

* Pull 8947: Fixed a bug in AddPrimaryStorage.vue

* Pull 8947: Pool should remain in maintenance mode if mount fails

* Pull 8947: Removed password from integration test

* Pull 8947: Added UT

* Pull 8875: Fixed a bug in CloudStackPrimaryDataStoreLifeCycleImplTest

* Pull 8875: Fixed a bug in LibvirtStoragePoolDefTest

* Pull 8947: minor code restructuring

* Pull 8947 : added some ut for coverage

* Fix LibvirtStorageAdapterTest UT
2024-06-25 23:45:35 +05:30
Vishesh
3923f80c22
Merge branch '4.19' 2024-06-25 18:53:57 +05:30
dahn
60f234c682
remove Project Template Permissions inhibition (#9196) 2024-06-21 15:20:49 +05:30
Wei Zhou
d81ffd2d86
Merge remote-tracking branch 'apache/4.19' 2024-06-20 08:57:17 +02:00
Abhishek Kumar
3e6900ac1a
api,server: purge expunged resources (#8999)
This PR introduces the functionality of purging removed DB entries for CloudStack entities (currently only for VirtualMachine). There would be three mechanisms for purging removed resources:

    Background task - CloudStack will run a background task which runs at a defined interval. Other parameters for this task can be controlled with new global settings.
    API - New admin-only API purgeExpungedResources. It will allow passing the following parameters - resourcetype, batchsize, startdate, enddate. Currently, API is not supported in the UI.
    Config for service offering. Service offerings can be created with purgeresources parameter which would allow purging resources immediately on expunge.

Following new global settings have been added:

    expunged.resources.purge.enabled: Default: false. Whether to run a background task to purge the expunged resources
    expunged.resources.purge.resources: Default: (empty). A comma-separated list of resource types that will be considered by the background task to purge the expunged resources. Currently only VirtualMachine is supported. An empty "value will result in considering all resource types for purging
    expunged.resources.purge.interval: Default: 86400. Interval (in seconds) for the background task to purge the expunged resources
    expunged.resources.purge.delay: Default: 300. Initial delay (in seconds) to start the background task to purge the expunged resources task.
    expunged.resources.purge.batch.size: Default: 50. Batch size to be used during expunged resources purging.
    expunged.resources.purge.start.time: Default: (empty). Start time to be used by the background task to purge the expunged resources. Use format yyyy-MM-dd or yyyy-MM-dd HH:mm:ss.
    expunged.resources.purge.keep.past.days: Default: 30. The number of days in the past from the execution time of the background task to purge the expunged resources for which the expunged resources must not be purged. To enable purging expunged resource till the execution of the background task, set the value to zero.
    expunged.resource.purge.job.delay: Default: 180. Delay (in seconds) to execute the purging of an expunged resource initiated by the configuration in the offering. Minimum value should be 180 seconds and if a lower value is set then the minimum value will be used.

Documentation PR: apache/cloudstack-documentation#397

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Wei Zhou <weizhou@apache.org>
Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2024-06-20 11:34:44 +05:30
Wei Zhou
81269ad62a
VNF: add API listVnfAppliances (#8994) 2024-06-19 19:49:21 +05:30
Abhishek Kumar
7a0cd55e98
ui: fix user create featured template from volume (#9253)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2024-06-19 08:52:12 +02:00
Daan Hoogland
373f017002 Merge branch '4.19' 2024-06-18 19:58:43 +02:00
Daan Hoogland
050ee44137 Merge branch '4.18' into 4.19 2024-06-18 16:05:45 +02:00
Pearl Dsilva
7534196361
UI: Fix Userdata registration from UI (#8791)
* UI: Fix Userdata registration from UI

* add isbase64 checkbox
2024-06-18 12:11:08 +02:00
dahn
7c5b7ca077
Extra parameter for UpdateImageStore (#8941)
* Extra parameter for UpdateImageStore

* add name parameter

* ui

* cleanup

* update DB from storage stats results
2024-06-18 12:31:17 +05:30
Abhisar Sinha
591cc4f002
Add action button to enable/disable Oauth provider (#9242) 2024-06-18 08:32:13 +02:00
Gabriel Pordeus Santos
a9caee3c6f
add readratemax and writeratemax (#9227) 2024-06-18 07:20:18 +02:00
Klaus de Freitas Dornsbach
96288ecf1f
fix: domain limits tab ui is now able to present 0 to the user (#9166)
Co-authored-by: klaus.freitas.scclouds <klaus.freitas@scclouds.com.br>
Co-authored-by: Bryan Lima <42067040+BryanMLima@users.noreply.github.com>
2024-06-17 10:34:46 +02:00
Daan Hoogland
cb9b3134f7 Merge branch '4.19' 2024-06-14 10:30:10 +02:00
Abhishek Kumar
ce9b2c52f3
cks: fix events (#9070)
Fixes #8043

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2024-06-14 12:22:39 +05:30
Rohit Yadav
6ce2a58f9b
ui: improve sort utility for metrics (#9247)
This improves the UI sorting utility to check for metrics data and sort
after cleaning the string data.

Fixes #8663

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2024-06-14 12:13:02 +05:30
Rohit Yadav
2ca0857bd5
api: listVM API improvement followup, change returning of stats detail (#9177)
- Changes behaviour of details param handling via global setting:
  - listVirtualMachines API: when the details param is not provided, it returns whether stats are returned controlled by a new global setting `list.vm.default.details.stats`
  - listVirtualMachinesMetrics API: when the details param is not provided, it uses `all` details including `stats`
- Users who are affected slow performance of the listVirtualMachines API response time can set `list.vm.default.details.stats` to `false`
- Remove ConfigKey vm.stats.increment.metrics.in.memory which was renamed to `vm.stats.increment.metrics` in #5984 and also remove unused/unnecessary global settings via upgrade path
- Changes default value of VM stats accumulation setting `vm.stats.increment.metrics` to false until a better solution emerges. Since #5984, this is true and during the execution of listVM APIs the stats are clubbed/calculated which can immensely slow down list VM API calls. Any costly operations such as summing of stats shouldn't be done during the course of a synchronous API, such as the list VM API.
- Fix UI that uses listVirtualMachinesMetrics to not call `stats` detail when in list view without metrics selected.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2024-06-14 11:03:14 +05:30
Rene Peinthor
034a5c8466
linstor: ui show Server and resource-group fields with custom protocol (#9138) 2024-06-13 15:19:03 +05:30
Abhishek Kumar
19e9020c9b
ui: fix dashboard retrievals based on permissions (#9237)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2024-06-13 10:23:44 +02:00
Abhishek Kumar
f45267174a
ui: list only accessible networks during import (#9194)
* ui: list only accessible networks during import

Fixes #8612

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* fix

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* space

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>

* changes

---------

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2024-06-13 09:28:36 +03:00
Vishesh
6fe835e118
Merge branch '4.19' 2024-06-13 11:57:55 +05:30