nautobot / nautobot-app-device-onboarding

Device Onboarding Plugin for Nautobot
https://docs.nautobot.com/projects/device-onboarding/en/latest/
Other
40 stars 26 forks source link

Upgrade from 2.0.0 to 2.0.2 error #115

Open glennmatthews opened 10 months ago

glennmatthews commented 10 months ago

Environment

nautobot@nautobot:~$ nautobot-server post_upgrade
Error in link construction for Notes: Reverse for 'note_list' not found. 'note_list' is not a valid view function or pattern name.
Performing database migrations...
Operations to perform:
  Apply all migrations: admin, auth, circuits, contenttypes, database, dcim, django_celery_beat, django_celery_results, extras, ipam, nautobot_bgp_models, nautobot_data_validation_engine, nautobot_device_lifecycle_mgmt, nautobot_device_onboarding, nautobot_firewall_models, nautobot_floor_plan, nautobot_golden_config, sessions, social_django, taggit, tenancy, users, virtualization
Running migrations:
  Applying nautobot_device_onboarding.0007_alter_onboardingtask_ip_address... OK
  Applying nautobot_device_onboarding.0008_alter_onboardingtask_options...Traceback (most recent call last):
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.DuplicateTable: relation "nautobot_device_onboardi_label_ip_address_664cc5be_uniq" already exists

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/nautobot/bin/nautobot-server", line 8, in <module>
    sys.exit(main())
  File "/opt/nautobot/lib/python3.9/site-packages/nautobot/core/cli/__init__.py", line 54, in main
    run_app(
  File "/opt/nautobot/lib/python3.9/site-packages/nautobot/core/runner/runner.py", line 297, in run_app
    management.execute_from_command_line([runner_name, command] + command_args)
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "/opt/nautobot/lib/python3.9/site-packages/nautobot/core/management/commands/post_upgrade.py", line 100, in handle
    call_command(
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/__init__.py", line 181, in call_command
    return command.execute(*args, **defaults)
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/base.py", line 89, in wrapped
    res = handle_func(*args, **kwargs)
  File "/opt/nautobot/lib/python3.9/site-packages/django/core/management/commands/migrate.py", line 244, in handle
    post_migrate_state = executor.migrate(
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/migrations/executor.py", line 117, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/migrations/executor.py", line 227, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/migrations/migration.py", line 126, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/migrations/operations/models.py", line 528, in database_forwards
    alter_together(
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/base/schema.py", line 419, in alter_unique_together
    self.execute(self._create_unique_sql(model, columns))
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/base/schema.py", line 145, in execute
    cursor.execute(sql, params)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/utils.py", line 66, in execute
    return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    return executor(sql, params, many, context)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/utils.py", line 90, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/opt/nautobot/lib/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
django.db.utils.ProgrammingError: relation "nautobot_device_onboardi_label_ip_address_664cc5be_uniq" already exists
glennmatthews commented 10 months ago

Looks like a case we missed in #113.

TheFuzzyTech commented 1 month ago

I'm seeing the below traceback that looks to be the same issue.

Something has changed an OrderedDefaultRouter's APIRootView attribute to a custom class. Please verify that class GoldenConfigRootView implements appropriate authentication controls.
Operations to perform:
  Apply all migrations: admin, auth, circuits, contenttypes, database, dcim, django_celery_beat, django_celery_results, extras, ipam, nautobot_device_lifecycle_mgmt, nautobot_device_onboarding, nautobot_golden_config, nautobot_ui_plugin, sessions, silk, social_django, taggit, tenancy, users, virtualization
Running migrations:
  Applying nautobot_device_onboarding.0008_alter_onboardingtask_options...Traceback (most recent call last):
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.DuplicateTable: relation "nautobot_device_onboardi_label_ip_address_664cc5be_uniq" already exists

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/nautobot/bin/nautobot-server", line 8, in <module>
    sys.exit(main())
  File "/opt/nautobot/lib/python3.8/site-packages/nautobot/core/cli/__init__.py", line 293, in main
    execute_from_command_line([sys.argv[0], *unparsed_args])
  File "/opt/nautobot/lib/python3.8/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "/opt/nautobot/lib/python3.8/site-packages/django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/opt/nautobot/lib/python3.8/site-packages/django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/opt/nautobot/lib/python3.8/site-packages/django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "/opt/nautobot/lib/python3.8/site-packages/django/core/management/base.py", line 89, in wrapped
    res = handle_func(*args, **kwargs)
  File "/opt/nautobot/lib/python3.8/site-packages/django/core/management/commands/migrate.py", line 244, in handle
    post_migrate_state = executor.migrate(
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/migrations/executor.py", line 117, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/migrations/executor.py", line 227, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/migrations/migration.py", line 126, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/migrations/operations/models.py", line 528, in database_forwards
    alter_together(
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/base/schema.py", line 419, in alter_unique_together
    self.execute(self._create_unique_sql(model, columns))
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/base/schema.py", line 145, in execute
    cursor.execute(sql, params)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/utils.py", line 66, in execute
    return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    return executor(sql, params, many, context)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/utils.py", line 90, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/opt/nautobot/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute
    return self.cursor.execute(sql, params)
django.db.utils.ProgrammingError: relation "nautobot_device_onboardi_label_ip_address_664cc5be_uniq" already exists

pip list returns:


pip list
Package                        Version
------------------------------ ------------
amqp                           5.1.1
aniso8601                      7.0.0
ansible                        6.7.0
ansible-core                   2.13.13
anyio                          4.0.0
asgiref                        3.6.0
async-timeout                  4.0.2
attrs                          22.2.0
autopep8                       2.3.1
backports.zoneinfo             0.2.1
bcrypt                         4.0.1
billiard                       4.1.0
celery                         5.3.4
certifi                        2022.12.7
cffi                           1.15.1
charset-normalizer             2.1.1
ciscoconfparse                 1.6.52
click                          8.1.3
click-didyoumean               0.3.0
click-plugins                  1.1.1
click-repl                     0.2.0
colorama                       0.4.6
contourpy                      1.0.6
coreapi                        2.3.3
coreschema                     0.0.4
cron-descriptor                1.4.0
cryptography                   39.0.0
cycler                         0.11.0
deepdiff                       5.8.1
defusedxml                     0.7.1
Django                         3.2.25
django-ajax-tables             1.1.1
django-appconf                 1.0.5
django-cacheops                6.2
django-celery-beat             2.6.0
django-celery-results          2.5.1
django-constance               2.9.1
django-cors-headers            4.3.1
django-cryptography            1.1
django-db-file-storage         0.5.5
django-extensions              3.2.3
django-filter                  23.5
django-health-check            3.18.3
django-jinja                   2.11.0
django-js-asset                2.0.0
django-mptt                    0.14.0
django-picklefield             3.1
django-pivot                   1.8.1
django-prometheus              2.3.1
django-redis                   5.4.0
django-rq                      2.8.1
django-silk                    5.1.0
django-tables2                 2.7.0
django-taggit                  4.0.0
django-timezone-field          5.1
django-tree-queries            0.17.0
django-webserver               1.2.0
djangorestframework            3.15.1
dnspython                      2.2.1
drf-react-template-framework   0.0.17
drf-spectacular                0.27.2
drf-spectacular-sidecar        2022.12.1
drf-yasg                       1.21.4
emoji                          2.11.1
exceptiongroup                 1.1.3
fonttools                      4.38.0
funcy                          1.17
future                         0.18.2
gitdb                          4.0.10
GitPython                      3.1.43
gprof2dot                      2024.6.6
graphene                       2.1.9
graphene-django                2.16.0
graphene-django-optimizer      0.8.0
graphql-core                   2.3.2
graphql-relay                  2.0.1
h11                            0.14.0
hier-config                    2.2.2
httpcore                       0.17.3
httpx                          0.24.1
idna                           3.4
importlib-metadata             4.13.0
importlib-resources            5.10.2
inflection                     0.5.1
itypes                         1.2.0
Jinja2                         3.1.4
jsonschema                     4.7.2
junos-eznc                     2.6.6
kiwisolver                     1.4.4
kombu                          5.3.2
loguru                         0.6.0
lxml                           4.9.2
Markdown                       3.5.2
MarkupSafe                     2.1.5
matplotlib                     3.6.2
mypy-extensions                0.4.3
napalm                         4.1.0
nautobot                       2.2.7
nautobot-capacity-metrics      3.0.1
nautobot-device-lifecycle-mgmt 2.1.1
nautobot-device-onboarding     3.0.1
nautobot-golden-config         2.1.0
nautobot-plugin-nornir         2.0.0
nautobot-ui-plugin             1.0.0
ncclient                       0.6.13
netaddr                        0.10.1
netmiko                        4.1.2
netutils                       1.6.0
nh3                            0.2.15
nornir                         3.3.0
nornir-jinja2                  0.2.0
nornir-napalm                  0.4.0
nornir-nautobot                3.0.0
nornir-netmiko                 1.0.0
nornir-utils                   0.2.0
ntc-templates                  3.2.0
numpy                          1.24.1
oauthlib                       3.2.2
ordered-set                    4.1.0
packaging                      23.1
paramiko                       2.12.0
passlib                        1.7.4
pillow                         10.3.0
pip                            24.1.2
pkg_resources                  0.0.0
prometheus_client              0.20.0
promise                        2.3
prompt-toolkit                 3.0.36
psycopg2-binary                2.9.9
pycodestyle                    2.12.0
pycountry                      22.3.5
pycparser                      2.21
pycryptodome                   3.13.0
pyeapi                         0.8.4
PyJWT                          2.6.0
PyNaCl                         1.5.0
pynautobot                     2.0.0
pyparsing                      3.0.9
pyrsistent                     0.19.3
pyserial                       3.5
python-crontab                 2.7.1
python-dateutil                2.8.2
python-slugify                 8.0.4
python3-openid                 3.2.0
pytz                           2022.7
pyuwsgi                        2.0.23.post0
PyYAML                         6.0
redis                          4.4.0
requests                       2.31.0
requests-oauthlib              1.3.1
resolvelib                     0.8.1
rq                             1.15.1
ruamel.yaml                    0.17.21
ruamel.yaml.clib               0.2.7
Rx                             1.6.3
scp                            0.14.4
setuptools                     44.0.0
singledispatch                 4.0.0
six                            1.16.0
smmap                          5.0.0
sniffio                        1.3.0
social-auth-app-django         5.4.2
social-auth-core               4.4.2
sqlparse                       0.4.3
svgwrite                       1.4.3
swagger-spec-validator         3.0.3
tenacity                       8.1.0
text-unidecode                 1.3
textfsm                        1.1.2
toml                           0.10.2
tomli                          2.0.1
transitions                    0.9.0
ttp                            0.9.2
ttp-templates                  0.3.2
typing_extensions              4.4.0
tzdata                         2023.3
uritemplate                    4.1.1
urllib3                        1.26.13
vine                           5.0.0
wcwidth                        0.2.5
wheel                          0.38.4
xmldiff                        2.7.0
yamlordereddictloader          0.4.0
zipp                           3.11.0```