-
Notifications
You must be signed in to change notification settings - Fork 1.2k
api,server,ui: improve listing public ip for associate #11591
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Currently, acquire or associate IP action in the UI will load only 500 addresses. ALso, it will load all 500 of them together. This PR uses InfiniteScrollSelect to iteratively load more addresses. To facilitate retrieving both Free and Reserved addresses api and server change has been made for the listPublicIpAddresses API to pass a comma-separated list of states for state parameter. Signed-off-by: Abhishek Kumar <[email protected]>
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #11591 +/- ##
=========================================
Coverage 17.36% 17.36%
- Complexity 15235 15245 +10
=========================================
Files 5888 5888
Lines 525740 525835 +95
Branches 64164 64183 +19
=========================================
+ Hits 91272 91302 +30
- Misses 424168 424227 +59
- Partials 10300 10306 +6
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
@blueorangutan package |
@shwstppr a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 14878 |
@blueorangutan test keepEnv |
@DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests |
server/src/main/java/com/cloud/server/ManagementServerImpl.java
Outdated
Show resolved
Hide resolved
Signed-off-by: Abhishek Kumar <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request enhances the public IP address listing functionality in CloudStack by enabling iterative loading through infinite scroll and supporting multiple states. The primary improvement is in the UI's IP acquisition/association interface, which previously loaded only 500 addresses synchronously.
Key changes include:
- Modified listPublicIpAddresses API to accept comma-separated states parameter
- Replaced static select component with infinite scroll select in UI
- Updated server-side filtering to handle multiple states
- Enhanced test coverage for new multi-state functionality
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
ui/src/views/network/IpAddressesTab.vue | Replaces static select with InfiniteScrollSelect component and removes manual IP loading logic |
ui/src/components/widgets/InfiniteScrollSelect.vue | Adds support for custom label functions and auto-selection of first option |
server/src/main/java/com/cloud/server/ManagementServerImpl.java | Implements comma-separated state parameter parsing and multi-state filtering |
api/src/main/java/org/apache/cloudstack/api/command/user/address/ListPublicIpAddressesCmd.java | Updates API documentation to reflect comma-separated state support |
server/src/test/java/com/cloud/server/ManagementServerImplTest.java | Updates test methods to accommodate new multi-state parameter structure |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Signed-off-by: Abhishek Kumar <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
code LGTM
@blueorangutan package |
@harikrishna-patnala a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✔️ suse15. SL-JID 14949 |
Description
Currently, acquire or associate IP action in the UI will load only 500 addresses (or whatever defined by config
default.page.size
). Also, it will load all 500 of them together. This PR uses InfiniteScrollSelect to iteratively load more addresses. To facilitate retrieving both Free and Reserved addresses api and server change has been made for the listPublicIpAddresses API to pass a comma-separated list of states for state parameter.Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?