CCI-MOC / esi

Elastic Secure Infrastructure project
6 stars 12 forks source link

Allow tenant users to search offers and their leased nodes #574

Closed tzumainn closed 1 month ago

tzumainn commented 1 month ago

Tenant users should be able to filter offers by node properties, and their leased nodes by node properties. Node properties themselves are filterable at the CLI level by code such as https://github.com/CCI-MOC/python-esileapclient/blob/master/esileapclient/osc/v1/lease.py#L197; should this be moved into the sdk?

We should also allow filtering by resource_class; should all of this be combined into one search box?

ajamias commented 1 month ago

Will node properties be a set key-value relationship? Or can keys store an object, which might have subproperties?

ajamias commented 1 month ago

The way the searching works as of right now is a client side string matching of properties. The simplest way that I can think of without implementing anything new or complex is to perform a category search with a general search. Meaning, click the properties button in the search bar to search for a specific key in every node's property, and then type out what specific thing you need from that key. For example: Properties: cpu_arch x86_64. And I think filtering by resource_class already exists.

tzumainn commented 1 month ago

I think it's fine to start with general matching of properties and resource_class. Eventually we'll want to do property comparison - e.g., local_disk > 100gb - but that can be a more advanced iteration while we figure out how to put the client-side logic into some place a little more central.