Bays inheritance on cloned Device Type #8439

Closed
opened 2025-12-29 20:36:41 +01:00 by adam · 4 comments
Owner

Originally created by @gpipito on GitHub (Aug 9, 2023).

NetBox version

v3.5.1

Feature type

Change to existing functionality

Proposed functionality

The Clone action on a Device Type item should make the cloned item to inherit all the bays and power ports from the original item.

Use case

  1. Creating different hw revision of the same device, with similar feature but different part number.
    If I have to create a new hw revision of the "same" device, for example cloning a HP C7000 G2 into a G3, this would allow me to have all the bays (device and modules) and power supplies already defined on the new "revision".

  2. Creating a different device type from a different vendor but with very similar features.
    This feature would also apply not only to different revisions of the same device, but to similar devices from different vendors.

Database changes

No response

External dependencies

No response

Originally created by @gpipito on GitHub (Aug 9, 2023). ### NetBox version v3.5.1 ### Feature type Change to existing functionality ### Proposed functionality The Clone action on a Device Type item should make the cloned item to inherit all the bays and power ports from the original item. ### Use case 1. Creating different hw revision of the same device, with similar feature but different part number. If I have to create a new hw revision of the "same" device, for example cloning a HP C7000 G2 into a G3, this would allow me to have all the bays (device and modules) and power supplies already defined on the new "revision". 2. Creating a different device type from a different vendor but with very similar features. This feature would also apply not only to different revisions of the same device, but to similar devices from different vendors. ### Database changes _No response_ ### External dependencies _No response_
adam added the type: feature label 2025-12-29 20:36:41 +01:00
adam closed this issue 2025-12-29 20:36:42 +01:00
Author
Owner

@kkthxbye-code commented on GitHub (Aug 9, 2023):

This seems hard to implement with the way cloning works currently as we just clone specific fields from the form. The components of a device type are all seperate models and as such cannot easily be cloned. Not sure if this is worth the effort as I believe it would require quite a bit of single-purpose code.

Allowing YAML export of individual device types (current you have to export all device types I believe) would maybe serve as an easier "fix". This would allow the user to export the device type in yaml, change the name and reimport.

@kkthxbye-code commented on GitHub (Aug 9, 2023): This seems hard to implement with the way cloning works currently as we just clone specific fields from the form. The components of a device type are all seperate models and as such cannot easily be cloned. Not sure if this is worth the effort as I believe it would require quite a bit of single-purpose code. Allowing YAML export of individual device types (current you have to export all device types I believe) would maybe serve as an easier "fix". This would allow the user to export the device type in yaml, change the name and reimport.
Author
Owner

@jeremystretch commented on GitHub (Aug 9, 2023):

This is the same concept as has been discussed under #12993 for the device model. Although this isn't strictly a duplicate, the same concerns and limitations apply to this proposal as well, so let's fold this discussion into that issue.

@jeremystretch commented on GitHub (Aug 9, 2023): This is the same concept as has been discussed under #12993 for the device model. Although this isn't strictly a duplicate, the same concerns and limitations apply to this proposal as well, so let's fold this discussion into that issue.
Author
Owner

@gpipito commented on GitHub (Aug 9, 2023):

Maybe I did not explain myself properly. I don't need the device type to be cloned with modules installed (also because it is not possible to install child devices in a device type). I just need to clone a device type with all its defined bay slots.
For example I have a C7000 G2 with 16 empty device bays, 20 empty modules bay and 6 power supplies. If I clone this device type to make a C7000 G3 (same device different part number) all bay slots and power supplies are not inherited and require to be re-configured.

@gpipito commented on GitHub (Aug 9, 2023): Maybe I did not explain myself properly. I don't need the device type to be cloned with modules installed (also because it is not possible to install child devices in a device type). I just need to clone a device type with all its defined bay slots. For example I have a C7000 G2 with 16 empty device bays, 20 empty modules bay and 6 power supplies. If I clone this device type to make a C7000 G3 (same device different part number) all bay slots and power supplies are not inherited and require to be re-configured.
Author
Owner

@jeremystretch commented on GitHub (Aug 9, 2023):

Yes, I understand. This is the same principle as what is being discussed in #12993.

@jeremystretch commented on GitHub (Aug 9, 2023): Yes, I understand. This is the same principle as what is being discussed in #12993.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#8439