xujiantop-crypto opened a new pull request, #14144:
URL: https://github.com/apache/cloudstack/pull/14144

   ### Description
   
   Fixes #14143.
   
   Creating a VPC private gateway with an explicit `vxlan://1005002` broadcast 
URI fails with `unsupported type of broadcastUri specified`, because 
`NetworkServiceImpl.createPrivateNetwork` only accepts VLAN and logical-switch 
URIs.
   
   Allow VXLAN URIs through the existing private-network creation flow. Also 
correct the broadcast domain type in `PrivateNetworkGuru.design`: the input 
from network orchestration may carry a VXLAN URI but a VLAN type, which would 
otherwise be persisted unchanged. The correction is limited to VXLAN so 
native/untagged, VLAN and logical-switch networks retain their existing type.
   
   The private-gateway NIC helper already carries the full URI and derives its 
broadcast type from the scheme. The KVM bridge driver already handles VXLAN. No 
schema or router-script change is required for these two defects.
   
   ### Types of changes
   
   - [ ] Breaking change (fix or feature that would cause existing 
functionality to change)
   - [ ] New feature (non-breaking change which adds functionality)
   - [x] Bug fix (non-breaking change which fixes an issue)
   - [ ] Enhancement (improves an existing feature and functionality)
   - [ ] Cleanup (Code refactoring and cleanup, that may add test cases)
   - [ ] Build/CI
   - [ ] Test (unit or integration test code)
   
   ### Feature/Enhancement Scale or Bug Severity
   
   #### Bug Severity
   
   - [ ] BLOCKER
   - [ ] Critical
   - [x] Major
   - [ ] Minor
   - [ ] Trivial
   
   ### How Has This Been Tested?
   
   - Before the fix, 7 tests ran: the new API test failed with 
`InvalidParameterValueException: unsupported type of broadcastUri specified: 
vxlan://1005002`, and the VXLAN design case failed with `expected:<Vxlan> but 
was:<Vlan>`. The other 5 cases passed.
   - After the fix, all 7 tests in `CreatePrivateNetworkTest` and 
`PrivateNetworkGuruTest` pass, with no failures, errors or skipped tests.
   - All 25 selected Maven reactor modules succeed on JDK 11, with 0 Checkstyle 
violations. `git diff --check` also passes.
   
   This PR targets `4.22` following the contribution guide's release-branch 
policy for bug fixes.
   
   The official system-VM checksum file was downloaded to 
`engine/schema/dist/systemvm-templates/sha512sum.txt` before running Maven. The 
local Maven download plugin cannot retrieve that URL, so only its redundant 
download is skipped; no build-configuration changes are included.
   
   ```sh
   mvn -B -pl server -am -Dtest=CreatePrivateNetworkTest,PrivateNetworkGuruTest 
-Dsurefire.failIfNoSpecifiedTests=false -Ddownload.plugin.skip=true test
   ```
   
   #### How did you try to break this feature and the system with this change?
   
   The API regression exercises a VNI above the VLAN tag range and checks that 
the full VXLAN URI reaches network orchestration. Existing tests retain 
rejection of unknown and unsupported URI schemes. The guru tests check VXLAN 
correction, tagged VLAN, native/untagged, logical-switch and absent-URI cases, 
including the resulting network state, CIDR and gateway.
   
   The full KVM/VPC scenario has not been run locally. For environment 
validation, create a private gateway using an explicit VXLAN URI on a VXLAN 
physical network with a suitable non-overlapping VNI; confirm creation 
succeeds, the network's broadcast URI/type agree, and the router NIC attaches 
to the corresponding VXLAN bridge.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to