+++ This bug was initially created as a clone of Bug #2143695 +++ Description of problem: Migration 0077 fails when you have a remote that has an @ somewhere in the path Applying core.0077_move_remote_url_credentials...Traceback (most recent call last): File "/usr/bin/pulpcore-manager", line 33, in <module> sys.exit(load_entry_point('pulpcore==3.18.10', 'console_scripts', 'pulpcore-manager')()) File "/usr/lib/python3.9/site-packages/pulpcore/app/manage.py", line 11, in manage execute_from_command_line(sys.argv) File "/usr/lib/python3.9/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line utility.execute() File "/usr/lib/python3.9/site-packages/django/core/management/__init__.py", line 413, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/usr/lib/python3.9/site-packages/django/core/management/base.py", line 354, in run_from_argv self.execute(*args, **cmd_options) File "/usr/lib/python3.9/site-packages/django/core/management/base.py", line 398, in execute output = self.handle(*args, **options) File "/usr/lib/python3.9/site-packages/django/core/management/base.py", line 89, in wrapped res = handle_func(*args, **kwargs) File "/usr/lib/python3.9/site-packages/django/core/management/commands/migrate.py", line 244, in handle post_migrate_state = executor.migrate( File "/usr/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 "/usr/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 "/usr/lib/python3.9/site-packages/django/db/migrations/executor.py", line 227, in apply_migration state = migration.apply(state, schema_editor) File "/usr/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 "/usr/lib/python3.9/site-packages/django/db/migrations/operations/special.py", line 190, in database_forwards self.code(from_state.apps, schema_editor) File "/usr/lib/python3.9/site-packages/pulpcore/app/migrations/0077_move_remote_url_credentials.py", line 19, in move_remote_url_credentials _, url_split = url.netloc.rsplit("@", maxsplit=1) ValueError: not enough values to unpack (expected 2, got 1) Version-Release number of selected component (if applicable): How reproducible: 100% Steps to Reproduce: - Have a remote https://download.copr.fedorainfracloud.org/results/@caddy/caddy/epel-8-x86_64/ - Try to migrate 0077 Actual results: Migration fails Expected results: Migration completes Additional info: This could become an upgrade blocker. However, having and @ symbol in the remote in an unexpected place is likely rare. --- Additional comment from on 2022-11-17T16:00:35Z Thanks @evgeni for the quick fix --- Additional comment from on 2022-11-17T18:20:26Z > This could become an upgrade blocker. However, having and @ symbol in the remote in an unexpected place is likely rare. I tend to disagree. Copr does that, and I would think there are quite a few users that pick some upstream RPMs via Copr into their environment.
Reproduced in 6.12.1, verified in 6.12.2 (python39-pulpcore-3.18.12-1.el8pc.noarch). Steps: 1) Sync a repo with '@' in upstream_url to a 6.11.3 Satellite. (Used https://download.copr.fedorainfracloud.org/results/@caddy/caddy/epel-8-x86_64/) 2) Upgrade it to 6.12.2. Result: The upgrade succeeded including migrations, repo is available on the upgraded Satellite.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Satellite 6.12.2 Async Update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2023:0668