Rack types #6788

Closed
opened 2025-12-29 19:45:23 +01:00 by adam · 7 comments
Owner

Originally created by @jose-pr on GitHub (Aug 9, 2022).

NetBox version

V3.2.7

Feature type

Data model extension

Proposed functionality

A base object type which includes manufacturer, model and any other fields which are can be attributed with a physical device to be used for physical devices. Current devices and racks should be based on this type.

The rack type should also include height, width, depth and the other rack fields.

Use case

Be able to accurately represent the racks and reuse their configuration when building a site.

Database changes

No response

External dependencies

No response

Originally created by @jose-pr on GitHub (Aug 9, 2022). ### NetBox version V3.2.7 ### Feature type Data model extension ### Proposed functionality A base object type which includes manufacturer, model and any other fields which are can be attributed with a physical device to be used for physical devices. Current devices and racks should be based on this type. The rack type should also include height, width, depth and the other rack fields. ### Use case Be able to accurately represent the racks and reuse their configuration when building a site. ### Database changes _No response_ ### External dependencies _No response_
adam added the type: featurepending closurestatus: under review labels 2025-12-29 19:45:23 +01:00
adam closed this issue 2025-12-29 19:45:23 +01:00
Author
Owner

@jeremystretch commented on GitHub (Aug 10, 2022):

Be able to accurately represent the racks and reuse their configuration when building a site.

This is already possible. Please detail your specific use case.

The rack type should also include height, width, depth and the other rack fields.

This would imply removing all of these fields from the rack model, which would be a rather large breaking change. What would be gained from doing so?

@jeremystretch commented on GitHub (Aug 10, 2022): > Be able to accurately represent the racks and reuse their configuration when building a site. This is already possible. Please detail your specific use case. > The rack type should also include height, width, depth and the other rack fields. This would imply removing all of these fields from the rack model, which would be a rather large breaking change. What would be gained from doing so?
Author
Owner

@jose-pr commented on GitHub (Aug 11, 2022):

Similiar to https://github.com/netbox-community/netbox/issues/3400 i am interested in at least having Manufacturer, model. Recorded for each rack, and seeing as model of a rack will always have the same dimensions, why the need to store this information per each rack instead of just storing a reference to the type/model.

Then there could be a section in https://github.com/netbox-community/devicetype-library for a rack type.

@jose-pr commented on GitHub (Aug 11, 2022): Similiar to https://github.com/netbox-community/netbox/issues/3400 i am interested in at least having Manufacturer, model. Recorded for each rack, and seeing as model of a rack will always have the same dimensions, why the need to store this information per each rack instead of just storing a reference to the type/model. Then there could be a section in https://github.com/netbox-community/devicetype-library for a rack type.
Author
Owner

@sw8899 commented on GitHub (Aug 15, 2022):

I would also welcome a Rack Types library. All reasons that speak for a Device/Module Types library also apply to a Rack Types library. It is only a question of the focus of work (Network vs. Datacenter Infrastructure) whether one needs the one or the other library more.

@sw8899 commented on GitHub (Aug 15, 2022): I would also welcome a Rack Types library. All reasons that speak for a Device/Module Types library also apply to a Rack Types library. It is only a question of the focus of work (Network vs. Datacenter Infrastructure) whether one needs the one or the other library more.
Author
Owner

@postilion commented on GitHub (Nov 10, 2022):

I agree that a rack type library would be a nice thing to have. We have a couple of applications, for example, using either open-frame metal shelving (a/k/a Baker's Rack) or even "IT Workstations" or "Tech Benches" like these photos show.
tech-bench
kh5000-3-200-72
Although this may well lead directly to data-model hell, given how unstructured these are, compared to a normal rack.

Thanks for considering,
-nic

@postilion commented on GitHub (Nov 10, 2022): I agree that a rack type library would be a nice thing to have. We have a couple of applications, for example, using either open-frame metal shelving (a/k/a Baker's Rack) or even "IT Workstations" or "Tech Benches" like these photos show. ![tech-bench](https://user-images.githubusercontent.com/4181980/201147378-569cc2b4-6e38-4070-b8df-438a02efd9af.jpg) ![kh5000-3-200-72](https://user-images.githubusercontent.com/4181980/201147407-53b7f402-a911-470a-b1f5-abef8ee16a4d.jpg) Although this may well lead directly to data-model hell, given how unstructured these are, compared to a normal rack. Thanks for considering, -nic
Author
Owner

@ziggekatten commented on GitHub (Nov 10, 2022):

My two cents:

  • define how you would like to model your setup using built in features of netbox using the GUI. If it is possible to model in netbox according to your business, take onto next point

  • automate it using API and/or Custom Scripts.

If it's possible to define your setup using the features in netbox, there is in my view no need to mess with it. Using the API and/or Custom Scripts is the natural way to adapt the platform to specific needs.

One thing to consider (my personal view) is to keep netbox as generic as possible, so we don't get into maintenance hell.

@ziggekatten commented on GitHub (Nov 10, 2022): My two cents: - define how you would like to model your setup using built in features of netbox using the GUI. If it is possible to model in netbox according to your business, take onto next point - automate it using API and/or Custom Scripts. If it's possible to define your setup using the features in netbox, there is in my view no need to mess with it. Using the API and/or Custom Scripts is the natural way to adapt the platform to specific needs. One thing to consider (my personal view) is to keep netbox as generic as possible, so we don't get into maintenance hell.
Author
Owner

@github-actions[bot] commented on GitHub (Jan 10, 2023):

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. Do not attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our contributing guide.

@github-actions[bot] commented on GitHub (Jan 10, 2023): This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. NetBox is governed by a small group of core maintainers which means not all opened issues may receive direct feedback. **Do not** attempt to circumvent this process by "bumping" the issue; doing so will result in its immediate closure and you may be barred from participating in any future discussions. Please see our [contributing guide](https://github.com/netbox-community/netbox/blob/develop/CONTRIBUTING.md).
Author
Owner

@github-actions[bot] commented on GitHub (Feb 10, 2023):

This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.

@github-actions[bot] commented on GitHub (Feb 10, 2023): This issue has been automatically closed due to lack of activity. In an effort to reduce noise, please do not comment any further. Note that the core maintainers may elect to reopen this issue at a later date if deemed necessary.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#6788