Managing cables / device changes #7215

Closed
opened 2025-12-29 20:20:33 +01:00 by adam · 3 comments
Owner

Originally created by @tfboy on GitHub (Nov 10, 2022).

NetBox version

v3.3.5

Feature type

New functionality

Proposed functionality

As discussed here: https://github.com/netbox-community/netbox/discussions/10616

Currently, the data model only supports a single connection at each end of a cable or a single device in a given rack position. When planning changes, this makes managing the changes quite tricky as there's no way to temporarily have two elements for a given item.

Fortunately, Netbox has recently added the possibility of editing a cable's termination point (this was lacking). What I'm wondering is if this could be improved and allow two different cables to be linked to a same single end point (interface, front or rear port), but have one marked as "planned".

In my opinion, this first step would be a great addition and make changes kind of manageable within Netbox. Currently, I find it quite difficult as I need to take a snapshot of what I currently have, then delete what will be removed to make place for the new stuff that is going to be cabled in. But as that would remove the current connections, it's a bit dangerous as your "source of truth" no longer reflects reality.

For now, I have worked around this by creating additional interfaces or ports to allow for the new cable and have it marked as planned. And then when the cable is physically updated, then go round and tidy Netbox up, but it's rather cumbersome.

Note that whilst I'm talking mainly about cables, the same could apply to devices installed in a given rack position. The current Status data model supports this where the existing fields such as Planned and Decommissioning could be used.

Use case

For example, we have cable 1234 which currently goes from Device A Port 1 to Device C Port 2.

  • We need to add a Device B which will need a cable 2345 that will go from Port 1 to Device C's Port 2.

What would be great is if we could:

  • Create cable 2345, mark it as planned. This would require Netbox to allow us to connect two cables to the same interface/port: one end to Device C Port 2 in addition to cable 1234 that is already "Connected".
  • At that point, cable 1234 can be marked as decommissioning. So no port or interface has two cables with identical status.

A further development which would be truly awesome, but I realise this might mean a lot of work is to take it one step further and have this semi-automated:

  • Create a batch of new cables and have them marked as planned. At this point, we have two connections for a given interface/port.
  • Create a filter which can then give you all of these "Planned" cables.

Netbox has a button "Complete replacement" or similar which then:

  • takes all the old cables and changes their status from "Connected" to "Decommissioning".
  • takes all the new cables and changes their status from "Planned" to "Connected"

A Netbox user can then filter for all the cables marked "Decommissioning" and physically tidy up removing cables in the racks and then delete these cables from Netbox.

Database changes

No new fields, but allow an interface or front port to hold two values for two different cables. Values have to be different, i.e. one is connected, the other is planned or connected and decommissioning.

Same applies for device location; allow the same rack U

Regarding the automation process, I'm not sure what would be required on the database end.

External dependencies

none that I'm aware of.

Originally created by @tfboy on GitHub (Nov 10, 2022). ### NetBox version v3.3.5 ### Feature type New functionality ### Proposed functionality As discussed here: https://github.com/netbox-community/netbox/discussions/10616 Currently, the data model only supports a single connection at each end of a cable or a single device in a given rack position. When planning changes, this makes managing the changes quite tricky as there's no way to temporarily have two elements for a given item. Fortunately, Netbox has recently added the possibility of editing a cable's termination point (this was lacking). What I'm wondering is if this could be improved and allow two different cables to be linked to a same single end point (interface, front or rear port), but have one marked as "planned". In my opinion, this first step would be a great addition and make changes kind of manageable within Netbox. Currently, I find it quite difficult as I need to take a snapshot of what I currently have, then delete what will be removed to make place for the new stuff that is going to be cabled in. But as that would remove the current connections, it's a bit dangerous as your "source of truth" no longer reflects reality. For now, I have worked around this by creating additional interfaces or ports to allow for the new cable and have it marked as planned. And then when the cable is physically updated, then go round and tidy Netbox up, but it's rather cumbersome. Note that whilst I'm talking mainly about cables, the same could apply to devices installed in a given rack position. The current Status data model supports this where the existing fields such as Planned and Decommissioning could be used. ### Use case For example, we have cable 1234 which currently goes from Device A Port 1 to Device C Port 2. - We need to add a Device B which will need a cable 2345 that will go from Port 1 to Device C's Port 2. What would be great is if we could: - Create cable 2345, mark it as planned. This would require Netbox to allow us to connect two cables to the same interface/port: one end to Device C Port 2 in addition to cable 1234 that is already "Connected". - At that point, cable 1234 can be marked as decommissioning. So no port or interface has two cables with identical status. A further development which would be truly awesome, but I realise this might mean a lot of work is to take it one step further and have this semi-automated: - Create a batch of new cables and have them marked as planned. At this point, we have two connections for a given interface/port. - Create a filter which can then give you all of these "Planned" cables. Netbox has a button "Complete replacement" or similar which then: - takes all the old cables and changes their status from "Connected" to "Decommissioning". - takes all the new cables and changes their status from "Planned" to "Connected" A Netbox user can then filter for all the cables marked "Decommissioning" and physically tidy up removing cables in the racks and then delete these cables from Netbox. ### Database changes No new fields, but allow an interface or front port to hold two values for two different cables. Values have to be different, i.e. one is connected, the other is planned or connected and decommissioning. Same applies for device location; allow the same rack U Regarding the automation process, I'm not sure what would be required on the database end. ### External dependencies none that I'm aware of.
adam added the type: featurepending closure labels 2025-12-29 20:20:33 +01:00
adam closed this issue 2025-12-29 20:20:33 +01:00
Author
Owner

@xkilian commented on GitHub (Nov 14, 2022):

First off; This is the most coherent feature suggestions for this use-case. It would be a celebration worthy feature to be implemented. We manage large changes that are implemented over the course of years and creates ongoing chaos in managing what is really connected or future connected. So thank you for taking time to describe it.

Please update your suggested feature to describe how you would handle the fact the cable is connected at both ends:

planned cable is attached to two interface (each end of the cable.)

Switching the cable from planned to connected would need to swap the state of the connected cables at both ends.

@xkilian commented on GitHub (Nov 14, 2022): First off; This is the most coherent feature suggestions for this use-case. It would be a celebration worthy feature to be implemented. We manage large changes that are implemented over the course of years and creates ongoing chaos in managing what is really connected or future connected. So thank you for taking time to describe it. Please update your suggested feature to describe how you would handle the fact the cable is connected at both ends: planned cable is attached to two interface (each end of the cable.) Switching the cable from planned to connected would need to swap the state of the connected cables at both ends.
Author
Owner

@github-actions[bot] commented on GitHub (Jan 14, 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 14, 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 16, 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 16, 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#7215