This is an automated email from the ASF dual-hosted git repository.
pearl11594 pushed a change to branch clvm-enhancements
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
from 357e840cff1 fix test
add 9cc6c09b9eb Remove broken ViserJS attribution link from UI README
(#12724)
add 6419e1c8257 [VMware to KVM Migration] Fix unused convert env vars
(#11947)
add 9e386a3128b PowerFlex/ScaleIO client initialization, authentication
and command execution improvements (#12391)
add 6516f7f1aa7 Fix query execution in countVgpuVMs (#12713)
add 56dc11980f6 test_accounts.py failure fix - keep the camelCase
parameter "domainId" (#12689)
add 65e54091ff2 Merge branch '4.20' into 4.22
add 75620309c22 Merge branch '4.22'
add 7ad68aafa58 Enable defining a network as redundant during restart
through the UI (#7405)
add 9bbd32a8ef0 Add DaanHoogland to the list of contributors
add 74af9b98757 API key pair restructure (#9504)
add d8f748ad0e8 Update .asf.yaml
add faaf7669c59 Update isolation methods description for physical network
(#12759)
add 8c579538f97 CKS: Allow affinity group selection during cluster
creation (#12386)
add 93239e09f19 Add conserve mode for VPC offerings (#12487)
add 3bd5410f9aa Add support to clone existing offerings and update them
(#12357)
add 798401ec397 Merge branch 'main' of
https://github.com/apache/cloudstack into clvm-enhancements
No new revisions were added by this update.
Summary of changes:
.github/workflows/ci.yml | 1 +
.../cloud/configuration/ConfigurationService.java | 34 +-
api/src/main/java/com/cloud/event/EventTypes.java | 11 +-
.../kubernetes/cluster/KubernetesCluster.java | 2 +-
.../cluster/KubernetesServiceHelper.java | 3 +
.../java/com/cloud/network/NetworkService.java | 2 +
.../network/lb/LoadBalancingRulesService.java | 2 +-
.../java/com/cloud/network/vpc/VpcOffering.java | 2 +
.../cloud/network/vpc/VpcProvisioningService.java | 5 +-
.../main/java/com/cloud/user/AccountService.java | 38 +-
.../cloud/user/ApiKeyPairState.java} | 5 +-
api/src/main/java/com/cloud/user/User.java | 8 -
api/src/main/java/com/cloud/user/UserAccount.java | 4 -
.../main/java/com/cloud/vm/VmDetailConstants.java | 1 +
.../java/org/apache/cloudstack/acl/APIChecker.java | 6 +-
.../cloudstack/acl/RolePermissionEntity.java | 2 +-
.../org/apache/cloudstack/acl/RoleService.java | 21 +
.../main/java/org/apache/cloudstack/acl/Rule.java | 6 +-
.../apikeypair/ApiKeyPair.java} | 35 +-
.../acl/apikeypair/ApiKeyPairPermission.java} | 6 +-
.../acl/apikeypair/ApiKeyPairService.java | 10 +-
.../cloudstack/affinity/AffinityGroupService.java | 1 -
.../cloudstack/affinity/AffinityProcessorBase.java | 3 +
.../org/apache/cloudstack/api/ApiConstants.java | 19 +-
.../apache/cloudstack/api/ApiServerService.java | 2 +
.../org/apache/cloudstack/api/BaseAsyncCmd.java | 1 +
.../java/org/apache/cloudstack/api/BaseCmd.java | 3 +
.../apache/cloudstack/api/ResponseGenerator.java | 8 +
...fferingCmd.java => CloneBackupOfferingCmd.java} | 87 +-
.../admin/backup/ImportBackupOfferingCmd.java | 5 +-
.../admin/network/CloneNetworkOfferingCmd.java | 113 ++
.../admin/network/CreateNetworkOfferingCmd.java | 460 +------
.../admin/network/CreatePhysicalNetworkCmd.java | 2 +-
...fferingCmd.java => NetworkOfferingBaseCmd.java} | 109 +-
...kOfferingCmd.java => CloneDiskOfferingCmd.java} | 42 +-
.../admin/offering/CloneServiceOfferingCmd.java | 65 +-
.../command/admin/storage/AddImageStoreS3CMD.java | 6 +-
.../api/command/admin/user/DeleteUserKeysCmd.java | 81 ++
.../api/command/admin/user/GetUserKeysCmd.java | 36 +-
.../command/admin/user/ListUserKeyRulesCmd.java | 68 +
.../api/command/admin/user/ListUserKeysCmd.java | 101 ++
.../api/command/admin/user/RegisterUserKeyCmd.java | 93 --
.../command/admin/user/RegisterUserKeysCmd.java | 209 +++
.../api/command/admin/user/UpdateUserCmd.java | 12 +-
.../api/command/admin/vpc/CloneVPCOfferingCmd.java | 109 ++
.../command/admin/vpc/CreateVPCOfferingCmd.java | 15 +-
.../user/firewall/CreatePortForwardingRuleCmd.java | 9 +-
.../loadbalancer/AssignToLoadBalancerRuleCmd.java | 28 +-
.../api/response/ApiKeyPairResponse.java | 285 ++++
.../api/response/FirewallRuleResponse.java | 8 +
.../cloudstack/api/response/UserResponse.java | 4 +-
.../api/response/VpcOfferingResponse.java | 12 +
.../cloudstack/api/response/VpcResponse.java | 8 +
.../apache/cloudstack/backup/BackupManager.java | 7 +
.../org/apache/cloudstack/query/QueryService.java | 2 +
.../java/org/apache/cloudstack/acl/RuleTest.java | 141 +-
.../admin/backup/CloneBackupOfferingCmdTest.java | 301 +++++
.../admin/network/CloneNetworkOfferingCmdTest.java | 324 +++++
.../offering/CloneServiceOfferingCmdTest.java | 669 ++++++++++
.../command/admin/vpc/CloneVpcOfferingCmdTest.java | 299 +++++
.../java/com/cloud/network/IpAddressManager.java | 2 +
.../network/lb/LoadBalancingRulesManager.java | 2 +-
.../java/com/cloud/network/vpc/VpcManager.java | 5 +
.../java/com/cloud/network/vpc/VpcOfferingVO.java | 12 +
.../com/cloud/upgrade/dao/Upgrade410to420.java | 2 +-
.../main/java/com/cloud/user/UserAccountVO.java | 26 -
.../src/main/java/com/cloud/user/UserVO.java | 30 -
.../java/com/cloud/user/dao/UserAccountDao.java | 2 -
.../com/cloud/user/dao/UserAccountDaoImpl.java | 17 -
.../src/main/java/com/cloud/user/dao/UserDao.java | 7 -
.../main/java/com/cloud/user/dao/UserDaoImpl.java | 11 -
.../java/com/cloud/vm/dao/VMInstanceDaoImpl.java | 7 +-
...rmissionVO.java => ApiKeyPairPermissionVO.java} | 34 +-
.../org/apache/cloudstack/acl/ApiKeyPairVO.java | 244 ++++
.../cloudstack/acl/RolePermissionBaseVO.java | 6 +
.../{ProjectRoleDao.java => ApiKeyPairDao.java} | 21 +-
.../cloudstack/acl/dao/ApiKeyPairDaoImpl.java | 92 ++
...tRoleDao.java => ApiKeyPairPermissionsDao.java} | 13 +-
.../acl/dao/ApiKeyPairPermissionsDaoImpl.java | 71 +
.../datastore/db/ImageStoreDetailsDaoImpl.java | 2 +-
.../spring-engine-schema-core-daos-context.xml | 2 +
.../resources/META-INF/db/schema-42210to42300.sql | 65 +
.../META-INF/db/views/cloud.user_view.sql | 2 -
.../META-INF/db/views/cloud.vpc_offering_view.sql | 1 +
.../motion/StorageSystemDataMotionStrategy.java | 3 +-
.../storage/image/datastore/ImageStoreHelper.java | 2 +-
.../cloudstack/framework/config/ConfigKey.java | 8 +
.../acl/DynamicRoleBasedAPIAccessChecker.java | 69 +-
.../acl/DynamicRoleBasedAPIAccessCheckerTest.java | 66 +
.../acl/ProjectRoleBasedApiAccessChecker.java | 10 +-
.../acl/StaticRoleBasedAPIAccessChecker.java | 14 +-
plugins/api/discovery/pom.xml | 6 +
.../api/command/user/discovery/ListApisCmd.java | 2 +-
.../cloudstack/discovery/ApiDiscoveryService.java | 3 +-
.../discovery/ApiDiscoveryServiceImpl.java | 62 +-
.../cloudstack/discovery/ApiDiscoveryTest.java | 14 +-
.../ratelimit/ApiRateLimitServiceImpl.java | 14 +-
.../api/response/QuotaResponseBuilderImpl.java | 2 +-
.../api/response/QuotaResponseBuilderImplTest.java | 6 +-
.../manager/BaremetalVlanManagerImpl.java | 5 +-
.../kvm/resource/LibvirtComputingResource.java | 14 +-
.../LibvirtConvertInstanceCommandWrapper.java | 9 +-
.../kvm/storage/ScaleIOStorageAdaptorTest.java | 7 +-
.../kvm/storage/ScaleIOStoragePoolTest.java | 13 +-
.../KubernetesClusterAffinityGroupMapVO.java | 44 +-
.../cluster/KubernetesClusterEventTypes.java | 1 +
.../cluster/KubernetesClusterManagerImpl.java | 301 ++++-
.../cluster/KubernetesClusterService.java | 3 +
.../cluster/KubernetesServiceHelperImpl.java | 102 ++
.../KubernetesClusterActionWorker.java | 85 ++
.../KubernetesClusterDestroyWorker.java | 1 +
...ernetesClusterResourceModifierActionWorker.java | 75 +-
.../KubernetesClusterScaleWorker.java | 49 +-
.../KubernetesClusterStartWorker.java | 24 +-
...a => KubernetesClusterAffinityGroupMapDao.java} | 11 +-
.../KubernetesClusterAffinityGroupMapDaoImpl.java | 72 +
.../cluster/CreateKubernetesClusterCmd.java | 17 +-
.../cluster/ScaleKubernetesClusterCmd.java | 4 +-
...> UpdateKubernetesClusterAffinityGroupCmd.java} | 61 +-
.../api/response/KubernetesClusterResponse.java | 48 +
.../spring-kubernetes-service-context.xml | 1 +
.../KubernetesClusterAffinityGroupMapVOTest.java | 87 ++
.../cluster/KubernetesClusterHelperImplTest.java | 145 --
.../cluster/KubernetesClusterManagerImplTest.java | 473 +++++++
.../cluster/KubernetesServiceHelperImplTest.java | 316 +++++
.../KubernetesClusterActionWorkerTest.java | 99 ++
.../cloud/network/lb/LoadBalanceRuleHandler.java | 2 +-
.../contrail/management/ContrailManagerImpl.java | 2 +-
.../contrail/management/MockAccountManager.java | 73 +-
.../tungsten/service/TungstenServiceImpl.java | 9 +-
.../tungsten/service/TungstenElementTest.java | 5 +
.../datastore/driver/S3ImageStoreDriverImpl.java | 2 +-
.../client/ScaleIOGatewayClientConnectionPool.java | 89 +-
.../datastore/client/ScaleIOGatewayClientImpl.java | 22 +-
.../driver/ScaleIOPrimaryDataStoreDriver.java | 10 +-
.../datastore/manager/ScaleIOSDCManagerImpl.java | 32 +-
.../storage/datastore/util/ScaleIOUtil.java | 35 +-
.../client/ScaleIOGatewayClientImplTest.java | 21 +-
.../api/command/OauthLoginAPIAuthenticatorCmd.java | 8 +-
.../command/OauthLoginAPIAuthenticatorCmdTest.java | 19 +
server/src/main/java/com/cloud/api/ApiDBUtils.java | 17 +-
.../main/java/com/cloud/api/ApiResponseHelper.java | 97 +-
server/src/main/java/com/cloud/api/ApiServer.java | 73 +-
server/src/main/java/com/cloud/api/ApiServlet.java | 4 +-
.../api/auth/DefaultLoginAPIAuthenticatorCmd.java | 9 +-
.../java/com/cloud/api/query/QueryManagerImpl.java | 48 +-
.../cloud/api/query/dao/UserAccountJoinDao.java | 3 +-
.../api/query/dao/UserAccountJoinDaoImpl.java | 12 +-
.../api/query/dao/VpcOfferingJoinDaoImpl.java | 1 +
.../com/cloud/api/query/vo/UserAccountJoinVO.java | 16 -
.../com/cloud/api/query/vo/VpcOfferingJoinVO.java | 8 +
.../configuration/ConfigurationManagerImpl.java | 886 ++++++++++++-
.../com/cloud/network/IpAddressManagerImpl.java | 41 +-
.../java/com/cloud/network/NetworkServiceImpl.java | 16 +-
.../com/cloud/network/as/AutoScaleManagerImpl.java | 16 +-
.../network/firewall/FirewallManagerImpl.java | 27 +-
.../network/lb/LoadBalancingRulesManagerImpl.java | 126 +-
.../router/VirtualNetworkApplianceManagerImpl.java | 12 +-
.../java/com/cloud/network/vpc/VpcManagerImpl.java | 388 +++++-
.../com/cloud/server/ManagementServerImpl.java | 28 +-
.../com/cloud/servlet/ConsoleProxyServlet.java | 16 +-
.../main/java/com/cloud/user/AccountManager.java | 10 +-
.../java/com/cloud/user/AccountManagerImpl.java | 507 +++++--
.../main/java/com/cloud/vm/UserVmManagerImpl.java | 13 +-
.../cloudstack/acl/ApiKeyPairManagerImpl.java | 87 ++
.../org/apache/cloudstack/acl/RoleManagerImpl.java | 104 +-
.../affinity/AffinityGroupServiceImpl.java | 11 +
.../cloudstack/backup/BackupManagerImpl.java | 75 +-
.../core/spring-server-core-managers-context.xml | 6 +-
.../ConfigurationManagerCloneIntegrationTest.java | 1054 +++++++++++++++
.../ConfigurationManagerImplTest.java | 240 +++-
.../cloud/network/as/AutoScaleManagerImplTest.java | 46 +-
.../network/firewall/FirewallManagerTest.java | 98 +-
.../cloud/network/lb/AssignLoadBalancerTest.java | 18 +-
.../lb/LoadBalancingRulesManagerImplTest.java | 52 +
.../com/cloud/network/vpc/VpcManagerImplTest.java | 23 +
.../com/cloud/user/AccountManagerImplTest.java | 467 ++++++-
.../java/com/cloud/vm/UserVmManagerImplTest.java | 20 +-
.../cloud/vpc/MockConfigurationManagerImpl.java | 25 +-
.../java/com/cloud/vpc/MockNetworkManagerImpl.java | 5 +
.../apache/cloudstack/acl/RoleManagerImplTest.java | 56 +-
.../cloudstack/backup/BackupManagerTest.java | 107 ++
.../test_kubernetes_cluster_affinity_groups.py | 931 +++++++++++++
test/integration/smoke/test_accounts.py | 2 +-
.../integration/smoke/test_domain_vpc_offerings.py | 167 ++-
test/integration/smoke/test_vpc_conserve_mode.py | 314 +++++
tools/marvin/marvin/cloudstackTestClient.py | 33 +-
tools/marvin/marvin/lib/base.py | 3 +
ui/README.md | 1 -
ui/public/config.json | 1 +
ui/public/locales/en.json | 21 +
ui/src/components/CheckBoxSelectPair.vue | 7 +
ui/src/components/offering/ComputeOfferingForm.vue | 812 ++++++++++++
ui/src/components/offering/DiskOfferingForm.vue | 507 +++++++
ui/src/composables/useServiceCapabilityParams.js | 153 +++
ui/src/config/section/compute.js | 23 +-
ui/src/config/section/network.js | 6 +-
ui/src/config/section/offering.js | 51 +-
.../compute/ChangeKubernetesClusterAffinity.vue | 200 +++
ui/src/views/compute/CreateAffinityGroup.vue | 173 +++
ui/src/views/compute/CreateKubernetesCluster.vue | 155 ++-
ui/src/views/network/LoadBalancing.vue | 36 +-
ui/src/views/network/PortForwarding.vue | 42 +-
ui/src/views/network/PublicIpResource.vue | 28 +-
ui/src/views/offering/AddComputeOffering.vue | 812 +-----------
ui/src/views/offering/AddDiskOffering.vue | 492 +------
ui/src/views/offering/AddNetworkOffering.vue | 95 +-
ui/src/views/offering/AddVpcOffering.vue | 44 +-
ui/src/views/offering/CloneBackupOffering.vue | 432 ++++++
ui/src/views/offering/CloneComputeOffering.vue | 674 ++++++++++
ui/src/views/offering/CloneDiskOffering.vue | 279 ++++
...etworkOffering.vue => CloneNetworkOffering.vue} | 1391 +++++++++++---------
.../{AddVpcOffering.vue => CloneVpcOffering.vue} | 608 +++++----
.../main/java/com/cloud/utils/script/Script.java | 20 +-
214 files changed, 16525 insertions(+), 4160 deletions(-)
copy api/src/main/java/{org/apache/cloudstack/acl/InfrastructureEntity.java =>
com/cloud/user/ApiKeyPairState.java} (90%)
copy api/src/main/java/org/apache/cloudstack/{gui/theme/GuiThemeJoin.java =>
acl/apikeypair/ApiKeyPair.java} (72%)
copy api/src/main/java/{com/cloud/deploy/HAPlanner.java =>
org/apache/cloudstack/acl/apikeypair/ApiKeyPairPermission.java} (80%)
copy
engine/schema/src/main/java/org/apache/cloudstack/region/PortableIpRangeDao.java
=>
api/src/main/java/org/apache/cloudstack/acl/apikeypair/ApiKeyPairService.java
(76%)
copy
api/src/main/java/org/apache/cloudstack/api/command/admin/backup/{ImportBackupOfferingCmd.java
=> CloneBackupOfferingCmd.java} (63%)
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/network/CloneNetworkOfferingCmd.java
copy
api/src/main/java/org/apache/cloudstack/api/command/admin/network/{CreateNetworkOfferingCmd.java
=> NetworkOfferingBaseCmd.java} (88%)
copy
api/src/main/java/org/apache/cloudstack/api/command/admin/offering/{DeleteDiskOfferingCmd.java
=> CloneDiskOfferingCmd.java} (60%)
copy
plugins/network-elements/netris/src/main/java/org/apache/cloudstack/api/command/DeleteNetrisProviderCmd.java
=>
api/src/main/java/org/apache/cloudstack/api/command/admin/offering/CloneServiceOfferingCmd.java
(53%)
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/user/DeleteUserKeysCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/user/ListUserKeyRulesCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/user/ListUserKeysCmd.java
delete mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/user/RegisterUserKeyCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/user/RegisterUserKeysCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/command/admin/vpc/CloneVPCOfferingCmd.java
create mode 100644
api/src/main/java/org/apache/cloudstack/api/response/ApiKeyPairResponse.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/backup/CloneBackupOfferingCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/network/CloneNetworkOfferingCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/offering/CloneServiceOfferingCmdTest.java
create mode 100644
api/src/test/java/org/apache/cloudstack/api/command/admin/vpc/CloneVpcOfferingCmdTest.java
copy
engine/schema/src/main/java/org/apache/cloudstack/acl/{RolePermissionVO.java =>
ApiKeyPairPermissionVO.java} (61%)
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/acl/ApiKeyPairVO.java
copy
engine/schema/src/main/java/org/apache/cloudstack/acl/dao/{ProjectRoleDao.java
=> ApiKeyPairDao.java} (59%)
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/acl/dao/ApiKeyPairDaoImpl.java
copy
engine/schema/src/main/java/org/apache/cloudstack/acl/dao/{ProjectRoleDao.java
=> ApiKeyPairPermissionsDao.java} (74%)
create mode 100644
engine/schema/src/main/java/org/apache/cloudstack/acl/dao/ApiKeyPairPermissionsDaoImpl.java
copy
engine/schema/src/main/java/org/apache/cloudstack/affinity/AffinityGroupVMMapVO.java
=>
plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/KubernetesClusterAffinityGroupMapVO.java
(61%)
copy
plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/dao/{KubernetesClusterDetailsDao.java
=> KubernetesClusterAffinityGroupMapDao.java} (66%)
create mode 100644
plugins/integrations/kubernetes-service/src/main/java/com/cloud/kubernetes/cluster/dao/KubernetesClusterAffinityGroupMapDaoImpl.java
copy
plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/{UpgradeKubernetesClusterCmd.java
=> UpdateKubernetesClusterAffinityGroupCmd.java} (66%)
create mode 100644
plugins/integrations/kubernetes-service/src/test/java/com/cloud/kubernetes/cluster/KubernetesClusterAffinityGroupMapVOTest.java
delete mode 100644
plugins/integrations/kubernetes-service/src/test/java/com/cloud/kubernetes/cluster/KubernetesClusterHelperImplTest.java
create mode 100644
server/src/main/java/org/apache/cloudstack/acl/ApiKeyPairManagerImpl.java
create mode 100644
server/src/test/java/com/cloud/configuration/ConfigurationManagerCloneIntegrationTest.java
create mode 100644
test/integration/component/test_kubernetes_cluster_affinity_groups.py
create mode 100644 test/integration/smoke/test_vpc_conserve_mode.py
create mode 100644 ui/src/components/offering/ComputeOfferingForm.vue
create mode 100644 ui/src/components/offering/DiskOfferingForm.vue
create mode 100644 ui/src/composables/useServiceCapabilityParams.js
create mode 100644 ui/src/views/compute/ChangeKubernetesClusterAffinity.vue
create mode 100644 ui/src/views/compute/CreateAffinityGroup.vue
create mode 100644 ui/src/views/offering/CloneBackupOffering.vue
create mode 100644 ui/src/views/offering/CloneComputeOffering.vue
create mode 100644 ui/src/views/offering/CloneDiskOffering.vue
copy ui/src/views/offering/{AddNetworkOffering.vue =>
CloneNetworkOffering.vue} (56%)
copy ui/src/views/offering/{AddVpcOffering.vue => CloneVpcOffering.vue} (59%)