Skip to content
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

Filtering by partition for Nodes collection does not work properly for IP%RouteDomain nodes #1559

Open
manuwelakanade opened this issue Sep 29, 2020 · 0 comments

Comments

@manuwelakanade
Copy link

manuwelakanade commented Sep 29, 2020

Verion Information
f5-sdk==3.0.21
f5-icontrol-rest==1.3.13

Setup

  1. A BIG-IP device with multiple partitions and nodes in it.
  2. There is a partition named Partition
  3. Created a route domain in that Partition named RouteDomain
  4. Make this route domain RouteDomain the default route domain for that partition Partition
  5. Create a node in that partition with IP NodeIP

Expected Behavior

  1. On querying the nodes collection using filtering option, the node address should be returned as NodeIP%RouteDomain
nodes = mgmt.tm.ltm.nodes.get_collection(requests_params={'params': '$filter=partition+eq+Partition'}))
for node in nodes:
    print(node.raw)

----> node.raw should display the address of the node as NodeIP%RouteDomain for example 192.168.10.10%1.

Actual Behavior

  1. The following f5-sdk collection is used along with filtering:
nodes = mgmt.tm.ltm.nodes.get_collection(requests_params={'params': '$filter=partition+eq+Partition'}))
for node in nodes:
    print(node.raw)

----> node.raw output of the node has the address NodeIP for example it displays 192.168.10.10. Whereas it should have actually displayed it as NodeIP%RouteDomain or 192.168.10.10%1. This is the issue.

  1. Although, if the get_collection call is used without any filter, then the raw output gives the correct expected output with %RouteDomain suffix
nodes = mgmt.tm.ltm.nodes.get_collection()
for node in nodes:
    print(node.raw)

----> Without filtering case, node.raw displays NodeIP%RouteDomain correctly. For ex. displays 192.168.10.10%1 with the route domain suffix and not just the IP.

Issue

  1. The node get_collection call does not work when filters are used as expected for the IP%RouteDomain nodes and does not display the node address correctly and gives the output as just the IP with the RD suffix. It works correctly when filtering is not used at all and gives the correct expected output as IP%RD.
  2. Important Note: Also a point to note is that this occurs only when the route domain has been made a default route domain for that partition. If it is not made the default for that partition, this issue is not observed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant