4.4.3 fails to correctly install on a clean Ubuntu 24.04.3 LTS VM #11732

Closed
opened 2025-12-29 21:49:13 +01:00 by adam · 1 comment
Owner

Originally created by @bevand10 on GitHub (Oct 15, 2025).

NetBox Edition

NetBox Community

NetBox Version

4.4.3

Python Version

3.12

Steps to Reproduce

Install failure 4.4.3

Given
I have an automated installer that takes the source tarball, packages as .deb and .rpm, and installs on clean vms.

When
A new Netbox release is made, I download and package it, and deploy on a clean vm for initial testing. The build process is the same for each release. Only the source tarball is different. It's version number is used to target an "untar" directory - /opt/netbox-n.n.n in all cases.

Then
With version 4.4.3 on Debian (Ubuntu 24.04 LTS) I get an installation error that I do not get with 4.4.2.

Any ideas? Is this commit involved? 7719b98697 @DanSheps ?

Expected Behavior

In the 4.4.2 upgrade.sh script install step, on a clean vm - Ubuntu 24.4.03 LTS - with no netbox history, I observe this:

...
  Applying wireless.0012_alter_wirelesslan__location_and_more... OK
  Applying wireless.0013_natural_ordering... OK
  Applying wireless.0014_wirelesslangroup_comments... OK
  Applying wireless.0015_extend_wireless_link_abs_distance_upper_limit... OK
Checking for missing cable paths (python3 netbox/manage.py trace_paths --no-input)...
Found no missing console port paths; skipping
Found no missing console server port paths; skipping
Found no missing interface paths; skipping
Found no missing power feed paths; skipping
Found no missing power outlet paths; skipping
Found no missing power port paths; skipping
Finished.
Building documentation (mkdocs build)...
INFO    -  Cleaning site directory
INFO    -  Building documentation to directory: /opt/netbox-4.4.2/netbox/project-static/docs
INFO    -  Doc file 'development/models.md' contains a link '../features/customization.md#bookmarks', but the doc 'features/customization.md' does not
           contain an anchor '#bookmarks'.
INFO    -  Documentation built in 6.54 seconds
Collecting static files (python3 netbox/manage.py collectstatic --no-input)...

512 static files copied to '/opt/netbox-4.4.2/netbox/static'.
Removing stale content types (python3 netbox/manage.py remove_stale_contenttypes --no-input)...
Rebuilding search cache (python3 netbox/manage.py reindex --lazy)...
Reindexing 89 models.
Indexing models
  core.datasource... No objects found.
  core.datafile... No objects found.
  circuits.circuit... No objects found.
  circuits.circuitgroup... No objects found.
  circuits.circuittermination... No objects found.
  circuits.circuittype... No objects found.
  circuits.provider... No objects found.
...

No issues, the install runs through to completion.

Observed Behavior

With version 4.4.3 packaged using the same build process, in the same 24.04.3 LTS clean vm (I reset to a clean-os snapshot every time I test the built .deb and .rpm installers), I get the following error messages when executing the remove_stale_contenttypes.py script from upgrade.sh.

...
  Applying wireless.0012_alter_wirelesslan__location_and_more... OK
  Applying wireless.0013_natural_ordering... OK
  Applying wireless.0014_wirelesslangroup_comments... OK
  Applying wireless.0015_extend_wireless_link_abs_distance_upper_limit... OK
Checking for missing cable paths (python3 netbox/manage.py trace_paths --no-input)...
Found no missing console port paths; skipping
Found no missing console server port paths; skipping
Found no missing interface paths; skipping
Found no missing power feed paths; skipping
Found no missing power outlet paths; skipping
Found no missing power port paths; skipping
Finished.
Building documentation (mkdocs build)...
INFO    -  Cleaning site directory
INFO    -  Building documentation to directory: /opt/netbox-4.4.3/netbox/project-static/docs
INFO    -  Doc file 'development/models.md' contains a link '../features/customization.md#bookmarks', but the doc 'features/customization.md' does not
           contain an anchor '#bookmarks'.
INFO    -  Documentation built in 6.53 seconds
Collecting static files (python3 netbox/manage.py collectstatic --no-input)...

512 static files copied to '/opt/netbox-4.4.3/netbox/static'.
Removing stale content types (python3 netbox/manage.py remove_stale_contenttypes --no-input)...
No active configuration revision found - falling back to most recent
Traceback (most recent call last):
  File "/opt/netbox-4.4.3/netbox/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
    utility.execute()
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/__init__.py", line 436, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/base.py", line 416, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/base.py", line 460, in execute
    output = self.handle(*args, **options)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/contrib/contenttypes/management/commands/remove_stale_contenttypes.py", line 102, in handle
    ct.delete()
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/db/models/base.py", line 1281, in delete
    return collector.delete()
           ^^^^^^^^^^^^^^^^^^
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/db/models/deletion.py", line 458, in delete
    signals.pre_delete.send(
  File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/dispatch/dispatcher.py", line 189, in send
    response = receiver(signal=self, sender=sender, **named)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/netbox-4.4.3/netbox/extras/signals.py", line 152, in notify_object_changed
    if not has_feature(instance, 'notifications'):
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/netbox-4.4.3/netbox/netbox/models/features.py", line 684, in has_feature
    return test_func(model)
           ^^^^^^^^^^^^^^^^
  File "/opt/netbox-4.4.3/netbox/netbox/models/features.py", line 643, in <lambda>
    register_model_feature('notifications', lambda model: issubclass(model, NotificationsMixin))
                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: issubclass() arg 1 must be a class
+ exit 1
Originally created by @bevand10 on GitHub (Oct 15, 2025). ### NetBox Edition NetBox Community ### NetBox Version 4.4.3 ### Python Version 3.12 ### Steps to Reproduce ## Install failure 4.4.3 **Given** I have an automated installer that takes the source tarball, packages as .deb and .rpm, and installs on clean vms. **When** A new Netbox release is made, I download and package it, and deploy on a clean vm for initial testing. The build process is the same for each release. Only the source tarball is different. It's version number is used to target an "untar" directory - `/opt/netbox-n.n.n` in all cases. **Then** With version `4.4.3` on Debian (Ubuntu 24.04 LTS) I get an installation error that I do not get with `4.4.2`. Any ideas? Is this commit involved? https://github.com/netbox-community/netbox/commit/7719b986977be2792cdde3e01cfbc4a4f9c8065a @DanSheps ? ### Expected Behavior In the `4.4.2` `upgrade.sh` script install step, on a clean vm - Ubuntu 24.4.03 LTS - with no netbox history, I observe this: ```bash ... Applying wireless.0012_alter_wirelesslan__location_and_more... OK Applying wireless.0013_natural_ordering... OK Applying wireless.0014_wirelesslangroup_comments... OK Applying wireless.0015_extend_wireless_link_abs_distance_upper_limit... OK Checking for missing cable paths (python3 netbox/manage.py trace_paths --no-input)... Found no missing console port paths; skipping Found no missing console server port paths; skipping Found no missing interface paths; skipping Found no missing power feed paths; skipping Found no missing power outlet paths; skipping Found no missing power port paths; skipping Finished. Building documentation (mkdocs build)... INFO - Cleaning site directory INFO - Building documentation to directory: /opt/netbox-4.4.2/netbox/project-static/docs INFO - Doc file 'development/models.md' contains a link '../features/customization.md#bookmarks', but the doc 'features/customization.md' does not contain an anchor '#bookmarks'. INFO - Documentation built in 6.54 seconds Collecting static files (python3 netbox/manage.py collectstatic --no-input)... 512 static files copied to '/opt/netbox-4.4.2/netbox/static'. Removing stale content types (python3 netbox/manage.py remove_stale_contenttypes --no-input)... Rebuilding search cache (python3 netbox/manage.py reindex --lazy)... Reindexing 89 models. Indexing models core.datasource... No objects found. core.datafile... No objects found. circuits.circuit... No objects found. circuits.circuitgroup... No objects found. circuits.circuittermination... No objects found. circuits.circuittype... No objects found. circuits.provider... No objects found. ... ``` No issues, the install runs through to completion. ### Observed Behavior With version `4.4.3` packaged using the same build process, in the same 24.04.3 LTS clean vm (I reset to a clean-os snapshot every time I test the built .deb and .rpm installers), I get the following error messages when executing the `remove_stale_contenttypes.py` script from `upgrade.sh`. ```bash ... Applying wireless.0012_alter_wirelesslan__location_and_more... OK Applying wireless.0013_natural_ordering... OK Applying wireless.0014_wirelesslangroup_comments... OK Applying wireless.0015_extend_wireless_link_abs_distance_upper_limit... OK Checking for missing cable paths (python3 netbox/manage.py trace_paths --no-input)... Found no missing console port paths; skipping Found no missing console server port paths; skipping Found no missing interface paths; skipping Found no missing power feed paths; skipping Found no missing power outlet paths; skipping Found no missing power port paths; skipping Finished. Building documentation (mkdocs build)... INFO - Cleaning site directory INFO - Building documentation to directory: /opt/netbox-4.4.3/netbox/project-static/docs INFO - Doc file 'development/models.md' contains a link '../features/customization.md#bookmarks', but the doc 'features/customization.md' does not contain an anchor '#bookmarks'. INFO - Documentation built in 6.53 seconds Collecting static files (python3 netbox/manage.py collectstatic --no-input)... 512 static files copied to '/opt/netbox-4.4.3/netbox/static'. Removing stale content types (python3 netbox/manage.py remove_stale_contenttypes --no-input)... No active configuration revision found - falling back to most recent Traceback (most recent call last): File "/opt/netbox-4.4.3/netbox/manage.py", line 10, in <module> execute_from_command_line(sys.argv) File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line utility.execute() File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/__init__.py", line 436, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/base.py", line 416, in run_from_argv self.execute(*args, **cmd_options) File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/core/management/base.py", line 460, in execute output = self.handle(*args, **options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/contrib/contenttypes/management/commands/remove_stale_contenttypes.py", line 102, in handle ct.delete() File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/db/models/base.py", line 1281, in delete return collector.delete() ^^^^^^^^^^^^^^^^^^ File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/db/models/deletion.py", line 458, in delete signals.pre_delete.send( File "/opt/netbox-4.4.3/venv/lib/python3.12/site-packages/django/dispatch/dispatcher.py", line 189, in send response = receiver(signal=self, sender=sender, **named) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/netbox-4.4.3/netbox/extras/signals.py", line 152, in notify_object_changed if not has_feature(instance, 'notifications'): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/netbox-4.4.3/netbox/netbox/models/features.py", line 684, in has_feature return test_func(model) ^^^^^^^^^^^^^^^^ File "/opt/netbox-4.4.3/netbox/netbox/models/features.py", line 643, in <lambda> register_model_feature('notifications', lambda model: issubclass(model, NotificationsMixin)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: issubclass() arg 1 must be a class + exit 1 ```
adam added the type: bugstatus: duplicate labels 2025-12-29 21:49:13 +01:00
adam closed this issue 2025-12-29 21:49:14 +01:00
Author
Owner

@bctiemann commented on GitHub (Oct 15, 2025):

Seems to be a duplicate of #20587

@bctiemann commented on GitHub (Oct 15, 2025): Seems to be a duplicate of #20587
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#11732