Skip to content

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

@bevand10

Description

@bevand10

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? 7719b98 @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

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: duplicateThis issue has already been raisedtype: bugA confirmed report of unexpected behavior in the application

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions