Dynamically update BANNER_[LOGIN|TOP|BOTTOM] from Admin area #11040

Closed
opened 2025-12-29 21:39:30 +01:00 by adam · 2 comments
Owner

Originally created by @bbruun on GitHub (Apr 16, 2025).

NetBox version

v4.2.5

Feature type

New functionality

Proposed functionality

Feature request

  • Add BANNER_LOGIN, BANNER_TOP, BANNER_BOTTOM, MAINTENANCE_BANNER and MAINTENANCE_MODE in the database as editable settings in Netbox "Admin -> System" area (v4.2.5) and ignore the environment variable if set in the database.
  • Load these settings like any other data processed in Netbox to allow for dynamic update of the information to e.g. notify of upcoming scheduled maintenance or upgrade etc.

Aka to actually make these oddly named "Dynamic settings" dynamically updatable https://netbox.ifog.ch/static/docs/configuration/dynamic-settings/

Clarification/usage of new features
One of the most annoying things that happens to systems is them becoming unresponsive or restarting without knowing what is going on calling Support or IT to help with the issue which isn't an issue just missing information.

With this feature then the admin's of Netbox will be able to set/change the BANNER_... and MAINTENANCE_.. variables from with in Netbox to avoid doing a restart of Netbox to change them until the (hopefully) provided maintenance date/time where they will need to be changed again and Netbox restarted one last time to remove the maintenance/upgrade notice.

Perhaps most of the variables in https://netbox.ifog.ch/static/docs/configuration/dynamic-settings/ should be art of this FR aka to dynamically change the dynamic variables, from the "Admin" section as an admin or superuser of course.

Use case

Right now if need to do maintenance on Netbox (and you like your users) then you have to update the environment variables in configuration.py/docker-compose.yml (or the like) and then restart Netbox for these to change in the UI that the users see.

The crux is when you restart Netbox (or any system for that matter that users use all day or have API access to as well) to update the BANNER_ variables to display your maintenance notice then users don't know that you are restarting Netbox and contact Support or IT directly... which is not optimal.

After the schduled/planned maintenance window then you need to do the opposite one final time to change the BANNER_.. back to "normal" and restart one last time. So at least 3 restart of Netbox, with 1 unannounced that annoys end users.

This feature request would get rid of that and treat users nicely.

If these BANNER_... variables can be updated from within Netbox without a restart then admins can update these and do the planned maintenance/upgrade and users will see and (hopefully) understand that is why Netbox is unstable until the maintenance is over and it will remove 2 unneeded restarts of Netbox.

Database changes

I have no insights on this.

External dependencies

No response

Originally created by @bbruun on GitHub (Apr 16, 2025). ### NetBox version v4.2.5 ### Feature type New functionality ### Proposed functionality **Feature request** * Add BANNER_LOGIN, BANNER_TOP, BANNER_BOTTOM, MAINTENANCE_BANNER and MAINTENANCE_MODE in the database as editable settings in Netbox "Admin -> System" area (v4.2.5) and ignore the environment variable if set in the database. * Load these settings like any other data processed in Netbox to allow for dynamic update of the information to e.g. notify of upcoming scheduled maintenance or upgrade etc. Aka to actually make these oddly named "Dynamic settings" dynamically updatable https://netbox.ifog.ch/static/docs/configuration/dynamic-settings/ **Clarification/usage of new features** One of the most annoying things that happens to systems is them becoming unresponsive or restarting without knowing what is going on calling Support or IT to help with the issue which isn't an issue just missing information. With this feature then the admin's of Netbox will be able to set/change the BANNER_... and MAINTENANCE_.. variables from with in Netbox to avoid doing a restart of Netbox to change them until the (hopefully) provided maintenance date/time where they will need to be changed again and Netbox restarted one last time to remove the maintenance/upgrade notice. Perhaps most of the variables in https://netbox.ifog.ch/static/docs/configuration/dynamic-settings/ should be art of this FR aka to dynamically change the dynamic variables, from the "Admin" section as an admin or superuser of course. ### Use case Right now if need to do maintenance on Netbox (and you like your users) then you have to update the environment variables in configuration.py/docker-compose.yml (or the like) and then restart Netbox for these to change in the UI that the users see. The crux is when you restart Netbox (or any system for that matter that users use all day or have API access to as well) to update the BANNER_ variables to display your maintenance notice then users don't know that you are restarting Netbox and contact Support or IT directly... which is not optimal. After the schduled/planned maintenance window then you need to do the opposite one final time to change the BANNER_.. back to "normal" and restart one last time. So at least 3 restart of Netbox, with 1 unannounced that annoys end users. This feature request would get rid of that and treat users nicely. If these BANNER_... variables can be updated from within Netbox without a restart then admins can update these and do the planned maintenance/upgrade and users will see and (hopefully) understand that is why Netbox is unstable until the maintenance is over and it will remove 2 unneeded restarts of Netbox. ### Database changes I have no insights on this. ### External dependencies _No response_
adam added the type: feature label 2025-12-29 21:39:30 +01:00
adam closed this issue 2025-12-29 21:39:30 +01:00
Author
Owner

@jeremystretch commented on GitHub (Apr 16, 2025):

These and all other dynamic configuration parameters can be modified in the UI by navigating to System > Configuration History and adding a new Configuration Revision. Note that any of these settings which have been statically defined in configuration.py will not be editable.

@jeremystretch commented on GitHub (Apr 16, 2025): These and all other dynamic configuration parameters can be modified in the UI by navigating to System > Configuration History and adding a new Configuration Revision. Note that any of these settings which have been statically defined in `configuration.py` will not be editable.
Author
Owner

@bbruun commented on GitHub (May 1, 2025):

Didn't know about that one. Time to change environment variables so they are dynamic.

Thanks @jeremystretch :-)

@bbruun commented on GitHub (May 1, 2025): Didn't know about that one. Time to change environment variables so they are dynamic. Thanks @jeremystretch :-)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#11040