Hi all,
We've been experimenting with Netbox as a replacement for our current equipment database, and it's looking very promising. The devices in our lab present some interesting situations that we're still debating how best to handle, so I thought I would raise them here to see if any of our proposed changes are things that you would be interested in pulling upstream. I'll start with the small one. Feel free to break them apart if some seem doable and others do not. :)
The first addition we would like to make is to add an index/weight field to device bays. Our boxes have blades that are intended to be installed in specific slots, so ordering them alphabetically (or with natsort) isn't ideal. Being able to select whether bays are sorted ascending or descending based on this field would be a bonus. This would be defined on the device type and editable on individual devices, like other fields.
The second is a bit (a lot) larger. We have a number of devices which are composed of blades, but for which it makes sense to treat the set of chassis + blades as the entire device. To achieve this, we would like to modify the UI to pull interfaces, (and IP addresses, etc), from the children through to the parent device detail page. This way, when boxes are modified by moving blades around, the interfaces do not have to be manually removed and redefined on the chassis, but instead belong to the blade as in reality.
We're aware that this isn't currently the intent of child devices in the Netbox model, as stated in some other threads here ("Is it possible to enter a child device without device name?"), but we think it would be a worthwhile addition and could encompass some of the other existing suggestions/issues. For example, #373 on being able to group interfaces based on line card would be solved by just having the interfaces belong to the line card.
There are other similar changes that could be made to the API, but these are not as necessary, as our automation can be made to do any sort of rearranging that is necessary to achieve the same effect.
I have been prototyping some of these changes to see how feasible it would be. It's clear that it's a fairly large change, which is why I wanted to bring it to the list now to see if this is something you are even interested in doing. The other option is of course to just treat these blades as modules and place the interfaces on the chassis, but it would be nice to be able to more closely reflect reality, and it would solve many of the scalability issues we have with our current system.
I've included a screenshot of what I've built out so far, with interfaces being categorized and pulled only from children defined as having network interfaces. I've hidden the options to modify these interfaces, instead requiring the user to visit the page for blade to change them. This reflects the essentially static nature of the blades.

Thanks for your time and all your work on this project, Netbox is already proving to be a major improvement for us.
Bill Doyle
QA Engineer
Arbor Networks