This is an automated email from the ASF dual-hosted git repository.
pearl11594 pushed a change to branch fix-ui-k8s-capc
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
from c20869833aa UI: Fix cpu & memory details on list view for unmanaged
k8s clusters (CAPC)
add 84b807eeee1 [CKS] Simplify logic for scaling CKS cluster service
offerings (#11063)
add 3220eb442a5 PowerFlex/ScaleIO - MDM and host SDC connection
enhancements (#11047)
add bb75abcffa2 Usage parsers refactoring (#11097)
add 53eb2c5b9b7 File-based disk-only VM snapshot with KVM as hypervisor
(#10632)
add 65d359228dc Allow populating generic templates during Zone Deployment
(#10947)
add 9688cbb0953 systemvm: build 4.20.2 template with 'depmod -a' (#11128)
add c94f75c7ea7 PowerFlex/ScaleIO - Wait after SDC service
start/restart/stop, and retry to fetch SDC id/guid (#11099)
add 06c80cdbe91 Remove unfinished usage job entries of the host (#10848)
add 0d65c8c4543 Merge branch '4.19' into 4.20
add b57994eeb0d Merge branch '4.20'
add 15c09af5cc7 UI: Fix traffic Label on Zone creation wizard for VMware
(#11101)
add a849b822c21 Update .asf.yaml: remove new committer Bernardo (#11231)
add 3687032ed68 Update .asf.yaml re-add rosi
add 1003c8034c1 Update .asf.yaml remove sudo87
add c5da9e6188c Update .asf.yaml re-add sudo87
add 6ad92964120 Fix KVM incremental snapshot removal when using multiple
secondary storages (#11180)
add e7172161dd2 Guard OS type update for iso/template with existing vms
(#11215)
add 9d049707d5e Fix deletion of backup schedules (#11222)
add a710ff8c6db UI: Fix ISO Hypervisor selection (#11261)
add 666784f4e57 ovm deprecation (#11196)
add d63899fc8a4 Set Content-Type from the file type (#11093)
add 6d5cefdfe94 add since parameter to BackupScheduleResponse (#11265)
add fb3bb3fd568 pre-commit: upgrade markdownlint to the latest version
(#11066)
add 165ab0aabe2 Fix HTML license; standardize HTML code (#11067)
add 1fbe1d76827 pre-commit: add gitleaks to detect hardcoded secrets
(#11064)
add 071e612f404 UI: Fix OS Type displayed for a VM (#11075)
add 7da5f9002b2 misc: fix typo `sercurity` -> `security` (#10966)
add 83bccead3db schema, refactor: rename cloud.user_vm_details to
cloud.vm_instance_details (#10736)
add 22b753e9302 [UI] Deploy VM: Preselect first available template (#11207)
add 11455f6d49c UI: Add option to Login to a specific Project view via
setting on config.json (#10935)
add 935c568082c Merge fix for UI
add 074f75838e4 Fix pre-commit warnings for deprecated stage names (#11276)
add ae501037047 Config 'vm.network.nic.max.secondary.ipaddresses' - Sync
default value (and value if not set) to 10 as per the config description and
default value in parseInt of the config (#11256)
add 0d4147f3f63 Netris Network Plugin Integration with CloudStack (#10458)
add 13892e2ff06 [CKS] Create Kubernetes ISO support for ARCH optional
parameter (#10986)
add 407072ffd43 schema,framework/db,server: fix user_vm_details usage
(#11292)
add 217ff27650f ui: fix compute offering edit (#11232)
add cca8b2fef90 Extensions Framework & Orchestrate Anything (#9752)
add 21dde2b9a28 [DB] Add force recreate parameter to
cloudstack-setup-databases script (#11239)
add 1a9efe8de3c Add unit tests for getConfigResources in
ModuleDefinitionSet and improve context readability (#11042)
add 45edf82efaf [UI] Fix for local storage enable/disable toggle in edit
zone (#11309)
add 524f0d80db0 server: fix NaN values for external resource metrics
(#11302)
add d693736ee82 ui: fix NAN% used memory for vm (#11307)
add 9fee6dae34c Fix local storage pool disconnect issue (#11200)
add 4aed972e78c api,server,extensions: allow updating extension resource
map details (#11303)
add b92c1965b97 README: add `Contributors Avatars` and `Star History`
(#11311)
add f6ad184ea2d Feature: Add support for GPU with KVM hosts (#11143)
add 86827f871d2 Update CIDR/Gateway of the Shared Networks from Guest IP
ranges (#11249)
add f2bda464193 Upgrade noVNC from 1.4.0 to 1.6.0 (#11119)
add 30deec89e6b kvm: consider Debian same as Ubuntu (#10917)
add 23de6c7db4d Fix update resource count failure for domains (#11138)
add d5f6b7cd1d1 Fix to create instances with smaller templates (< 1 GB) on
PowerFlex/ScaleIO storage (#11211)
add d72a05aa5ad Add special Icon to Shared FileSystem Instances (#10857)
add 0ebf72df0f1 Handle nas backup and restore on Shared mount point.
(#11204)
add 1b74c2dd3f9 Fix restore from NAS backup when datadisk is older than
the root disk. (#11258)
add 4111061d295 list only own zones for resource admin (#11087)
add 948ecda785e UI: Fix missing labels (#11102)
add 111d87b845a console: optimise buffer sizes for faster console
performance (#11221)
add eeb4d55e890 polish: Fix some inconsistencies in object names and
messages (#10856)
add a51a04efc2b [Vmware to KVM Migration] Preserve boot type and boot mode
of instances to be migrated (#10975)
add 890386e9499 Allow custom NTP servers for CPVM (#11210)
add ed6ee6b704f Mark LDAP user query timeout as incorrect login instead of
disabling user immediately (#11220)
add bf464585785 List templates and ISOs by domain (#11179)
add 714b04e3a5f npe guard for get host info on vmware (#11054)
add 9c6dfd2b264 Handle IllegalReferenceCountException for decoder, while
uploading ISO from local (#10879)
add 3fc02ddd45e Add format and physicalsize in listIsoOs api response
(#11214)
add 264e404108a Fix for dynamic scaling toggle for instance (#11086)
add 75a2b3cc54c Validate qcow2 file during import operation (#11264)
add a4263da8aea linstor: Use template's uuid if pool's downloadPath is
null as resource-name (#11053)
add 609efcc231a Merge branch '4.19' into 4.20
add 40035f54d0f [UI] Add dedicated account field dropdown on zone creation
(#11195)
add 82396b621ed appliance: bump systemvmtemplate version to 4.20.2
add 8756be5c187 [Multi-Arch] Select Template Arch when creating template
from volume (#11068)
add e9918ba15de ui: fix volume size not showing (#11328)
add ca6d2dc57ec Prevent multi-select dropdown menu from floating on
scrolling through the form (#11237)
add a32738c52ed Prevent infinite autoscaling (#11244)
add 1961aea7706 Merge branch '4.19' into 4.20
add 4b1a605e597 server: fix IllegalMonitorStateException on cluster
managedstate change (#11310)
add be08fff32b7 Merge branch '4.19' into 4.20
add 0b3959221b5 Merge branch '4.20'
add 8429223782d missing imports from merge forward
add 2bffabba7b1 Fix unit tests after merge forward
add da3ba17884e Fix build and ui build errors in main (#11332)
add 8497f70b46c ui: make events tab selected columns persistent using
cache (#11317)
add fd4223295a0 ui: fix advance setting behaviour in autoscale form
(#11306)
add 7506a547afc kvm, ui: fix interface when using vlan subnet for storage
traffic type (#11245)
add 96ed9d47bc1 Merge branch '4.19' into 4.20
add 76cfcb48fbf Merge branch '4.20'
add f73cb5621df Refactoring retention of backup schedules (#11223)
add 4d2beea7773 logger fix
add 2d025bd0749 kvm: fix regression
5a52ca78ae5e165211c618525613c3d62cfd1b28 (#11342)
add 1dc134a3ecf UI: Display NSX Provider only when NSX is the selected
Isolation method (#11142)
add 294aef5ecff Fix listCapacity sort by usage (#11316)
add 7e0414354a9 Merge branch '4.19' into 4.20
add 70468a62584 Merge branch '4.20'
add 9def21c15e1 Merge branch 'main' of
https://github.com/apache/cloudstack into fix-ui-k8s-capc
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 3 +-
.github/linters/.markdown-lint.yml | 3 +
.github/workflows/ci.yml | 6 +-
.pre-commit-config.yaml | 16 +-
README.md | 8 +
.../cloud/agent/properties/AgentProperties.java | 37 +-
api/src/main/java/com/cloud/agent/api/Command.java | 14 +-
.../java/com/cloud/agent/api/VgpuTypesInfo.java | 164 +-
.../com/cloud/agent/api/to/FirewallRuleTO.java | 2 +-
.../java/com/cloud/agent/api/to/GPUDeviceTO.java | 33 +-
.../cloud/agent/api/to/PortForwardingRuleTO.java | 4 -
.../com/cloud/agent/api/to/VirtualMachineTO.java | 14 +
.../cloud/configuration/ConfigurationService.java | 16 +
.../java/com/cloud/configuration/Resource.java | 3 +-
api/src/main/java/com/cloud/event/EventTypes.java | 63 +-
.../main/java/com/cloud/hypervisor/Hypervisor.java | 1 +
api/src/main/java/com/cloud/network/IpAddress.java | 1 +
api/src/main/java/com/cloud/network/Network.java | 1 +
.../main/java/com/cloud/network/NetworkModel.java | 2 +
.../java/com/cloud/network/NetworkService.java | 9 +-
api/src/main/java/com/cloud/network/Networks.java | 3 +-
.../com/cloud/network/SDNProviderNetworkRule.java | 139 +-
.../com/cloud/network/Site2SiteVpnConnection.java | 2 +-
.../com/cloud/network/element/NetworkElement.java | 9 +
.../element/PortForwardingServiceProvider.java | 28 +
.../com/cloud/network/element/VpcProvider.java | 4 +
.../java/com/cloud/network/guru/NetworkGuru.java | 4 +
.../com/cloud/network/netris/NetrisLbBackend.java | 28 +-
.../cloud/network/netris/NetrisNetworkRule.java | 108 ++
.../cloud/network/netris/NetrisProvider.java} | 24 +-
.../com/cloud/network/netris/NetrisService.java | 310 +++
.../java/com/cloud/network/nsx/NsxService.java | 4 +-
.../java/com/cloud/network/vpc/StaticRoute.java | 5 +-
.../com/cloud/network/vpc/StaticRouteProfile.java | 22 +-
.../java/com/cloud/network/vpc/VpcOffering.java | 4 +-
.../cloud/network/vpc/VpcProvisioningService.java | 2 +-
.../java/com/cloud/network/vpc/VpcService.java | 2 +-
.../java/com/cloud/offering/NetworkOffering.java | 6 +-
.../java/com/cloud/offering/ServiceOffering.java | 4 +
api/src/main/java/com/cloud/storage/Storage.java | 1 +
.../java/com/cloud/storage/VolumeApiService.java | 2 +-
.../com/cloud/template/VirtualMachineTemplate.java | 2 +
.../main/java/com/cloud/user/AccountService.java | 2 +
.../java/com/cloud/user/ResourceLimitService.java | 14 +-
.../main/java/com/cloud/vm/VmDetailConstants.java | 8 +
.../java/com/cloud/vm/snapshot/VMSnapshot.java | 7 +-
.../java/org/apache/cloudstack/acl/RoleType.java | 27 +
.../org/apache/cloudstack/alert/AlertService.java | 1 +
.../cloudstack/api/ApiCommandResourceType.java | 4 +-
.../org/apache/cloudstack/api/ApiConstants.java | 58 +-
.../java/org/apache/cloudstack/api/BaseCmd.java | 14 +
.../cloudstack/api/BaseUpdateTemplateOrIsoCmd.java | 8 +
.../api/command/admin/cluster/AddClusterCmd.java | 32 +-
.../api/command/admin/cluster/ListClustersCmd.java | 39 +-
.../command/admin/cluster/UpdateClusterCmd.java | 12 +
.../api/command/admin/gpu/CreateGpuCardCmd.java | 122 ++
.../api/command/admin/gpu/CreateGpuDeviceCmd.java | 123 ++
.../command/admin/gpu/CreateVgpuProfileCmd.java | 131 ++
.../api/command/admin/gpu/DeleteGpuCardCmd.java | 75 +
.../api/command/admin/gpu/DeleteGpuDeviceCmd.java | 78 +
.../command/admin/gpu/DeleteVgpuProfileCmd.java | 76 +
.../command/admin/gpu/DiscoverGpuDevicesCmd.java | 63 +
.../admin/gpu/ListGpuDevicesCmdByAdmin.java | 74 +
.../api/command/admin/gpu/ManageGpuDeviceCmd.java | 78 +
.../command/admin/gpu/UnmanageGpuDeviceCmd.java | 79 +
.../api/command/admin/gpu/UpdateGpuCardCmd.java | 99 +
.../api/command/admin/gpu/UpdateGpuDeviceCmd.java | 109 ++
.../command/admin/gpu/UpdateVgpuProfileCmd.java | 129 ++
.../api/command/admin/host/AddHostCmd.java | 12 +-
.../api/command/admin/host/UpdateHostCmd.java | 15 +-
.../admin/network/CreateNetworkOfferingCmd.java | 56 +-
.../admin/offering/CreateServiceOfferingCmd.java | 48 +-
.../admin/offering/UpdateServiceOfferingCmd.java | 11 +
.../api/command/admin/pod/ListPodsByCmd.java | 4 +-
.../command/admin/resource/ListCapacityCmd.java | 6 +-
.../command/admin/vlan/CreateVlanIpRangeCmd.java | 13 +-
.../api/command/admin/vm/MigrateVMCmd.java | 5 +
.../command/admin/vpc/CreateVPCOfferingCmd.java | 56 +-
.../user/address/ListPublicIpAddressesCmd.java | 7 +
.../api/command/user/backup/CreateBackupCmd.java | 19 +-
.../user/backup/CreateBackupScheduleCmd.java | 6 +-
.../user/backup/DeleteBackupScheduleCmd.java | 16 +-
.../command/user/config/ListCapabilitiesCmd.java | 2 +
.../api/command/user/gpu/ListGpuCardsCmd.java | 96 +
.../api/command/user/gpu/ListGpuDevicesCmd.java | 65 +
.../api/command/user/gpu/ListVgpuProfilesCmd.java | 80 +
.../user/offering/ListServiceOfferingsCmd.java | 22 +
.../snapshot/CreateSnapshotFromVMSnapshotCmd.java | 2 +-
.../command/user/template/CreateTemplateCmd.java | 10 +
.../command/user/template/ListTemplatesCmd.java | 12 +-
.../command/user/template/RegisterTemplateCmd.java | 23 +-
.../command/user/userdata/RegisterUserDataCmd.java | 3 +-
.../api/command/user/vm/DeployVMCmd.java | 73 +-
.../cloudstack/api/command/user/vm/ListVMsCmd.java | 20 +
.../api/command/user/vpc/CreateStaticRouteCmd.java | 53 +-
.../api/command/user/vpn/CreateVpnGatewayCmd.java | 14 +-
.../api/command/user/zone/ListZonesCmd.java | 7 -
.../cloudstack/api/response/AccountResponse.java | 27 +
.../cloudstack/api/response/AsyncJobResponse.java | 9 -
.../api/response/BackupScheduleResponse.java | 13 +-
.../api/response/CapabilitiesResponse.java | 17 +
.../response/ClusterDrsPlanMigrationResponse.java | 12 +-
.../cloudstack/api/response/ClusterResponse.java | 34 +
.../response/CreateConsoleEndpointResponse.java | 2 +-
.../cloudstack/api/response/DomainResponse.java | 24 +
.../ExtensionCustomActionParameterResponse.java | 58 +
.../response/ExtensionCustomActionResponse.java | 184 ++
.../api/response/ExtensionResourceResponse.java | 95 +
.../cloudstack/api/response/ExtensionResponse.java | 182 ++
.../cloudstack/api/response/GpuCardResponse.java | 109 ++
.../cloudstack/api/response/GpuDeviceResponse.java | 227 +++
.../cloudstack/api/response/HostResponse.java | 59 +-
.../cloudstack/api/response/IPAddressResponse.java | 8 +
.../cloudstack/api/response/NetworkResponse.java | 16 -
.../cloudstack/api/response/ProjectResponse.java | 27 +
.../response/ResourceLimitAndCountResponse.java | 6 +
.../response/RouterHealthCheckResultResponse.java | 2 +-
.../api/response/ServiceOfferingResponse.java | 120 ++
.../api/response/StaticRouteResponse.java | 24 +-
.../cloudstack/api/response/SystemVmResponse.java | 8 -
.../cloudstack/api/response/TemplateResponse.java | 22 +
.../api/response/UnmanageVMInstanceResponse.java | 2 +-
.../cloudstack/api/response/UserDataResponse.java | 22 +-
.../cloudstack/api/response/UserVmResponse.java | 108 ++
.../api/response/VgpuProfileResponse.java | 135 ++
.../api/response/VlanIpRangeResponse.java | 10 +-
.../cloudstack/api/response/ZoneResponse.java | 37 +
.../java/org/apache/cloudstack/backup/Backup.java | 23 +-
.../apache/cloudstack/backup/BackupManager.java | 36 +-
.../apache/cloudstack/backup/BackupSchedule.java | 3 +-
.../CustomActionResultResponse.java} | 51 +-
.../org/apache/cloudstack/extension/Extension.java | 44 +
.../extension/ExtensionCustomAction.java | 386 ++++
.../cloudstack/extension/ExtensionHelper.java | 9 +-
.../cloudstack/extension/ExtensionResourceMap.java | 34 +
.../apache/cloudstack/gpu/GpuCard.java} | 54 +-
.../BackupSchedule.java => gpu/GpuDevice.java} | 32 +-
.../java/org/apache/cloudstack/gpu/GpuService.java | 157 ++
.../apache/cloudstack/gpu/VgpuProfile.java} | 59 +-
.../org/apache/cloudstack/query/QueryService.java | 12 +-
.../command/admin/cluster/ListClustersCmdTest.java | 83 +
.../command/admin/gpu/CreateGpuCardCmdTest.java | 90 +
.../command/admin/gpu/CreateGpuDeviceCmdTest.java | 100 +
.../admin/gpu/CreateVgpuProfileCmdTest.java | 108 ++
.../command/admin/gpu/DeleteGpuCardCmdTest.java | 45 +
.../command/admin/gpu/DeleteGpuDeviceCmdTest.java | 47 +
.../admin/gpu/DeleteVgpuProfileCmdTest.java | 45 +
.../admin/gpu/DiscoverGpuDevicesCmdTest.java | 38 +
.../admin/gpu/ListGpuDevicesCmdByAdminTest.java | 65 +
.../command/admin/gpu/ManageGpuDeviceCmdTest.java | 47 +
.../admin/gpu/UnmanageGpuDeviceCmdTest.java | 47 +
.../command/admin/gpu/UpdateGpuCardCmdTest.java | 72 +
.../command/admin/gpu/UpdateGpuDeviceCmdTest.java | 91 +
.../admin/gpu/UpdateVgpuProfileCmdTest.java | 108 ++
.../offering/CreateServiceOfferingCmdTest.java | 19 +
.../api/command/user/gpu/ListGpuCardsCmdTest.java | 82 +
.../command/user/gpu/ListGpuDevicesCmdTest.java | 36 +
.../command/user/gpu/ListVgpuProfilesCmdTest.java | 63 +
.../extension/ExtensionCustomActionTest.java | 484 +++++
build/replace.properties | 1 +
client/conf/server.properties.in | 3 +
client/pom.xml | 20 +-
.../agent/api/CheckS2SVpnConnectionsAnswer.java | 1 -
.../com/cloud/agent/api/CheckVolumeAnswer.java | 15 +-
.../cloud/agent/api/CopyRemoteVolumeAnswer.java | 15 +-
.../com/cloud/agent/api/GetGPUStatsAnswer.java | 17 +
...java => PrepareExternalProvisioningAnswer.java} | 47 +-
...ava => PrepareExternalProvisioningCommand.java} | 24 +-
.../com/cloud/agent/api/RunCustomActionAnswer.java | 17 +-
...tatsAnswer.java => RunCustomActionCommand.java} | 40 +-
.../cloud/agent/api/SetupGuestNetworkCommand.java | 9 +
.../com/cloud/agent/api/StartupRoutingCommand.java | 11 +-
.../main/java/com/cloud/agent/api/StopCommand.java | 17 +-
.../storage/CreateDiskOnlyVmSnapshotAnswer.java | 39 +
.../storage/CreateDiskOnlyVmSnapshotCommand.java | 41 +
.../storage/DeleteDiskOnlyVmSnapshotCommand.java | 44 +
.../storage/MergeDiskOnlyVmSnapshotCommand.java | 55 +
.../storage/RevertDiskOnlyVmSnapshotAnswer.java | 38 +
.../storage/RevertDiskOnlyVmSnapshotCommand.java | 50 +
.../agent/api/storage/SnapshotMergeTreeTO.java | 57 +
.../facade/SetGuestNetworkConfigItem.java | 1 +
.../virtualnetwork/model/GuestNetwork.java | 9 +
.../cloud/agent/transport/ArrayTypeAdaptor.java | 12 +-
.../com/cloud/agent/transport/ResponseTest.java | 46 +
debian/cloudstack-common.install | 1 +
debian/cloudstack-management.install | 2 +
debian/cloudstack-management.postinst | 3 +
debian/rules | 3 +
deps/install-non-oss.sh | 3 +
.../main/java/com/cloud/vm/VirtualMachineGuru.java | 4 +
.../service/NetworkOrchestrationService.java | 3 +
.../cloud/configuration/ConfigurationManager.java | 5 +-
.../com/cloud/hypervisor/ExternalProvisioner.java | 61 +
.../main/java/com/cloud/network/addr/PublicIp.java | 4 +
.../java/com/cloud/network/rules/RulesManager.java | 2 +
.../com/cloud/network/vpc/NetworkACLManager.java | 2 +-
.../java/com/cloud/network/vpc/VpcManager.java | 16 +
.../main/java/com/cloud/resource/Discoverer.java | 1 -
.../java/com/cloud/resource/ResourceManager.java | 43 +-
.../java/com/cloud/template/TemplateManager.java | 3 +-
.../com/cloud/vm/VirtualMachineProfileImpl.java | 2 +-
engine/orchestration/pom.xml | 5 +
.../com/cloud/agent/manager/AgentManagerImpl.java | 20 +-
.../agent/manager/ClusteredAgentManagerImpl.java | 9 +-
.../com/cloud/vm/VirtualMachineManagerImpl.java | 293 ++-
.../engine/orchestration/CloudOrchestrator.java | 10 +-
.../engine/orchestration/NetworkOrchestrator.java | 90 +-
.../engine/orchestration/VolumeOrchestrator.java | 18 +-
.../cloud/vm/VirtualMachineManagerImplTest.java | 326 +++-
.../com/cloud/capacity/dao/CapacityDaoImpl.java | 6 +-
.../cloud/configuration/dao/ResourceCountDao.java | 14 -
.../configuration/dao/ResourceCountDaoImpl.java | 15 +-
.../src/main/java/com/cloud/dc/dao/ClusterDao.java | 2 +
.../main/java/com/cloud/dc/dao/ClusterDaoImpl.java | 25 +
.../src/main/java/com/cloud/dc/dao/VlanDao.java | 2 +
.../main/java/com/cloud/dc/dao/VlanDaoImpl.java | 27 +
.../src/main/java/com/cloud/gpu/GpuCardVO.java | 147 ++
.../src/main/java/com/cloud/gpu/GpuDeviceVO.java | 200 ++
.../src/main/java/com/cloud/gpu/VGPUTypesVO.java | 32 +-
.../src/main/java/com/cloud/gpu/VgpuProfileVO.java | 191 ++
.../dao/GpuCardDao.java} | 29 +-
.../java/com/cloud/gpu/dao/GpuCardDaoImpl.java | 122 ++
.../main/java/com/cloud/gpu/dao/GpuDeviceDao.java | 71 +
.../java/com/cloud/gpu/dao/GpuDeviceDaoImpl.java | 260 +++
.../java/com/cloud/gpu/dao/HostGpuGroupsDao.java | 12 +
.../com/cloud/gpu/dao/HostGpuGroupsDaoImpl.java | 78 +
.../java/com/cloud/gpu/dao/VGPUTypesDaoImpl.java | 59 +-
.../dao/VgpuProfileDao.java} | 20 +-
.../java/com/cloud/gpu/dao/VgpuProfileDaoImpl.java | 110 ++
.../java/com/cloud/host/dao/HostDetailsDao.java | 3 +
.../com/cloud/host/dao/HostDetailsDaoImpl.java | 32 +
.../network/as/dao/AutoScaleVmGroupVmMapDao.java | 2 +
.../as/dao/AutoScaleVmGroupVmMapDaoImpl.java | 9 +
.../com/cloud/network/dao/IPAddressDaoImpl.java | 1 +
.../java/com/cloud/network/dao/IPAddressVO.java | 12 +
...teVpnGatewayDao.java => NetrisProviderDao.java} | 5 +-
...ewayDaoImpl.java => NetrisProviderDaoImpl.java} | 41 +-
.../dao/PhysicalNetworkTrafficTypeDaoImpl.java | 2 +-
.../com/cloud/network/dao/RemoteAccessVpnDao.java | 2 +
.../cloud/network/dao/RemoteAccessVpnDaoImpl.java | 7 +
.../cloud/network/dao/Site2SiteVpnGatewayDao.java | 2 +
.../network/dao/Site2SiteVpnGatewayDaoImpl.java | 8 +
.../cloud/network/element/NetrisProviderVO.java | 265 +++
.../java/com/cloud/network/vpc/StaticRouteVO.java | 35 +-
.../java/com/cloud/network/vpc/VpcOfferingVO.java | 11 -
.../network/vpc/dao/VpcOfferingServiceMapDao.java | 5 +
.../vpc/dao/VpcOfferingServiceMapDaoImpl.java | 19 +
.../network/vpc/dao/VpcServiceMapDaoImpl.java | 11 +-
.../com/cloud/offerings/NetworkOfferingVO.java | 24 -
.../java/com/cloud/service/ServiceOfferingVO.java | 37 +
.../com/cloud/service/dao/ServiceOfferingDao.java | 3 +
.../cloud/service/dao/ServiceOfferingDaoImpl.java | 17 +-
.../main/java/com/cloud/storage/VMTemplateVO.java | 13 +-
.../java/com/cloud/storage/dao/SnapshotDao.java | 2 +
.../com/cloud/storage/dao/SnapshotDaoImpl.java | 23 +
.../java/com/cloud/storage/dao/VMTemplateDao.java | 2 +
.../com/cloud/storage/dao/VMTemplateDaoImpl.java | 11 +
.../main/java/com/cloud/usage/dao/UsageJobDao.java | 2 +
.../java/com/cloud/usage/dao/UsageJobDaoImpl.java | 37 +-
...UserVmDetailVO.java => VMInstanceDetailVO.java} | 8 +-
.../src/main/java/com/cloud/vm/dao/NicDao.java | 4 +
.../src/main/java/com/cloud/vm/dao/NicDaoImpl.java | 20 +
.../main/java/com/cloud/vm/dao/UserVmDaoImpl.java | 15 +-
.../java/com/cloud/vm/dao/VMInstanceDaoImpl.java | 32 +-
...VmDetailsDao.java => VMInstanceDetailsDao.java} | 4 +-
...sDaoImpl.java => VMInstanceDetailsDaoImpl.java} | 6 +-
.../com/cloud/vm/snapshot/dao/VMSnapshotDao.java | 4 +
.../cloud/vm/snapshot/dao/VMSnapshotDaoImpl.java | 27 +
.../apache/cloudstack/backup/BackupScheduleVO.java | 17 +-
.../org/apache/cloudstack/backup/BackupVO.java | 23 +-
.../apache/cloudstack/backup/dao/BackupDao.java | 3 +-
.../cloudstack/backup/dao/BackupDaoImpl.java | 23 +-
.../backup/dao/BackupScheduleDaoImpl.java | 3 +-
.../resourcedetail/ResourceDetailsDao.java | 3 +
.../resourcedetail/ResourceDetailsDaoBase.java | 14 +
.../storage/datastore/db/SnapshotDataStoreDao.java | 2 +
.../datastore/db/SnapshotDataStoreDaoImpl.java | 6 +
...n-daos-between-management-and-usage-context.xml | 2 +-
.../spring-engine-schema-core-daos-context.xml | 4 +
.../resources/META-INF/db/schema-42010to42100.sql | 436 ++++-
.../META-INF/db/views/cloud.account_view.sql | 8 +
.../META-INF/db/views/cloud.domain_view.sql | 8 +
.../db/views/cloud.network_offering_view.sql | 2 -
.../db/views/cloud.service_offering_view.sql | 16 +
.../META-INF/db/views/cloud.template_view.sql | 6 +-
.../META-INF/db/views/cloud.user_vm_view.sql | 29 +-
.../META-INF/db/views/cloud.vpc_offering_view.sql | 1 -
.../java/com/cloud/gpu/dao/GpuCardDaoImplTest.java | 57 +
.../com/cloud/gpu/dao/GpuDeviceDaoImplTest.java | 277 +++
.../com/cloud/gpu/dao/VgpuProfileDaoImplTest.java | 70 +
.../cloud/storage/dao/VMTemplateDaoImplTest.java | 17 +
.../storage/image/TemplateServiceImpl.java | 4 +-
.../storage/image/store/TemplateObject.java | 5 +
.../storage/test/ChildTestConfiguration.java | 4 +-
.../storage/snapshot/DefaultSnapshotStrategy.java | 44 +
.../storage/snapshot/SnapshotObject.java | 4 +-
.../vmsnapshot/DefaultVMSnapshotStrategy.java | 35 +-
.../KvmFileBasedStorageVmSnapshotStrategy.java | 689 +++++++
.../vmsnapshot/StorageVMSnapshotStrategy.java | 23 +-
...ing-engine-storage-snapshot-storage-context.xml | 3 +
.../storage/vmsnapshot/VMSnapshotStrategyTest.java | 6 +
extensions/HyperV/hyperv.py | 302 +++
extensions/Proxmox/proxmox.sh | 413 ++++
.../utils/crypt/EncryptionSecretKeyChanger.java | 2 +-
framework/extensions/pom.xml | 54 +
.../extensions/api/AddCustomActionCmd.java | 175 ++
.../extensions/api/CreateExtensionCmd.java | 140 ++
.../extensions/api/DeleteCustomActionCmd.java | 87 +-
.../extensions/api/DeleteExtensionCmd.java | 95 +-
.../extensions/api/ListCustomActionCmd.java | 110 ++
.../extensions/api/ListExtensionsCmd.java | 114 ++
.../extensions/api/RegisterExtensionCmd.java | 118 ++
.../extensions/api/RunCustomActionCmd.java | 121 ++
.../extensions/api/UnregisterExtensionCmd.java | 109 ++
.../extensions/api/UpdateCustomActionCmd.java | 197 ++
.../extensions/api/UpdateExtensionCmd.java | 136 ++
.../command/CleanupExtensionFilesCommand.java} | 12 +-
.../extensions/command/ExtensionBaseCommand.java | 63 +
.../command/ExtensionRoutingUpdateCommand.java | 23 +-
.../command/ExtensionServerActionBaseCommand.java | 23 +-
.../command/GetExtensionPathChecksumCommand.java} | 12 +-
.../command/PrepareExtensionPathCommand.java} | 12 +-
.../extensions/dao/ExtensionCustomActionDao.java | 18 +-
.../dao/ExtensionCustomActionDaoImpl.java | 59 +
.../dao/ExtensionCustomActionDetailsDao.java | 9 +-
.../dao/ExtensionCustomActionDetailsDaoImpl.java | 14 +-
.../framework/extensions/dao/ExtensionDao.java | 9 +-
.../framework/extensions/dao/ExtensionDaoImpl.java | 30 +-
.../extensions/dao/ExtensionDetailsDao.java | 9 +-
.../extensions/dao/ExtensionDetailsDaoImpl.java | 14 +-
.../extensions/dao/ExtensionResourceMapDao.java | 19 +-
.../dao/ExtensionResourceMapDaoImpl.java | 70 +
.../dao/ExtensionResourceMapDetailsDao.java | 9 +-
.../dao/ExtensionResourceMapDetailsDaoImpl.java | 14 +-
.../extensions/manager/ExtensionsManager.java | 96 +
.../extensions/manager/ExtensionsManagerImpl.java | 1632 ++++++++++++++++
.../vo/ExtensionCustomActionDetailsVO.java | 47 +-
.../extensions/vo/ExtensionCustomActionVO.java | 215 +++
.../extensions/vo/ExtensionDetailsVO.java | 47 +-
.../vo/ExtensionResourceMapDetailsVO.java | 47 +-
.../extensions/vo/ExtensionResourceMapVO.java | 122 ++
.../framework/extensions/vo/ExtensionVO.java | 179 ++
.../spring-framework-extensions-core-context.xml | 31 +-
.../extensions/api/AddCustomActionCmdTest.java | 224 +++
.../extensions/api/CreateExtensionCmdTest.java | 97 +
.../extensions/api/DeleteCustomActionCmdTest.java | 81 +
.../extensions/api/DeleteExtensionCmdTest.java | 90 +
.../extensions/api/ListCustomActionCmdTest.java | 153 ++
.../extensions/api/ListExtensionsCmdTest.java | 92 +
.../extensions/api/RegisterExtensionCmdTest.java | 133 ++
.../extensions/api/RunCustomActionCmdTest.java | 127 ++
.../extensions/api/UnregisterExtensionCmdTest.java | 124 ++
.../extensions/api/UpdateCustomActionCmdTest.java | 240 +++
.../extensions/api/UpdateExtensionCmdTest.java | 168 ++
.../command/ExtensionBaseCommandTest.java | 78 +
.../dao/ExtensionCustomActionDaoImplTest.java | 68 +
.../extensions/dao/ExtensionDaoImplTest.java | 34 +-
.../dao/ExtensionResourceMapDaoImplTest.java | 86 +
.../manager/ExtensionsManagerImplTest.java | 1885 ++++++++++++++++++
framework/pom.xml | 1 +
.../presetvariables/PresetVariableHelper.java | 14 +-
...VmDetailsDao.java => VMInstanceDetailsDao.java} | 4 +-
...sDaoImpl.java => VMInstanceDetailsDaoImpl.java} | 14 +-
...UserVmDetailVO.java => VMInstanceDetailVO.java} | 8 +-
.../quota/spring-framework-quota-context.xml | 2 +-
.../presetvariables/PresetVariableHelperTest.java | 20 +-
.../factory/ModuleBasedContextFactoryTest.java | 79 +-
...nheritable.xml => base-context-inheritable.xml} | 0
.../base/{test-context.xml => base-context.xml} | 0
.../{test-context.xml => child1-1-context.xml} | 0
...override.xml => child1-context-inheritable.xml} | 12 +-
...xt-override.xml => child1-context-override.xml} | 0
.../{test-context.xml => child1-context.xml} | 0
.../{test-context.xml => child2-context.xml} | 0
packaging/debian/replace.properties | 1 +
packaging/el8/cloud.spec | 8 +
packaging/el8/replace.properties | 1 +
.../cloudstack/backup/NASBackupProvider.java | 34 +-
.../implicitplanner/ImplicitPlannerTest.java | 8 +-
.../main/resources/security_group_agent/cs-sgagent | 2 +-
plugins/hypervisors/external/pom.xml | 44 +
.../agent/manager/ExternalAgentManager.java | 9 +-
.../agent/manager/ExternalAgentManagerImpl.java | 55 +
.../agent/manager/ExternalServerPlanner.java | 183 ++
.../agent/manager/ExternalTemplateAdapter.java | 279 +++
.../cloudstack/guru/ExternalHypervisorGuru.java | 114 ++
.../discoverer/ExternalServerDiscoverer.java | 294 +++
.../ExternalPathPayloadProvisioner.java | 832 ++++++++
.../external/resource/ExternalResource.java | 376 ++++
.../core/spring-external-core-context.xml | 24 +-
.../cloudstack/external-compute/module.properties | 9 +-
.../spring-external-compute-context.xml | 15 +-
.../external-discoverer/module.properties | 9 +-
.../spring-external-discoverer-context.xml | 18 +-
.../cloudstack/external-planner/module.properties | 9 +-
.../spring-external-planner-context.xml | 18 +-
.../cloudstack/external-storage/module.properties | 9 +-
.../spring-external-storage-context.xml | 18 +-
.../agent/manager/ExternalTemplateAdapterTest.java | 173 ++
.../discoverer/ExternalServerDiscovererTest.java | 182 ++
.../ExternalPathPayloadProvisionerTest.java | 750 ++++++++
.../external/resource/ExternalResourceTest.java | 93 +
.../kvm/resource/BlockCommitListener.java | 77 +
.../hypervisor/kvm/resource/BridgeVifDriver.java | 21 +-
.../kvm/resource/LibvirtComputingResource.java | 475 ++++-
.../hypervisor/kvm/resource/LibvirtGpuDef.java | 102 +
.../kvm/resource/LibvirtKvmAgentHook.java | 89 +-
.../hypervisor/kvm/resource/LibvirtVMDef.java | 4 +-
.../LibvirtCheckConvertInstanceCommandWrapper.java | 2 +-
.../wrapper/LibvirtCheckVolumeCommandWrapper.java | 80 +-
.../LibvirtConvertInstanceCommandWrapper.java | 2 +-
.../LibvirtCopyRemoteVolumeCommandWrapper.java | 76 +-
...virtCreateDiskOnlyVMSnapshotCommandWrapper.java | 198 ++
...virtDeleteDiskOnlyVMSnapshotCommandWrapper.java | 58 +
.../wrapper/LibvirtGetGPUStatsCommandWrapper.java | 42 +-
.../LibvirtGetVolumesOnStorageCommandWrapper.java | 66 +-
...bvirtMergeDiskOnlyVMSnapshotCommandWrapper.java | 150 ++
.../wrapper/LibvirtMigrateCommandWrapper.java | 117 ++
.../LibvirtModifyStoragePoolCommandWrapper.java | 16 +-
.../wrapper/LibvirtReadyCommandWrapper.java | 6 +-
.../wrapper/LibvirtResizeVolumeCommandWrapper.java | 19 +-
.../LibvirtRestoreBackupCommandWrapper.java | 60 +-
...virtRevertDiskOnlyVMSnapshotCommandWrapper.java | 111 ++
.../resource/wrapper/LibvirtUtilitiesHelper.java | 10 +
.../hypervisor/kvm/storage/KVMPhysicalDisk.java | 32 +
.../kvm/storage/KVMStorageProcessor.java | 79 +-
.../kvm/storage/ScaleIOStorageAdaptor.java | 186 +-
.../org/apache/cloudstack/utils/qemu/QemuImg.java | 40 +
.../apache/cloudstack/utils/qemu/QemuImgFile.java | 6 +
.../kvm/resource/LibvirtComputingResourceTest.java | 510 ++++-
.../hypervisor/kvm/resource/LibvirtGpuDefTest.java | 142 ++
.../kvm/resource/LibvirtKvmAgentHookTest.java | 43 +
.../wrapper/LibvirtMigrateCommandWrapperTest.java | 219 +++
.../kvm/storage/KVMStorageProcessorTest.java | 57 +-
.../kvm/storage/ScaleIOStorageAdaptorTest.java | 32 +
.../com/cloud/agent/manager/MockAgentManager.java | 7 +
.../cloud/agent/manager/MockAgentManagerImpl.java | 194 +-
.../com/cloud/agent/manager/MockVmManagerImpl.java | 60 +-
.../cloud/agent/manager/SimulatorManagerImpl.java | 5 +-
.../com/cloud/resource/SimulatorDiscoverer.java | 2 +
.../java/com/cloud/simulator/MockGpuDevice.java | 27 +-
.../java/com/cloud/simulator/MockGpuDeviceVO.java | 313 +++
.../com/cloud/simulator/dao/MockGpuDeviceDao.java | 30 +-
.../cloud/simulator/dao/MockGpuDeviceDaoImpl.java | 67 +
.../core/spring-simulator-core-context.xml | 1 +
.../java/com/cloud/hypervisor/guru/VMwareGuru.java | 2 +-
.../hypervisor/vmware/resource/VmwareResource.java | 2 +-
.../network/element/CiscoNexusVSMElement.java | 1 -
.../cluster/KubernetesClusterManagerImpl.java | 54 +-
.../KubernetesClusterActionWorker.java | 10 +-
.../KubernetesClusterScaleWorker.java | 85 +-
.../cloudstack/metrics/PrometheusExporterImpl.java | 11 +
.../cloudstack/metrics/MetricsServiceImpl.java | 2 +-
.../cloudstack/response/HostMetricsResponse.java | 10 -
.../response/ManagementServerMetricsResponse.java | 17 -
.../cloud/network/element/BigSwitchBcfElement.java | 54 +-
.../contrail/management/ContrailManagerImpl.java | 6 +-
.../management/IntegrationTestConfiguration.java | 4 +-
.../contrail/management/MockAccountManager.java | 6 +
plugins/network-elements/netris/pom.xml | 44 +
.../apache/cloudstack/StartupNetrisCommand.java | 11 +-
.../api/AddOrUpdateNetrisStaticRouteCommand.java | 48 +
.../agent/api/CreateNetrisACLCommand.java | 119 ++
.../agent/api/CreateNetrisVnetCommand.java | 84 +
.../agent/api/CreateNetrisVpcCommand.java | 24 +-
.../agent/api/CreateOrUpdateNetrisACLCommand.java | 119 ++
...reateOrUpdateNetrisLoadBalancerRuleCommand.java | 90 +
.../agent/api/CreateOrUpdateNetrisNatCommand.java | 148 ++
.../agent/api/DeleteNetrisACLCommand.java | 31 +-
.../api/DeleteNetrisLoadBalancerRuleCommand.java | 35 +-
.../agent/api/DeleteNetrisNatRuleCommand.java | 72 +
.../agent/api/DeleteNetrisStaticRouteCommand.java | 14 +-
.../agent/api/DeleteNetrisVnetCommand.java | 51 +
.../agent/api/DeleteNetrisVpcCommand.java | 25 +-
.../agent/api/ListNetrisStaticRoutesAnswer.java | 25 +-
.../agent/api/ListNetrisStaticRoutesCommand.java | 14 +-
.../apache/cloudstack/agent/api/NetrisAnswer.java | 17 +-
.../apache/cloudstack/agent/api/NetrisCommand.java | 70 +
.../cloudstack/agent/api/ReleaseNatIpCommand.java | 17 +-
.../agent/api/SetupNetrisPublicRangeCommand.java | 26 +-
.../agent/api/UpdateNetrisVnetCommand.java | 34 +-
.../agent/api/UpdateNetrisVpcCommand.java | 25 +-
.../api/command/AddNetrisProviderCmd.java | 126 ++
.../api/command/DeleteNetrisProviderCmd.java} | 47 +-
.../api/command/ListNetrisProvidersCmd.java | 73 +
.../api/response/NetrisProviderResponse.java | 135 ++
.../cloudstack/resource/NetrisPortGroup.java | 15 +-
.../apache/cloudstack/resource/NetrisResource.java | 441 +++++
.../resource/NetrisResourceObjectUtils.java | 103 +
.../apache/cloudstack/service/NetrisApiClient.java | 100 +
.../cloudstack/service/NetrisApiClientImpl.java | 2000 ++++++++++++++++++++
.../apache/cloudstack/service/NetrisElement.java} | 876 ++++-----
.../service/NetrisGuestNetworkGuru.java} | 188 +-
.../cloudstack/service/NetrisProviderService.java | 27 +-
.../service/NetrisProviderServiceImpl.java | 217 +++
.../service/NetrisPublicNetworkGuru.java} | 66 +-
.../cloudstack/service/NetrisServiceImpl.java | 556 ++++++
.../core/spring-netris-core-managers-context.xml | 15 +-
.../META-INF/cloudstack/netris/module.properties | 10 +-
.../cloudstack/netris/spring-netris-context.xml | 36 +-
.../AddOrUpdateNetrisStaticRouteCommandTest.java | 91 +
.../agent/api/CreateNetrisACLCommandTest.java | 144 ++
.../agent/api/CreateNetrisVnetCommandTest.java | 95 +
.../agent/api/CreateNetrisVpcCommandTest.java | 63 +
...eOrUpdateNetrisLoadBalancerRuleCommandTest.java | 139 ++
.../api/CreateOrUpdateNetrisNatCommandTest.java | 145 ++
.../agent/api/DeleteNetrisACLCommandTest.java | 103 +
.../DeleteNetrisLoadBalancerRuleCommandTest.java | 98 +
.../agent/api/DeleteNetrisNatRuleCommandTest.java | 94 +
.../agent/api/DeleteNetrisVnetCommandTest.java | 83 +
.../agent/api/DeleteNetrisVpcCommandTest.java | 64 +
.../agent/api/ReleaseNatIpCommandTest.java | 80 +
.../api/SetupNetrisPublicRangeCommandTest.java | 63 +
.../agent/api/UpdateNetrisVnetCommandTest.java | 105 +
.../agent/api/UpdateNetrisVpcCommandTest.java | 93 +
.../api/command/AddNetrisProviderCmdTest.java | 122 ++
.../api/command/DeleteNetrisProviderCmdTest.java | 101 +
.../api/command/ListNetrisProvidersCmdTest.java | 104 +
.../resource/NetrisResourceObjectUtilsTest.java | 109 ++
.../cloudstack/resource/NetrisResourceTest.java | 141 ++
.../service/NetrisApiClientImplTest.java | 103 +
.../cloudstack/service/NetrisElementTest.java | 141 ++
.../service/NetrisGuestNetworkGuruTest.java | 230 +++
.../service/NetrisProviderServiceImplTest.java | 220 +++
.../service/NetrisPublicNetworkGuruTest.java | 225 +++
.../cloudstack/service/NetrisServiceImplTest.java | 28 +-
.../api/command/DeleteNsxControllerCmd.java | 3 +-
.../apache/cloudstack/resource/NsxNetworkRule.java | 353 +---
.../apache/cloudstack/service/NsxApiClient.java | 13 +-
.../org/apache/cloudstack/service/NsxElement.java | 138 +-
.../cloudstack/service/NsxGuestNetworkGuru.java | 9 -
.../cloudstack/service/NsxPublicNetworkGuru.java | 18 +-
.../apache/cloudstack/service/NsxServiceImpl.java | 48 +-
.../cloudstack/service/NsxApiClientTest.java | 6 +-
.../apache/cloudstack/service/NsxElementTest.java | 42 +-
.../service/NsxPublicNetworkGuruTest.java | 10 +-
.../command/ConfigTungstenFabricServiceCmd.java | 1 -
plugins/pom.xml | 4 +-
.../lifecycle/StorageVmSharedFSLifeCycle.java | 25 +-
.../lifecycle/StorageVmSharedFSLifeCycleTest.java | 11 +-
plugins/storage/volume/linstor/CHANGELOG.md | 6 +
.../kvm/storage/LinstorStorageAdaptor.java | 2 +-
.../driver/LinstorPrimaryDataStoreDriverImpl.java | 12 +-
.../datastore/client/ScaleIOGatewayClient.java | 3 +
.../driver/ScaleIOPrimaryDataStoreDriver.java | 16 +-
.../ScaleIOPrimaryDataStoreLifeCycle.java | 39 +-
.../datastore/manager/ScaleIOSDCManager.java | 37 +
.../datastore/manager/ScaleIOSDCManagerImpl.java | 58 +-
.../datastore/provider/ScaleIOHostListener.java | 12 +-
.../storage/datastore/util/ScaleIOUtil.java | 351 +++-
.../driver/ScaleIOPrimaryDataStoreDriverTest.java | 12 +
.../kvm/storage/StorPoolStorageAdaptor.java | 3 +
.../cloudstack/api/command/LdapListUsersCmd.java | 5 +-
.../apache/cloudstack/ldap/LdapAuthenticator.java | 58 +-
.../apache/cloudstack/ldap/LdapManagerImpl.java | 22 +-
pom.xml | 4 +-
requirements.txt => requirements-dev.txt | 5 -
requirements.txt | 2 -
scripts/util/create-kubernetes-binaries-iso.sh | 36 +-
.../hypervisor/external/provisioner/provisioner.sh | 147 ++
scripts/vm/hypervisor/kvm/gpudiscovery.sh | 734 +++++++
server/pom.xml | 6 +
.../manager/allocator/impl/FirstFitAllocator.java | 47 +-
.../java/com/cloud/alert/AlertManagerImpl.java | 14 +-
server/src/main/java/com/cloud/api/ApiDBUtils.java | 14 +-
.../main/java/com/cloud/api/ApiResponseHelper.java | 124 +-
.../api/dispatch/ParamGenericValidationWorker.java | 1 +
.../java/com/cloud/api/query/QueryManagerImpl.java | 626 +++---
.../com/cloud/api/query/ViewResponseHelper.java | 7 +
.../cloud/api/query/dao/AccountJoinDaoImpl.java | 13 +
.../cloud/api/query/dao/DataCenterJoinDaoImpl.java | 34 +-
.../com/cloud/api/query/dao/DomainJoinDaoImpl.java | 13 +
.../com/cloud/api/query/dao/HostJoinDaoImpl.java | 21 +-
.../api/query/dao/ServiceOfferingJoinDaoImpl.java | 10 +
.../cloud/api/query/dao/TemplateJoinDaoImpl.java | 15 +-
.../com/cloud/api/query/dao/UserVmJoinDaoImpl.java | 118 +-
.../api/query/dao/VpcOfferingJoinDaoImpl.java | 9 +-
.../java/com/cloud/api/query/vo/AccountJoinVO.java | 14 +
.../java/com/cloud/api/query/vo/DomainJoinVO.java | 21 +
.../cloud/api/query/vo/NetworkOfferingJoinVO.java | 20 -
.../cloud/api/query/vo/ServiceOfferingJoinVO.java | 84 +
.../com/cloud/api/query/vo/TemplateJoinVO.java | 21 +
.../java/com/cloud/api/query/vo/UserVmJoinVO.java | 78 +
.../com/cloud/api/query/vo/VpcOfferingJoinVO.java | 8 -
.../cloud/api/response/ApiResponseSerializer.java | 4 +-
.../com/cloud/capacity/CapacityManagerImpl.java | 27 +-
.../main/java/com/cloud/configuration/Config.java | 4 +-
.../configuration/ConfigurationManagerImpl.java | 251 ++-
.../consoleproxy/ConsoleProxyManagerImpl.java | 12 +-
.../deploy/DeploymentPlanningManagerImpl.java | 25 +-
.../java/com/cloud/deploy/FirstFitPlanner.java | 15 +-
.../com/cloud/hypervisor/HypervisorGuruBase.java | 31 +-
.../cloud/hypervisor/kvm/dpdk/DpdkHelperImpl.java | 13 +-
.../metadata/ResourceMetaDataManagerImpl.java | 4 +-
.../com/cloud/network/IpAddressManagerImpl.java | 88 +
.../java/com/cloud/network/NetworkModelImpl.java | 35 +-
.../java/com/cloud/network/NetworkServiceImpl.java | 85 +-
.../com/cloud/network/SDNProviderOpObject.java | 8 +-
.../com/cloud/network/as/AutoScaleManager.java | 6 +
.../com/cloud/network/as/AutoScaleManagerImpl.java | 26 +-
.../network/element/ConfigDriveNetworkElement.java | 24 +-
.../network/element/VirtualRouterElement.java | 1 -
.../network/guru/ExternalGuestNetworkGuru.java | 5 +-
.../com/cloud/network/guru/GuestNetworkGuru.java | 20 +-
.../com/cloud/network/guru/PublicNetworkGuru.java | 14 +-
.../network/lb/LoadBalancingRulesManagerImpl.java | 15 +
.../cloud/network/router/CommandSetupHelper.java | 11 +-
.../cloud/network/router/NetworkHelperImpl.java | 26 +-
.../cloud/network/router/NicProfileHelperImpl.java | 4 +-
.../router/VirtualNetworkApplianceManagerImpl.java | 12 +-
.../VpcVirtualNetworkApplianceManagerImpl.java | 20 +-
.../com/cloud/network/rules/RulesManagerImpl.java | 35 +-
.../cloud/network/vpc/NetworkACLManagerImpl.java | 11 +-
.../cloud/network/vpc/NetworkACLServiceImpl.java | 11 +-
.../java/com/cloud/network/vpc/VpcManagerImpl.java | 558 +++++-
.../network/vpn/RemoteAccessVpnManagerImpl.java | 72 +-
.../cloud/network/vpn/Site2SiteVpnManagerImpl.java | 76 +-
.../java/com/cloud/resource/DiscovererBase.java | 20 +-
.../com/cloud/resource/ResourceManagerImpl.java | 327 +++-
.../resource/RollingMaintenanceManagerImpl.java | 10 +-
.../resourcelimit/ResourceLimitManagerImpl.java | 235 ++-
.../com/cloud/server/ConfigurationServerImpl.java | 71 +-
.../com/cloud/server/ManagementServerImpl.java | 97 +-
.../java/com/cloud/storage/StorageManagerImpl.java | 2 +-
.../java/com/cloud/storage/TemplateProfile.java | 11 +-
.../com/cloud/storage/VolumeApiServiceImpl.java | 108 +-
.../cloud/storage/listener/StoragePoolMonitor.java | 4 +-
.../storage/snapshot/SnapshotManagerImpl.java | 2 +
.../cloud/template/HypervisorTemplateAdapter.java | 136 +-
.../java/com/cloud/template/TemplateAdapter.java | 5 +-
.../com/cloud/template/TemplateAdapterBase.java | 206 +-
.../com/cloud/template/TemplateManagerImpl.java | 39 +-
.../java/com/cloud/user/AccountManagerImpl.java | 1 +
.../main/java/com/cloud/vm/UserVmManagerImpl.java | 152 +-
.../cloud/vm/snapshot/VMSnapshotManagerImpl.java | 46 +-
.../affinity/AffinityGroupServiceImpl.java | 7 +
.../cloudstack/backup/BackupManagerImpl.java | 287 +--
.../consoleproxy/ConsoleAccessManagerImpl.java | 22 +-
.../org/apache/cloudstack/gpu/GpuServiceImpl.java | 1385 ++++++++++++++
.../deployment/RouterDeploymentDefinition.java | 19 +-
.../RouterDeploymentDefinitionBuilder.java | 4 +
.../deployment/VpcRouterDeploymentDefinition.java | 6 +-
.../resource/ResourceCleanupServiceImpl.java | 6 +-
.../cloudstack/vm/UnmanagedVMsManagerImpl.java | 49 +-
.../cloudstack/vm/lease/VMLeaseManagerImpl.java | 69 +-
.../core/spring-server-core-managers-context.xml | 7 +
.../allocator/impl/FirstFitAllocatorTest.java | 18 +-
.../com/cloud/api/query/QueryManagerImplTest.java | 256 ++-
.../cloud/api/query/dao/UserVmJoinDaoImplTest.java | 4 +-
.../ConfigurationManagerImplTest.java | 55 +
.../deploy/DeploymentPlanningManagerImplTest.java | 14 +-
.../hypervisor/kvm/dpdk/DpdkHelperImplTest.java | 23 +-
.../com/cloud/network/MockNetworkModelImpl.java | 5 +
.../com/cloud/network/NetworkModelImplTest.java | 143 +-
.../com/cloud/network/NetworkServiceImplTest.java | 51 +
.../cloud/network/as/AutoScaleManagerImplTest.java | 16 +-
.../element/ConfigDriveNetworkElementTest.java | 12 +-
.../network/element/VirtualRouterElementTest.java | 5 +-
.../cloud/network/lb/UpdateLoadBalancerTest.java | 7 +-
.../VirtualNetworkApplianceManagerImplTest.java | 4 +-
.../SecurityGroupManagerTestConfiguration.java | 4 +-
.../cloud/resource/MockResourceManagerImpl.java | 21 +-
.../cloud/resource/ResourceManagerImplTest.java | 12 +-
.../RollingMaintenanceManagerImplTest.java | 16 +-
.../ResourceLimitManagerImplTest.java | 88 +
.../com/cloud/server/ManagementServerImplTest.java | 12 +-
.../cloud/storage/VolumeApiServiceImplTest.java | 104 +-
.../cloud/template/TemplateManagerImplTest.java | 28 +-
.../com/cloud/user/MockAccountManagerImpl.java | 5 +
.../java/com/cloud/vm/FirstFitPlannerTest.java | 9 +-
.../java/com/cloud/vm/UserVmManagerImplTest.java | 103 +-
.../cloud/vm/snapshot/VMSnapshotManagerTest.java | 24 +-
.../cloud/vpc/MockConfigurationManagerImpl.java | 4 +-
.../java/com/cloud/vpc/MockNetworkManagerImpl.java | 16 +-
.../java/com/cloud/vpc/MockNetworkModelImpl.java | 5 +
.../cloud/vpc/MockResourceLimitManagerImpl.java | 15 +
.../java/com/cloud/vpc/NetworkACLServiceTest.java | 6 +
.../java/com/cloud/vpc/VpcTestConfiguration.java | 4 +-
.../vpc/dao/MockVpcOfferingServiceMapDaoImpl.java | 11 +
.../cloudstack/backup/BackupManagerTest.java | 470 ++++-
.../consoleproxy/ConsoleAccessManagerImplTest.java | 4 +-
.../apache/cloudstack/gpu/GpuServiceImplTest.java | 1495 +++++++++++++++
.../deployment/RouterDeploymentDefinitionTest.java | 3 +
.../VpcRouterDeploymentDefinitionTest.java | 3 +
.../networkoffering/CreateNetworkOfferingTest.java | 24 +-
.../resource/ResourceCleanupServiceImplTest.java | 10 +-
.../cloudstack/service/NetrisServiceMockTest.java | 134 ++
.../vm/lease/VMLeaseManagerImplTest.java | 74 +-
.../src/test/resources/createNetworkOffering.xml | 4 +-
.../java/com/cloud/consoleproxy/ConsoleProxy.java | 7 +
.../consoleproxy/ConsoleProxyNoVncClient.java | 84 +-
.../com/cloud/consoleproxy/vnc/NoVncClient.java | 8 +-
.../cloud/consoleproxy/vnc/network/NioSocket.java | 3 +-
.../consoleproxy/vnc/network/NioSocketHandler.java | 3 +-
.../vnc/network/NioSocketHandlerImpl.java | 16 +-
.../vnc/network/NioSocketInputStream.java | 46 +-
.../vnc/network/NioSocketSSLEngineManager.java | 40 +-
.../vnc/network/NioSocketTLSInputStream.java | 3 +-
.../vnc/network/NioSocketTLSOutputStream.java | 5 +-
.../SecondaryStorageManagerImpl.java | 9 +-
.../storage/resource/HttpUploadServerHandler.java | 12 +-
setup/bindir/cloud-setup-databases.in | 15 +-
setup/db/create-schema-simulator.sql | 28 +
systemvm/agent/conf/consoleproxy.properties | 1 +
systemvm/agent/noVNC/app/error-handler.js | 2 +-
systemvm/agent/noVNC/app/locale/cs.json | 24 +-
systemvm/agent/noVNC/app/locale/de.json | 29 +-
systemvm/agent/noVNC/app/locale/el.json | 51 +-
systemvm/agent/noVNC/app/locale/es.json | 16 +-
systemvm/agent/noVNC/app/locale/fr.json | 56 +-
systemvm/agent/noVNC/app/locale/it.json | 10 +-
systemvm/agent/noVNC/app/locale/ja.json | 47 +-
systemvm/agent/noVNC/app/locale/ko.json | 22 +-
systemvm/agent/noVNC/app/locale/nl.json | 78 +-
systemvm/agent/noVNC/app/locale/pl.json | 25 +-
systemvm/agent/noVNC/app/locale/pt_BR.json | 26 +-
systemvm/agent/noVNC/app/locale/ru.json | 26 +-
systemvm/agent/noVNC/app/locale/sv.json | 37 +-
systemvm/agent/noVNC/app/locale/tr.json | 2 +-
systemvm/agent/noVNC/app/locale/zh_CN.json | 90 +-
systemvm/agent/noVNC/app/locale/zh_TW.json | 22 +-
systemvm/agent/noVNC/app/localization.js | 53 +-
systemvm/agent/noVNC/app/styles/base.css | 951 +++++-----
systemvm/agent/noVNC/app/styles/constants.css | 30 +
systemvm/agent/noVNC/app/styles/input.css | 785 +++++---
systemvm/agent/noVNC/app/ui.js | 195 +-
systemvm/agent/noVNC/app/webutil.js | 98 +-
systemvm/agent/noVNC/core/crypto/aes.js | 178 ++
systemvm/agent/noVNC/core/crypto/bigint.js | 34 +
systemvm/agent/noVNC/core/crypto/crypto.js | 90 +
systemvm/agent/noVNC/core/{ => crypto}/des.js | 72 +-
systemvm/agent/noVNC/core/crypto/dh.js | 55 +
systemvm/agent/noVNC/core/{util => crypto}/md5.js | 13 +-
systemvm/agent/noVNC/core/crypto/rsa.js | 132 ++
systemvm/agent/noVNC/core/decoders/copyrect.js | 2 +-
systemvm/agent/noVNC/core/decoders/h264.js | 321 ++++
systemvm/agent/noVNC/core/decoders/hextile.js | 36 +-
systemvm/agent/noVNC/core/decoders/jpeg.js | 219 +--
systemvm/agent/noVNC/core/decoders/raw.js | 53 +-
systemvm/agent/noVNC/core/decoders/rre.js | 2 +-
systemvm/agent/noVNC/core/decoders/tight.js | 80 +-
systemvm/agent/noVNC/core/decoders/tightpng.js | 2 +-
systemvm/agent/noVNC/core/decoders/zlib.js | 51 +
systemvm/agent/noVNC/core/decoders/zrle.js | 4 +-
systemvm/agent/noVNC/core/deflator.js | 7 +-
systemvm/agent/noVNC/core/display.js | 78 +-
systemvm/agent/noVNC/core/encodings.js | 8 +-
systemvm/agent/noVNC/core/inflator.js | 5 +-
systemvm/agent/noVNC/core/input/domkeytable.js | 2 +-
systemvm/agent/noVNC/core/input/fixedkeys.js | 2 +-
systemvm/agent/noVNC/core/input/gesturehandler.js | 2 +-
systemvm/agent/noVNC/core/input/keyboard.js | 59 +-
systemvm/agent/noVNC/core/input/util.js | 2 +-
systemvm/agent/noVNC/core/input/vkeys.js | 2 +-
systemvm/agent/noVNC/core/ra2.js | 345 +---
systemvm/agent/noVNC/core/rfb.js | 1003 +++++-----
systemvm/agent/noVNC/core/util/browser.js | 85 +-
systemvm/agent/noVNC/core/util/cursor.js | 6 +-
systemvm/agent/noVNC/core/util/element.js | 2 +-
systemvm/agent/noVNC/core/util/events.js | 2 +-
systemvm/agent/noVNC/core/util/eventtarget.js | 2 +-
systemvm/agent/noVNC/core/util/int.js | 2 +-
systemvm/agent/noVNC/core/util/logging.js | 2 +-
systemvm/agent/noVNC/core/util/strings.js | 2 +-
systemvm/agent/noVNC/core/websock.js | 140 +-
systemvm/agent/noVNC/defaults.json | 1 +
systemvm/agent/noVNC/docs/novnc_proxy.1 | 8 +-
systemvm/agent/noVNC/mandatory.json | 1 +
systemvm/agent/noVNC/package.json | 17 +-
systemvm/agent/noVNC/po/fr.po | 243 ++-
systemvm/agent/noVNC/po/it.po | 12 +-
systemvm/agent/noVNC/po/pt_BR.po | 28 +-
systemvm/agent/noVNC/utils/convert.js | 2 +-
systemvm/agent/noVNC/vnc.html | 97 +-
systemvm/agent/noVNC/vnc_lite.html | 16 +-
systemvm/agent/ui/viewer.ftl | 10 +-
systemvm/debian/opt/cloud/bin/configure.py | 38 +-
systemvm/debian/opt/cloud/bin/cs/CsAddress.py | 110 +-
systemvm/debian/opt/cloud/bin/cs/CsConfig.py | 3 +
systemvm/debian/opt/cloud/bin/cs/CsDatabag.py | 7 +
systemvm/debian/opt/cloud/bin/cs/CsDhcp.py | 4 +-
systemvm/debian/opt/cloud/bin/cs/CsGuestNetwork.py | 10 +-
systemvm/debian/opt/cloud/bin/cs/CsRoute.py | 21 +
.../debian/opt/cloud/bin/cs/CsVpcGuestNetwork.py | 15 +-
systemvm/debian/opt/cloud/bin/passwd_server_ip.py | 13 +-
systemvm/debian/opt/cloud/bin/setup/common.sh | 6 +-
.../debian/opt/cloud/bin/setup/consoleproxy.sh | 4 +
systemvm/debian/opt/cloud/bin/setup/secstorage.sh | 1 +
.../maint/test_egress_rules_host_maintenance.py | 6 +-
test/integration/component/test_egress_rules.py | 60 +-
.../component/test_project_resources.py | 6 +-
test/integration/component/test_project_usage.py | 25 +-
.../component/test_rootvolume_resize.py | 2 +-
test/integration/component/test_security_groups.py | 72 +-
test/integration/component/test_update_vm.py | 4 +-
test/integration/component/test_vpn_users.py | 118 +-
.../plugins/linstor/test_linstor_volumes.py | 73 +-
.../smoke/test_deploy_vgpu_enabled_vm.py | 233 ++-
test/integration/smoke/test_extension_custom.py | 619 ++++++
.../test_extension_custom_action_lifecycle.py | 281 +++
test/integration/smoke/test_extension_lifecycle.py | 480 +++++
test/integration/smoke/test_usage.py | 12 +-
tools/apidoc/gen_toc.py | 9 +-
tools/apidoc/generatecommands.xsl | 2 +-
.../appliance/systemvmtemplate/scripts/finalize.sh | 1 +
tools/marvin/marvin/lib/base.py | 220 +++
tools/ngui/templates/index.html | 106 +-
ui/public/cloud-image-templates.json | 110 ++
ui/public/config.json | 1 +
ui/public/example.html | 2 +-
ui/public/index.html | 2 +-
ui/public/locales/ar.json | 24 +-
ui/public/locales/ca.json | 22 +-
ui/public/locales/de_DE.json | 26 +-
ui/public/locales/el_GR.json | 51 +-
ui/public/locales/en.json | 973 ++++++----
ui/public/locales/es.json | 24 +-
ui/public/locales/fr_FR.json | 24 +-
ui/public/locales/hi.json | 4 +-
ui/public/locales/hu.json | 26 +-
ui/public/locales/it_IT.json | 24 +-
ui/public/locales/ja_JP.json | 24 +-
ui/public/locales/ko_KR.json | 24 +-
ui/public/locales/nb_NO.json | 24 +-
ui/public/locales/nl_NL.json | 24 +-
ui/public/locales/pl.json | 24 +-
ui/public/locales/pt_BR.json | 24 +-
ui/public/locales/ru_RU.json | 24 +-
ui/public/locales/zh_CN.json | 24 +-
ui/src/components/CheckBoxSelectPair.vue | 8 +-
ui/src/components/view/ActionButton.vue | 4 +-
ui/src/components/view/DetailsTab.vue | 37 +-
ui/src/components/view/EventsTab.vue | 15 +-
ui/src/components/view/GPUDevicesTab.vue | 902 +++++++++
ui/src/components/view/GPUSummaryTab.vue | 301 +++
ui/src/components/view/GPUTab.vue | 440 +++++
ui/src/components/view/InfoCard.vue | 103 +-
ui/src/components/view/ListView.vue | 631 ++++--
ui/src/components/view/ObjectListTable.vue | 89 +
ui/src/components/view/ObjectStoreBrowser.vue | 7 +-
ui/src/components/view/ResourceCountUsage.vue | 3 +-
ui/src/components/view/SearchView.vue | 134 +-
ui/src/components/view/VgpuProfilesTab.vue | 405 ++++
ui/src/components/widgets/DetailsInput.vue | 186 ++
ui/src/components/widgets/Status.vue | 14 +
ui/src/config/router.js | 4 +
ui/src/config/section/account.js | 2 +-
ui/src/config/section/compute.js | 61 +-
ui/src/config/section/config.js | 91 +
ui/src/config/section/domain.js | 5 +
ui/src/config/section/extension.js | 147 ++
ui/src/config/section/extension/customaction.js | 94 +
ui/src/config/section/image.js | 4 +-
ui/src/config/section/infra.js | 21 +
ui/src/config/section/infra/clusters.js | 18 +-
ui/src/config/section/infra/hosts.js | 20 +-
ui/src/config/section/infra/phynetworks.js | 2 +-
ui/src/config/section/infra/zones.js | 2 +-
ui/src/config/section/network.js | 24 +-
ui/src/config/section/offering.js | 14 +-
ui/src/config/section/storage.js | 2 +-
ui/src/core/ext.js | 4 +-
ui/src/core/lazy_lib/icons_use.js | 6 +
ui/src/main.js | 4 +-
.../src/utils/extension.js | 21 +-
ui/src/utils/plugins.js | 55 +-
ui/src/views/AutogenView.vue | 292 ++-
ui/src/views/auth/Login.vue | 44 +-
ui/src/views/compute/AutoScaleVmProfile.vue | 14 +-
ui/src/views/compute/CreateAutoScaleVmGroup.vue | 17 +-
ui/src/views/compute/CreateKubernetesCluster.vue | 4 +-
ui/src/views/compute/DeployVM.vue | 199 +-
ui/src/views/compute/DeployVnfAppliance.vue | 96 +-
ui/src/views/compute/EditVM.vue | 7 +-
ui/src/views/compute/InstanceTab.vue | 13 +-
ui/src/views/compute/MigrateWizard.vue | 3 +-
ui/src/views/compute/RegisterUserData.vue | 8 +-
ui/src/views/compute/ResetUserData.vue | 14 +-
ui/src/views/compute/ScaleVM.vue | 1 +
ui/src/views/compute/backup/BackupSchedule.vue | 2 +-
ui/src/views/compute/backup/FormSchedule.vue | 2 +-
.../compute/wizard/ComputeOfferingSelection.vue | 105 +-
.../compute/wizard/OsBasedImageRadioGroup.vue | 5 +
.../views/compute/wizard/OsBasedImageSelection.vue | 6 +-
ui/src/views/compute/wizard/UserDataSelection.vue | 5 +-
ui/src/views/dashboard/UsageDashboard.vue | 13 +-
ui/src/views/extension/AddCustomAction.vue | 247 +++
ui/src/views/extension/CreateExtension.vue | 256 +++
.../views/extension/ExtensionCustomActionsTab.vue | 274 +++
ui/src/views/extension/ExtensionResourcesTab.vue | 135 ++
.../extension/ExternalConfigurationDetails.vue | 116 ++
ui/src/views/extension/ParametersInput.vue | 328 ++++
ui/src/views/extension/RegisterExtension.vue | 200 ++
ui/src/views/extension/RunCustomAction.vue | 386 ++++
ui/src/views/extension/UpdateCustomAction.vue | 232 +++
ui/src/views/extension/UpdateExtension.vue | 160 ++
ui/src/views/iam/CreateRole.vue | 2 +-
ui/src/views/image/RegisterOrUploadIso.vue | 4 +-
ui/src/views/image/RegisterOrUploadTemplate.vue | 83 +-
ui/src/views/image/UpdateISO.vue | 24 +-
ui/src/views/image/UpdateTemplate.vue | 30 +-
ui/src/views/infra/ClusterAdd.vue | 421 ++--
ui/src/views/infra/ClusterUpdate.vue | 41 +-
ui/src/views/infra/HostAdd.vue | 509 ++---
ui/src/views/infra/HostUpdate.vue | 34 +-
ui/src/views/infra/ZoneUpdate.vue | 2 +-
ui/src/views/infra/network/IpRangesTabPublic.vue | 21 +
ui/src/views/infra/network/IpRangesTabStorage.vue | 2 +-
ui/src/views/infra/network/ServiceProvidersTab.vue | 47 +-
ui/src/views/infra/network/TrafficTypesTab.vue | 2 +-
ui/src/views/infra/zone/IpAddressRangeForm.vue | 20 +-
ui/src/views/infra/zone/PhysicalNetworksTab.vue | 2 +-
ui/src/views/infra/zone/ZoneWizard.vue | 42 +-
ui/src/views/infra/zone/ZoneWizardLaunchZone.vue | 95 +-
.../infra/zone/ZoneWizardNetworkSetupStep.vue | 90 +-
.../zone/ZoneWizardPhysicalNetworkSetupStep.vue | 7 +-
.../infra/zone/ZoneWizardRegisterTemplate.vue | 298 +++
.../views/infra/zone/ZoneWizardZoneDetailsStep.vue | 32 +-
.../{AclListRulesTab.vue => AclRulesTab.vue} | 2 +-
ui/src/views/network/IpAddressesTab.vue | 22 +-
ui/src/views/network/LoadBalancing.vue | 41 +-
ui/src/views/network/NicsTab.vue | 10 +-
ui/src/views/network/PublicIpResource.vue | 31 +-
ui/src/views/network/StaticRoutesTab.vue | 130 +-
ui/src/views/network/VpcTab.vue | 141 +-
ui/src/views/network/VpcTiersTab.vue | 6 +-
ui/src/views/network/VpnDetails.vue | 164 +-
ui/src/views/offering/AddComputeOffering.vue | 233 ++-
ui/src/views/offering/AddDiskOffering.vue | 4 +
ui/src/views/offering/AddNetworkOffering.vue | 161 +-
ui/src/views/offering/AddVpcOffering.vue | 103 +-
ui/src/views/storage/CreateTemplate.vue | 25 +-
ui/tests/unit/views/compute/MigrateWizard.spec.js | 10 +-
.../java/com/cloud/usage/UsageManagerImpl.java | 157 +-
.../com/cloud/usage/parser/BackupUsageParser.java | 32 +-
.../com/cloud/usage/parser/BucketUsageParser.java | 33 +-
.../cloud/usage/parser/IPAddressUsageParser.java | 45 +-
.../usage/parser/LoadBalancerUsageParser.java | 46 +-
.../usage/parser/NetworkOfferingUsageParser.java | 46 +-
.../com/cloud/usage/parser/NetworkUsageParser.java | 41 +-
.../cloud/usage/parser/NetworksUsageParser.java | 34 +-
.../usage/parser/PortForwardingUsageParser.java | 44 +-
.../usage/parser/SecurityGroupUsageParser.java | 44 +-
.../com/cloud/usage/parser/StorageUsageParser.java | 44 +-
.../java/com/cloud/usage/parser/UsageParser.java | 31 +-
.../cloud/usage/parser/VMInstanceUsageParser.java | 42 +-
.../usage/parser/VMSnapshotOnPrimaryParser.java | 48 +-
.../cloud/usage/parser/VMSnapshotUsageParser.java | 48 +-
.../com/cloud/usage/parser/VPNUserUsageParser.java | 44 +-
.../com/cloud/usage/parser/VmDiskUsageParser.java | 41 +-
.../com/cloud/usage/parser/VolumeUsageParser.java | 44 +-
.../com/cloud/usage/parser/VpcUsageParser.java | 33 +-
utils/src/main/java/com/cloud/utils/FileUtil.java | 15 +
.../src/main/java/com/cloud/utils/StringUtils.java | 52 +
.../java/com/cloud/utils/json/JsonMergeUtil.java | 108 ++
.../main/java/com/cloud/utils/net/NetUtils.java | 34 +
.../main/java/com/cloud/utils/script/Script.java | 21 +-
.../test/java/com/cloud/utils/LogUtilsTest.java | 2 +-
.../com/cloud/utils/json/JsonMergeUtilTest.java | 108 ++
.../java/com/cloud/utils/net/NetUtilsTest.java | 19 +
.../com/cloud/hypervisor/vmware/mo/HostMO.java | 152 +-
961 files changed, 61890 insertions(+), 10548 deletions(-)
copy
plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/resource/NsxNetworkRule.java
=> api/src/main/java/com/cloud/network/SDNProviderNetworkRule.java (74%)
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
api/src/main/java/com/cloud/network/netris/NetrisLbBackend.java (66%)
create mode 100644
api/src/main/java/com/cloud/network/netris/NetrisNetworkRule.java
copy api/src/main/java/{org/apache/cloudstack/backup/BackupSchedule.java =>
com/cloud/network/netris/NetrisProvider.java} (70%)
create mode 100644
api/src/main/java/com/cloud/network/netris/NetrisService.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/CreateGpuCardCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/CreateGpuDeviceCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/CreateVgpuProfileCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/DeleteGpuCardCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/DeleteGpuDeviceCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/DeleteVgpuProfileCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/DiscoverGpuDevicesCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/ListGpuDevicesCmdByAdmin.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/ManageGpuDeviceCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/UnmanageGpuDeviceCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/UpdateGpuCardCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/UpdateGpuDeviceCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/gpu/UpdateVgpuProfileCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/gpu/ListGpuCardsCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/gpu/ListGpuDevicesCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/user/gpu/ListVgpuProfilesCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/ExtensionCustomActionParameterResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/ExtensionCustomActionResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/ExtensionResourceResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/ExtensionResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/GpuCardResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/GpuDeviceResponse.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/VgpuProfileResponse.java
copy
api/src/main/java/org/apache/cloudstack/{api/response/UnmanageVMInstanceResponse.java
=> extension/CustomActionResultResponse.java} (56%)
create mode 100644
api/src/main/java/org/apache/cloudstack/extension/Extension.java
create mode 100644
api/src/main/java/org/apache/cloudstack/extension/ExtensionCustomAction.java
copy
engine/schema/src/main/java/com/cloud/network/dao/Site2SiteVpnGatewayDao.java
=> api/src/main/java/org/apache/cloudstack/extension/ExtensionHelper.java (78%)
create mode 100644
api/src/main/java/org/apache/cloudstack/extension/ExtensionResourceMap.java
copy api/src/main/java/{com/cloud/network/vpc/StaticRoute.java =>
org/apache/cloudstack/gpu/GpuCard.java} (51%)
copy api/src/main/java/org/apache/cloudstack/{backup/BackupSchedule.java =>
gpu/GpuDevice.java} (65%)
create mode 100644 api/src/main/java/org/apache/cloudstack/gpu/GpuService.java
copy api/src/main/java/{com/cloud/network/vpc/StaticRoute.java =>
org/apache/cloudstack/gpu/VgpuProfile.java} (50%)
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/cluster/ListClustersCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/CreateGpuCardCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/CreateGpuDeviceCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/CreateVgpuProfileCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/DeleteGpuCardCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/DeleteGpuDeviceCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/DeleteVgpuProfileCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/DiscoverGpuDevicesCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/ListGpuDevicesCmdByAdminTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/ManageGpuDeviceCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/UnmanageGpuDeviceCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/UpdateGpuCardCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/UpdateGpuDeviceCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/gpu/UpdateVgpuProfileCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/gpu/ListGpuCardsCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/gpu/ListGpuDevicesCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/user/gpu/ListVgpuProfilesCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/extension/ExtensionCustomActionTest.java
copy core/src/main/java/com/cloud/agent/api/{CopyRemoteVolumeAnswer.java =>
PrepareExternalProvisioningAnswer.java} (50%)
copy core/src/main/java/com/cloud/agent/api/{CheckVolumeAnswer.java =>
PrepareExternalProvisioningCommand.java} (66%)
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=> core/src/main/java/com/cloud/agent/api/RunCustomActionAnswer.java (72%)
copy core/src/main/java/com/cloud/agent/api/{GetGPUStatsAnswer.java =>
RunCustomActionCommand.java} (54%)
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/CreateDiskOnlyVmSnapshotAnswer.java
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/CreateDiskOnlyVmSnapshotCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/DeleteDiskOnlyVmSnapshotCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/MergeDiskOnlyVmSnapshotCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/RevertDiskOnlyVmSnapshotAnswer.java
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/RevertDiskOnlyVmSnapshotCommand.java
create mode 100644
core/src/main/java/com/cloud/agent/api/storage/SnapshotMergeTreeTO.java
create mode 100644
core/src/test/java/com/cloud/agent/transport/ResponseTest.java
create mode 100644
engine/components-api/src/main/java/com/cloud/hypervisor/ExternalProvisioner.java
create mode 100644 engine/schema/src/main/java/com/cloud/gpu/GpuCardVO.java
create mode 100644 engine/schema/src/main/java/com/cloud/gpu/GpuDeviceVO.java
create mode 100644 engine/schema/src/main/java/com/cloud/gpu/VgpuProfileVO.java
copy
engine/schema/src/main/java/com/cloud/{network/vpc/dao/VpcOfferingServiceMapDao.java
=> gpu/dao/GpuCardDao.java} (58%)
create mode 100644
engine/schema/src/main/java/com/cloud/gpu/dao/GpuCardDaoImpl.java
create mode 100644
engine/schema/src/main/java/com/cloud/gpu/dao/GpuDeviceDao.java
create mode 100644
engine/schema/src/main/java/com/cloud/gpu/dao/GpuDeviceDaoImpl.java
copy engine/schema/src/main/java/com/cloud/{host/dao/HostDetailsDao.java =>
gpu/dao/VgpuProfileDao.java} (65%)
create mode 100644
engine/schema/src/main/java/com/cloud/gpu/dao/VgpuProfileDaoImpl.java
copy
engine/schema/src/main/java/com/cloud/network/dao/{Site2SiteVpnGatewayDao.java
=> NetrisProviderDao.java} (83%)
copy
engine/schema/src/main/java/com/cloud/network/dao/{Site2SiteVpnGatewayDaoImpl.java
=> NetrisProviderDaoImpl.java} (51%)
create mode 100644
engine/schema/src/main/java/com/cloud/network/element/NetrisProviderVO.java
copy engine/schema/src/main/java/com/cloud/vm/{UserVmDetailVO.java =>
VMInstanceDetailVO.java} (90%)
copy engine/schema/src/main/java/com/cloud/vm/dao/{UserVmDetailsDao.java =>
VMInstanceDetailsDao.java} (84%)
copy engine/schema/src/main/java/com/cloud/vm/dao/{UserVmDetailsDaoImpl.java
=> VMInstanceDetailsDaoImpl.java} (81%)
create mode 100644
engine/schema/src/test/java/com/cloud/gpu/dao/GpuCardDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/gpu/dao/GpuDeviceDaoImplTest.java
create mode 100644
engine/schema/src/test/java/com/cloud/gpu/dao/VgpuProfileDaoImplTest.java
create mode 100644
engine/storage/snapshot/src/main/java/org/apache/cloudstack/storage/vmsnapshot/KvmFileBasedStorageVmSnapshotStrategy.java
create mode 100755 extensions/HyperV/hyperv.py
create mode 100755 extensions/Proxmox/proxmox.sh
create mode 100644 framework/extensions/pom.xml
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/AddCustomActionCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/CreateExtensionCmd.java
copy
plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java
=>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/DeleteCustomActionCmd.java
(52%)
copy
plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java
=>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/DeleteExtensionCmd.java
(50%)
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/ListCustomActionCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/ListExtensionsCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/RegisterExtensionCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/RunCustomActionCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/UnregisterExtensionCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/UpdateCustomActionCmd.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/UpdateExtensionCmd.java
copy
framework/{quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
extensions/src/main/java/org/apache/cloudstack/framework/extensions/command/CleanupExtensionFilesCommand.java}
(72%)
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/command/ExtensionBaseCommand.java
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/command/ExtensionRoutingUpdateCommand.java
(66%)
copy api/src/main/java/org/apache/cloudstack/backup/BackupSchedule.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/command/ExtensionServerActionBaseCommand.java
(66%)
copy
framework/{quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
extensions/src/main/java/org/apache/cloudstack/framework/extensions/command/GetExtensionPathChecksumCommand.java}
(72%)
copy
framework/{quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
extensions/src/main/java/org/apache/cloudstack/framework/extensions/command/PrepareExtensionPathCommand.java}
(72%)
copy engine/schema/src/main/java/com/cloud/host/dao/HostDetailsDao.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionCustomActionDao.java
(68%)
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionCustomActionDaoImpl.java
copy engine/schema/src/main/java/com/cloud/vm/dao/UserVmDetailsDao.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionCustomActionDetailsDao.java
(75%)
copy engine/schema/src/main/java/com/cloud/vm/dao/UserVmDetailsDaoImpl.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionCustomActionDetailsDaoImpl.java
(71%)
copy
engine/schema/src/main/java/com/cloud/network/dao/Site2SiteVpnGatewayDao.java
=>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionDao.java
(78%)
copy
engine/schema/src/main/java/com/cloud/network/dao/Site2SiteVpnGatewayDaoImpl.java
=>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionDaoImpl.java
(54%)
copy engine/schema/src/main/java/com/cloud/vm/dao/UserVmDetailsDao.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionDetailsDao.java
(78%)
copy engine/schema/src/main/java/com/cloud/vm/dao/UserVmDetailsDaoImpl.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionDetailsDaoImpl.java
(74%)
copy engine/schema/src/main/java/com/cloud/host/dao/HostDetailsDao.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionResourceMapDao.java
(59%)
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionResourceMapDaoImpl.java
rename engine/schema/src/main/java/com/cloud/vm/dao/UserVmDetailsDao.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionResourceMapDetailsDao.java
(75%)
rename engine/schema/src/main/java/com/cloud/vm/dao/UserVmDetailsDaoImpl.java
=>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/dao/ExtensionResourceMapDetailsDaoImpl.java
(71%)
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/manager/ExtensionsManager.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/manager/ExtensionsManagerImpl.java
copy engine/schema/src/main/java/com/cloud/vm/UserVmDetailVO.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/vo/ExtensionCustomActionDetailsVO.java
(72%)
mode change 100755 => 100644
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/vo/ExtensionCustomActionVO.java
copy engine/schema/src/main/java/com/cloud/vm/UserVmDetailVO.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/vo/ExtensionDetailsVO.java
(75%)
mode change 100755 => 100644
rename engine/schema/src/main/java/com/cloud/vm/UserVmDetailVO.java =>
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/vo/ExtensionResourceMapDetailsVO.java
(73%)
mode change 100755 => 100644
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/vo/ExtensionResourceMapVO.java
create mode 100644
framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/vo/ExtensionVO.java
copy
engine/storage/snapshot/src/main/resources/META-INF/cloudstack/storage/spring-engine-storage-snapshot-storage-context.xml
=>
framework/extensions/src/main/resources/META-INF/cloudstack/core/spring-framework-extensions-core-context.xml
(61%)
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/AddCustomActionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/CreateExtensionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/DeleteCustomActionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/DeleteExtensionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/ListCustomActionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/ListExtensionsCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/RegisterExtensionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/RunCustomActionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/UnregisterExtensionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/UpdateCustomActionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/api/UpdateExtensionCmdTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/command/ExtensionBaseCommandTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/dao/ExtensionCustomActionDaoImplTest.java
copy utils/src/test/java/com/cloud/utils/LogUtilsTest.java =>
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/dao/ExtensionDaoImplTest.java
(50%)
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/dao/ExtensionResourceMapDaoImplTest.java
create mode 100644
framework/extensions/src/test/java/org/apache/cloudstack/framework/extensions/manager/ExtensionsManagerImplTest.java
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/{UserVmDetailsDao.java
=> VMInstanceDetailsDao.java} (87%)
rename
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/{UserVmDetailsDaoImpl.java
=> VMInstanceDetailsDaoImpl.java} (80%)
rename
framework/quota/src/main/java/org/apache/cloudstack/quota/vo/{UserVmDetailVO.java
=> VMInstanceDetailVO.java} (89%)
rename
framework/spring/module/src/test/resources/testhierarchy/base/{test-context-inheritable.xml
=> base-context-inheritable.xml} (100%)
copy
framework/spring/module/src/test/resources/testhierarchy/base/{test-context.xml
=> base-context.xml} (100%)
rename
framework/spring/module/src/test/resources/testhierarchy/child1-1/{test-context.xml
=> child1-1-context.xml} (100%)
copy
framework/spring/module/src/test/resources/testhierarchy/child1/{test-context-override.xml
=> child1-context-inheritable.xml} (66%)
rename
framework/spring/module/src/test/resources/testhierarchy/child1/{test-context-override.xml
=> child1-context-override.xml} (100%)
rename
framework/spring/module/src/test/resources/testhierarchy/child1/{test-context.xml
=> child1-context.xml} (100%)
rename
framework/spring/module/src/test/resources/testhierarchy/child2/{test-context.xml
=> child2-context.xml} (100%)
create mode 100644 plugins/hypervisors/external/pom.xml
copy
engine/schema/src/main/java/com/cloud/network/dao/Site2SiteVpnGatewayDao.java
=>
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/agent/manager/ExternalAgentManager.java
(79%)
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/agent/manager/ExternalAgentManagerImpl.java
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/agent/manager/ExternalServerPlanner.java
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/agent/manager/ExternalTemplateAdapter.java
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/guru/ExternalHypervisorGuru.java
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/discoverer/ExternalServerDiscoverer.java
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/provisioner/ExternalPathPayloadProvisioner.java
create mode 100644
plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/resource/ExternalResource.java
copy
engine/storage/snapshot/src/main/resources/META-INF/cloudstack/storage/spring-engine-storage-snapshot-storage-context.xml
=>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/core/spring-external-core-context.xml
(63%)
copy requirements.txt =>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-compute/module.properties
(86%)
copy
framework/spring/module/src/test/resources/testhierarchy/base/test-context.xml
=>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-compute/spring-external-compute-context.xml
(67%)
copy requirements.txt =>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-discoverer/module.properties
(86%)
copy
framework/spring/module/src/test/resources/testhierarchy/base/test-context.xml
=>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-discoverer/spring-external-discoverer-context.xml
(64%)
copy requirements.txt =>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-planner/module.properties
(86%)
copy
framework/spring/module/src/test/resources/testhierarchy/base/test-context.xml
=>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-planner/spring-external-planner-context.xml
(64%)
copy requirements.txt =>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-storage/module.properties
(86%)
copy
framework/spring/module/src/test/resources/testhierarchy/base/test-context.xml
=>
plugins/hypervisors/external/src/main/resources/META-INF/cloudstack/external-storage/spring-external-storage-context.xml
(67%)
create mode 100644
plugins/hypervisors/external/src/test/java/org/apache/cloudstack/agent/manager/ExternalTemplateAdapterTest.java
create mode 100644
plugins/hypervisors/external/src/test/java/org/apache/cloudstack/hypervisor/external/discoverer/ExternalServerDiscovererTest.java
create mode 100644
plugins/hypervisors/external/src/test/java/org/apache/cloudstack/hypervisor/external/provisioner/ExternalPathPayloadProvisionerTest.java
create mode 100644
plugins/hypervisors/external/src/test/java/org/apache/cloudstack/hypervisor/external/resource/ExternalResourceTest.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/BlockCommitListener.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtGpuDef.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtCreateDiskOnlyVMSnapshotCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtDeleteDiskOnlyVMSnapshotCommandWrapper.java
copy api/src/main/java/com/cloud/network/Site2SiteVpnConnection.java =>
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtGetGPUStatsCommandWrapper.java
(52%)
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtMergeDiskOnlyVMSnapshotCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/wrapper/LibvirtRevertDiskOnlyVMSnapshotCommandWrapper.java
create mode 100644
plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtGpuDefTest.java
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
plugins/hypervisors/simulator/src/main/java/com/cloud/simulator/MockGpuDevice.java
(70%)
create mode 100644
plugins/hypervisors/simulator/src/main/java/com/cloud/simulator/MockGpuDeviceVO.java
copy engine/schema/src/main/java/com/cloud/host/dao/HostDetailsDao.java =>
plugins/hypervisors/simulator/src/main/java/com/cloud/simulator/dao/MockGpuDeviceDao.java
(58%)
create mode 100644
plugins/hypervisors/simulator/src/main/java/com/cloud/simulator/dao/MockGpuDeviceDaoImpl.java
create mode 100644 plugins/network-elements/netris/pom.xml
copy
engine/schema/src/main/java/com/cloud/network/dao/Site2SiteVpnGatewayDao.java
=>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/StartupNetrisCommand.java
(76%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/AddOrUpdateNetrisStaticRouteCommand.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/CreateNetrisACLCommand.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/CreateNetrisVnetCommand.java
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/CreateNetrisVpcCommand.java
(66%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/CreateOrUpdateNetrisACLCommand.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/CreateOrUpdateNetrisLoadBalancerRuleCommand.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/CreateOrUpdateNetrisNatCommand.java
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/DeleteNetrisACLCommand.java
(52%)
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/DeleteNetrisLoadBalancerRuleCommand.java
(50%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/DeleteNetrisNatRuleCommand.java
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/DeleteNetrisStaticRouteCommand.java
(66%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/DeleteNetrisVnetCommand.java
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/DeleteNetrisVpcCommand.java
(65%)
copy engine/schema/src/main/java/com/cloud/host/dao/HostDetailsDao.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/ListNetrisStaticRoutesAnswer.java
(62%)
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/ListNetrisStaticRoutesCommand.java
(66%)
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/NetrisAnswer.java
(66%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/NetrisCommand.java
copy
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/ReleaseNatIpCommand.java
(66%)
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/SetupNetrisPublicRangeCommand.java
(61%)
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/UpdateNetrisVnetCommand.java
(50%)
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/agent/api/UpdateNetrisVpcCommand.java
(62%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/api/command/AddNetrisProviderCmd.java
copy
plugins/network-elements/{nsx/src/main/java/org/apache/cloudstack/api/command/DeleteNsxControllerCmd.java
=>
netris/src/main/java/org/apache/cloudstack/api/command/DeleteNetrisProviderCmd.java}
(70%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/api/command/ListNetrisProvidersCmd.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/api/response/NetrisProviderResponse.java
copy
engine/schema/src/main/java/com/cloud/network/dao/Site2SiteVpnGatewayDao.java
=>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/resource/NetrisPortGroup.java
(75%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/resource/NetrisResource.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/resource/NetrisResourceObjectUtils.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/service/NetrisApiClient.java
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/service/NetrisApiClientImpl.java
copy
plugins/network-elements/{nsx/src/main/java/org/apache/cloudstack/service/NsxElement.java
=> netris/src/main/java/org/apache/cloudstack/service/NetrisElement.java} (54%)
copy
plugins/network-elements/{nsx/src/main/java/org/apache/cloudstack/service/NsxGuestNetworkGuru.java
=>
netris/src/main/java/org/apache/cloudstack/service/NetrisGuestNetworkGuru.java}
(65%)
copy engine/schema/src/main/java/com/cloud/host/dao/HostDetailsDao.java =>
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/service/NetrisProviderService.java
(56%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/service/NetrisProviderServiceImpl.java
copy
plugins/network-elements/{nsx/src/main/java/org/apache/cloudstack/service/NsxPublicNetworkGuru.java
=>
netris/src/main/java/org/apache/cloudstack/service/NetrisPublicNetworkGuru.java}
(66%)
create mode 100644
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/service/NetrisServiceImpl.java
rename
framework/spring/module/src/test/resources/testhierarchy/base/test-context.xml
=>
plugins/network-elements/netris/src/main/resources/META-INF/cloudstack/core/spring-netris-core-managers-context.xml
(69%)
copy requirements.txt =>
plugins/network-elements/netris/src/main/resources/META-INF/cloudstack/netris/module.properties
(86%)
copy
engine/storage/snapshot/src/main/resources/META-INF/cloudstack/storage/spring-engine-storage-snapshot-storage-context.xml
=>
plugins/network-elements/netris/src/main/resources/META-INF/cloudstack/netris/spring-netris-context.xml
(62%)
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/AddOrUpdateNetrisStaticRouteCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/CreateNetrisACLCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/CreateNetrisVnetCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/CreateNetrisVpcCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/CreateOrUpdateNetrisLoadBalancerRuleCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/CreateOrUpdateNetrisNatCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/DeleteNetrisACLCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/DeleteNetrisLoadBalancerRuleCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/DeleteNetrisNatRuleCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/DeleteNetrisVnetCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/DeleteNetrisVpcCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/ReleaseNatIpCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/SetupNetrisPublicRangeCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/UpdateNetrisVnetCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/agent/api/UpdateNetrisVpcCommandTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/api/command/AddNetrisProviderCmdTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/api/command/DeleteNetrisProviderCmdTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/api/command/ListNetrisProvidersCmdTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/resource/NetrisResourceObjectUtilsTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/resource/NetrisResourceTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/service/NetrisApiClientImplTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/service/NetrisElementTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/service/NetrisGuestNetworkGuruTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/service/NetrisProviderServiceImplTest.java
create mode 100644
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/service/NetrisPublicNetworkGuruTest.java
copy core/src/main/java/com/cloud/agent/api/CheckVolumeAnswer.java =>
plugins/network-elements/netris/src/test/java/org/apache/cloudstack/service/NetrisServiceImplTest.java
(62%)
copy requirements.txt => requirements-dev.txt (87%)
create mode 100755 scripts/vm/hypervisor/external/provisioner/provisioner.sh
create mode 100755 scripts/vm/hypervisor/kvm/gpudiscovery.sh
rename
plugins/network-elements/nsx/src/main/java/org/apache/cloudstack/resource/NsxOpObject.java
=> server/src/main/java/com/cloud/network/SDNProviderOpObject.java (94%)
create mode 100644
server/src/main/java/org/apache/cloudstack/gpu/GpuServiceImpl.java
create mode 100644
server/src/test/java/org/apache/cloudstack/gpu/GpuServiceImplTest.java
create mode 100644
server/src/test/java/org/apache/cloudstack/service/NetrisServiceMockTest.java
create mode 100644 systemvm/agent/noVNC/app/styles/constants.css
create mode 100644 systemvm/agent/noVNC/core/crypto/aes.js
create mode 100644 systemvm/agent/noVNC/core/crypto/bigint.js
create mode 100644 systemvm/agent/noVNC/core/crypto/crypto.js
rename systemvm/agent/noVNC/core/{ => crypto}/des.js (87%)
create mode 100644 systemvm/agent/noVNC/core/crypto/dh.js
rename systemvm/agent/noVNC/core/{util => crypto}/md5.js (93%)
create mode 100644 systemvm/agent/noVNC/core/crypto/rsa.js
create mode 100644 systemvm/agent/noVNC/core/decoders/h264.js
create mode 100644 systemvm/agent/noVNC/core/decoders/zlib.js
create mode 100644 systemvm/agent/noVNC/defaults.json
create mode 100644 systemvm/agent/noVNC/mandatory.json
create mode 100644 test/integration/smoke/test_extension_custom.py
create mode 100644
test/integration/smoke/test_extension_custom_action_lifecycle.py
create mode 100644 test/integration/smoke/test_extension_lifecycle.py
create mode 100644 ui/public/cloud-image-templates.json
create mode 100644 ui/src/components/view/GPUDevicesTab.vue
create mode 100644 ui/src/components/view/GPUSummaryTab.vue
create mode 100644 ui/src/components/view/GPUTab.vue
create mode 100644 ui/src/components/view/ObjectListTable.vue
create mode 100644 ui/src/components/view/VgpuProfilesTab.vue
create mode 100644 ui/src/components/widgets/DetailsInput.vue
create mode 100644 ui/src/config/section/extension.js
create mode 100644 ui/src/config/section/extension/customaction.js
rename
framework/quota/src/main/java/org/apache/cloudstack/quota/dao/UserVmDetailsDao.java
=> ui/src/utils/extension.js (68%)
create mode 100644 ui/src/views/extension/AddCustomAction.vue
create mode 100644 ui/src/views/extension/CreateExtension.vue
create mode 100644 ui/src/views/extension/ExtensionCustomActionsTab.vue
create mode 100644 ui/src/views/extension/ExtensionResourcesTab.vue
create mode 100644 ui/src/views/extension/ExternalConfigurationDetails.vue
create mode 100644 ui/src/views/extension/ParametersInput.vue
create mode 100644 ui/src/views/extension/RegisterExtension.vue
create mode 100644 ui/src/views/extension/RunCustomAction.vue
create mode 100644 ui/src/views/extension/UpdateCustomAction.vue
create mode 100644 ui/src/views/extension/UpdateExtension.vue
create mode 100644 ui/src/views/infra/zone/ZoneWizardRegisterTemplate.vue
rename ui/src/views/network/{AclListRulesTab.vue => AclRulesTab.vue} (99%)
create mode 100644 utils/src/main/java/com/cloud/utils/json/JsonMergeUtil.java
create mode 100644
utils/src/test/java/com/cloud/utils/json/JsonMergeUtilTest.java