This is an automated email from the ASF dual-hosted git repository.
sureshanaparti pushed a commit to branch 4.19
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/4.19 by this push:
new 7506a547afc kvm, ui: fix interface when using vlan subnet for storage
traffic type (#11245)
7506a547afc is described below
commit 7506a547afc9079dc08853138d399c716d791cf8
Author: Abhishek Kumar <[email protected]>
AuthorDate: Wed Jul 30 11:04:58 2025 +0530
kvm, ui: fix interface when using vlan subnet for storage traffic type
(#11245)
* kvm, ui: fix interface when using vlan subnet for storage traffic type
Fixes #7816
Signed-off-by: Abhishek Kumar <[email protected]>
---
.../java/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java | 9 +++++++++
ui/src/views/infra/network/IpRangesTabStorage.vue | 2 +-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git
a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java
b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java
index 39ecc9182f0..67f093a933a 100644
---
a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java
+++
b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java
@@ -252,6 +252,15 @@ public class BridgeVifDriver extends VifDriverBase {
intf.defBridgeNet(_bridges.get("private"), null, nic.getMac(),
getGuestNicModel(guestOsType, nicAdapter));
} else if (nic.getType() == Networks.TrafficType.Storage) {
String storageBrName = nic.getName() == null ?
_bridges.get("private") : nic.getName();
+ if (nic.getBroadcastType() ==
Networks.BroadcastDomainType.Storage) {
+ vNetId =
Networks.BroadcastDomainType.getValue(nic.getBroadcastUri());
+ protocol = Networks.BroadcastDomainType.Vlan.scheme();
+ }
+ if (isValidProtocolAndVnetId(vNetId, protocol)) {
+ s_logger.debug(String.format("creating a vNet dev and bridge
for %s traffic per traffic label %s",
+ Networks.TrafficType.Storage.name(), trafficLabel));
+ storageBrName = createVnetBr(vNetId, storageBrName, protocol);
+ }
intf.defBridgeNet(storageBrName, null, nic.getMac(),
getGuestNicModel(guestOsType, nicAdapter));
}
if (nic.getPxeDisable()) {
diff --git a/ui/src/views/infra/network/IpRangesTabStorage.vue
b/ui/src/views/infra/network/IpRangesTabStorage.vue
index c8665d6d9b5..881f9ceadea 100644
--- a/ui/src/views/infra/network/IpRangesTabStorage.vue
+++ b/ui/src/views/infra/network/IpRangesTabStorage.vue
@@ -166,7 +166,7 @@ export default {
},
{
title: this.$t('label.vlan'),
- dataIndex: 'vlanid'
+ dataIndex: 'vlan'
},
{
title: this.$t('label.startip'),