Commit Graph

10975 Commits

Author SHA1 Message Date
nvazquez 7ea0dea479
Merge branch '4.16' 2022-04-19 17:11:56 -03:00
Suresh Kumar Anaparti b2338f7158
Updated reset configuration, to return the updated config value in the response (#6284) 2022-04-19 17:07:51 -03:00
Wei Zhou a5014a28a6
New feature: give access permission of networks to other accounts in same domain (#5769)
* Enhancement: create Shared networks and VPC private gateways by users

* UI bug fix: pass correct domainid in CreateSharedNetworkForm

* Update #5730: fix test failure with test_guest_vlan_range.py

* Update #5730: fix test failure with test_persistent_network.py

* Update #5730: Add since to new API commands and API parameters

* Update #5730: Get first physical network for VPC private gateway if other ways do not work

* Update #5730: code optimization (return !offering.isSpecifyVlan())

* Update #5730: fix hard-coded network offering id in test_pvlan.py

* Update #5730: skip access check on the network owner if the owner is ROOT/system

* Update #5730: overlap check on cidr/startip/endip

* Update #5730: add methods to get accountid/domainid of shared networks

* Update #5730: improve integration tests

* Update #5730: update as per GutoVeronezi's comments

* Network Sharing: give network access permission to other accounts within a domain

* network: update ip in lb/pf/dnat tables when update vm nic ip

* Update #5757: create 3 separated methods for DNAT/LB/PF update

* travis: install python3-setuptools

* Network Sharing: update integration test

* Update #5769: Remove NetworkPermission.Ops

* Update #5769: Update as per Daan's comments

* Update #5769: Update as per Suresh's comments

* Update #5769: fix UI bug that accounts/projects are not listed

* Update #5769: fix domain admin can deploy vm on L2 network of other users

* Update #5769: Remove method listPermittedNetworkIdsByDomains in NetworkPermissionDao

* Update #5769: Skip network operation permissions check for root admin

* UI: fix create Isolated/L2 network form

* Update #5730: fix create Shared network form

* Update #5769: fix domain admin can deploy vm on L2 network of other users

* test: fix test_storage_policy.py

* Update #5769: fix remove_nic in test_network_permissions.py

* Update #5769: extract some codes to a method

* Update #5769: fix add/remove nic by domain admin

* Update #5769: allow domain admin to enable/disable static nat and create port forwarding rules

* Update #5769: update integration test

* Update #5769: fix unit test AssignLoadBalancerTest.java

* Update #5769: allow normal users to share network permission to other users on UI

* Update #5769: fix small UI bug with label

* Update #5769: Support L2 network as associated network

* test: sleep 30s after restarting mgt server in test_kubernetes_supported_versions.py to fix test failures with test_secondary_storage.py

* Update #5784: revert part of changes in #2420

* Update #5757: invert if condition to reduce code indentation

* Update #5769: fix regular user cannot create L2 network

* Update #5769: Add associated nework id and name in private gateway response

* Update #5769: list networks by networkfilter=Account on UI

* Update #5769: fix ui issue when list private gateways or create shared network if no isolated networks

* Update #5769: fix vue ui warnings

* Update #5679: add BaseResponseWithAssociatedNetwork and extract method setResponseAssociatedNetworkInformation

* Update #5679: extract some methods in VpcManagerImpl.java

* Update #5679: Update smoke tests as per Daan's comments

* Update #5769: fix vpc with private gateways cannot be removed when remove an acount

* Update #5769: fix unit test failures after merging latest main

* Update #5769: fix schema-41610to41700.sql

* Update #5769: fix Request failed due to empty network offering list on UI

* Update #5769: Throw exception when account is not found by name

* Update #5769: display a warning message if network offering list is empty

* Update #5769: fix an UI bug caused by previous commit b286cb7677

* Update #5769: fix UI bugs due to vue3 merge

* Update #5769: fix issue due to account type refactoring

* Update #5769: fix ui bugs due to vue3

* Update #5769: fix issue due to vue3 upgrade

* Update #5769: fix issue due to vue3 upgrade part 2

* Update #5769: fix issue due to vue3 upgrade part 3

* Update #5769: highlight default scope when create shared network on UI

* Update #5769: fix domain list is not loaded on UI

* Update #5769: fix restart/delete shared network by normal users

* Update #5769: fix restart domain-scope shared network by domain admin

* Update #5769: fix 3 UI bugs (1) double networks in list; (2) icon of first items in list; (3) account/project autoselect

* Update #5769: fix 2 ui bugs; (1) selected project is not changed when change domain; (2) no network should be selected by default

* Update #5769: fix update shared networks by domain admin/regular user

* Update #5769: fix Flicking warning message about the empty network offerings

* Update #5769: display associated network name in shared network info card

* Update #5769: fix create private gateway form

* Update #5769: fix network lists in project view

* Update #5769: fix duplicated networks in network dropdown

* Update #5769: fix failed to create shared network if associated L2 network is Setup

* Update #5769: check AccessType.OperateEntry on network in its implementation

* Revert "Update #5769: check AccessType.OperateEntry on network in its implementation"

This reverts commit c42c489e5b.

* Update #5769: fix keyword search in list guest vlans
2022-04-19 11:29:31 -03:00
Gabriel Beims Bräscher 50b2dc2789
server: Fix #6263 Cannot scale VM with custom offering (#6267)
* When scaling with custom offering, which changes only CPU/Memory and keeps same disk offering an exception is thrown.

This commit fixes such cases by checking if the operation is happening on a custom service offering.

* Improve the unit tests that cover null objects.
2022-04-15 20:28:31 +05:30
slavkap 4004dfcfd8
StorPool storage plugin (#6007)
* StorPool storage plugin

Adds volume storage plugin for StorPool SDS

* Added support for alternative endpoint

Added option to switch to alternative endpoint for SP primary storage

* renamed all classes from Storpool to StorPool

* Address review

* removed unnecessary else

* Removed check about the storage provider

We don't need this check, we'll get if the snapshot is on StorPool be
its name from path

* Check that current plugin supports all functionality before upgrade CS

* Smoke tests for StorPool plug-in

* Fixed conflicts

* Fixed conflicts and added missed Apache license header

* Removed whitespaces in smoke tests

* Added StorPool plugin jar for Debian

the StorPool jar will be included into cloudstack-agent package for
Debian/Ubuntu
2022-04-14 11:12:01 -03:00
nvazquez 3674aff4d4
Merge branch '4.16' 2022-04-14 01:17:38 -03:00
Rakesh c7941278f7
Allow creating snapshot from VM snapshot (#4739)
If `kvm.snapshot.enabled` is set to false then we cant create snapshot from
VM snapshot. With this change, its possible to create snapshot from VM
snapshot even when the global setting is set to false.
Note that you still cant directly create a snapshot from volume though
2022-04-14 01:16:59 -03:00
Nicolas Vazquez fbf77978e1
Fix: Allow disabling the login attempts mechanism for disabling users (#6254)
* Fix: Allow disabling the login attempts mechanism for disabling users

* Refactor
2022-04-14 01:11:43 -03:00
nvazquez 67002b67ec
Merge branch '4.16' 2022-04-13 07:22:56 -03:00
Wei Zhou 91a5f0e285
server: honor global setting system.vm.default.hypervisor as first option when deploy VRs (#6160) 2022-04-13 07:22:22 -03:00
Daniel Augusto Veronezi Salvador 39fad2d9d7
KVM disk-only based snapshot of volumes instead of taking VM's full snapshot and extracting disks (#5297)
* Refactor create volume snapshot with running VM

* Refactor create volume snapshot with stopped VM

* Refactor create volume from snapshot

* Refactor create template from snapshot

* Refactor volume migration (migrateVolume/ migrateVirtualMachineWithVolume)

* Refactor snapshot deletion

* Refactor snapshot revertion

* Adjusts and fix cherry-pick conflicts

* Remove diffuse tests

* Add validation to add flag '--delete' on command 'virsh blockcommand' only if libvirt version is equal or higher 6.0.0

* Expunge temporary snapshot only if template creation is from snapshot

* Extract strings to constant

* Remove unused imports

* Fix error on revert backed up snapshot

* Turn method's return to void as it is not used

* Rename method in SnapshotHelper

* Fix folder creation when using SharedMountPoint pool

* Remove static import

* Remove unnused method

* Cover take snapshot in centos 7

* Handle right snapshot flag according to qemu version

Co-authored-by: GutoVeronezi <daniel@scclouds.com.br>
2022-04-12 08:14:27 -03:00
Pearl Dsilva 431c352a6d
Synchronization of network devices on newly added hosts for Persistent Networks (#5977)
* Persistent Network feature & Marvin component tests

* Cleaned up comments and imports

* fixed small error

* add support to add setup persistent networks' resources when a disabled host is enabled

* small fix

* use wildcard instead of hard-coding the bridge name

* allow clean up of resources when removing a host in maintenance mode

* skip test for simulator hypervisor

Co-authored-by: shatoboar <sang-woo.bae@campus.tu-berlin.de>
2022-04-11 23:12:05 -03:00
Nicolas Vazquez 5435b0abfe
Direct download certificates additions and improvements (#6104)
* Add direct download certificates listing

* Restore class to original project

* Small refactor

* Register API

* Apply suggestions from code review

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

* Refactor after review

* Fix checkstyle

* Add hosts mapping to API response

* Improvements on revoke certificate

* Refactor revoke certificate API

* Fix condition

* Filter only certificates not revoked for revokeCertificate API

* Improve upload certificate and add provision certificate API

* Improve certificate response output

* Address review comments

* Refactor revoke cert test

* Fix marvin test

* Address review comments

* Fix issues

* Improvements

* Refactor upload template API response

* Fix response

Co-authored-by: Suresh Kumar Anaparti <sureshkumar.anaparti@gmail.com>
2022-04-11 22:57:23 -03:00
nvazquez ed55002795
Merge branch '4.16' 2022-04-11 11:20:10 -03:00
Pearl Dsilva b6072fc826
Allow expunging a VM on a deleted host when using host cache and ConfigDrive userdata service (#6234) 2022-04-11 11:19:37 -03:00
José Flauzino 16f2896940
Persistence of VM stats (#5984)
* Add persistence of VM stats

* Fix API 'since' attribute

* Add license

* Address GutoVeronezi's reviews

* Fix the order of VM stats in the API response

* Fix msid in VM stats data

* Fix disk stats and add minor improvements

* Add log message

* Build string using ReflectionToStringBuilderUtils

* Rerun checks

Co-authored-by: joseflauzino <jose@scclouds.com.br>
2022-04-11 10:42:21 -03:00
Rohit Yadav 5b617ba3ff Merge remote-tracking branch 'origin/4.16' 2022-04-08 15:28:20 +05:30
Abhishek Kumar e7071ec196
server: increment deviceid while importing vm data volumes (#6123)
Fixes #6121

deviceId for a volume/disk is never used by CloudStack VMware hypervisor plugin. Still it would be correct to increment value for each data volume/disk, behaviour similar to adding data volumes/disks.

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2022-04-08 15:24:10 +05:30
slavkap 2b075ed39e
Storage-based Snapshots for KVM VMs (#3724)
* VM snapshots of running KVM instance using storage providers plugins for disk snapshots

Added new virtual machine snapshot strategy which is using storage providers plugins to take/revert/delete snapshots.
You can take VM snapshot without VM memory on KVM instance, using storage providers implementations for disk snapshots.
Also revert and delete is added as functionality. Added Thaw/Freeze command for KVM instance.
The snapshots will be consistent, because we freeze the VM during the snapshotting. Backup to secondary storage is executed after
thaw of the VM and if it is enabled in global settings.

* Removed duplicated functionality

Set few methods in DefaultVMSnapshotStrategy to protected to reuse them
without duplicating the code. Remove code that is actualy not needed

* Added requirements in global setting kvm.vmstoragesnapshot.enabled

Added more information in kvm.vmstoragesnapshot.enabled global setting,
that it needs installation of:
- qemu version 1.6+
- qemu-guest-agent installed on guest virtual machine

when the option is enabled

* Added Apache license header

* Removed commented code

* If "kvm.vmstoragesnapshot.enabled" is null should be considered as false

* removed unused imports, replaced default template

Removed unused imports which causing failures and replaced template to
CentOS8

* "kvm.vmstoragesnapshot.enabled" set to dynamic

* Getting status of freeze/thaw commands not the return code

Will chacke the status if freeze/thaw of Guest VM succeded, rather than
looking for return code. Code refactoring

* removed "CreatingKVM" VMsnapshot state and events related to it

* renamed AllocatedKVM to AllocatedVM

the states should not be associated to a hypervisor type

* loggin the result of "drive-backup" command

* Check which VM snapshot strategy could handle the vm snapshots

gets the best match of VM snapshot strategy which could handle the vm
snapshots on KVM.
Other storage plugins could integrate with this functionality to support group snapshots

* Added poolId in canHandle for KVM hypervisors

Added poolId into canHandle method used to check if all volumes are on
the same PowerFlex's storage pool

* skip smoke tests if the hypervisor's OS type is CentOS

This PR works with functionality included in qemu-kvm-ev which
does not come by default on CentOS. The smoke tests will be skipped if
the hypervisor OS is CentOS

* Added missed import in smoke test

* Suggested change to use ` org.apache.commons.lang.StringUtils.isNotBlank`

* Fix getting device on Ubuntu

On Ubuntu the device isn't provided and we have to get it from
node-name parameter. For drive-backup command (for Ubuntu) is needed and job-id which
is the value of node-name (this extra param works on Ubuntu and CentOS as well).

* Removed new snapshot states and functionality for NFS

* throw CloudRuntimeException

provide a properer error message when delete VM snapshot fails

* exclude GROUP snapshots when listing snapshots

* Skip tests if there is pool with NFS/Local

* address comments
2022-04-07 21:42:12 -03:00
Pearl Dsilva c1c381fcd1
api: Prevent modifying acl rules order for default ACLs (#6187) 2022-04-07 21:31:29 -03:00
Wido den Hollander 68fa9a1061
Allow storage.overprovisioning.factor to be <1 which allows underprovisioning of storage pools (#6218)
By setting the value to 0.5 (example) we can underprovision a storage pool. This is useful in
cases with Ceph where it reports the raw size of the cluster where the replication factor is
not taken into account.

Fixes: ##6205
2022-04-07 09:50:55 -03:00
JoaoJandre afc819e5c8
Added new field to updateBackupOffering API. (#6190)
* Added new field to updateBackupOffering API.

* Fix some unit tests.

Co-authored-by: João Paraquetti <joao@scclouds.com.br>
Co-authored-by: Joao <JoaoJandre@gitlab.com>
2022-04-06 09:56:35 -03:00
Wei Zhou ca8782b703
api: add vpcname to networkacl response (#6207)
This PR fixes the vpc uuid in info card of network acls
2022-04-06 09:33:28 +05:30
Pearl Dsilva 9cc8da2a30
api: Update account type when updating account role (#6156)
* api: Update account type when updating account role

* extract code to validate role change
2022-04-06 00:50:56 -03:00
Wei Zhou e4b6992def
server: fix list reserved/free public ips in project (#6198) 2022-04-06 00:17:31 -03:00
David Jumani 5ab4309298
agent: Detect existing hosts with UEFI support (#6139)
* agent: Pass uefi enabled status as part of ready command

* Cleanup

* Fix checkstyle

* Save uefi status if different
2022-04-04 23:31:54 -03:00
Rakesh b88cfc226e
Mount disabled storage pool on host reboot (#6164)
* Mount disabled storage pool on host reboot

Add a global setting so that disabled pools will be mounted
again on host reboot

* fix build error

* Update description

* add cluster-wide support

Co-authored-by: Rakesh Venkatesh <rakeshv@apache.org>
2022-04-01 23:38:32 -03:00
Pearl Dsilva 2c8c476656
CKS: Support deployment of CKS clusters on Advanced zones with security groups (#6132)
* CKS: Support deployment of CKS clusters on Advanced zones with security groups

* use available constant

* address comments -
- Ingress sg rule for port 22 & 6443
- Use constant to define securityGroup Name
- rename variable name from type -> vmType

* unique name for security group + foreign key

* use constants
2022-04-01 13:19:54 -03:00
Wei Zhou 944b6037cc Merge remote-tracking branch 'apache/4.16' 2022-03-29 10:43:59 +02:00
Pearl Dsilva 908f594f00
configDrive: Fix failure to delete (unstarted) VM (#6146)
* configDrive: Fix failure to delete (unstarted)VM

* Address comments

* Address comments
2022-03-29 09:56:54 +02:00
Pearl Dsilva bcd1a3274a
api: Fix reset configuration (#6168) 2022-03-29 09:54:34 +02:00
John Bampton 15937369fe
Fix spelling (#6161)
* Fix spelling

* Fix spelling
2022-03-29 00:21:07 -03:00
Pearl Dsilva add657a899
api: Remove redundant API parameters (#6143) 2022-03-25 14:41:38 -03:00
David Jumani 6125886f3d
Set UefiCapabilty for all hypervisors in hostresponse (#6140) 2022-03-21 15:13:03 -03:00
dahn 13efa59097
Router health check notification mail to show router name next to UUID (#6130)
* alerrt message altered

* review feedback and format

Co-authored-by: Daan Hoogland <dahn@onecht.net>
2022-03-20 23:44:06 -03:00
dahn 3e4e417389
account check made explicit - cleanup (#6122)
Co-authored-by: Daan Hoogland <dahn@onecht.net>
2022-03-20 23:41:06 -03:00
Wei Zhou 88d77c86a7
server: fix NPE when router.service.offering is set due to service/disk offering refactoring (#6120)
* server: move files in server/src/main/java/org/cloud/network/router/deployment/

* server: fix NPE when router.service.offering is set due to service/disk offering refactoring
2022-03-20 23:40:30 -03:00
nvazquez 6e061d90fe
Merge branch '4.16' 2022-03-18 07:56:27 -03:00
Pearl Dsilva 4be99fe971
api: Allow updating VM settings when custom contrained offering is used (#6136) 2022-03-18 09:09:40 +01:00
Wei Zhou 6a53517d37
New feature: Reserve and release Public IPs (#6046)
* Reserve and release a public IP

* Update #6046: show orange color for Reserved public ip

* Update #6046 reserve IP: fix ui conflicts

* Update #6046: fix resource count

* Update #6046: associate Reserved public IP to network

* Update #6046: fix unit tests

* Update #6046: fix ui bugs

* Update #6046: make api/ui available for domain admin and users
2022-03-17 14:35:40 -03:00
Rakesh 6f3c18f3a7
alert: Send alert for ha'ed vm's (#5664)
* alert: Send alert for ha'ed vm's

When ha is performed on vm's send the alert for it so that
its for admins to know which vm's got ha'ed else its time
consuming to get those details from logs

* feedback change

Co-authored-by: Rakesh Venkatesh <rakeshv@apache.org>
2022-03-17 00:52:35 -03:00
Nicolas Vazquez 3fc31ca1e5
Revert "Honour isrecursive above listall (#6045)" (#6126)
This reverts commit 71056191f2.
2022-03-16 23:17:02 -03:00
Pearl Dsilva ca9e28dc84
api: Fix issue observed with message publish on creation of domain (#6118)
* api: Fix issue observed with message publish on creation of domain

* add check for successful creation of domain  before publishing event
2022-03-16 07:55:36 +01:00
David Jumani 71056191f2
Honour isrecursive above listall (#6045)
* Honour isrecursive above listall

* Revert "Honour isrecursive above listall"

This reverts commit 12bc26ae1c.

* Being smart about it

* Cleanup

* fixing npe
2022-03-10 23:59:42 -03:00
nvazquez e3132af64e
Merge branch '4.16' 2022-03-10 08:49:43 -03:00
Wei Zhou 3a456f1b31
server: mark volume snapshots as Destroyed if it does not exist on primary and secondary storage when delete a volume (#6057)
* server: mark volume snapshots as Destroyed in some cases when delete a volume in QCOW2 format

when delete a volume in QCOW2 format, if volume snapshot does not exist on primary and secondary storage, mark the snapshot as Destroyed.

* Update #6057: remove check on volume format
2022-03-10 08:49:03 -03:00
JoaoJandre 5f07ddaca9
Refactor account type (#6048)
* Refactor account type

* Added license.

* Address reviews

* Address review.

Co-authored-by: João Paraquetti <joao@scclouds.com.br>
Co-authored-by: Joao <JoaoJandre@gitlab.com>
2022-03-09 11:14:19 -03:00
David Jumani 5534b7afda
api: Warn if query parameters have multiple values (#5009)
* api: Ensure single query parameter value

* change error to warn

* Address comments
2022-03-08 14:22:39 -03:00
John Bampton 6401c850b7
Fix spelling (#6064)
* Fix spelling

- `interupted` to `interrupted`
- `paramter` to `parameter`

* Fix more typos
2022-03-08 13:02:35 -03:00
John Bampton 08bb4ad9fe
spelling: Fix spelling `Occured` to `Occurred` (#6061)
Fix typos
2022-03-07 15:07:02 +05:30
nvazquez cb872ab6bd
Merge branch '4.16' 2022-03-06 10:08:35 -03:00
Suresh Kumar Anaparti 2820a36f86
Check the network access when deploying VM in Advanced Security Group. (#6050)
* Check the network access when deploying VM in Advanced Security Group.

* Removed comment

* Removed redundant network access check, owner access check already exists
2022-03-06 10:07:57 -03:00
Pearl Dsilva 4d54e8e84c
Allow specifying disk size, min/max iops for offering linked with custom disk offering (#6018) 2022-03-05 00:11:25 -03:00
Pearl Dsilva 3a74ec78be
api: Fix search by name (#6032)
* Search by name

* add keyword search for projectroles

* remove unnecessary arg
2022-03-04 23:52:53 -03:00
Pearl Dsilva 4ebc7413f0
Fix API parameter description for boottype/bootmode (#6054) 2022-03-04 12:09:00 -03:00
David Jumani 85c59979f7
Multiple SSH Keys support (#5965)
* keypairs added in api-constants

* names parameter added

* findbynames method added in dao

* change in impl to find and reset multiple keys

* findbynames method implemented

* log the publickeys, check the ssh keys given exists or not

* new ArrayList<>

* SQL IN toArray

* keypair

* null pointer exception solved with + concatanation

* null pointer exception solved with + concatanation

* error resolved

* keypair name to names in uservmresponse

* keypair name is set in the uservmresponse, from the details

* null checks are removed, keypairnames are stored in a string, sent to the resetvmsshinternal, and added in details

* commit first eval

* deploy vm takes multiple ssh-keys

* Deploy VM UI changed to accept multiple ssh keys

* Reset SSH UI API changed

* ResetSSH.vue

* ssh keys joined, ssh added in infocard

* changes made

* schema error resolved

* potential null pointer exception removed

* Update UserVmManagerImpl.java

unnecessary check removed.

* Update DeployVMCmd.java

* Update DeployVMCmd.java

* Update ResetVMSSHKeyCmd.java

* Update UserVmJoinDaoImpl.java

* .

* arraylist

* Update DeployVMCmd.java

* Update UserVmManagerImpl.java

* Update ResetVMSSHKeyCmd.java

* Update db

* Fix list vm by keypair

* ui fixes

* Fix typos

* ui fixes

* Cleanup

* Adding deprecated and since in api params

* Adding upgrade for existing vms with ssh keys

* Handle no key for cks

* Show existing keyparis in reset ssh key form

* get keys from the right account

Co-authored-by: bicrxm <bickrombishsass@gmail.com>
2022-03-01 21:30:55 -03:00
Suresh Kumar Anaparti cb2ddc45ac
Merge branch '4.16' into main 2022-02-25 16:04:35 +05:30
Pearl Dsilva a8cc261143
[vmware, ssvm] Scale down of ssvm (#6042)
* [vmware, ssvm] Scale down of ssvm

* address comments - change variable name
2022-02-25 15:45:10 +05:30
Rakesh 831f7cff54
Support mutiple management networks in systemvms (#4678)
* Support mutliple management networks in systemvms

Currently only one management.network.cidr is suuported in systemvms
Allow supporting comma separated list of cidr's so that multiple
networks are reachable from systemvms.

* add local gateway

Co-authored-by: Rakesh Venkatesh <rakeshv@apache.org>
2022-02-22 08:11:31 -03:00
Harikrishna 4e826d504e
system_use column is now moved from disk_offering table to service_offering table, because it is applicable only to service offering. (#6015)
There is a left over usage of system_use when user tries to list disk offering. Now we deleted that reference.
2022-02-22 08:44:36 +01:00
Pearl Dsilva e3d0ce9304
Improve default network offering setting for egress policy (#5970)
* Improve default network offering setting for egress policy

* descriptive info + restrict to only isolated n/ws

* add translation
2022-02-21 19:42:35 -03:00
davidjumani 2a1a012a4d
Allow domain admin to change domain and account settings (#4339)
* Allow domain admin to change domain and account settings

* Cleanup

* Remove useless global setting

* Restrict regular users with listConfig access

* Address comments

* Moving upgrade path
2022-02-21 12:25:45 -03:00
SadiJr e7082d9384
Fix Usage event when a volume in allocated state is deleted (#5901)
Co-authored-by: SadiJr <sadi@scclouds.com.br>
2022-02-21 10:06:47 +01:00
SadiJr 50955432d4
[Veeam] Change the VM assign flow logic in a Backup Offering (#5903)
Co-authored-by: SadiJr <sadi@scclouds.com.br>
2022-02-18 19:05:30 +01:00
Pearl Dsilva d311f88d35
Allow scaling VM to a service offering having different storage tags (#5996) 2022-02-18 17:39:00 +01:00
Nicolas Vazquez f96f6faf24
Improve messages on adding hosts errors (#5988)
* Improve messages on adding hosts errors

* Remove unreachable code

* Improve error logs

* Apply suggestions

* Improve error msg
2022-02-17 21:51:30 -03:00
Suresh Kumar Anaparti 545f85936a
Merge branch '4.16' into main 2022-02-17 14:28:26 +05:30
Wei Zhou c543f5f546
server: reapply checkVmProfileAndHost to check guest os preference (#6000) 2022-02-17 14:25:13 +05:30
SadiJr 478e24493e
Block remove of VM which has backup offering (#5457)
Co-authored-by: SadiJr <sadi@scclouds.com.br>
2022-02-17 09:17:53 +01:00
davidjumani d82cd5569a
Respect VM UEFI details on first boot (#5990)
* Update settings only if API call is successful

* Validate template UEFI detail settings

* Read boot mode and type from vm details

* Cleanup

* Honour boot type over templae settings

* Addressing comments

* Explicitly thow exception
2022-02-16 23:44:33 -03:00
Nicolas Vazquez ed30683e52
[Simulator] Add zone wide storage (#5986)
* [Simulator] Add zone wide storage

* Refactor
2022-02-16 22:50:55 -03:00
Pearl Dsilva ee947e1310
[marvin, VMware] Fix repeated test failures observed on 'main' branch (#5992)
* [marvin, VMware] Fix test_06_disk_offering_strictness_false observed on 'main' branch

* Fix test

* update config only if false

* reset full clone setting to original values
2022-02-16 13:46:03 -03:00
Nicolas Vazquez 97d42e9980
Fix: allow executing CopyCommand operations in parallel when it is set (#5960)
* Invoke the hypervisor guru instead of the guru cycle

* Refactor

* Remove unused import

* Refactor error
2022-02-14 23:52:45 -03:00
Nicolas Vazquez fe03e306ac
Fix attach volume error for VM - different scope for VM volume and volume disk offering (#5982)
* Fix attach volume error for VM on different storage pool

* Fix typo

* Refactor
2022-02-13 11:06:44 -03:00
davidjumani a094dbc76e
Add option to infer boot type and mode from template (#5974)
* Add option to infer boot type and mode from template

* Rename to defaultBootType and mode
2022-02-11 15:28:59 -03:00
JoaoJandre bcd0979a5a
Fixed possible blank domain UUID amd created new unit tests. (#5835)
Co-authored-by: Joao <JoaoJandre@gitlab.com>
2022-02-11 14:05:01 -03:00
Suresh Kumar Anaparti 212a4dedfc
Merge branch '4.16' into main 2022-02-10 20:56:52 +05:30
sureshanaparti 5297b52d98
Improve the guest OS hypervisor mappings addition on upgrade. (#5911)
- This removes the hardcoded guest os ids 305 - 329 in upgrade path 4.14.0 to 4.15.0, and 330 - 349 in upgrade path 4.15.0.0 to 4.15.1.0.
2022-02-10 14:43:03 +01:00
nvazquez e9d8d7942d
Merge branch '4.16' 2022-02-10 09:48:49 -03:00
dahn a6d9fa61b9
Role escalation prevention (#5879)
* prevent role access escallation

* hierarchy issue fixed

* create api list in account manager for checking new account access

* full api list check

* strange role restriction removed for BareMetal

* add role check on upfdate account as well

* more selective use of api checkers

* error msg and var name

Co-authored-by: Daan Hoogland <dahn@onecht.net>
2022-02-10 11:50:27 +05:30
Suresh Kumar Anaparti 850714c1fc
Merge branch '4.16' into main 2022-02-10 10:57:29 +05:30
slavkap 4ffb949a58
Fix of revert RBD snapshots (#5544)
* Fix of revert RBD snapshots

If snapshot is taken only on Primary storage with the option "snapshot.backup.to.secondary" set to true, when you set this option to false the revert will fail. Added check if the snapshot is not on Secondary to check for it on Primary

* Check if snapshot is on primary storage

Will check first if the snapshot is on Primary storage, if not will
return Image as data store

* Fix unit tests

* removed unused method's params

* Formatted error message and added the snapshot ID to it

* Return to the old logic, the fix will only apply to RBD

* Formatted Exception's messages
2022-02-10 10:22:21 +05:30
Abhishek Kumar f88f934274
api, server: fix add-remove vpn user without vpn owner (#5850)
* api, server: fix add-remove vpn user without vpn owner

Fixes #5711

ACS should not add a new user in Add state when the owner account does not have VPN access.
While removing VPN user ACS should not fail completely when owner account ahs no VPN.

* change , fixes

* remove unused method

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2022-02-10 10:07:23 +05:30
dahn 3fc4ef478d
replace Random with SecureRandom (#5966)
Co-authored-by: Daan Hoogland <dahn@onecht.net>
2022-02-09 21:08:33 +05:30
davidjumani 453aeb02f0
Add ID search capability to sshkeypairs (#5963) 2022-02-09 09:34:00 +05:30
Pearl Dsilva e609aa8e9c
Skip systemVM template registration for Simulator (#5954)
* Skip systemVM template registration for Simulator

* simplify
2022-02-08 19:44:01 +01:00
Suresh Kumar Anaparti 208ae84dd7
Merge branch '4.16' into main 2022-02-08 19:01:34 +05:30
Abhishek Kumar af58284560
server,config: respect storage.max.volume.size and make it dynamic (#5857)
* server,config: respect storage.max.volume.size and make it dynamic

Fixes #5830

* fix test

* size change

* fix check

* server: donot include ISO size while checking volume sizes

* revert size check

* refactor

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: sureshanaparti <12028987+sureshanaparti@users.noreply.github.com>
2022-02-08 13:29:35 +05:30
Gabriel Beims Bräscher 2c11171517
Fix 'endpointe.url' global settings configuration typo (#5832)
* Update 'endpointe.url' global settings to 'endpoint.url'

* Add PR number on 'schema-41610to41700.sql'

* Use ApiServiceConfiguration.ApiServletPath.key() instead of "hardcoded" string
2022-02-06 12:11:45 -03:00
dahn 0f1cd6009d
add logging to deployment planners (#5859)
Co-authored-by: sureshanaparti <12028987+sureshanaparti@users.noreply.github.com>

Co-authored-by: Daan Hoogland <dahn@onecht.net>
Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com>
Co-authored-by: sureshanaparti <12028987+sureshanaparti@users.noreply.github.com>
2022-02-04 17:02:32 +01:00
Suresh Kumar Anaparti e3f0e3b544
Merge branch '4.16' into main 2022-02-04 19:04:08 +05:30
Harikrishna 56a8852c4c
Remove code that reserves extra interfaces based on the global setting router.extra.public.nics in case of VMware. (#5912)
Added hot plugging of vifs whenever required in case of isolated networks. VPC networks already uses hotplugging of vifs.
2022-02-04 12:41:56 +01:00
dahn ef7debb487
Filter usage for project (#5866)
Co-authored-by: sureshanaparti <12028987+sureshanaparti@users.noreply.github.com>
Co-authored-by: Daan Hoogland <dahn@onecht.net>
Co-authored-by: José Flauzino <jose.wilson.vf@gmail.com>
Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com>
Co-authored-by: sureshanaparti <12028987+sureshanaparti@users.noreply.github.com>
2022-02-04 11:45:32 +01:00
Wei Zhou 194bf6ead9 Merge remote-tracking branch 'apache/4.16' 2022-02-03 20:42:34 +01:00
Wei Zhou 4a1ebb3fa5
server: allow normal users to create isolated network without source nat (#5920) 2022-02-03 16:44:11 +05:30
Abhishek Kumar 638779ca37
vm-import: fix unmanaged instance listing (#5400)
* vm-import: fix unmanaged instance listing

When the host and last host ID is not set for the VM, it may appear in the list of unmanaged instances.
This changes fixes the behaviour by filtering unmanaged instances list for host for following three criteria:
- host is set as host_id for the VM
- host is set as the last_host_id for the VM
- pod of the host is set as the pod_id for the VM and both host_id and last_host_id is NULL

* use SearchBuilder to fix query condition

* add paranthesis

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2022-02-03 10:27:05 +05:30
Abhishek Kumar 62b806ac13
api,server: add params for updatehypervisorcapabilities API (#5473)
* api,server: add params for updatehypervisorcapabilities API

Allows updating following capabilities for a hypervisor, version:
- Max DATA volumes limit
- Storage motion supported
- Max hosts per cluster
- VM snapshot enabled

* added test

* changes

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

* Update test/integration/smoke/test_hypervisor_capabilities.py

Co-authored-by: dahn <daan.hoogland@gmail.com>
2022-02-03 10:21:23 +05:30
Suresh Kumar Anaparti bf70566c2c
Merge branch '4.16' into main 2022-02-02 17:30:21 +05:30
Abhishek Kumar 8adb8df2fe
server: find suitable disk offering for volume upload (#5852)
* server: find suitable disk offering for volume upload

Fixes #5696

* fix npe check

* fixes, refactor, rename method and handle custom iops

* ui: allow offering selection

* list only disk offerings

* show name

* revert error check

* use checkaccess

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2022-02-02 16:35:47 +05:30
dahn c1bba2a308
Do not restart VPC tiers with cleanup (#5873)
* do not restart VPC tiers with cleanup

* no option for cleanup for VPC tiers

* Update server/src/main/java/com/cloud/network/NetworkServiceImpl.java

* paramNames

* remove superfluent parameter

Co-authored-by: Daan Hoogland <dahn@onecht.net>
Co-authored-by: Daniel Augusto Veronezi Salvador <38945620+GutoVeronezi@users.noreply.github.com>
2022-01-31 17:59:26 +05:30