This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/cloudstack.git
commit 98f5663954199e6658530b544a394296ad223e1c Merge: 81e052cfebf 34d2a3bc86d Author: Daan Hoogland <d...@onecht.net> AuthorDate: Fri Jan 24 17:10:43 2025 +0100 Merge branch '4.20' agent/conf/agent.properties | 1 + .../cloud/agent/properties/AgentProperties.java | 1 + .../api/response/HostForMigrationResponse.java | 447 +-------------------- .../com/cloud/agent/manager/AgentManagerImpl.java | 38 +- packaging/el8/cloud.spec | 5 +- .../kvm/resource/LibvirtComputingResource.java | 19 +- .../hypervisor/kvm/resource/LibvirtVMDef.java | 6 +- .../LibvirtDeleteStoragePoolCommandWrapper.java | 60 ++- .../kvm/resource/LibvirtComputingResourceTest.java | 5 +- .../hypervisor/kvm/resource/LibvirtVMDefTest.java | 11 + .../cluster/KubernetesClusterManagerImpl.java | 2 +- .../com/cloud/api/query/dao/HostJoinDaoImpl.java | 122 +----- .../java/com/cloud/storage/StorageManagerImpl.java | 16 +- ui/public/locales/en.json | 2 + ui/src/components/view/ListView.vue | 7 + ui/src/components/view/SearchView.vue | 46 +-- ui/src/components/widgets/Status.vue | 2 + ui/src/config/section/network.js | 125 +----- ui/src/views/AutogenView.vue | 3 + ui/src/views/dashboard/CapacityDashboard.vue | 29 +- ui/src/views/network/AclListRulesTab.vue | 2 +- ui/src/views/network/VpcTiersTab.vue | 2 +- 22 files changed, 205 insertions(+), 746 deletions(-) diff --cc ui/src/components/view/SearchView.vue index a32a0d1ecb5,3bd7ad5ef68..dc0a1280b96 --- a/ui/src/components/view/SearchView.vue +++ b/ui/src/components/view/SearchView.vue @@@ -304,10 -311,12 +311,10 @@@ export default if (item === 'isencrypted' && !('listVolumes' in this.$store.getters.apis)) { return true } - if (item === 'displaynetwork' && this.$store.getters.userInfo.roletype !== 'Admin') { - return true - } if (['zoneid', 'domainid', 'imagestoreid', 'storageid', 'state', 'account', 'hypervisor', 'level', 'clusterid', 'podid', 'groupid', 'entitytype', 'accounttype', 'systemvmtype', 'scope', 'provider', - 'type', 'scope', 'managementserverid', 'serviceofferingid', 'diskofferingid', 'networkid', 'usagetype', 'restartrequired', 'displaynetwork'].includes(item) + 'type', 'scope', 'managementserverid', 'serviceofferingid', 'diskofferingid', 'networkid', - 'usagetype', 'restartrequired', 'guestiptype', 'usersource'].includes(item) ++ 'usagetype', 'restartrequired', 'displaynetwork', 'guestiptype', 'usersource'].includes(item) ) { type = 'list' } else if (item === 'tags') { @@@ -329,9 -338,15 +336,15 @@@ return arrayField }, fetchStaticFieldData (arrayField) { + if (arrayField.includes('displaynetwork')) { + const typeIndex = this.fields.findIndex(item => item.name === 'displaynetwork') + this.fields[typeIndex].loading = true + this.fields[typeIndex].opts = this.fetchBoolean() + this.fields[typeIndex].loading = false + } - if (arrayField.includes('type')) { - if (this.$route.path === '/guestnetwork' || this.$route.path.includes('/guestnetwork/')) { - const typeIndex = this.fields.findIndex(item => item.name === 'type') + if (arrayField.includes('type') || arrayField.includes('guestiptype')) { + if (this.$route.path.includes('/guestnetwork') || this.$route.path.includes('/networkoffering')) { + const typeIndex = this.fields.findIndex(item => ['type', 'guestiptype'].includes(item.name)) this.fields[typeIndex].loading = true this.fields[typeIndex].opts = this.fetchGuestNetworkTypes() this.fields[typeIndex].loading = false